next up previous contents
Next: Angel y Mungi Up: Sistemas basados en kernel Previous: Paramecium

Ra

El tex2html_wrap_inline8127kernel Ra [7] es el sucesor de Clouds [149] y presenta características presentes también en Spring y Paramecium, aunque Ra fue desarrollado con anterioridad a dichos sistemas y puede considerarse un precursor de los mismos. Clouds era un sistema monolítico y su sucesor, Ra, es ahora un tex2html_wrap_inline8127kernel extensible orientado a objetos. La extensibilidad se soporta (al igual que en Paramecium) permitiendo que ciertos objetos puedan ``descargarse'' en el tex2html_wrap_inline8127kernel de tal modo que su código pueda ejecutar en modo privilegiado.

Ra soporta un modelo de objetos pasivo (igual que Spring) de tal modo que los Isibas (la abstracción que modela computaciones activas o flujos de control) de Ra son capaces de atravesar diferentes dominios de protección a lo largo de su vida. Tanto Ra como Spring (y otros sistemas que permiten el uso modelos de objetos pasivos) asocian los espacios de direcciones a los Threads del mismo modo que Off asocia DTLBs a Shuttles. Al contrario que en estos sistemas, en Off se aplica el mismo tipo de asociación para el resto de los recursos que necesitan los Shuttles (niveles de privilegio de ejecución, niveles de privilegio de E/S, etc.) mediante la introducción de las Propiedades.

Además de Isibas, Ra introduce también ``espacios de direcciones'' y ``segmentos'' como sus abstracciones principales. Los espacios de direcciones modelan los dominios de protección y los segmentos se emplean (entre otros usos) para caracterizar los distintos bancos de memoria física presentes en el sistema. Lamentablemente, la gestión de estos ``segmentos'' y ``espacios de direcciones'' está contenida en el núcleo y no es factible alterarla (aunque la OO permita escoger distintas implementaciones para dichas abstracciones en tiempo de compilación).



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