next up previous contents
Next: Sistemas que adaptan código Up: Sistemas con kernel extensible Previous: El Exokernel

SPACE

SPACE [133, 134] es un SO que difiere en las abstracciones básicas que implementa del resto de los SSOO tradicionales. Tradicionalmente se toman procesos (a veces threads), memoria virtual e IPC como las abstracciones básicas que hay que implementar. En SPACE se opta en cambio por implementar procesadores, espacios de direcciones y un mecanismo de excepciones. SPACE trata de exponer el hardware disponible de tal modo que sea factible la coexistencia de abstracciones convencionales de propósito general y abstracciones desarrolladas a medida de las aplicaciones, igual que hacemos en Off.

Las abstracciones más significativas que implementa SPACE son los espacios (de los que toma el nombre), los dominios y los portales. Los espacios suministran las traducciones para las direcciones empleadas por el procesador. El resultado de la traducción puede ser una dirección de memoria o un portal. En realidad, un portal es tan sólo una dirección que no tiene traducción; el fallo de página es gestionado por SPACE que lo traduce en una invocación a portal. Los dominios de SPACE son una generalización de los bits de válido y escribible empleados por el hardware para cada traducción. Un dominio en SPACE es un mapa de bits que restringe las direcciones que es posible emplear (esto incluye los portales que es posible direccionar).

Como hemos dicho, el mecanismo empleado por SPACE para enviar eventos a las aplicaciones también recibe el nombre de Portal. No obstante, SPACE incorpora distintos tipos de portales con distinta semántica (RPCs, interrupciones, etc.).

En pocas palabras, SPACE lleva al extremo el modelo de Exokernel. En SPACE se extrae del tex2html_wrap_inline8127kernel incluso la asignación y la revocación de recursos. Igual que sucede con el Exokernel, SPACE es un sistema centralizado, por lo que no se considera la distribución en el modelo propuesto.



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