Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 2
Tema 2
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Indice
1 2 3 4
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach Sistemas operativos para sistemas distribuidos
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Service procedures
Utility procedures
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Organizaci on modular
La funcionalidad se encuentra dividida entre componentes l ogicos independientes con interfaces bien denidas Un SO modular se implementa mediante diversos m odulos de programa y/o procesos Ventajas: f aciles de mantener y modicar debido a la encapsulaci on funcional y a la abstracci on de datos Inconveniente: potencial degradaci on del rendimiento Ejemplo: Choices, Linux (?),. . .
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Con esta organizaci on, cuando Choices se implementa en una nueva plataforma hardware:
las funciones de los m odulos, las interfaces y las interacciones est an ya denidas la implementaci on de un m odulo se hereda desde la clase base y despu es se rena para realizar la implementaci on sobre un hardware concreto Programaci on orientada a objetos (C++) a nivel de S.O.
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Si todas las capas del SO en modo n ucleo SO monol tico? Ejemplo: THE, Venus, Windows Server (?), . . .
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Estructura de Windows NT
POSIX program Service process POSIX subsystem Win32 program Win32 subsystem OS/2 program OS/2 subsystem User mode Kernel mode
System services I/O mgr File sys D Object Process Memory Security Cache mgr mgr mgr mgr mgr Kernel Hardware Abstraction layer (HAL) Hardware
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
PnP mgr
LPC mgr
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
2 3 4
Uniformidad de interfaces: los procesos solicitan cualquier servicio enviando un mensaje Extensibilidad: es f acil a nadir nuevos servicios Flexibilidad: el producto nal es totalmente congurable Transportabilidad: basta con cambiar algunas partes del micron ucleo Fiabilidad: un peque no micron ucleo puede probarse de un modo muy riguroso Soporte para sistemas distribuidos: los mensajes se pueden enviar entre procesos locales y remotos Soporte para SSOO orientados a objetos: mediante alg un modelo de componentes
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
Los n ucleos extensibles o micron ucleos los podemos clasicar, a grandes rasgos, en 3 tipos:
m aquinas virtuales exokernels modelos cliente-servidor
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
M aquinas virtuales
El monitor de m aquina virtual (el micron ucleo) se ejecuta sobre el HW directamente, realiza la multiprogramaci on y proporciona varias m aquinas virtuales a la capa superior El SO no a nade funcionalidad nueva Las m aquinas virtuales son copias exactas del HW Es posible ejecutar varios SSOO a la vez Ejemplo: VM/370 de IBM con CMS (ojo: a nos 70)
Virtual 370s
System calls here I/O instructions here Trap here CMS CMS VM/370 370 Bare hardware CMS Trap here
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
M aquinas virtuales
Ejemplo: el modo 8086 virtual de los procesadores 386
En este modo, el procesador act ua como un 8086 Instrucciones normales: se ejecutan en el HW directamente Interrupciones y operaciones protegidas de E/S: salto (trap ) al monitor de la m aquina virtual Dos variantes (seg un qui en trate la llamada al sistema):
1
MS-DOS (u otro SO) se ejecuta en el 8086 virtual y las llamadas al sistema se rebotan al SO El monitor atiende las llamadas al sistema (necesario un monitor espec co)
En cualquier caso, la E/S siempre la atiende el monitor haciendo uso del SO antri on
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
Exokernels
Presentan una copia exacta de la m aquina real pero con un subconjunto de los recursos de la misma Caracter sticas de un exokernel: Se ejecuta en la capa m as baja, en modo n ucleo Asigna recursos a las m aquinas virtuales, las cuales son conscientes de qu e recursos se les han asignado Controla los intentos de uso de los recursos, evitando interferencias entre las m aquinas virtuales Cada m aquina virtual puede ejecutar su propio SO, que estar a limitado a los recursos asignados Son m as r apidos al eliminar un nivel de traducci on o correspondencia (no hay discos duros virtuales, etc.) Tambi en separa la multiprogramaci on (en el exokernel) y el c odigo del SO del usuario (en el espacio de usuario)
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
Modelos cliente-servidor
No simulan una m aquina Tratan de subir c odigo del SO a capas superiores (en espacio de usuario) dejando un micron ucleo m nimo Dos tipos de procesos: proceso cliente (solicita un servicio) y proceso servidor (proporciona un servicio) El n ucleo maneja la comunicaci on entre clientes y servidores, la cual se realiza, habitualmente, intercambiando mensajes:
Client process Client process Process server Terminal server Microkernel Client obtains service by sending messages to server processes File server Memory server User mode Kernel mode
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
Modelos cliente-servidor
Al dividir el SO en partes (servidores), este es m as f acil de implementar, depurar y extender Los servidores se ejecutan en espacio de usuario el fallo de un servidor no tiene por qu e afectar a todo el sistema Problema: algunos servidores necesitan acceder al hardware. Dos soluciones: Algunos servidores dentro del n ucleo Mensajes especiales que el kernel reconoce y trata El modelo cliente-servidor es f acilmente adaptable a sistemas distribuidos (Mach, Chorus, etc.):
Machine 1 Client Kernel Machine 2 File server Kernel Machine 3 Process server Kernel Machine 4 Terminal server Kernel
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
El micron ucleo de Mach proporciona mecanismos para la gesti on de procesos, memoria y dispositivos Puede crearse un SO deniendo un servidor que use el micron ucleo para implementar la interfaz deseada de SO El servidor de SO implementa el gestor de cheros y varios m odulos de pol tica para los mecanismos implementados en el micron ucleo
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Caracter sticas de los micron ucleos M aquinas virtuales Exokernels Modelos cliente-servidor El sistema operativo Mach
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Principal caracter stica diferenciadora: la transparencia de red, aunque a veces la frontera es difusa Los sistemas operativos de red:
no hay transparencia de red (o es parcial) proporcionan distintos servicios y mecanismos de comunicaci on entre procesos: transferencia de cheros, interconexi on de terminales, sistemas de cheros remotos, IPC, RPC, . . .
Ejemplos de SSOO de red: cualquier versi on actual de UNIX, Linux y Windows Server
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
En un SOD un proceso percibe el entorno de c omputo como un u nico sistema en lugar de como un conjunto de computadores individuales Ejemplos: Mach y CHORUS
Juan Piernas C anovas Tema 2. Arquitecturas de Sistemas Operativos
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Bibliograf a
Gary Nutt. ((Sistemas Operativos)), 3a edici on, cap tulo 19. Addison Wesley, 2004 Andrew Tanenbaum. ((Sistemas Operativos Modernos)), 2a edici on, cap tulo 1. Prentice Hall, 2003 William Stallings. ((Sistemas Operativos)), 4a edici on, cap tulo 4. Prentice Hall, 2001
N ucleos monol ticos Organizaci on modular Organizaciones estraticadas o por capas N ucleos extensibles o micron ucleos Sistemas operativos para sistemas distribuidos Bibliograf a
Bibliograf a
Jochen Liedtke. ((Toward Real Microkernels)). Communications of the ACM 39(9), pp. 7077, 1996 Abraham Silberschatz y Peter B. Galvin. ((Sistemas Operativos)), 5a edici on, cap tulo 3. Addison Wesley Longman, 1999