tema 2 - entrada y salida

Upload: elmanzaneda

Post on 09-Jan-2016

221 views

Category:

Documents


0 download

DESCRIPTION

sssdd

TRANSCRIPT

  • 7/17/2019 Tema 2 - Entrada y Salida

    1/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Subsistema

    de

    Entrada y Salida(I/O)

  • 7/17/2019 Tema 2 - Entrada y Salida

    2/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Contenido:

    * Funciones

    * Hardware de E/S

    * Objetivos perseguidos en su Diseo

    * Principios de Software

    * Estructura en Niveles del Subsistema de /O

    * mplantaci!n

    * Planificaci!n de Entrada " Salida de Disco#

  • 7/17/2019 Tema 2 - Entrada y Salida

    3/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Funciones del Subsistema de Entrada y Salida

    * $ontrolar todos los dispositivos de E/S de la

    computadora#

    * Proporcionar una interfa% sencilla " f&cil de usar

    entre los dispositivos " el resto del sistema#

  • 7/17/2019 Tema 2 - Entrada y Salida

    4/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware de Entrada y Salida

    * Dispositivos de /O '$omponente mec&nico(

    * $ontroladores o adaptadores de dispositivos

    '$omponente electr!nico(

    * D)* 'Direct )emor" *ccess(

  • 7/17/2019 Tema 2 - Entrada y Salida

    5/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Dispositios de I/O

    * *spectos en los +ue difieren,

    -elocidad

    .nidad de transferencia

    epresentaci!n de los datos, encodificaci!n diferente Operaciones permisibles

    $ondiciones de error

  • 7/17/2019 Tema 2 - Entrada y Salida

    6/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Dispositios de I/O

    * 0ipos,

    Dispositivos de 1lo+ues

    *lmacenan la informaci!n en blo+ues de tamao fijo

    $ada blo+ue tiene una direcci!n2ectura independiente de cada blo+ue

    Ejemplo, Disco

  • 7/17/2019 Tema 2 - Entrada y Salida

    7/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Dispositios de I/O

    Dispositivos de $aracteres

    Entregan o aceptan flujos de caracteres

    No es direccionable

    No tienen operaciones de SEE3#

    Ejemplo, 0erminales4 impresoras4 rat!n4 cintas4 ###

    No son blo+ues direccionables4 ni aceptan flujos de

    caracteres

    elojes ' producen interrupciones a intervalos bien

    definidos (#

  • 7/17/2019 Tema 2 - Entrada y Salida

    8/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    $P. )emoria

    $ontroladorde disco#

    $ontrolador

    de impresora#

    nterfa%

    bits

    egistros1uffer

    Hardware - Controladores o adaptadores

    0arjetas de $ircuito impreso

  • 7/17/2019 Tema 2 - Entrada y Salida

    9/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Controladores o adaptadores

    * 1uffer,

    Se usa para convertir el blo+ue de bits seriales en blo+ue de

    b"tes# Se ensambla el blo+ue en el buffer

    Se verifica el 5c6ec7sum8

    Si no 6a" error4 se copia en memoria principal

    Si O i

  • 7/17/2019 Tema 2 - Entrada y Salida

    10/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Controladores o adaptadores

    * egistros

    Permite la comunicaci!n con el $P.

    Pueden estar en,

    Espaciode direcciones de la memoria regular del computador

    Es+uema 5)emor"9)apped /O8 'Procesador )otorola :;

  • 7/17/2019 Tema 2 - Entrada y Salida

    11/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Controladores o adaptadores

    Si t O ti

  • 7/17/2019 Tema 2 - Entrada y Salida

    12/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - Controladores o adaptadores

    $omunicaci!n $P. 9 $ontrolador,

    El SO escribe comandos 'read4 write4 see74 ##( " par&metros a estos

    registros#

    Si el comando es aceptado,

    El $P. contin>a con otro trabajo 6asta +ue el controlador cause

    una interrupci!n#

    El $P. carga al SO de nuevo " prueba los resultados " el estado

    del dispositivo#

    Sistemas Operati os

  • 7/17/2019 Tema 2 - Entrada y Salida

    13/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - D!"

    * Operaciones de E/S sin D)* ' E/S indirecta(

    El SO lee el blo+ue desde el buffer del controlador4 palabra a palabra4

    " los almacena en memoria

    ?asta tiempo

    * Operaciones de E/S con D)* ' E/S directa(

    El controlador copia el contenido del buffer en la memoria a trav@s de

    un procesador especiali%ado llamado Canal de I/O " luego avisa al SO

    a trav@s de una interrupci!n#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    14/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Hardware - D!"

    Para una lectura4 el SO da al controlador,

    2a direcci!n del blo+ue en disco

    2a direcci!n del blo+ue donde ir& el blo+ue

    El n>mero de b"tes a transferir

    $P. Memoria

    DriveControlador

    de disco.

    Dir. de memoria

    Cuenta

    Buffer

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    15/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios ($rincipios) del Dise%o del Subsistema de

    Entrada y Salida

    * ndependencia del c!digo de caracteres

    * ndependencia de los dispositivos

    * Eficiencia

    * 0ratamiento .niforme de los Dispositivos

    * )anejo de errores lo m&s cercano al 6ardware#

    * 0ransparencia en el tipo de 0ransferencia#

    * $ontrol de acceso a los Dispositivos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    16/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    - Independencia del c&di'o de caractereseconocer diversos c!digos asociados a los

    dispositivos

    Presentarlos en una manera est&ndar "

    uniforme 'traducci!n antes de la salida "despu@s de la entrada(

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    17/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    - Independencia de los dispositios

    * Entre dispositivos del mismo tipo 'por ejemplo4diferentes tipos de impresoras(

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    18/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    - Independencia de los dispositios

    * Entre tipos de dispositivos ' cambios mAnimos a nivel de programas o

    s6ells cuando el tipo de dispositivos cambie, cintas4 discos4 ###(

    * )anejo de dispositivos virtuales 'streams4 files4###(

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    19/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    - Eiciencia

    * El c!digo +ue atiende una operaci!n de E/S

    debe agregar el mAnimo 5over6ead8 posible#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    20/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    -ratamiento *niorme de los Dispositios

    5Handlers8 independientes de las

    caracterAsticas de los dispositivos B

    descriptores

    Identificacin del dispositivoInstrucciones que manipulan el dispositivo

    Apuntador a la tabla de traduccin de caracteresEstado actual ocupado! libre! da"ado.#roceso del usuario actual $Apunt. al #CB%

    Estru

    ctura

    d

    el

    Descriptor

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    21/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    22/53

    Sistemas Operativos

    Ing. Eliecer Henriquez

    Ob#etios

    - !ane#o de errores lo m+s cercano al ,ardware

    * 2a correcci!n de un error debe intentarlo primero el

    controlador4 luego el manejador4 luego el softwarellamador4 ####

    * *dem&s4 en forma transparente#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    23/53

    S s e as Ope a os

    Ing. Eliecer Henriquez

    Ob#etios

    - ransparencia en el tipo de ranserencia* 0ipos de transferencia,

    Sincr!nica o blo+ueante#

    *sincr!nica ! conducida por interrupciones#

    * 2a ma"orAa de las trasferencias son asincr!nicas#

    * 1lo+uear a los procesos mientras se 6ace la transferencia "

    ejecutar a otros procesos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    24/53

    p

    Ing. Eliecer Henriquez

    Ob#etios

    - Control de acceso a los Dispositios

    Dependiendo de si el dispositivo puede ser compartido o

    no 'de acceso eCclusivo o dedicado(#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    25/53

    p

    Ing. Eliecer Henriquez

    PROCESO DEL USUARIO

    Sot!areIn"epen"iente "el

    Dispositivo#ane$a"ores "eDispositivos

    #ane$a"or "e

    Interrupciones

    HARD%ARE

    Requerimiento "e I&O

    Respuesta"e I&O

    Estructura en .ieles del Sistema de I/O

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    26/53

    p

    Ing. Eliecer Henriquez

    Estructura - !ane#adores de interrupciones

    Es la parte del SO +ue responde a las interrupciones#

    * Funciones,

    Determinar la fuente de la interrupci!n#

    Servir a la interrupci!n 'vector de interrupciones(#

    * Deben estar lo m&s escondidas posibles

    1lo+uear los procesos de usuario# 2uego 4 el procedimiento de

    interrupci!n desblo+uea el proceso +ue la origin!#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    27/53

    Ing. Eliecer Henriquez

    Estructura - Driers o mane#ador del dispositio

    * $!digo dependiente del dispositivo#

    * Funci!n,

    *cepta peticiones abstractas desde el software independiente del

    dispositivo " vigila +ue el re+uerimiento es ejecutado#

    * El driver es +uien conoce la estructura del dispositivo " los

    mecanimos +ue 6acen +ue trabaje '$onoce de sectores4

    cilindros4 cabe%ales4 ####(#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    28/53

    Ing. Eliecer Henriquez

    Estructura - Driers

    * Funciones especAficas,

    0raducir el re+uerimiento abstracto a un re+uerimiento concreto#

    Decidir cu&les operaciones del controlador son necesarias " en +ue

    secuencia#

    Escribir los comandos a los registros del controlador# El driver debe esperar 6asta +ue el controlador 6aga el trabajo 'se

    blo+uea 6asta +ue el controlador ejecute la interrupci!n(#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    29/53

    Ing. Eliecer Henriquez

    Estructura - Sotware Independiente del

    Dispositio

    * Funci!n, ejecutar las funciones de entrada " salida +ue son

    comunes a todos los dispositivos#

    * Funciones especAficas,

    Proveer una interfa% uniforme para los manejadores de los

    dispositivos#

    )anejar nombres simb!licos de los dispositivos#

    Protecci!n#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    30/53

    Ing. Eliecer Henriquez

    Estructura - Sotware Independiente del

    Dispositio

    * Funciones especAficas 'cont#(, Proveer un tamao de blo+ue independiente del dispositivo#

    .so de buffers# *signaci!n de espacio en los dispositivos por blo+ues#

    *signaci!n " liberaci!n de los dispositivos dedicados o de usoeCclusivo#

    nformaci!n de errores#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    31/53

    Ing. Eliecer Henriquez

    Estructura - Sotware a niel de usuario

    * Permiten enla%ar las funciones de E/S residentes en el Sistema

    Operativo con los programas de los usuarios#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    32/53

    Ing. Eliecer Henriquez

    Implantaci&n - Estructuras

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    33/53

    Ing. Eliecer Henriquez

    Implantaci&n - C&di'o para lectura

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    34/53

    Ing. Eliecer Henriquez

    $laniicaci&n de Entrada y

    Salida de Disco

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    35/53

    Ing. Eliecer Henriquez

    Disco - Estructura

    Est&n direccionadas como arreglos

    unidimensionales de blo+ues l!gicos4 donde @stos

    son la unidad m&s pe+uea de transferencia#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    36/53

    Ing. Eliecer Henriquez

    Disco - Estructura

    * Este arreglo es mapeado a sectores secuenciales del disco#

    El sector 0 es el primer sector de la primera pistasobre el cilindro ms externo.

    El mapeo procede en orden a travs de aquellapista, luego a travs de las pistas en ese cilindro yluego a travs del resto de los cilindros desde el ms

    externo al ms interno.

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    37/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n

    El S#O# debe velar por el uso eficiente del

    6ardware#

    En este caso4 debe m&Cimi%ar el anc,o de

    banda" minimi%ar el tiempo de acceso#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    38/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n

    * *nc6o de banda

    Es el n>mero total de b"tes transferidos4dividido por el tiempo total entre el primer

    re+uerimiento por servicio " la

    completaci!n de la >ltima transferencia#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    39/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n

    * $omponentes principales del tiempo de acceso,

    Tiempo de bsqueda: es el tiempo que se

    consume en mover el cabezal hasta el cilindroque contiene el sector deseado.

    Latencia rotacional: es el tiempo gastado en la

    rotacin del disco hasta que el sector deseadoest bajo el cabezal del disco.

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    40/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n

    * 0iempo de latencia despreciable

    )inimi%ar el tiempo de b>s+ueda

    * 0iempo de b>s+ueda

    distancia de

    b>s+ueda

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    41/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n

    * *lgoritmos de planificaci!n para servir

    re+uerimientos de E/S a disco,

    Se ilustrar&n con la siguiente cola dere+uerimientos 'cilindros, = al (,

    ;4 ;4 G4 4 I4 I4 :J4 :G

    El cabe%al apunta al cilindro J#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    42/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n FCFS

    $ola K ;4 ;4 G4 4 I4 I4 :J4 :G

    $abe%al

    cilindro J#

    Ha" un total de :I= movimientos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    43/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n SSF

    * Selecciona el re+uerimiento con el menor tiempo de

    b>s+ueda desde la posici!n actual del cabe%al#

    * Puede causar 5starvation8 de algunos

    re+uerimientos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    44/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n SSF

    $ola K ;4 ;4 G4 4 I4 I4 :J4 :G

    $abe%al

    cilindro J#

    Ha" un total de : movimientos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    45/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n SC".

    * El bra%o comien%a en uno de los eCtremos del disco

    " se mueve 6acia el otro eCtremo4 sirviendo a los

    re+uerimientos en ese sentido4 luego el movimiento

    es reversado " el servicio contin>a#

    * 2lamado el algoritmo del elevador#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    46/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n SC".

    $ola K ;4 ;4 G4 4 I4 I4 :J4 :G

    $abe%al

    cilindro J#

    Ha" un total de =; movimientos#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    47/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n C-SC".

    * Provee un tiempo de espera m&s uniforme +ue

    S$*N#

    * El cabe%al se mueve s!lo en un sentido4 desde un

    eCtremo al otro4 sirviendo los re+uerimientos a su

    paso# 2uego retorna al comien%o del disco sin servir4

    tratando a los cilindros como una lista circular#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    48/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n C-SC".

    $ola K ;4 ;4 G4 4 I4 I4 :J4 :G

    $abe%al

    cilindro J#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    49/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n C-OO0

    * -ersi!n del $9S$*N#

    * El bra%o va s!lo 6asta el >ltimo re+uerimiento en

    cada direcci!n4 luego reversa la direcci!n

    inmediatamente#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    50/53

    Ing. Eliecer Henriquez

    Disco - $laniicaci&n C-OO0

    $ola K ;4 ;4 G4 4 I4 I4 :J4 :G

    $abe%al

    cilindro J#

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    51/53

    Ing. Eliecer Henriquez

    Disco - Selecci&n de un "l'oritmo de $laniicaci&n

    * El rendimiento depende del n>mero " tipos dere+uerimientos#

    * os re1uerimientos por sericio de disco est+ninluenciados por el m2todo de asi'naci&n dearc,ios

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    52/53

    Ing. Eliecer Henriquez

    Disco - Selecci&n de un "l'oritmo de $laniicaci&n

    * El algoritmo de planificaci!n de discopodrAa ser escrito como un m!dulo separadodel S#O#4 permitiendo +ue sea reepla%ado

    por un algoritmo diferente si es necesario#

    SS0F es com>n#

    SC". y C-SC". se e#ecutan me#or en un sistema1ue tiene una car'a pesada sobre el disco

    SSF o OO0 es una esco'encia ra3onable comoal'oritmo por deecto

    Sistemas Operativos

  • 7/17/2019 Tema 2 - Entrada y Salida

    53/53

    Disco - Otras deiniciones

    * Formateo de bajo nivel formateo fsico:Divide el disco en sectores que el controlador

    de disco pueda leer y escribir.

    * Formateo lgico: construye un sistema de

    archivos.

    * Bloque de arranque !Boot bloc"#$: Bloque de

    iniciali%acin del sistema.