Arquitectura de Sistema Operativo para Sistemas con múltiples núcleos Microprocesadores para Comunicaciones Jesús A. Díaz Sánchez Curso 2009/2010
Introducción Multikernel Implementación: Barrelfish
Más núcleos en los procesadores Arquitecturas diversas Uso compartido de memoria Interconexión entre núcleos Obliga a desarrollar cachés exclusivos Al añadir más componentes al sistema Baja escalabilidad Ineficiencia
Concepto de maquina con núcleos independientes Modificación de funcionalidad de los SO Nueva arquitectura de SO: Multikernel Basada en conceptos de sistemas distribuidos
Sistemas distribuidos: Conjunto ordenadores autónomos en red con SW distribuido que: ▪ Permite coordinar acciones ▪ Compartir recursos Comunicación mediante el paso de mensajes
Nueva estructura de SO Configuración como sistema distribuido No comparte memoria, se envían mensajes Replicación de datos del SO Mantiene estructura del SO independiente del HW Representa directamente propiedades del HW
Arquitectura:
Creado por: ETH Zürich Microsoft Research, Cambridge ENS Cachan Bretagne Código Open Source Escrito mayoritariamente en C Introduce en cada nucleo: CPU driver Monitor
Arquitectura:
CPU Driver: Refuerza protección Encargado de autorización Y del gestión de tiempos de los procesos Mediador entre acceso al núcleo y HW asociado No comparte estado Controlado por eventos Envía mensajería local Ofrece interrupciones HW
Monitores: Coordinan estado del sistema Pertenecen a un solo núcleo Son planificables Orientado al paso de mensajes Manipula: ▪ Cola de mensajes ▪ Operaciones remotas de alta duración