next up previous contents
Next: Almacenamiento de shuttlesportales Up: La arquitectura del kernel Previous: Operación del sistema

Dominios de protección

Los servidores del sistema están implementados como módulos de código que ejecutan con el procesador en modo kernel. Ésto impide que los usuarios accedan directamente a la implementación de los servicios del sistema (aunque si puedan leer su estado). Sólo mediante invocación de portales pueden las aplicaciones ejecutar código del tex2html_wrap_inline8127kernel.

En la implementación actual, los servidores del sistema están co-ubicados en un único dominio de protección, el dominio del tex2html_wrap_inline8127kernel, aunque nada impediría cargarlos en distintos dominios de protección (por ejemplo para probar nuevas implementaciones y encapsular aquellos servidores en cuya implementación no confiamos).

Como acabamos de mencionar, el acceso a los servicios del sistema se realiza mediante portales (ver figura 3.3). El servidor de portales es, por lo tanto, el único que incorpora realmente llamadas al sistema, implementadas éstas de forma tradicional mediante traps. Consecuentemente, cada servidor posee un portal (como puede verse en la figura 3.1) como único punto de acceso. Esto, que ya es práctica usual en los SSOO (por ej., en Mach [2]), permite que los usuarios ignoren el dominio de protección en que se encuentran realmente los servicios del sistema puesto que la invocación de portales independiza al usuario de los dominios de protección involucrados en una llamada. Como beneficio directo, en aquellas ocasiones en que todo un nodo se destina a un único fin (como en sistemas de tiempo real, o en nodos dedicados a ser únicamente servidores de Web, etc.) es posible emplear un único dominio de protección para aumentar el rendimiento. Incluso en tal caso, los usuarios verían los servicios del sistema como una serie de portales que pueden invocar.

  figure3750
Figure 3.3: Llamadas al sistema.

Otro beneficio del empleo de portales es la habilidad para realizar interposiciones o redefiniciones de los servicios del sistema. Para acceder a un servicio del sistema cualquier usuario emplea el identificador de portal del servidor que los implementa. Estos identificadores los suministrará habitualmente el servicio de nombres implementado por el SOgif. Si dicho servicio de nombres engaña a una aplicación interesada en el portal de determinado servicio del sistema y le da un identificador de portal diferente, esta utilizará una implementación diferente de dicho servicio. Esto se puede emplear para simular polimorfismo (emplear distintas implementaciones para suministrar el mismo servicio) en los servicios del sistema.


next up previous contents
Next: Almacenamiento de shuttlesportales Up: La arquitectura del kernel Previous: Operación del sistema

Francisco J. Ballesteros
Fri Dec 19 17:18:03 MET 1997