Your SlideShare is downloading. ×
  • Like
Administracion de entrada y salida
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Administracion de entrada y salida

  • 6,899 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
6,899
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
189
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 4131012-448038-128024294524Administración del Sistema de Entrada y Salida3981333368154839257396480732Curso: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:ATrujillo – Perú2010<br />Administración del Sistema de Entrada y Salida<br />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.<br />Principios de Hardware de E/S:<br />Dispositivos de E/S:<br />Los dispositivos de entrada y salida se pueden clasificar en dos categorías: <br />Dispositivos de bloques: Es el que almacena la información en bloques de tamaño fijo, cada uno con su propia dirección. <br />Su Propiedad esencial es que es posible leer o escribir cada bloque independientemente de todos los demás.<br />Ejemplo: Los discos duros.<br />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.<br />Ejemplo: La impresoras, las interfaces de red, los ratones y la mayoría de otros dispositivos que no son similares a los discos.<br />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.<br />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.<br />DispositivoVelocidad de DatosKeyboard10 bytes/secMouse100 bytes/sec56K Modem7 KB/secCanal Telefónico8 KB/secDual ISDN lines16 KB/secImpresora Láser100 KB/secScanner400 KB/secUSB1.5 MB/secClassic Ethernet1.25MB/secIDE disk5 MB/secFast Ethernet12.5 MB/secISA bus16.7 MB/secEIDE(ATA-2)disk16.7 MB/secFirewire(IEEE 1394)50 MB/secPCI bus528 MB/sec<br />Figura Nº1: Velocidad de transferencia de datos de algunos dispositivos, redes y buses típicos.<br />La mayoría de estos dispositivos tienden a ser más rápidos.<br />Controladores de Dispositivos:<br />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.<br />Las unidades de E/S constan normalmente de dos componentes en general uno mecánico y otro electrónico.<br />El componente electrónico se denomina controlador del dispositivo o adaptador.<br />El componente mecánico es el dispositivo mismo.<br />3769332170290489245516200825766371694621642110161925<br />CPUMemoriaControlador de VideoControlador de TecladoControlador de disco flexibleControlador de disco duroBUS<br />Figura Nº2: Algunos de los componentes de un ordenador personal sencillo<br />La interfaz entre el controlador y el dispositivo es a menudo una interfaz de muy bajo nivel.<br />b.1. Funciones del Controlador de E/S:<br />Las principales funciones de un controlador de E/S pertenecen a una de las siguientes categorías:<br />Control y temporización.<br />Comunicación con la CPU.<br />Comunicación con el dispositivo externo.<br />Almacenamiento temporal de datos<br />Detección de errores.<br />El Control de la transferencia de datos entre un dispositivo externo y la CPU necesita la siguiente secuencia de pasos:<br />1º La CPU pide al controlador de E/S que compruebe el estado del dispositivo al que está conectado.<br />2º El controlador de E/S devuelve el estado del dispositivo.<br />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.<br />4º El controlador de E/S obtiene el dato del dispositivo externo.<br />5º El dato se transfiere desde el controlador de E/S a la CPU.<br />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. <br />La comunicación con la CPU requiere:<br />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.<br />Datos: El intercambio de datos entre la CPU y el controlador de E/S es realizar mediante datos<br />Información sobre el estado: A causa de la lentitud de los periféricos es importante conocer el estado del controlador de E/S.<br />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.<br />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.<br />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).<br />El controlador de E/S es a menudo el responsable de la detección de errores, e informar a la CPU cuando ocurren. Por ejemplo: “papel atascado, sector del disco en mal estado, etc.”.<br />b.2. Estructura del Controlador:<br />Registro de Estado (RE)Registro de Datos (RD)Lógica de Interfaz a un dispositivo externoInterfaz con el bus de sistemaLínea de datosInterfaz con el dispositivo externoDatosEstadoControlLógica de Interfaz a un dispositivo externoLógica de E/SDatosEstadoControlLíneas de direcciónLíneas de ControlLos controladores de E/S varían considerablemente en complejidad y en el número de dispositivos externos que pueden controlar.<br />Figura Nº3: Diagrama de Bloques de un controlador de E/S<br />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.<br />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”. <br />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.<br />b.2. Estructura del Sistema de E/S:<br />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.<br />1º Utilizar dos buses independientes, uno para la memoria y otro para el sistema de E/S.<br />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.<br />3º Utilizar un único bus con líneas de control también comunes.<br />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).<br />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.<br />Esta configuración se puede generalizar permitiendo la existencia de más de 1 PE/S.<br />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 mecanismos diferentes de direccionamiento de los periféricos conocidos como:<br />E/S aislada.<br />E/S localizada en memoria.<br />Bus E/S PE/S 1Bus E/S PE/S nCPUMemoriaPE/S 1PE/S nControlador de E/SControlador de E/SPeriféricoPeriféricoControlador de E/SControlador de E/SPeriféricoPeriféricoBus del Sistema……………………………………………………………………………………………<br />Figura Nº4: Estructura de un sistema con PE/S<br />Acceso directo a Memoria:<br />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 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.<br />El controlador de DMA tiene acceso al bus del sistema independientemente de la CPU. <br />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.<br />DirecciónContadorControlCuando hay interrupción2. Solicitudes de DMA son transferidas a Memoria3. Datos transferidosBus4. Enviar una señal1.CPU programa el controlador DMACPU Controlador de DMA Controlador de DiscoMemoria principalBufferDriveNota: 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.<br />Funcionamiento del DMA:<br />Figura Nº5: Funcionamiento de una transferencia con DMA<br />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.<br />2º Paso: El controlador de DMA inicia la transferencia enviando por el bus una petición de lectura al controlador de disco.<br />3º Paso: La escritura en memoria es otro ciclo de bus estándar. <br />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.<br />Transferencia de datos mediante DMA:<br />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. <br />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”.<br />Figura Nº6: DMA por ráfagas<br />6973771865727Por 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 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.<br />Figura Nº7: DMA por robos de ciclos<br />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.<br />Figura Nº8: DMA transparante<br />