Registro de Ingreso/Egreso de Personal

Sistema de Gestion de Entrada / Salida de Personal 

 El Servidor encargado de registrar el Ingreso/Egreso de los empleados, corre en Linux, como un demonio.

El servidor escucha conexiones sobre un socket TCP, en un puerto a designar. 

El servidor automáticamente crea un archivo .log con el contenido de los Ingresos/Egresos, especificando para cada uno la fecha, hora, evento e identificación del usuario.

A la hora de recibir conexiones, se atienden de manera simultanea de ser necesario, porque se lanza un nuevo proceso por cada solicitud de conexión recibida, la arquitectura de multiprocesamiento implica una simple técnica de IPC para comunicar la necesidad de la creación de otro archivo .log


Los comandos que atiende el servidor son:

    INN id_de_empleado     donde identificador de usuario identifica a cada empleado

    OUT id_de_empleado

   RETR password                        donde password es la palabra clave para mostrar la lista

 

     El escenario básico de funcionamiento tendrá conexiones con el comando INN que indicaran sobre el archivo log la entrada de un empleado comandos OUT indicarán la salida de un empleado. RETR provocará que si el password suministrado es el correcto, el servidor procederá a enviar la lista de Entradas / Salidas mediante el socket hacia el cliente solicitante, procedera a marcar el archivo log (local) como archivo ya transferido y luego creará un nuevo archivo log, con nombre formado por la fecha y hora actual para empezar a registrar las nuevas Entradas / Salidas de empleados.

      He utilizado la api POSIX del kernel GNU/Linux, se han cuidado los buffers para evitar overflows, se utilizan funciones de cadena de longitud fija para mayor seguridad, se cuidan los procesos hijos muertos para evitar zombies y se utilizan llamadas de bajo nivel para acceder al filesystem garantizando accesos rápidos y concisos.-

 

Descargar Proyecto -- Ejemplos de Clientes Escritos en VB