Tema 2
Transcripción
Tema 2
A. Temario de Teoría (3C) Tema 1: Objetivos y Programación de la Asignatura (1h) Tema 2: Administración de Sistemas like_Unix ( 6 h) • Introducción (Funciones del Administrador) • Tareas rutinarias y de puesta a punto Tema 3: Evaluación de rendimiento (4 h) • Caracterización de la carga • Modelos • Simulación y monitorización Tema 4: Sintonización de un S.O. (3 h) • El arte de la Administración de Sistemas • Estrategias de sintonización Tema 5: Diseño de Sistemas Operativos ( 4 h) • Filosofías de diseño • Unix Multiprocesador • Microkernels, Exokernels y SASOS • S.O. Tiempo Real (S. O. Multimedia) Tema 6: Sistemas Distribuidos (7 h) • Implicaciones del procesamiento distribuido • Sistemas Operativos Distribuidos - Tipos de Sistemas - Diseño de sus módulos • Clusters y Grid Diseño de Sistemas Operativos • Introducción • Filosofías de diseño • Tendencias actuales (SMP, SSI, Extensiones) Diseño de Sistemas Operativos • Introducción • Filosofías de diseño • Tendencias actuales (SMP, SSI, Extensiones) Introducción (I) “Muchos son los usuarios que utilizan los sistemas operativos, pocos los que los entienden y sólo una minoría los diseñan” (M. Milenkovic) S.O. = Módulos (estructuras de datos + algoritmos), (Técnología + Ingeniería S/W) El diseño de los S.O., es mas un proyecto de ingeniería que una ciencia exacta Introducción (II) • Definición de abstracciones • Proporcionar operaciones primitivas • Garantizar el aislamiento • Administrar el h/w Se deberá tener una idea clara de lo que se quiere Introducción (III) Manejo de abstracciones: Procesos Ficheros Semáforos ... Operaciones primitivas + Estructuras de datos Introducción (III bis) "Dificultad que supone la implementación de los módulos de forma aislada" Introducción (IV) Diseño de S.O. Elementos clave a tener presente: - Ninguno entiende el producto por completo - Tipo de aplicaciones - No es posible la división en subtarea independientes - Concurrencia y usuarios hostiles - Aislamiento Vs compartición - Vida larga del mismo, adaptarse - Portabilidad y compatibilidad - Generalidad Introducción (V) • Protegerse de los cambios (ciclo h/w & S.O) • A la vista de los rápidos cambios: ¿Obviará el h/w los programas de control La potencia del h/w hará más necesario el uso del S.O. ? ¿ Será necesario redefinir las funciones del kernel del S.O. ? • Manejar la complejidad de las operaciones a diferentes niveles de detalle (h/w y s/w , ns, ms, s, etc) Diseño de interfaces Main goals: The Mytical Man-Month • Fred Brooks (OS/360, 75) 1000 líneas /año en proyectos grandes. 2 años - 1/3 Planificación (8 meses / n**2 ) - 1/6 Codificación - 1/4 Prueba de módulos - 1/4 Prueba del sistema El papel de la experiencia Traditional software design progresses in stages Alternative design produces a working system –that does nothing starting on day 1 Diseño de Sistemas Operativos • Introducción • Filosofías de diseño • Tendencias actuales (SMP, SSI, Extensiones) Filosofías de diseño • Monolítica • Modular • Extensible • Niveles Eficiencia Vs Organización Filosofías de diseño (I) Simple structuring model for a monolithic system Approximate structure of generic UNIX kernel The client-server model Structure of VM/370 with CMS Structure of Minix Logon Aplic a c ión Aplic a c ión Sub siste ma MS-DOS Sub siste ma de Se gurida d Aplic a c ión Subsiste ma POSIX Sub siste ma de Win32 Modo Usua rio Modo Núc le o Se rvic ios de l Siste ma Eje c utivo de Windows NT (Object Manager, Virtual Memory Manager, .... ) Núc le o de Windows NT (Estructuras y servicios básicos del SO) Ca pa de Abstra c c ión d e l Ha rdwa re (CPU, bus, controladores,...) Ha rdwa re Structure of Windows NT Filosofías de diseño (II) API S.O. Distribución de funciones ? H/W Diseño de Sistemas Operativos • Introducción • Filosofías de diseño • Tendencias actuales (SMP, SSI, Extensiones) Tendencias actuales Nonpreemptive System_call & Kernel kernel_flotante Interrupciones iSMP SMP EXTENSIÓN DE FUNCIONALIDAD Time _ Sharing Transparencia R´S SSI Tipo S.O. Multiprocesador (1) Bus Each CPU has its own operating system Tipo S.O. Multiprocesador (2) Bus Master-Slave multiprocessors Tipo S.O.Multiprocesador (3) Bus • Symmetric Multiprocessors – SMP multiprocessor model Sincronización Multiprocesador TSL (test and set lock) Tendencias actuales Nonpreemptive System_call & Kernel kernel_flotante Interrupciones iSMP SMP EXTENSIÓN DE FUNCIONALIDAD Time _ Sharing Transparencia R´S SSI 1960 1990 1995+ Taxonomía (1/3) A R Q U IT E C T U R A S PARALELAS S IS D VECTOR PRO CESSO R S IM D M IS D M IM D ARRAY PRO CESSO R M U L T ICO M PU TAD O R ES Acoplamiento (memoria) M U L T IPRO CESA D O RES Taxonomía (2/3) MULTICOMPUTADORES MPP S/W y Red propietario Estabilidad del sistema COW Componentes comerciales Taxonomía (3/3) COW Ok_idle Negociar con el owner NOD E D IC A D O D E D IC A D O Middleware M O D IF IC A R SCH ED U LER CPU M Á Q U IN A V IR T U A L PARALELA + CARGA LOCAL Headless WS REXEC M IG R A C IÓ N P R IO R ID A D CARGA LOCAL I/O= Red+ disco No_owner Tendencias en diseño de S.O.(1/2) G 2100 2100 2100 2100 2100 2100 2100 2100 2100 F L O P S ¡ Experiencia ! Tendencias en diseño de S.O.(2/2) JMiddleware Application PVM / MPI/ RSH Middleware or Underware level SSI –PVM, TreadMark (DSM), Glunix, Condor, Codine, Nimrod, …. JApplication level SSI –PARMON, Parallel Oracle, ... JOS level SSI –SCO NSC UnixWare Hardware/OS –Solaris-MC –MOSIX, …. MC BEOWULF COW Mono NOW CCE GLUNIX MACH AMOEBA CHORUS V System SSI Tendencias actuales Nonpreemptive System_call & Kernel kernel_flotante Interrupciones iSMP SMP EXTENSIÓN DE FUNCIONALIDAD Time _ Sharing Transparencia R´S SSI Extensión de funcionalidad Referencias • Fred Brooks. “ The Mytical Man Month” A. Wesley, 95 • Crowley. “O.S. : A Design Oriented Approach”, 97 http://www.cs.unm.edu/~crowley/osbook/begin. html • Saltzer 84. “End to End Arguments in System Design” • Corbato 91. “On Building System that will Fail” • Lampson 84. “Hints form Computer System Design”