void procesarFinalizacion(t_mensaje* detalle,sock_t* socketMemoria) { pidCondicion = detalle->PID; bool resultado = list_any_satisfy(espacioOcupado,validarMismoPid); if(resultado == 1) { liberarProceso(detalle->PID); mostrarEstadisticas(detalle->PID); } else { log_error(SwapLog,"Se intenta eliminar un proceso que no existe en memoria."); } //Se envia 1 si salio bien y 0 en caso contrario. int32_t mensaje = resultado; int32_t status = send(socketMemoria->fd, &mensaje, sizeof(int32_t),0); if(!status) { printf("Irregularidad en el envio\n"); } }
/* * LLAMADA AL SISTEMA: sis_terminarProceso */ int sis_terminarProceso() { printk("-> FIN PROCESO %d\n", procesoActual->id); liberarProceso(); return (0); /* no deberÌa llegar aqui */ }