Sistemas operativos modernos
tentes (Ghormley et al., 1998). Muchos de estos sistemas permiten a los usuarios añadir su pro pio código al kemeh lo que hace surgir el problema obvio de cómo permitir extensiones de usuario sin poner en peligro la seguridad. Entre las técnicas están interpretar las extensiones, restringirlas a “cajas de arena” de código, usar lenguajes con seguridad de tipos y usar firmas de código (Grimm y Bershad, 1997, y Small y Seltzer, 1998). Druschel et al. (1997) presentan una opinión contraria, alegando que se está inviniendo demasiado esfuerzo en la seguridad de los sistemas extensibles por el usuario. Según ellos, los investigadores deben determinar qué extensiones son útiles y simplemente incorporarlas al kernel, sin permitir a los usuarios exten derlo sobre la marcha. Aunque una estrategia para eliminar los sistemas operativos inflados, plagados de errores y poco confiables es hacerlos más pequeños, una más radical consiste en eliminar del todo el sistema operativo. El grupo de Kaashoek en el MIT está adoptando este enfoque en sus inves tigaciones sobre exokernels. Se trata de tener una capa delgada de software que se ejecuta so bre el hardware desnudo y cuya única misión es asignar de manera segura los recursos de hardware a los usuarios. Por ejemplo, el exokemel debe decidir quién puede usar qué parte del disco y dónde deben entregarse los paquetes de red que lleguen. Todo lo demás se deja a los procesos en el nivel de usuario, lo cual hace posible construir sistemas operativos tanto de pro pósito general como altamente especializados (Engler y Kaashoek, 1995; Engler et al., 1995, y Kaashoek et al., 1997). 1.9 BOSQUEJO DEL RESTO DEL LIBRO Ya terminamos nuestra introducción y vistazo al sistema operativo. Ha llegado el momento de en trar en detalles. El capítulo 2 trata los procesos; examinaremos sus propiedades y la forma en que se comunican entre sí. También daremos varios ejemplos detallados de la comunicación entre procesos y de cómo evitar algunos de los escollos. El capítulo 3 trata los bloqueos irreversibles. En este capítulo ya explicamos en forma bre ve en qué consisten, pero hay mucho más que decir al respecto; veremos formas de prevenir los o evitarlos. En el capítulo 4 estudiaremos los pormenores de la administración de memoria. Examina remos el importante tema de la memoria virtual, junto con conceptos íntimamente relaciona dos, como paginación y segmentación. La entrada/salida es el tema del capítulo 5. Examinaremos los conceptos de independen cia y dependencia del dispositivo, y utilizaremos como ejemplos varios dispositivos importan tes, entre ellos, discos, teclados y pantallas. Luego, en el capítulo 6, llegaremos al muy importante tema de los sistemas de archivos. En gran medida, lo que ve el usuario es el sistema de archivos. Examinaremos tanto la interfaz como la implementación del sistema de archivos. En este punto habremos terminado nuestro estudio de los principios básicos de los siste mas operativos para una sola CPU. No obstante, hay mucho más de qué hablar, sobre todo acerca de temas avanzados. En el capítulo 7 examinaremos los sistemas multimedia, que tie nen varias propiedades y requisitos que difieren de los sistemas operativos convencionales.
RkJQdWJsaXNoZXIy MjI4NDcx