administracion de entrada y salida

14
Administración del Sistema de Entrada y Salida Curso: Sistemas Operativos Integrantes: - Contreras Ulloa, Shirley A. - Gonzales Torres, Cristian G. - Loyola Díaz, Jhon A. - Valencia Varas, Karen A. - Villegas Sánchez, Emili P. Ciclo: VI

Upload: shirley-contreras-ulloa

Post on 20-Jun-2015

6.987 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida

Curso:Sistemas OperativosIntegrantes:

- Contreras Ulloa, Shirley A.- Gonzales Torres, Cristian G.- Loyola Díaz, Jhon A.- Valencia Varas, Karen A.- Villegas Sánchez, Emili P.

Ciclo:VISección:A

Trujillo – Perú2010

Page 2: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

Administración del Sistema de Entrada y Salida

Una de las principales funciones de un Sistema Operativo es la de controlar todos los dispositivos de entrada y salida, ya que un computador gran parte de su utilidad en la capacidad de recibir y transmitir información desde o hacia el exterior. El SO debe enviar comandos a los dispositivos, atender las interrupciones y gestionar los errores, también debe proporcionar una interfaz entre los dispositivos y el resto del sistema que sea sencilla y fácil de utilizar.

1. Principios de Hardware de E/S:a. Dispositivos de E/S:

Los dispositivos de entrada y salida se pueden clasificar en dos categorías: - Dispositivos de bloques: Es el que almacena la información

en bloques de tamaño fijo, cada uno con su propia dirección. Su Propiedad esencial es que es posible leer o escribir cada bloque independientemente de todos los demás.Ejemplo: Los discos duros.

- Dispositivos de caracteres: Proporciona o acepta un flujo de caracteres, sin tener en cuenta ninguna estructura de bloque. No es un dispositivo direccionable y no cuenta con ninguna operación de posicionamiento.Ejemplo: La impresoras, las interfaces de red, los ratones y la mayoría de otros dispositivos que no son similares a los discos.Hay que tener en cuenta que algunos dispositivos simplemente no encajan en la clasificación mencionada. Por ejemplo: Los relojes (timers) no son dispositivos direccionables por bloques, ni tampoco aceptan flujos de caracteres. Lo único que hacen es provocar interrupciones a intervalos de tiempos bien definidos. Sin embargo, el modelo de los dispositivos de bloques y de caracteres es una base lo suficiente general para conseguir que una buena parte del software de E/S del sistema operativo sea independiente del dispositivo.

Las velocidades de los dispositivos de E/S abarcan un rango enormemente amplio, lo que ejerce una considerable presión sobre el software para que consiga responder correctamente.

2 Sistemas Operativos

Page 3: Administracion de entrada y salida

CPU MemoriaControlador

de VideoControlador de

TecladoControlador de disco flexible

Controlador de disco duro

Administración del Sistema de Entrada y Salida 2010

Dispositivo Velocidad de DatosKeyboard 10 bytes/secMouse 100 bytes/sec56K Modem 7 KB/secCanal Telefónico 8 KB/secDual ISDN lines 16 KB/secImpresora Láser 100 KB/secScanner 400 KB/secUSB 1.5 MB/secClassic Ethernet 1.25MB/secIDE disk 5 MB/secFast Ethernet 12.5 MB/secISA bus 16.7 MB/secEIDE(ATA-2)disk 16.7 MB/secFirewire(IEEE 1394) 50 MB/secPCI bus 528 MB/secFigura Nº1: Velocidad de transferencia de datos de algunos

dispositivos, redes y buses típicos.

La mayoría de estos dispositivos tienden a ser más rápidos.

b. Controladores de Dispositivos:

Un controlador de E/S es el módulo del computador responsable del control de uno o más dispositivos externos y del intercambio de datos entre dichos periféricos con la memoria principal o con los registros de la CPU.

Las unidades de E/S constan normalmente de dos componentes en general uno mecánico y otro electrónico.

- El componente electrónico se denomina controlador del dispositivo o adaptador.

- El componente mecánico es el dispositivo mismo.

3 Sistemas Operativos

Page 4: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

Figura Nº2: Algunos de los componentes de un ordenador personal sencillo

La interfaz entre el controlador y el dispositivo es a menudo una interfaz de muy bajo nivel.

b.1. Funciones del Controlador de E/S:Las principales funciones de un controlador de E/S pertenecen a una de las siguientes categorías:- Control y temporización.- Comunicación con la CPU.- Comunicación con el dispositivo externo.- Almacenamiento temporal de datos- Detección de errores.

El Control de la transferencia de datos entre un dispositivo externo y la CPU necesita la siguiente secuencia de pasos:

1º La CPU pide al controlador de E/S que compruebe el estado del dispositivo al que está conectado.

2º El controlador de E/S devuelve el estado del dispositivo.

3º Si el dispositivo está operativo y preparado para transmitir, la CPU solicita la transferencia del dato mediante una orden al controlador de E/S.

4º El controlador de E/S obtiene el dato del dispositivo externo.

5º El dato se transfiere desde el controlador de E/S a la CPU.

4 Sistemas Operativos

Page 5: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

Si el sistema emplea un bus, cada una de las interacciones entre la CPU t el controlador de E/S implica uno o más arbitrajes para conseguir el acceso al bus.

La comunicación con la CPU requiere:

- Decodificación de la Orden: El controlador de E/S acepta órdenes de la CPU. Estas órdenes se envían generalmente por el bus de datos.

- Datos: El intercambio de datos entre la CPU y el controlador de E/S es realizar mediante datos

- Información sobre el estado: A causa de la lentitud de los periféricos es importante conocer el estado del controlador de E/S.

- Reconocimiento de la Dirección: Cada palabra de memoria tiene asociada una dirección y también la poseen cada uno de los dispositivos de E/S. El controlador de E/S reconoce una dirección única para cada uno de los periféricos que controla.

Por otra parte, el controlador de E/S realiza la “Comunicación con el dispositivo”. Esta comunicación comprende órdenes, información del estado del dispositivo y datos. Además otra de sus tareas es el “Almacenamiento con el dispositivo”. La necesidad de esta función surge por las diferentes velocidades de transferencia de datos que tienen los distintos dispositivos.

Se ve que la velocidad de transferencia de datos de los periférico, es algunos órdenes de magnitud más lenta que en el caso de la memoria o por supuesto que en el CPU. El almacenamiento temporal es el controlador de E/S sirve para adecuar las diferencias de velocidades entre la interfaz interna con el computador (conexión a la memoria principal y a la CPU) y la interfaz externa (conexión con el dispositivo).

El controlador de E/S es a menudo el responsable de la detección de errores, e informar a la CPU cuando ocurren.

5 Sistemas Operativos

Page 6: Administracion de entrada y salida

Registro de Estado (RE)

Registro de Datos (RD)

Lógica de Interfaz a un dispositivo externo

Interfaz con el bus de sistema

Línea de datos

Interfaz con el dispositivo externo

Datos

Estado

Control

Lógica de Interfaz a un dispositivo externoLógica de E/SDatos

Estado

Control

Líneas de dirección

Líneas de Control

Administración del Sistema de Entrada y Salida 2010

Por ejemplo: “papel atascado, sector del disco en mal estado, etc.”.

b.2. Estructura del Controlador:Los controladores de E/S varían considerablemente en complejidad y en el número de dispositivos externos que pueden controlar.

Figura Nº3: Diagrama de Bloques de un controlador de E/S

El controlador de E/S se conecta con el resto del computador a través del bus del sistema. Los datos que se transfieren al controlador o desde el controlador se almacenan temporalmente en uno o más registros de datos. También puede haber más de un registro de estado que proporcione la información del estado actual.

El registro de estado a veces funciona como un registro de control que acepta información proveniente de la CPU. A este conjunto de registros genéricamente se les suele llamar “puertos del controlador”.

6 Sistemas Operativos

Page 7: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

La lógica que hay dentro del módulo interacciona con la CPU mediante un conjunto de líneas de control. Estas líneas las utiliza la CPU para enviar órdenes al controlador de E/S.

b.2. Estructura del Sistema de E/S:La CPU además de comunicarse con la unidad de E/S también debe hacerlo con la unidad de memoria. La forma de realizar esta comunicación, como ya se ha visto, es mediante buses que contienen líneas de dirección, de datos y de control. Hay tres maneras de utilizar el bus para interconectar la CPU con la memoria y con la unidad de E/S.

1º Utilizar dos buses independientes, uno para la memoria y otro para el sistema de E/S.

2º Utilizar un bus común para la memoria y el sistema de E/S, pero con líneas de control independientes para cada uno.

3º Utilizar un único bus con líneas de control también comunes.

En el primero método el computador tiene dos conjuntos de líneas de datos, dirección y control independiente, uno para acceder a la memoria (bus del sistema) y otro para acceder al sistema de E/S (bus de E/S). Esta estrategia se emplea en aquellos computadores que, además de la CPU, dispone de un procesador de E/S (PE/S).

La memoria se comunica tanto con la CPU como con el PE/S por el bus del sistema. El PE/S también se comunica con los dispositivos de E/S a través de un bus de E/S independiente con sus propias líneas de datos, dirección y control, al que se conecta los controladores de E/S.

Esta configuración se puede generalizar permitiendo la existencia de más de 1 PE/S.

Otra denominación del Pe/S es la de canal. Los otros dos métodos en los que la CPU, la unidad de memoria y la unidad de E/S comparten un bus común, corresponden a dos

7 Sistemas Operativos

Page 8: Administracion de entrada y salida

Bus E/S PE/S 1

Bus E/S PE/S n

CPU Memoria

PE/S 1 PE/S n

Controlador de E/S

Controlador de E/S

Periférico Periférico

Controlador de E/S

Controlador de E/S

PeriféricoPeriférico

Bus del Sistema

………

…………………………………………

…………………………………………

Administración del Sistema de Entrada y Salida 2010

mecanismos diferentes de direccionamiento de los periféricos conocidos como:

- E/S aislada.- E/S localizada en memoria.

Figura Nº4: Estructura de un sistema con PE/S

c. Acceso directo a Memoria:

La CPU requiere transferir datos entre la memoria y un periférico. La CPU puede solicitar datos del controlador de E/S byte a byte, pero haciéndolo así estaría desperdiciándose mucho tiempo de CPU. Por ello se usa un esquema diferente denominado “acceso directo a memoria (DMA)”. El SO solo puede usa DMA si

8 Sistemas Operativos

Page 9: Administracion de entrada y salida

Dirección

Contador

Control

Cuando hay interrupción

2. Solicitudes de DMA son transferidas a Memoria

3. Datos transferidos

Bus

4. Enviar una

señal

1.CPU programa el controlador

DMACPU

Controlador de DMA

Controlador de Disco

Memoria principal

Buffer

Drive

Administración del Sistema de Entrada y Salida 2010

el hardware cuenta con él, pero la mayoría cuenta con él, aunque a veces está integrado en los controladores de disco o en otros controladores, pero tal diseño es tener un controlador DMA por cada dispositivo.

- El controlador de DMA tiene acceso al bus del sistema independientemente de la CPU.

- El controlador contiene varios registros (registro de dirección de memoria, un registro contador de bytes y uno o más de registros de control) en los que la CPU pueden leer y escribir.

Nota: Los registros de control especifican el puerto de E/S que se utilizará, la dirección de transferencia (leyendo del dispositivo de E/S o escribiendo en el dispositivo de E/S), la unidad de transferencia (un byte a la vez o una palabra a la vez) y el número de bytes que se transferirán en cada ráfaga.

Funcionamiento del DMA:

Figura Nº5: Funcionamiento de una transferencia con DMA

1º Paso: La CPU programa el controlador DMA, escribiendo los valores apropiados en sus registros para que sepa qué debe transferir y a donde debe transferir. La CPU envía también un comando al controlador del disco para indicarle que lea los datos el disco en su búfer interno y compruebe el checksum. Cuando haya datos válidos en el búfer del controlador del disco, el DMA puede comenzar.

9 Sistemas Operativos

Page 10: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

2º Paso: El controlador de DMA inicia la transferencia enviando por el bus una petición de lectura al controlador de disco.

3º Paso: La escritura en memoria es otro ciclo de bus estándar.

4º Paso: Cuando termina la escritura, el controlador del disco envía una señal de acuse al controlador de DMA, también por el bus.

Transferencia de datos mediante DMA:

El controlador de DMA necesita tener el control del bus para poder transferir datos hacia (o desde) la memoria. Existen diferentes formas de obtener el control del bus que suponen distintos compromisos entre velocidad de transferencia y actividad de la CPU.

- Por ráfagas: Cuando el DMA toma control del bus no lo libera hasta haber transmitido el bloque de datos pedido. Con este método se consigue la mayo velocidad de transferencia pero se tiene a la CPU inactiva durante periodos relativamente grandes. También se conoce como “para del procesador”.

Figura Nº6: DMA por ráfagas

- Por robo de ciclos: Cuando el DMA toma el control del bus lo retiene durante un solo ciclo. Transmite una palabra y libera el bus. El proceso acaba cuando se ha transferido todo el bloque. Es la forma más usual de transferencia y en ella el DMA “roba” ciclos a la CPU. El robo de ciclos reduce la velocidad de transferencia y la interferencia del controlador de DMA sobre la actividad de la CPU. El método resulta de utilidad cuando se

10 Sistemas Operativos

Page 11: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

desea simultanear la ejecución de un programa con la recepción o transmisión de datos a velocidades moderadas. La CPU no tiene que ocuparse para nada de la operación y sigue ejecutando su programa, casi con la misma velocidad, mientras que de forma simultánea se efectúa la transferencia de datos.

Figura Nº7: DMA por robos de ciclos

- DMA transparente: Es posible eliminar completamente la interferencia entre el controlador de DMA y la CPU. Se consigue si se diseña el DMA de forma que solamente se roban ciclos cuando la CPU no está utilizando el bus del sistema. La CPU no necesita usar el bus en todas las fases de la ejecución de una instrucción. La ejecución del programa de la CPU no disminuye su velocidad, pero concurrentemente tiene lugar una transferencia por DMA. Análogamente el caso de robo de ciclos no se obtiene la ventaja de una velocidad de transferencia muy elevada propia del DMA.

Figura Nº8: DMA transparante

11 Sistemas Operativos

Page 12: Administracion de entrada y salida

Administración del Sistema de Entrada y Salida 2010

12 Sistemas Operativos