#ifndef ADMINSO_CONFIG #define ADMINSO_CONFIG // Defino esta constante para generar codigo de debug // #define ADMINSO_DEBUG // #define CLIENSO_DEBUG #define NDEBUG // Largo maximo de los comandos de la consola #define MAX_CONSOLA 256 // Constantes para las operaciones del Adminso #define OP_CREAR_PROCESO 1 #define OP_ELIMINAR_PROCESO 2 #define OP_INICIAR_PROCESO 3 #define OP_MATAR_PROCESO 4 #define OP_CONSULTAR_PROCESO 5 #define OP_CREAR_RECURSO 6 #define OP_ELIMINAR_RECURSO 7 #define OP_CONSULTAR_RECURSO 8 #define OP_EXIT 11 #define OP_PEDIR_RECURSO 12 #define OP_LIBERAR_RECURSO 13 #define RESPUESTA_ERROR 14 #define RESPUESTA_OK 15 #define OP_FINALIZAR_PROCESO 16 #define ERROR_RECURSO_NOEXISTE 17 #define ERROR_RECURSO_PEDIDO 18 #define ERROR_RECURSO_NO_ES_TUYO 19 #define ERROR_RECURSO_MAX_POR_PROCESO 20 // --- Constantes maximos --- // // Cantidad Maxima de recursos a registrar #ifndef MAX_RECURSOS # define MAX_RECURSOS 10 #endif // Cantidad Maxima de procesos a registrar #ifndef MAX_PROCESOS # define MAX_PROCESOS 20 #endif // Cantidad maxima de recursos asignados a un proceso #ifndef MAX_RECURSOS_PROCESO # define MAX_RECURSOS_PROCESO 5 #endif // Largos maximos para los parametros de los clientes #define MAX_CLAVE 16 #define MAX_RUTA 128 #define MAX_DESC 256 // Tiempo de barrido en segundos para el proceso de Barrido #define TIEMPO_BARRIDO_SEGUNDOS 10 // Constante INFINITA #define TIEMPO_INFINITO -1 // Semaforos #define MAX_SEMAFOROS 8 #define SEM_MEMORIA 0 #define SEM_ADMIN 1 #define SEM_RESPUESTA 2 #define SEM_PID_PROCESO 3 #define SEM_TABLA_RECURSOS 4 #define SEM_TABLA_PROCESOS 5 #define MUTEX_CANT_LECTORES_RECURSOS 6 #define MUTEX_CANT_LECTORES_PROCESOS 7 #endif