Temario. Diseño de Sistemas Operativos. Módulo 1. Conceptos y Tipologías. Tema 1. Introducción. Francisco Rosales. 4º Curso

Documentos relacionados
1. Introducción 4º Curso

Capítulo 2 Introducción a los sistemas operativos

PROCESOS E HILOS - Hilo

Introducción a los Sistemas Operativos S.O.

ENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS

TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O

Hilos Secciones Stallings:

Tema 1: Introducción a los Sistemas Operativos

CONCEPTO. Actúa de intermediario entre el hardware y los programas de aplicación.

Necesidad de Protección

Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Gustavo Antonio González Morales Eduardo Solis Lara Francisco Javier Merodio Molina

Introducción a los Sistemas Operativos

TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS.

Clases 02 & 03: Revisión de conceptos

Sistemas Operativos. Estructura de los sistemas operativos

1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño. Tema5: Sistemas Operativos Distribuidos

Introducción a los Sistemas Operativos

Sistemas operativos Tema 3: Estructura del sistema operativo

Sistemas Operativos 1

SISTEMAS OPERATIVOS: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS. Introducción y conceptos básicos

Introducción a los Sistemas Operativos

TEMA 10 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS DISTRIBUIDOS. Introducción Hardware Software Aspectos de diseño

TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS

12/06/2013 USUARIO. /dev /bin /usr /usr/bin /usr/lib /usr/spool /sbin y /usr/sbin /stand /var

Estructura de los sistemas de cómputo

Sistemas Operativos Tema 2: Estructura del computador José Miguel Santos Alexis Quesada Francisco Santana

Preguntas de autoevaluación tema 1

PROCESAMIENTO DISTRIBUIDO

Tema 1: Introducción a los Sistemas Operativos

Sistemas Operativos. Curso 2017 Estructura de los sistemas operativos

Fundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del sistema operativo ULPGC - José Miguel Santos Espino

Introduccion a Sistemas Operativos. Ej: Linux

Sistemas Operativos Ricardo Sanz

Unidad 1: Conceptos generales de Sistemas Operativos.

Sistemas Operativos. Introducción. Tema 6

SISTEMAS OPERATIVOS - DEFINICIÓN:

Hoja de respuestas. Examen tipo A

Sistemas Operativos y Distribuidos. Mg. Javier Echaiz D.C.I.C. U.N.S.

Tema 7. Entrada / Salida

SISTEMAS OPERATIVOS Capítulo 2 Concepto. Funciones.

Herramientas Informáticas I Software: Sistemas Operativos

Introducción a los sistemas operativos. Ing Esp Pedro Alberto Arias Quintero

Problemas que resuelve un S.O. (2)

Convivencia Introducción

Sistemas Operativos. Daniel Rúa Madrid

Universidad Autónoma de Baja California Facultad de Ciencias Administrativas Unidad Mexicali

UNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO INGENIERÍA EN COMPUTACIÓN

Introducción a la Computación. Capítulo 7 Entrada/Salida

Funcionamiento de la computadora

ENTRADA/SALIDA. Universidad San Pablo-CEU Escuela Politécnica Superior Rodrigo García Carmona

EL SISTEMA OPERATIVO. Dónde estamos?

Sistemas Operativos- Evolución Histórica

IB14 Informática para la construcción. Tema 3. Sistemas operativos y programas

Proceso. Threads, SMP, and Microkernels. Multithreading. Proceso

INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS. Rodrigo García Carmona Universidad San Pablo-CEU Escuela Politécnica Superior

INDICE 1. Introducción 2. Entrada / Salida: Principios y Programación 3. Procesos

SISTEMAS OPERATIVOS Introducción. Amilcar Meneses Viveros

Contenidos. Para el usuario. Para el programador. Para el desarrollador del sistema operativo.

1 ( 3,5 puntos) Responda, justificando sus respuestas, a las siguientes cuestiones:

Sumario Prólogo Unidad didáctica 1. Introducción a los sistemas operativos Objetivos de la Unidad... 12

ESCUELA DE INGENIERIA Informática Y Sistemas

SISTEMAS OPERATIVOS: SISTEMAS DE FICHEROS. Ficheros

Parte I:Teoría. Tema 3:Introducción a los Sistemas operativos. Instalación

Arquitectura de Computadores, SO

Introducción a los Sistemas Operativos

Tema 1: Introducción a los Sistemas Operativos

Unidad 1: Conceptos generales de Sistemas Operativos.

Threads, SMP y Microkernels. Proceso

Computación 1. Conociendo la herramienta de cálculo La Computadora (II)

6. Enumere tres ventajas de los ULT frente a los KLT.

Introducción a los Sistemas Operativos

A continuación se presentan algunas definiciones de Sistemas Operativos:

Programación Concurrente Recopilación de teoría referente a la materia

Sistemas operativos: una visión aplicada. Capítulo 1 Conceptos arquitectónicos

UNIDAD II. Software del Computador. Ing. Yesika Medina Ing. Yesika Medina

Tema III: Componentes de un Sistema Operativo

Tema 1: Arquitectura de ordenadores, hardware y software

SISTEMAS OPERATIVOS Arquitectura de computadores

TEMA II: ALMACENAMIENTO DE LA INFORMACIÓN

Fundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del computador y el SO

FUNDAMENTOS DE SISTEMAS OPERATIVOS

Historia Logros. Sistemas Operativos. Introducción a los Sistemas Operativos. Esteban De La Fuente Rubio L A TEX

Sistemas Operativos. MODULO I. ANTECEDENTES 1.2 introducción a los ordenadores

Sistemas Distribuidos. Soporte de Sistemas Operativos

Estructura Windows NT

Sistemas Operativos. Curso 2014 Estructura de los sistemas operativos

SISTEMAS OPERATIVOS INTRODUCCIÓN. Pedro de Miguel Anasagast

UN VIAJE AL INTERIOR DE LOS SISTEMAS OPERATIVOS

Velocidades Típicas de transferencia en Dispositivos I/O

Sistemas operativos: una visión aplicada. Capítulo 2 Introducción a los sistemas operativos

Tema 12: El sistema operativo y los procesos

T1-Introducción. Índice

Capítulo 7 Entrada/salida

Arquitectura de Computadoras 2011

Sistemas Operativos Tema 1: conceptos generales

Sistemas operativos: una visión aplicada. Capítulo 3 Procesos

Transcripción:

4º Curso DATSI Universidad Politécnica de Madrid Temario 1. Introducción 2. Procesos 3. Interbloqueos 4. Gestión de Memoria 5. Administración de Sistemas 6. Entrada/Salida 7. Sistemas de Ficheros 8. Protección y Seguridad 9. Introducción a los SSOO Distribuidos Diseño Interno del Núcleo de Linux/Win Introducción: Conceptos y Estructura de SSOO 1 Tema 1. Introducción Cuatro módulos: 1. Conceptos y tipologías 2. Estructuras de un sistema de computación 3. Estructuras del sistema operativo 4. Aspectos de diseño e implementación Módulo 1. Conceptos y Tipologías Qué es un sistema operativo? Tipología de los Sistemas Operativos Introducción: Conceptos y Estructura de SSOO 2 Introducción: Conceptos y Estructura de SSOO 3 Introducción: Conceptos y Estructura de SSOO 1

Qué es un sistema operativo? Un código que actúa como intermediario entre el usuario de un computador y el hardware del mismo Objetivos del sistema operativo: Facilitar el uso al usuario (interfaz) Facilitar la programación al programador (máquina virtual extendida) Ejecutar programas eficientemente (gestor de recursos) Definiciones de sistema operativo Asignación de recursos: gestión y asignación de recursos del computador Control de recursos: controla el acceso a los datos de los programas de usuario y el uso de los dispositivos de E/S Núcleo: el único código que ejecuta siempre (por debajo y anterior a cualquier otro programa) Máquina virtual: extiende y enmascara la funcionalidad del hardware Introducción: Conceptos y Estructura de SSOO 4 Introducción: Conceptos y Estructura de SSOO 5 Tipologías de sistemas operativos Sistemas modernos: Multiprogramado Tiempo compartido Sistemas de computación personal Sistemas paralelos Sistemas distribuidos Sistemas de tiempo real Multiprogramación Varios trabajos en principal al mismo tiempo Se multiplexa (reparte) la CPU entre ellos, dando paso un proceso a otro: Cuando se bloque a espera de E/S. Cuando se agota una rodaja de tiempo. Introducción: Conceptos y Estructura de SSOO 6 Introducción: Conceptos y Estructura de SSOO 7 Introducción: Conceptos y Estructura de SSOO 2

Multiplexación de la CPU SO SO u1 u1 u2 u2 u3 u3 u4 u4 CPU u1 u2 SO L leer L + 1 Rodaja R R + 1 ses planificador planificador interrupción planificador E/S Características de un SO multiprogramado Las rutinas de E/S pertenecen al sistema Gestión de : asignar la a varios trabajos Planificación de la CPU: elegir entre varios trabajos listos para ejecutar Se salta del código de un trabajo a otro pasado por el código del SO. Asignación de dispositivos Introducción: Conceptos y Estructura de SSOO 8 Introducción: Conceptos y Estructura de SSOO 9 Sistemas de tiempo compartido Multiprogramado CPU multiplexada. Interactivo comunicación on-line entre usuario y sistema (pequeñas rodajas de tiempo) Sistema de ficheros permite a los usuarios el acceso a datos y código (operaciones de E/S) Intérprete de mandatos Permiten arrancar otros programas. Multiusuario varios usuarios simultáneos cada usuario cree tener todo el computador Sistemas paralelos I Multiprocesadores: Varias CPU fuertemente acopladas reloj común Memoria compartida comunicación y sincronización vía Sistema operativo único Ventajas: Incremento de rendimiento Económicos Incremento de fiabilidad: degradación parcial, tolerancia a fallos Introducción: Conceptos y Estructura de SSOO 10 Introducción: Conceptos y Estructura de SSOO 11 Introducción: Conceptos y Estructura de SSOO 3

Sistemas paralelos II 1 red red fuertemente acoplada (bus, switch,...)...) 2 3 n Tipos de sistemas paralelos Según el número de CPUs: Supercomputadores De 64 en adelante (miles) Grandes Multiprocesadores De 4 a 64 Servidores o equipos paralelos De 2 a 4 Introducción: Conceptos y Estructura de SSOO 12 Introducción: Conceptos y Estructura de SSOO 13 Multiproceso asimétrico Cada procesador tiene asignada una tarea específica (E/S, SO, procesos...) Un procesador maestro planifica el trabajo de los esclavos Muy frecuente en algunos supercomputadores Multiprocesadores de propósito específico Multiproceso simétrico SMP Cada procesador ejecuta una misma copia del SO Muchos procesos simultáneos sin pérdida de rendimiento Cada procesador ejecuta el primer trabajo listo para ejecutar, no hay jerarquía Introducción: Conceptos y Estructura de SSOO 14 Introducción: Conceptos y Estructura de SSOO 15 Introducción: Conceptos y Estructura de SSOO 4

Características SO paralelo Planificador más complejo (SO) Gestión de más compleja (SO/Hw) Gestión de caches de muy importante para rendimiento (Hw/SO) Todos son recursos compartidos Programación concurrente en el SO Sistemas distribuidos I Múltiple procesadores débilmente acoplados: Físicamente separados, NO comparten Comunicación mediante mensajes Los SO se comportan como uno único Ventajas: Compartición de recursos Reparto dinámico de carga Fiabilidad: replicación y tolerancia a fallos El mismo modelo de comunicación vale para una red local o extendida, o para máquina aislada Introducción: Conceptos y Estructura de SSOO 16 Introducción: Conceptos y Estructura de SSOO 17 Sistemas distribuidos II Subtipos de sistemas distribuidos 1 2 3... red red débilmente acoplada (LAN a WAN) n Red de computadores conectados con una LAN Clusters conectados por una red de alta velocidad (dedicada) Red de procesadores con propia Introducción: Conceptos y Estructura de SSOO 18 Introducción: Conceptos y Estructura de SSOO 19 Introducción: Conceptos y Estructura de SSOO 5

Características sistemas distribuidos Cada nodo tiene su SO independiente El usuario NO debería saber donde está trabajando ni donde están sus ficheros Single System Image Los SO colaboran para crear este efecto Introducción: Conceptos y Estructura de SSOO 20 Sistemas de tiempo real Restricciones de tiempo bien definidas ejecutan tareas en el tiempo y orden prefijados STR críticos avión, satélite, médicos, etc. No pueden perder ningún deadline de tarea Almacenamiento secundario limitado o ausente Sistemas dedicados, no de propósito general STR suave multimedia, comunicaciones, etc. Pueden perder deadlines de tareas no críticas Uso limitado en sistemas de control Introducción: Conceptos y Estructura de SSOO 21 Módulo 2. Estructuras de un sistema de computación Arquitectura del computador Arquitectura del computador Funcionamiento del computador Estructura de E/S Protección por hardware Arquitectura general del sistema disco disco controlador de de disco disco impresora controlador de de impresora bus bus del del sistema controlador de de cinta cinta cinta cinta controlador de de cinta cinta Introducción: Conceptos y Estructura de SSOO 22 Introducción: Conceptos y Estructura de SSOO 23 Introducción: Conceptos y Estructura de SSOO 6

Funcionamiento del computador CPU y dispositivos de E/S en concurrencia Manejadores de dispositivos de E/S que: Se encargan de cada tipo de dispositivo Tienen almacenes locales de datos Ej. operación de entrada programada: Desde cada dispositivo a de su controlador El controlador informa a la CPU que tiene los datos listos mediante un interrupción Se dispara una rutina de tratamiento de interrupción (RTI) La CPU mueve los datos del almacén local a principal Interrupciones El sistema operativo está guiado por las interrupciones!! Tratamiento: Salvar el estado de la CPU guardando registros, CP, etc. Inhibir interrupciones, para no perder otras Determinar qué interrupción ha ocurrido (polling, vector) Indexar en vector de interrupciones y saltar a RTI RTI: tratamiento para una interrupción Restaurar estado previo para seguir ejecución Trap: interrupción generada por software error o petición de usuario Introducción: Conceptos y Estructura de SSOO 24 Introducción: Conceptos y Estructura de SSOO 25 E/S con acceso directo a E/S con acceso directo a Dispositivos de E/S que envían/toman los datos directamente a/de Sin intervención de la CPU (modo DMA) Programación: datos E/S, buffer, longitud Resultado: interrupción Indica estado de terminación (OK, ERROR) Una interrupción por bloque, no por byte instrucciones de E/S dispositivos de de entrada/salida Introducción: Conceptos y Estructura de SSOO 26 Introducción: Conceptos y Estructura de SSOO 27 Introducción: Conceptos y Estructura de SSOO 7

Modo dual de operación Modo dual de operación Compartir recursos El SO asegura que un programa no afectará a otro Solución: Mecanismo de protección hardware (bit) que permite, al menos, 2 modos de ejecución: usuario (1) y sistema (0). Instrucciones privilegiadas sólo posibles en modo sistema Cuando hay interrupción, trap o excepción, el hardware cambia a modo sistema sistema interrupción/fallo pasar a modo usuario usuario Introducción: Conceptos y Estructura de SSOO 28 Introducción: Conceptos y Estructura de SSOO 29 Protección por hardware Instrucciones de E/S: siempre instrucciones privilegiadas, modo sistema Memoria: registros base y límite por programa (caso básico) accesos fuera originan un fallo de protección CPU: temporizador que interrumpe periódicamente para dar control al SO y que decida Protección por hardware 0 256000 300040 420940 monitor tarea 1 tarea 2 256000 registro base 300040 registro límite Introducción: Conceptos y Estructura de SSOO 30 Introducción: Conceptos y Estructura de SSOO 31 Introducción: Conceptos y Estructura de SSOO 8

Arquitectura general del sistema Si las instrucciones de E/S son privilegiadas, cómo ejecuta el usuario la E/S? Llamada al sistema: Método estándar de acceso a los servicios del SO El programa genera un trap (interrupción sw) Se salta a ejecutar la RTI (servicio del SO) y a la vez se cambia a modo sistema El SO verifica los parámetros, ejecuta la petición y devuelve control en la instrucción siguiente El SO oculta las llamadas al sistema en bibliotecas que se instalan con el SO Módulo 3. Estructuras del sistema operativo Componentes del sistema Llamadas al sistema Estructura de un sistema operativo Máquinas virtuales Introducción: Conceptos y Estructura de SSOO 32 Introducción: Conceptos y Estructura de SSOO 33 Componentes del SO Básicos: Gestor de procesos Gestor de Gestor de E/S (genérica y por bloques) Servidores: Servidor de ficheros Servidor de protección y seguridad Servidor de comunicaciones por red Utilidades: Intérprete de mandatos Programas de sistema Microkernels Aplicaciones Kernels Monolíticos/Modulares Introducción: Conceptos y Estructura de SSOO 34 Gestor de procesos Un proceso es un programa en ejecución Es la unidad que consume recursos: CPU,, ficheros, etc. El SO gestionar lo siguiente de los procesos: Creación y destrucción Suspensión y reanudación Mecanismos de comunicación y sincronización Asignación de los recursos al proceso Introducción: Conceptos y Estructura de SSOO 35 Introducción: Conceptos y Estructura de SSOO 9

Tipos de procesos Procesos de usuario: Ejecutan en modo usuario habitualmente Salta a modo sistema con las llamadas al sistema y las excepciones. Procesos de núcleo: Se dan en varios SO modernos (swapd en Linux) Ejecutan permanentemente en modo sistema Son planificados por el SO como cualquier otro proceso Gestor de Memoria: Vector enorme de palabras o bytes (direcciones) Compartida por CPU y dispositivos E/S Volátil: pierde su contenido sin alimentación El SO gestiona lo siguiente de la : Qué partes están en uso y quién las está usando Qué procesos se deben cargar, y dónde Asigna y libera espacio cuando se requiere Introducción: Conceptos y Estructura de SSOO 36 Introducción: Conceptos y Estructura de SSOO 37 Gestor de entrada/salida genérica El gestor de E/S está formado por: Almacenamiento intermedio en (caché de E/S) Manejadores genéricos, uno por cada clase de dispositivo Gestión individualizada por dispositivo existente El SO gestiona lo siguiente de la E/S: Traduce peticiones a formato de manejador Copia de/hacia el controlador Controla transferencias por DMA Gestión de E/S por bloques Dispositivos rápidos de E/S (discos) Vector enorme de bloques Almacenamiento no volátil Usado como: respaldo de principal almacén secundario de datos (ficheros en última instancia) El SO gestiona lo siguiente del almacenamiento secundario: Gestión de la caché de intercambio Planificación de accesos a los discos Introducción: Conceptos y Estructura de SSOO 38 Introducción: Conceptos y Estructura de SSOO 39 Introducción: Conceptos y Estructura de SSOO 10

Servidor de ficheros y directorios Fichero: Conjunto de información lógicamente relacionada Directorio: Fichero que contiene asociaciones entre nombres de fichero e identificadores internos del SO El SO gestiona lo siguiente de los ficheros: Creación y borrado de ficheros y directorios Primitivas para manipularlos Proyectar los ficheros en Respaldar los ficheros en dispositivos no volátiles Gestión del espacio del dispositivo de bloques Servidor de protección y seguridad I Protección: Controlar el acceso a los recursos por parte de los procesos (de los usuarios) El servidor de protección debe: Distinguir entre uso autorizado y no autorizado Especificar los controles de acceso a llevar a cabo Proporcionar métodos de control de acceso Introducción: Conceptos y Estructura de SSOO 40 Introducción: Conceptos y Estructura de SSOO 41 Servidor de protección y seguridad II Seguridad: Proteger al sistema de un uso indebido (fraudulento) El servidor de seguridad debe: Autenticar a los usuarios Controlar el acceso a recursos (potencialmente) compartidos Proporcionar mecanismos controlados de configurar las operaciones anteriores Servidor de comunicaciones Para los mecanismos de comunicación local: Gestión de común. Para la comunicación remota: Implementación de protocolos de comunicación remota (TCP, IP, ARP, ) Acceso a dispositivos de comunicación (Ethernet, WiFi, ATM, ). Gestión de intermedia (buffering). Resolución de nombres (DNS) y encaminamiento (IP) Control de flujo y las conexiones. Introducción: Conceptos y Estructura de SSOO 42 Introducción: Conceptos y Estructura de SSOO 43 Introducción: Conceptos y Estructura de SSOO 11

Intérprete de mandatos Programa cuya función es obtener los mandatos del usuario y lanzar su ejecución Puede haber múltiples intérpretes de mandatos sobre el mismo SO Hay dos tipos básicos: Intérprete de mandatos en línea en modo texto, como el shell de UNIX Interfaz gráfico de usuario, como el de Windows y X-Windows Introducción: Conceptos y Estructura de SSOO 44 Programas de sistema Proporcionan un entorno adecuado para el desarrollo y ejecución de programas Son la visión del SO que tienen muchos usuarios, y no la de las llamadas al sistema Categorías: Manipulación de ficheros: copia, mover,... Información de estado: monitores,... Programación: compiladores, depuradores, Carga y ejecución: cargador, Comunicaciones: telnet, ftp, Aplicaciones: servidores BD, navegadores,... Introducción: Conceptos y Estructura de SSOO 45 Llamadas al sistema Interfaz entre aplicaciones y SO Con un trap o interrupción sw Acceso como función en los lenguajes (C, ) Paso de parámetros: En registros En, se pasa la dirección en un registro En la pila y dejar que el SO los extraiga El SO se define por sus llamadas al sistema: Estándar POSIX en UNIX Win32 en Windows NT Introducción: Conceptos y Estructura de SSOO 46 Paso de llamadas al sistema trap Programa de usuario 1 llamada al sistema Tabla de RTI... Procesamiento de la interrupción Programa de usuario n Control vuelve al programa de usuario 1 rutina de servicio Se ejecuta en modo NO privilegiado Se ejecuta en modo PRIVILEGIADO Introducción: Conceptos y Estructura de SSOO 47 Introducción: Conceptos y Estructura de SSOO 12

Sistemas monolíticos I Núcleo: Todo entre las llamadas al sistema y el hardware No dividido en módulos Interfaces y niveles de funcionalidad no separados Ej: Monitor o ejecutivo (MS-DOS) Escritos para funcionalidad específica y gestionar hardware reducido Monoproceso Sistemas monolíticos II Intérprete de mandatos Programas de usuario Programas de sistema Llamadas al sistema POSIX Win32 Núcleo Servidores Ficheros Memoria Protección Comunicaciones Manejadores Teclado Ratón Disco Introducción: Conceptos y Estructura de SSOO 48 Introducción: Conceptos y Estructura de SSOO 49 Sistemas modulares I Núcleo: Dividido en módulos con funcionalidad e interfaces claramente definidos Modular y estructurado Se pueden sustituir componentes por otros con el mismo interfaz (manejadores, sistemas de ficheros,...) Todo los módulos se ejecutan en modo sistema, pero es posible cargar y descargar dichos módulos (incluso dinámicamente). Sistemas modulares II Intérprete de mandatos Programas de usuario Programas de sistema Llamadas al sistema POSIX Win32 Núcleo Servidores Ficheros Memoria Protección Comunicaciones Manejadores Teclado Ratón Disco Introducción: Conceptos y Estructura de SSOO 50 Introducción: Conceptos y Estructura de SSOO 51 Introducción: Conceptos y Estructura de SSOO 13

Sistemas por capas Núcleo: Dividido en múltiples niveles, capas de una cebolla El más alto la interfaz de llamadas Cada nivel usa únicamente servicios del inferior y da servicio al superior Comunicación entre capas vía traps Ej: OS/2 Problema: Una llamada puede necesitar varios niveles de traps Sistemas con micronúcleo I Núcleo: Reducido a las funcionalidades mínimas imprescindibles Se sacan fuera del núcleo los demás servicios Comunicación vía paso de mensajes Servidores: Hilos de ejecución independiente Los más altos ofrecen la interfaz de llamadas Los más bajos gestionan el hardware Introducción: Conceptos y Estructura de SSOO 52 Introducción: Conceptos y Estructura de SSOO 53 Sistemas con micronúcleo II Problema: Una llamada puede necesitar muchos mensajes Mejor rendimiento complicado Ventaja: Piezas separables, paso a SO Distribuido Ej: MINIX, Mach (Windows-NT) Máquinas virtuales I Una MV crea una copia idéntica del hardware Procesador con su propia y E/S Sobre una MV se puede ejecutar cualquier SO Sobre el mismo computador varios SSOO a la vez El Monitor de MVs ejecuta sobre el HW real Cómo se hace? Planificación CPU para MV multiproceso Spooling y sistema ficheros multiplexación E/S MV del operador control del sistema Introducción: Conceptos y Estructura de SSOO 54 Introducción: Conceptos y Estructura de SSOO 55 Introducción: Conceptos y Estructura de SSOO 14

Máquinas virtuales II Ventajas: Protección sencilla, muy modular, bueno para investigación y desarrollo (SO distribuido) Inconvenientes: Difícil compartir recursos Difícil implementar duplicados exactos del HW Usado para emular SSOO sobre otros Ej. VM-370, MS-DOS en Windows, JVM o VMWare Máquinas virtuales III Instrucciones de E/S 370 virtual trap CMS MS-DOS OS/2 Monitor de máquinas virtuales Hardware desnudo trap Llamadas al sistema Introducción: Conceptos y Estructura de SSOO 56 Introducción: Conceptos y Estructura de SSOO 57 Módulo 4. Aspectos de Diseño e Implem. Objetivos de diseño Implementación Arranque del sistema Objetivos de diseño de un SO Para el usuario: Fácil de usar, fiable, seguro, potente y sencillo Internamente: Fácil de implementar y mantener Flexible, fiable, eficiente y estar libre de errores Diferenciar claramente entre: Mecanismos: qué cosas se pueden hacer Políticas: criterio para decidir qué hacer Separarlos es importante para poder afinar bien los sistemas Introducción: Conceptos y Estructura de SSOO 58 Introducción: Conceptos y Estructura de SSOO 59 Introducción: Conceptos y Estructura de SSOO 15

Implementación del sistema Tradicionalmente: ensamblador Actualmente: C y ensamblador Uso lenguaje alto nivel: Desarrollo más rápido Más fácil de comprender y depurar Más fácil de transportar de un hardware a otro (Ej. Linux, Windows-NT) Base: HAL (Hardware Abstraction Layer) Oculta los detalles específicos de la arquitectura Proporciona una interfaz de alto nivel Introducción: Conceptos y Estructura de SSOO 60 Introducción: Conceptos y Estructura de SSOO 16