Gestión de E/S y planificación de discos

Slides:



Advertisements
Presentaciones similares
Introducción Principios del Software E/S Principios del Hardware E/S
Advertisements

Capítulo I Gestión de E/S 1.- Gestión de E/S 2.- Hardware de E/S 3.- Software de E/S.
Administración de memoria
Arquitectura de Sistema de E/S
III - Gestión de memoria
Subsistemas De un Sistema Operativo Celeste Domínguez Romo
Introducción a los Sistemas Operativos Memoria Virtual
Modelo de procesos de dos estados
Consideraciones generales
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
MEMORIA VIRTUAL PAGINACIÓN
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
Gestión de Entrada / Salida
LINUX CENTOS LINUX CENTOS Prof: Carlos Jara Alva
Arquitectura del Computador
Semana 4 - periferico.
Elemento Lógico (Software)
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Tema 10: Gestión de Memoria
Administración de memoria
Administración del espacio
Sistemas Operativos Procesos.
Unidad 7 Entrada/Salida
Administración de I/O y Scheduling de disco
El ordenador es un sistema programable formado por un conjunto de elementos hardware que necesitan instrucciones que le indiquen cómo utilizar los recursos.
Profesor: Rodrigo Sanhueza Figueroa
Administración de Memoria Memoria Virtual
Memoria Cachés. Universidad de SonoraArquitectura de Computadoras2 Introducción Caché es el nivel de memoria situada entre el procesador y la memoria.
Sistema de archivos Sistemas operativos.
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
Overview Sistemas Computacionales
Asignación de Espacio No Contiguo
Soporte HW para Administración de Memoria Cecilia Hernández
MICROCONTROLADORES NOCIONES BÁSICAS. ¿QUÉ ES UN MICROCONTROLADOR? MICROCONTROLADOR = MICROPROCESADOR + MEMORIA + PERIFERICOS.
TEMA 2: Organización de computadores
Antecedentes Memoria virtual – separación de la memoria lógica de la física Sólo parte del programa necesita estar en memoria en un momento dado para.
Capítulo 7 Gestión de memoria.
 Hardware de E/S  Interfaz de aplicación E/S (API)  Sub-sistema de E/S en el Kernel  Transformando solicitudes de E/S en operaciones de hardware 
Administración de Memoria no contigua
Gestión de procesos Sistemas Operativos Edwin Morales
Tema VII Memoria Virtual.
1 Descripción y control de procesos Capítulo 3. 2 Requerimientos de un SO relacionados con procesos Ejecutar concurrentemente múltiples procesos para.
MEDIOS DE ALMACENAMIENTO
“Organización y Arquitectura de Computadores” William Stallings
Gestión de Memoria.
Teoría de Sistemas Operativos Sistema de I/O. 2 Introducción Una de las funciones principales del sistema operativo es el control de todos los dispositivos.
Teoría de Sistemas Operativos I/O
Introducción a los SOs.
Teoría de Sistemas Operativos Administración de Archivos.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
INTRODUCCIÓN: CARACT DE LOS DISPOSITIVOS DE ALMACENAMIENTO SECUNDARIO
Capítulo 4 Entrada/Salida 4.1 Principios hardware de E/S
Estructura de los Sistemas Operativos
Disco duro (HDD).
Un ordenador no puede funcionar sin sistema operativo.
Gestión de Memoria.
Teoría de Sistemas Operativos Sistema de I/O. 2 Introducción Una de las funciones principales del sistema operativo es el control de todos los dispositivos.
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
Unidad 2 – Gestión de Procesos
Tema: Dispositivos de almacenamiento secundario. Tema: Dispositivos de almacenamiento secundario ¿Cuál es la unidad base en el sistema de medición para.
3.2.1 Administración de almacenamiento
Licenciatura Tecnologías de la Información y Comunicación
Ing. Katty Lagos Ortiz. M.Sc.
1 Unidades funcionales de un ordenador Procesadores Memorias Dispositivos de E/S
TIPOS DE SISTEMAS OPERATIVOS.  Que es un sistema operativo??  Es el encargado de brindar al usuario una forma amigable y sencilla de operar, interpretar,
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Memoria Virtual Concepto Paginado bajo demanda Performance del Paginado bajo.
Memoria Virtual Conceptos Paginación Bajo Demanda Creación de Procesos
Gestión de Memoria – Parte 2
Unidad de Control Ubicación: Es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Realizar.
Transcripción de la presentación:

Gestión de E/S y planificación de discos Tema 7 Gestión de E/S y planificación de discos

Dispositivos Tipos de dispositivos. D. de bloque. D. de carácter. Información en unidades de tamaño fijo. Cada unidad con su propia dirección. Posible lectura aleatoria de los bloques. Ej. Discos D. de carácter. La información en flujos o chorros continuos de datos. Ej. Impresoras, ratones, cintas, red, etc. 15/04/2017

Técnicas para realizar la E/S Tipos de E/S E/S programada: El proceso espera a que termine la operación. E/S dirigida por interrupciones: Se emite una orden de E/S. El procesador continúa con la ejecución de las instrucciones. El módulo de E/S lo interrumpe cuando completa su trabajo. Evolución Procesador controla dispositivos y periféricos. Controlador: Aísla al procesador de los detalles del HW. IRQ+punto2: La CPU no ha de esperar por las I/O. DMA: Control de la I/O a MEM sin interrumpir la CPU. Procesador adicional para la I/O. Módulo de MEM (local) y CPU: Mayor nº de dispositivos controlables. Tendencia: Liberar a la CPU de las tareas de I/O. 15/04/2017

Acceso directo a la memoria (DMA) Toma el control del sistema desde la CPU para transferir datos desde y hacia la memoria a través del bus del sistema. Se utiliza el robo de ciclos para transferir datos a través del bus del sistema. El ciclo de instrucción se suspende para dar paso a la transferencia de datos. La CPU espera un ciclo del bus. No existe interrupción alguna: No salva el contexto. 15/04/2017

Acceso directo a la memoria (DMA) Imita a la CPU en la carga a MEM. Funciona cuando: Cuando la CPU no hace uso del BUS. Si es capaz de requisar el bus a la CPU. Operación (sin DMA): Controladora lee bloque  buffer. Cálculo de suma de verificación. IRQ de la controladora. SO: bucle de lectura del registro de la controladora y paso a MEM. Operación (con DMA): La CPU pasa a controladora/DMA: dirección del bloque a leer, dirección de MEM, Nº de bits a transferir. 15/04/2017

Acceso directo a la memoria (DMA) Cuenta de datos Líneas de datos Registros de datos Registros de dirección Líneas de direcciones Solicitud de DMA Reconocimiento de DMA Lógica de control Interrupción Lectura Escritura 15/04/2017 Figura 11.2. Diagrama de bloques de un DMA típico.

Acceso directo a la memoria (DMA) Por robo de ciclos (el más extendido) El robo de ciclos hace que la CPU ejecute más lentamente. El número de ciclos de bus requeridos se puede acortar mediante la integración de las funciones del DMA y de la E/S. Debe haber un camino entre el módulo de DMA y el módulo de E/S que no pasen por el bus del sistema. 15/04/2017

Tiempo Ciclo de instrucción Ciclo del procesador Ciclo del procesador Ciclo del procesador Ciclo del procesador Ciclo del procesador Ciclo del procesador Leer instrucción Descodificar instrucción Leer operando Ejecutar instrucción Almacenar resultado Interrupción del proceso Puntos de ruptura por DMA Puntos de ruptura por interrupción Figura 11.3. Puntos de ruptura por DMA y por interrupción en un ciclo de instrucción.

Acceso directo a la memoria (DMA) Procesador DMA E/S E/S Memoria (a) DMA separada de bus sencillo Figura 11.4. Configuraciones posibles de DMA. 15/04/2017

Acceso directo a la memoria (DMA) Procesador DMA DMA Memoria E/S E/S E/S (b) DMA integrada de bus sencillo Figura 11.4. Configuraciones posibles de DMA. 15/04/2017

Acceso directo a la memoria (DMA) Bus del sistema Procesador DMA Memoria Bus de E/S E/S E/S E/S (c) Bus de E/S Figura 11.4. Configuraciones posibles de DMA. 15/04/2017

Discos 15/04/2017

Lectura de discos. Controladora Parte electrónica del dispositivo. Interface homogénea. Aíslan al SO de las particularidades del dispositivo. Comunicación: Mediante registros en CPU o en controladora (bajo nivel). Del dispositivo sale un flujo de datos: prologo (nº cilindro, nº sector, tamaño), datos, suma de verificación. Controladora convierte el flujo en bloques, libres de error. Bloque  buffer (suma de error) => copia a MEM 15/04/2017

Lectura de discos. Driver de dispositivo Software dependiente del dispositivo. Cada driver un dispositivo. Acceso a los registros del dispositivo. Secuencia: Petición, traducción de la petición (independiente del dispositivo) a términos de bajo nivel (posición bloques, cantidad e información, etc.) 15/04/2017

Lectura de discos. Lectura en HD: Petición. Petición: En registros de la controladora. Prologo+Flujo de datos+suma errores Conversión: flujo  bloques. Bloque  buffer. Cálculo de suma/error. Buffer  memoria. Tras la lectura  IRQ Diseño: Eficacia: I/O lenta => multiprogramación Generalidad: Gestión común de dispositivos. Abstracción. 15/04/2017

Lectura de discos. Lecturas en discos: tiempos. Tiempo de acceso: Discos duros: 1 cabeza por pista. Posición sobre las pista: tiempo de búsqueda. Es el tiempo que se tarda en ubicar la cabeza en la pista deseada. tarranque + t recorrido (aprox. Lineal nº pistas) t recorrido= m* nºpistas Ej. m = 0.3 - 0.1 ms tarranque = 20 – 3 ms Esperar paso del sector: latencia rotacional. Es el tiempo que tarda el comienzo del sector en llegar hasta la cabeza. LR = T/2 (T periodo de giro). Ej.: 3600 rpm => T=16.7 ms => LR = 8.3ms Ej.: floppy | 300-600 rpm => LR = 100-200ms Lectura de datos: Tiempo de transferencia. TT= Nº bytes /[veloc (vueltas/seg)* Nº bytes/pista] Tiempo de acceso: Es la suma del tiempo de búsqueda y el retardo de giro. Es decir, es el tiempo que se tarda en llegar a la posición de lectura o escritura. 15/04/2017

Lectura de discos. 8Vueltas 2 vueltas 3vueltas 8 1 8 1 6 1 5 7 2 4 3 4 Interleave Sistemas viejos=>Velocidad de transf. baja. Varias vueltas para leer una pista. Interleave: Numeración no consecutiva de sectores. 8Vueltas 2 vueltas 3vueltas 8 1 8 1 6 1 5 7 2 4 3 4 6 3 2 7 7 8 2 5 4 6 5 3 15/04/2017

Lectura de discos. Detección posicional de giro Sistemas de gran capacidad. Lectura de los bloques para varios procesos. Varios procesos por vuelta. Las peticiones son procesadas por la controladora. La controladora calcula el sector que pasa bajo la cabeza. Planifica los accesos. 15/04/2017

Algoritmos de planificación Discos Organizados en cilindros. Varias pistas (en vertical). Cada pista dividida en sectores (8-32). Todo sector tiene la misma capacidad. En sistemas compartidos suceden llamadas simultáneas. Estas peticiones se han de planificar. Búsqueda de tiempo de respuesta mínimo. 15/04/2017

Algoritmos de planificación FIFO Simple. Ejecución en el orden de llegada. La controladora mantiene la lista de trabajos. Caminos muy largos. Lista de peticiones (cilindros). (Cilindro inicial 53) 98, 183, 37, 122, 14, 124, 65, 67. 0 53 183 37 65 67 124 122 14 Recorrido: 640 15/04/2017

Algoritmos de planificación SSTF Siguiente petición el sector más cercano. Seek time / Mov. Cabeza Problemas en extremos con llegada continua de peticiones. Lista de peticiones (cilindros). (Cilindro inicial 53) 98, 183, 37, 122, 14, 124, 65, 67. 0 53 183 65 67 124 14 Recorrido: 236 37 98 122 15/04/2017

Algoritmos de planificación Scan (ascensor)/ LOOK Se sirve en un sentido y solo se atienden peticiones por delante de la cabeza. De sector cero a final. / LOOK de principio a última petición. Bit de dirección. En algunas implementaciones se invierte el sentido cuando no hay peticiones por delante. Lista de peticiones (cilindros). (Cilindro inicial 53) 98, 183, 37, 122, 14, 124, 65, 67. 0 53 183 37 65 67 124 122 14 Recorrido: 208 15/04/2017

Algoritmos de planificación C-Scan (circular-scan) / C-LOOK El alg. SCAN sirve dos veces (en poco tiempo) el final del disco y tarda en servir el otro extremo. Solución: Servir en un sentido y al final vuelta al principio. Respuesta más uniforme. C-LOOK de primera a última petición. Lista de peticiones (cilindros). (Cilindro inicial 53) 98, 183, 37, 122, 14, 124, 65, 67. Recorrido: 153 0 53 67 124 65 183 122 14 37 15/04/2017

Algoritmos de planificación SCAN de N pasos: Divide la cola de solicitudes del disco en subcolas de longitud N. Las subcolas se procesan una a una mediante un SCAN. Mientras se procesa una cola, se añadirán nuevas solicitudes a las otras. FSCAN: Emplea dos subcolas. Una de las colas permanece vacía en espera de nuevas solicitudes. 15/04/2017

Algoritmos de planificación del disco Tabla 11.3. Algoritmos de planificación de disco [WIED87]. 15/04/2017

Algoritmos de planificación Elección. SSTF Buenas respuestas. Problemas de inanición. SCAN y C-SCAN. Buenas prestaciones / uniformes. No inanición. Mejores peticiones en el centro del disco => Ubicación de FAT, i-nodos, directorios, etc. 15/04/2017

Formateo División de la superficie magnética en sectores para ser leídos por la controladora. Bajo nivel (fdformat) Creación de estructura de datos por cada sector. Cabecera (nº sector), área de datos (256, 512, 1024), trailer (códigos de error). Partición (fdisk). División del disco en grupos de cilindros. Cada partición se trata por el S.O. Como un volumen. Formateo lógico (mkfs). Se genera el sistema de archivos. 15/04/2017

Aspectos de diseño en los sistemas operativos Eficiencia: La mayoría de los dispositivos de E/S son extremadamente lentos en comparación con la memoria principal. El uso de la multiprogramación permite que algunos procesos esperen en operaciones de E/S mientras otro proceso se está ejecutando. La E/S no puede seguir el paso de la actividad del procesador. Se utiliza el intercambio para introducir más procesos listos, que es una operación de E/S. Generalidad: Es preferible gestionar todos los dispositivos de E/S de una manera uniforme. Oculta la mayoría de los detalles de la E/S con dispositivos en rutinas de bajo nivel, de forma que los procesos y los niveles superiores contemplen a los dispositivos en términos generales, como la lectura, escritura, apertura, cierre, bloqueo y desbloqueo. 15/04/2017

Dispositivos y cache Almacenamiento intermedio de la E/S Razones para el almacenamiento intermedio: Los procesos deben esperar a que termine la operación de E/S para continuar. Algunas páginas deben permanecer en la memoria principal durante la E/S 15/04/2017

Almacenamiento intermedio de la E/S Razones para el almacenamiento intermedio: Los procesos deben esperar a que termine la operación de E/S para continuar. Algunas páginas deben permanecer en la memoria principal durante la E/S Dispositivos orientados a bloque: La información se almacena en bloques de tamaño fijo. Las transferencias de un bloque se realizan cada vez. Se utilizan para los discos y las cintas. El proceso de usuario puede procesar un bloque de datos mientras se está leyendo el siguiente. Se puede dar el intercambio, ya que la entrada tiene lugar en la memoria del sistema y no en la memoria de usuario. El sistema operativo debe guardar constancia de las asignaciones de memorias intermedias del sistema a procesos de usuario. Dispositivos orientados a flujo: Transfieren los datos como una serie de bytes. Se utilizan para los terminales, impresoras, puertos de comunicación, ratones y otros dispositivos que no son de almacenamiento secundario. Se aplica por líneas, marcadas con un retorno de carro al final de la misma. La salida al terminal es línea a línea. 15/04/2017

Figura 11.5. Un modelo de organización de E/S. Procesos de usuario Procesos de usuario Procesos de usuario Gestión de directorios E/S lógica Arquitectura de comunicaciones Sistema de archivo Organización física E/S con dispositivos E/S con dispositivos E/S con dispositivos Planificación y control Planificación y control Planificación y control Hardware Hardware Hardware (a) Dispositivo periférico local (b) Puerto de comunicaciones (c) Sistema de archivos Figura 11.5. Un modelo de organización de E/S.

Memoria intermedia sencilla El sistema operativo asigna a una solicitud de E/S un espacio en la parte del sistema de la memoria principal. Dispositivos orientados a bloque: Las transferencias de entrada se realizan en el espacio del sistema. Cuando sea necesario, el proceso mueve el bloque al espacio del usuario. El proceso mueve otro bloque al espacio: Lectura por adelantado. 15/04/2017

Almacenamiento intermedio de E/S Sistema operativo Proceso de usuario Entrar Dispositivo de E/S (a) Sin almacenamiento intermedio Sistema operativo Proceso de usuario Entrar Mover Dispositivo de E/S (b) Almacemiento intermedio sencillo Figura 11.6. Esquemas de almacenamiento intermedio de E/S (entrada). 15/04/2017

Memoria intermedia sencilla Dispositivos orientados a bloque: El proceso de usuario puede procesar un bloque de datos mientras se está leyendo el siguiente. Se puede dar el intercambio, ya que la entrada tiene lugar en la memoria del sistema y no en la memoria de usuario. El sistema operativo debe guardar constancia de las asignaciones de memorias intermedias del sistema a procesos de usuario. 15/04/2017

Memoria intermedia sencilla Dispositivos orientados a flujo: Se aplica por líneas. La entrada del ususario a partir de un terminal se realiza por líneas, marcadas con un retorno de carro al final de la misma. La salida al terminal es línea a línea. 15/04/2017

Almacenamiento intermedio: tipos. Memoria intermedia doble. Utiliza dos almacenes intermedios del sistema en lugar de uno. Un proceso puede transferir datos hacia o desde una memoria intermedia mientras que el sistema operativo vacía o rellena el otro. Memoria intermedia circular. Se usan más de dos memorias intermedias. Cada memoria intermedia individual constituye una unidad de la memoria intermedia circular. Se usan cuando las operaciones de E/S han de ir al ritmo del proceso. 15/04/2017

Almacenamiento intermedio de E/S Sistema operativo Proceso de usuario Entrar Mover Dispositivo de E/S (c) Almacenamiento intermedio doble Proceso de usuario Sistema operativo Entrar Mover Dispositivo de E/S (d) Almacenamiento intermedio circular Figura 11.6. Esquemas de almacenamiento intermedio de E/S (entrada). 15/04/2017

Cache de disco Cache de disco Es una memoria intermedia situada en la memoria principal para sectores de disco. Contiene una copia de algunos sectores del disco. Usado Menos Recientemente (LRU). Se reemplaza el bloque que ha permanecido sin referencias en la cache durante más tiempo. La cache está formada por una pila de bloques. El bloque referenciado más recientemente está en la cima de la pila. Cuando se hace referencia un bloque de la cache, se le mueve hasta la cima de la pila. Cuando se trae un bloque nuevo, se elimina el bloque que está en el fondo de la pila. En realidad estos bloques no se mueven por la memoria principal. Se utiliza una pila de punteros. Usado Menos Frecuentemente (LFU). Se sustituye el bloque que ha sufrido un menor número de referencias. Se asocia un contador a cada bloque. Con cada referencia al bloque, el contador se incrementa. Cuando hace falta un reemplazo, se selecciona el bloque con menor valor del contador. Puede que se haga referencia a algunos bloques a intervalos cortos de referencias repetidas y que, por lo tanto, no necesiten ser referenciados nuevamente . 15/04/2017

Lectura de discos. Nuevas Viejas n=n n=n+1 Cache (en HD) Almacén de bloques usados en MEM. Petición de bloques presentes en MEM: Copia al espacio de direcciones del usuario Referencia a la posición en cache. Algoritmo de reemplazo: LRU: pila: bloques ordenados por tiempo. LFU: Uso de contador. => problema: localidad. Solución: dos zonas: Recientes por pila. Antiguas por LFU Otra opción: 3 zonas Nueva, LFU, LFU y victima. Nuevas Viejas n=n+1 n=n 15/04/2017

Figura 11.14. Estructura de la E/S en UNIX. E/S en UNIX SVR4 Subsistema de archivos Cache de buffers Carácter Bloque Gestor de dispositivo Figura 11.14. Estructura de la E/S en UNIX. 15/04/2017

E/S en WINDOWS 2000 Gestor de E/S Gestor de cache Controladores de sistema de archivos Controladores de red Controladores de dispositivos hardware Figura 11.16. Gestión de E/S en Windows 2000. 15/04/2017