Page 86 - Revista_Campoverde_Criollo
P. 86
Usar una llamada de terminación para eliminar un la aplicación. Alternativamente, se puede establecer un
hilo, lo que hará que el hilo salga del sistema servicio de nombres para registrar y encontrar el
inmediatamente; o "estar al final", que es equivalente identificador de hilo de un hilo remoto. [9]
a usar una llamada de terminación en la última
instrucción de la subrutina; o ser eliminado por algún Cuando el entorno de subprocesos desea establecer un
otro hilo, lo que requiere eliminar el hilo puerto de comunicación con otro espacio de
Identificador. Cuando todos los subprocesos a nivel direcciones de alguna manera, es importante
de usuario terminan y registran la terminación, el inicializar la dirección IP y el número de puerto que se
entorno HTR termina. Los hilos se sincronizan utilizará. La conversión de comunicación del espacio
mediante semáforos. Los atributos que especifica el de direcciones requiere una forma de determinar los
usuario al asignar un nuevo semáforo son el nombre identificadores de hilo en otros entornos HTR. Esto se
del semáforo y un valor inicial, que indica cuántas hace nombrando el hilo del servidor creado por el
instancias se necesitan, es decir, la cantidad de veces usuario, que debe ser único en cada entorno de hilo en
que se puede llamar a la primitiva de espera antes de tiempo real. Puede determinar el identificador de
que se bloquee el hilo. , Suponiendo que no se subproceso nombrado por el subproceso del servidor
realizarán llamadas desde primitivas de señal. [8] desde otro entorno de subprocesos en tiempo real, pero
necesita conocer la dirección IP y el número de puerto
El semáforo solo se puede borrar usando su nombre. del entorno de destino. Los identificadores de
Para utilizar el semáforo, también se proporcionan las subprocesos se pueden enviar en mensajes entre
primitivas de espera y señal convencionales, y se espacios de direcciones que se pueden codificar y
proporciona un método que tiene en cuenta la decodificar mediante XDR (representación de datos
necesidad de utilizar el nombre del semáforo como externos). [1]
referencia para obtener el valor actual del semáforo.
Dado que la memoria se comparte en el entorno HTR, 2.5 Planificación jerárquica (scheduling).
los semáforos se pueden compartir fácilmente entre Mecanismos
hilos. El sistema no puede garantizar que no se utilicen
los semáforos retirados. Para ayudar a detectar esto, Los diferentes planificadores implementados por los
intentar eliminar el semáforo en el que otro hilo está usuarios pueden ajustar la estrategia de planificación
bloqueado resultará en un error. Si el hilo se elimina en forma de árbol a través de subprocesos de
mientras está bloqueado por el semáforo, el estado del aplicación estructurados y mantener la fuente en el
semáforo se modificará automáticamente (su valor kernel por razones de eficiencia y seguridad. El
aumentará). planificador se utiliza para cambiar entre la aplicación
y el subsistema del kernel. Cada aplicación necesaria
2.4 Comunicación de hilos para implementar su propia estrategia de planificación
crea una instancia de un planificador en su espacio de
Los subprocesos en tiempo real proporcionan direcciones. La administración de subprocesos y
primitivas de comunicación de estilo de envío / programadores es similar a otro programador. Los
recepción / respuesta de bloqueo entre subprocesos en programadores de aplicaciones y subsistemas se
el mismo espacio de direcciones. El hilo de envío se encuentran en el espacio de usuario. Los usuarios son
bloquea hasta que se recibe el mensaje y se da una usuarios que implementan estrategias de planificación
respuesta. El hilo de recepción se bloquea hasta que se para sus hilos. Dado que la implementación requiere
recibe el mensaje. También hay una prueba de no subprocesos del kernel, una parte de cada subproceso
bloqueo, que permite que el hilo verifique si hay se usa como un objeto que se mantendrá en el kernel y
mensajes esperando recibir. la otra parte se usa como una pila en el espacio del
usuario.
El envío requiere el identificador del hilo que recibe el
mensaje y la longitud y dirección del mensaje que se Cada programador gestiona una lista de subprocesos y
enviará y recibirá. Recibir debe referirse al hilo de / o programadores. Después de la activación, decidirá
envío; puntero al búfer en el que se recibirá el mensaje cuál se ejecutará o ejecutará, y el intervalo de tiempo
y su memoria asignada por la aplicación; los virtual que se empleará en cada intervalo. Después del
parámetros de entrada / salida se utilizarán para indicar intervalo de tiempo virtual especificado, el
la longitud máxima del mensaje recibido (si es más programador volverá a hacerse cargo del procesador.
largo) se truncará. Cada programador utiliza el intervalo de tiempo
virtual recibido del programador anterior.
La respuesta requiere un identificador de hilo para la
respuesta, el indicador del mensaje de respuesta y la El temporizador por procesador es la instancia
longitud del mensaje de respuesta. Las funciones principal de activación y preferencia. Es la persona
descritas en la sección anterior también se han quien pregunta al sistema de programación qué hilo o
implementado para permitir la comunicación entre programador debe activarse, este último devuelve una
cables en diferentes espacios de direcciones (incluidas referencia al hilo o programador a activar y la división
diferentes máquinas). El ID del hilo se pasa a través de tiempo que debe obtener. La interacción entre el
del espacio de direcciones como un valor de retorno en temporizador y el programador se realiza mediante
una llamada de procedimiento o mensaje enviado por métodos de llamada (llamadas de puerta en el caso de
82