0xkiyo /
procesadorJS
Consiste en el diseño e implementación de un Procesador de Lenguajes, que realice el Análisis Léxico, Sintáctico y Semántico (incluyendo la Tabla de Símbolos y el Gestor de Errores).
Loading repository data…
juliancnn / repository
Diseno e implementacion de monitor con redes de petri en java
Una descripcion del monitor, bla bla bla TODO, falta agregar la configuracion de los invariantes de transicion que esta andando pero no documentado matrixInvariantT en el archivo de configuracion del tpfinal esta.
-tag TODO:a:"TO-DO:" -tag WARNING:a:"Advertencias:" -html5Cargada desde un archivo json. Donde el primer lugar representa la transicion o la plaza uno dependiente el caso. Las matrices de incidencia estan ordenadas por filas que representan las plazas y columnas que representan las transiciones. Ningun valor puede ser salteado.
N: Cantidad de transiciones
M: cantidad de plazas
Campos obligatorios del JSON:
Campos opcionales del JSON:
Matriz de Incidencia H [dim: NxM]
Matriz de Incidencia R [dim: NxM]
Vector de tokens maximos por plaza [dim: M]
Matriz de de politicas T [dim: NxN]
Vectores de ventana temporal [dim: 2xN]
Matriz y vector de invariantes de plaza
{
"brief" : "Ejemplo 6: Un escritor Multiples lectores simultaneos",
"info" : "Conjunto de procesos (P0), que pueden leer (P4) simultaneamente o escribir (P3)",
"logFile": "log_ej6_conTiempo.txt",
"tempQ": [0,0,0,0,1,1],
"matrixI" : [
[-1, -1, 0, 0, 1, 1], //P1 procesos Idle
[ 1, 0,-1, 0, 0, 0], //P2 Quieren escribir
[ 0, 0,-1, 0, 1, 0], //P3 recurso
[ 0, 0, 1, 0,-1, 0], //P4 escribiendo
[ 0, 0, 0, 1, 0,-1], //P5 leyendo
[ 0, 1, 0,-1, 0, 0] //P6 quire leer
],
"vectorMark" : [7, 0, 1, 0, 0, 0], // 7 procesos
"vectorMark" : [0, 0, 0, 0, 0, 0], // Sin max por plaza
"matrixH" : [ // Al revez que I, transiciones por plaza
[ 0, 0, 0, 0, 0, 0], //t1 Agregarse a la cola de escritura
[ 0, 0, 0, 0, 0, 0], //t2 Agregarse a la cola de lectura
[ 0, 0, 0, 0, 1, 0], //t3 Entrar a escribir (La escritura queda inhibida si hay alguien leyendo P5)
[ 0, 0, 0, 0, 0, 0], //t4 Entrar a leer
[ 0, 0, 0, 0, 0, 0], //t5 Termina de escribir
[ 0, 0, 0, 0, 0, 0] //t6 Termina de leer
],
"matrixR" :[ // Al revez que I, transiciones por plaza
[ 0, 0, 0, 0, 0, 0], //t1 Agregarse a la cola de escritura
[ 0, 0, 0, 0, 0, 0], //t2 Agregarse a la cola de lectura
[ 0, 0, 0, 0, 0, 0], //t3 Entrar a escribir
[ 0, 0, 1, 0, 0, 0], //t4 Entrar a leer Si el recurso (p3) no fue tomado para escritura
[ 0, 0, 0, 0, 0, 0], //t5 Termina de escribir
[ 0, 0, 0, 0, 0, 0] //t6 Termina de leer
],
"matrixT" :[
//t1-t2-t3-t4-t5-t6 ** Escritor
[0, 0, 0, 0, 0, 1], // Un escritor con multiples lectores
[1, 0, 0, 0, 0, 0], // Prioridad escritor cuando:
[0, 0, 1, 0, 0, 0], // t6>t1>t3>t5>t2>t4
[0, 0, 0, 0, 1, 0], // Prioridad lector cuando:
[0, 1, 0, 0, 0, 0], // t5>t4>t2>t6>t1>t3
[0, 0, 0, 1, 0, 0]
],
"matrixInvariantP" :[
[ 1, 1, 0, 1, 1, 1],
[ 0, 0, 1, 1, 0, 0]
],
"vectorSumInvariantP" : [7, 1],
"tempWindowTuple" : [
[ 0, 0, 0, 0, 10, 5], // Tiempo de lectura 500ms, tiempo escritura 1000
[ 0, 0, 0, 0, 0, 0]
],
// pull Threads
"pull" : [
// T1 - Quien escribir
{
"name": "T1, Quieren escribir",
"seq" : [1],
"sleepTime" : 50,
"nTimes" : 10
},
// T3-T5 - Escriben
{
"name": "T3-T5, Escriben",
"seq" : [3,5],
"sleepTime" : 0,
"nTimes" : 0
},
// T2 - Quien leer
{
"name": "T2, Quieren Leer",
"seq" : [2],
"sleepTime" : 20,
"nTimes" : 20
},
// T4-T6 - leen
{
"name": "T4-T6, leen",
"seq" : [4,6],
"sleepTime" : 0,
"nTimes" : 0
}
]
}
Formado por 5 modulos totalmente independientes entre si, excluyendo el modulo de loggeo de datos
- Tamano de las colas
- Tiempo de espera del primer threads en cada cola
- Puede encolar por tiempo, manejando automaticamente la concurrencia
- Los hilos pueden ser interrumpidos externamente sin problemas, generar excepciones
- Los hilos despertados sin interrupciones se desencolan automaticamente.
Informacion mas detallada en el changelog. El changelog empezo a funcionar a partir de la version v1.0.
git tag # lista etiquetas
git tag -a v1.1 # Etiqueta como v1.1
git show v1.1 # Muestra informacion de esa etiqueta
git push origin v1.1 # Manda etiqueta al branch remoto (Comparte etiquetas)
git push origin --tags # Manda todas las etiquetas
git checkout -b ver1 v1.1 # Crea branch basado en el commit de la etiqeta
Selected from shared topics, language and repository description—not editorial ratings.
0xkiyo /
Consiste en el diseño e implementación de un Procesador de Lenguajes, que realice el Análisis Léxico, Sintáctico y Semántico (incluyendo la Tabla de Símbolos y el Gestor de Errores).
marcos-moreira-dev /
Un proyecto ejemplo de un sistema completo que va desde el levantamiento de información, diseño e implementación de la base de datos en PostgreSQL, diseño e implementación de un backend con Spring Boot 4 y el diseño e implementación de una app frontend de escritorio con Java FX
VictorNS69 /
Diseño e implementación de un Procesador de Lenguajes, que realice el Análisis Léxico, Sintáctico y Semántico (incluyendo la Tabla de Símbolos y el Gestor de Errores), para un determinado lenguaje de programación.
AlejoTechEngineer /
Diseño e implementación de clases Java para sistema de librería: diagrama de clases UML en StarUML, interfaz gráfica en NetBeans y POO aplicada. Ingeniería de Software, Ingeniería Informática.
Eduardovisoni /
Diseño e implementación de una simulación tipo Spotify utilizando una estructura de datos Cola (FIFO) desarrollada completamente desde cero en Java.
DOMINER340 /
Proyecto realizado para la gestión, diseño e implementación de bases de datos basados en SQL ORACLE con integración a JAVA mediante JDBC.