Contenido Estructura del computador Ejecución de instrucciones

0 Sistemas operativos: una visión aplicada Capítulo 1 ...
Author: Ángela Platero
0 downloads 2 Views

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

1 Contenido Estructura del computador Ejecución de instruccionesInterrupciones Reloj del computador Jerarquía de memoria Entrada/Salida Protección Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

2 Esquema de funcionamiento de la computadoraSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

3 Estructura del computadorMonoprocesador Multiprocesador Multicomputador Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

4 Modelo de programación del computadorJuego de instrucciones (usuario y núcleo) Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

5 Modelo de programación de usuario y de núcleoNiveles de ejecución Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

6 Secuencia de ejecución del computadorSecuencia de trabajo del computador Ruptura del secuenciamiento lineal de instrucciones La instrucción de salto modifica el CP Se produce una interrupción interna o externa (el procesador automodifica el CP) La instrucción de trap produce una interrupción Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

7 Interrupciones Ruptura de la secuencia de ejecución HW SOSalva agunos registros del procesador (CP y registro de estado) Eleva el nivel de ejecución del procesador (nivel de núcleo) Salta al SO SO Rutina tratamiento de la interrupción S.O. Agente que Tabla interrumpe Interr. Rutina Trat. Solicitud de Vector Interrupción Interrupción Unidad de control Memoria Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

8 Interrupciones Fuentes de las interrupciones: Excepciones de programaInterrupciones periódicas de reloj Interrupciones de E/S Excepciones del HW Instrucciones TRAP Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

9 Reloj del computador Tres visiones del relojOscilador que gobierna las fases de las instrucciones de máquina Interrupción periódica Contador  fecha y hora Contabiliza unidades de tiempo (p.e. segundos) desde un instante (p.e. 0 h del 1 de enero de 1990) Esta cuenta la puede hacer: HW especial con batería SO Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

10 Jerarquía de memoria Elementos de información replicados en varios niveles de la jerarquía Problema de coherencia Migración de la información Automática Por demanda explícita Traducción de direcciones Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

11 Jerarquía de memoria Proximidad referencial TemporalEspacial (secuencial) Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

12 Jerarquía de memoria Migración de la información AutomáticaPor demanda explícita Migración automática Tamaño de los bloques transferidos Política de extracción Política de reemplazo Política de ubicación Traducción de direcciones Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

13 Asignación de memoria clásicaLos programas reciben del SO un espacio de memoria para su ejecución Monoprogramación Multiprogramación Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

14 MEMORIA VIRTUAL

15 Fundamentos de la memoria virtualEl procesador utiliza y genera direcciones virtuales Parte del mapa de memoria (virtual) está en disco (swap) y parte en memoria principal La MMU (memory management unit) traduce las direcciones virtuales en físicas La MMU produce un fallo de página (trap) cuando la dirección no está en memoria principal El SO trata el fallo de página, haciendo un transvase entre la memoria principal y el swap (disco) Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

16 Asignación de memoria virtualUn solo segmento Varios segmentos Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

17 División de páginas de los espacios de memoriaEl espacio virtual se divide en páginas Algunas páginas están en memoria principal El SO se encarga de que estén en mem. principal las páginas necesarias Para ello trata los fallos de página producidos por la MMU Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

18 Traducción de direccionesLa MMU realiza la traducción de página virtual a marco de página n-1 p p-1 n-1 p p-1 Dirección X Dirección página Dirección página virtual Traductor m-1 p p-1 Dirección Y Direcc. página Página real División de la dirección Traducción de la dirección Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

19 Tablas de páginas El SO genera y mantiene las tablas de páginas. La MMU las usa para hacer la traducción Una tabla distinta por proceso Tabla de un nivel Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

20 Elementos de la tabla de páginasOtras informaciones Copy on Write Edad No pagina (fija en memoria física) Rellenar a ceros Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

21 Ejemplo de traducción con tablas de páginasSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

22 Tablas de páginas de dos nivlesEs más flexible Ocupa el espacio de memoria requerido realmente Necesita tres accesos a Mp por cada acceso de la UCP Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

23 Ejemplo de traducción con tabla de dos nivelesSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

24 Direcciones no válidas con tabla de dos niveles Página virtual Byte Dirección virtual Tabla de páginas Tabla de índices (segmentos) Tamaño=9 Tamaño=7 Tabla de páginas TRAP Tamaño=5 Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

25 ENTRADA/SALIDA

26 E/S y concurrencia Concurrencia entre UCP y la E/SE/S programada: concurrencia nula E/S por interrupciones: concurrencia E/S por DMA: máxima concurrencia El SO se encarga de explotar la concurrencia entre la UCP y la E/S Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

27 Transferencia de datosEspera activa n = 0 while n < m read registro_control if (registro_control = dato_disponible) read registro_datos store en memoria principal n = n + 1 endif endwhile Espera pasiva Uso de interrupciones Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

28 Organización del discoSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

29 PROTECCIÓN

30 Protección UCP Niveles de ejecuciónNúcleo: ejecuta todas las instrucciones de máquina. Permite acceder a la E/S y registros especiales Usuario: ejecuta un subconjunto de las instrucciones Instrucciones privilegiadas sólo posible en modo núcleo Las interrupciones pasan automáticamente a modo de ejecución núcleo (sólo se puede pasar de esta forma) Interrupción Núcleo Usuario Cambiar a modo usuario Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

31 Protección El uso del reloj impide que se monopolice la UCPE/S: siempre mediante instrucciones privilegiadas Memoria Memoria principal: registros valla o claves Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

32 Protección: división del mapa de memoriaMemoria virtual Espacios de memoria virtual independientes Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

33 Tabla de páginas como mecanismo de protección de memoriaMemoria virtual Regiones definidas por la tabla de páginas Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

34 Estructura de un multiprocesadorSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

35 Estructura de un multicomputadorSistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez