Page 63 - e-book Sistemas Operativos
P. 63

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