Download - Unidad 4 SAdministración de Entrada

Transcript
  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    1/24

    Unidad 4 Administracin de entrada/salida.

    IntroduccinUna de las funciones principales de un S. O. es el control de todos los dispositivos de e / s de lacomputadora.Las principales funciones relacionadas son:

    Enviar comandos a los dispositivos.

    Detectar las interrupciones.

    Controlar los errores.

    Proporcionar una interfa entre los dispositivos ! el resto del sistema.

    El cdi"o de e / s representa una fraccin si"ni#cativa del S. O.El uso inapropiado de los dispositivos de e/s frecuentemente "enera ine#ciencias del sistema$ lo%ue afecta al performance global.

    Principios del Hardware de E/SEl enfo%ue %ue se considerar& tiene %ue ver con la interfa %ue desde el 'ard(are se presenta alsoft(are:

    Comandos %ue acepta el 'ard(are.

    )unciones %ue realia.

    Errores %ue puede informar.

    4.1 Dispositivos mane!adores de dispositivos "device drivers#.

    Dispositivos de E/S

    Se pueden clasi#car en dos "randes cate"or*as se"+n el tipo de transmisin de informacin:

    Dispositivos de ,lo%ue.

    Dispositivos de caracter.

    Las principales caracter*sticas de los dispositivos de ,lo%ue son:

    La informacin se almacena en ,lo%ues de tama-o #o.

    Cada ,lo%ue tiene su propia direccin.

    Los tama-os m&s comunes de los ,lo%ues van desde los 01 ,!tes 'asta los $204 ,!tes.

    Se puede leer o escri,ir en un ,lo%ue de forma independiente de los dem&s$ en cual%uiermomento.

    Un eemplo t*pico de dispositivos de ,lo%ue son los discos.

    Las principales caracter*sticas de los dispositivos de caracter son:

    La informacin se trans#ere como un 3uo de caracteres$ sin suetarse a una estructura de

    ,lo%ues.

    o se pueden utiliar direcciones.

    o tienen una operacin de ,+s%ueda.

    Un eemplo t*pico de dispositivos de caracter son las impresoras de l*nea$ terminales$ interfacesde

    una red$ ratones$ etc.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    2/24

    Al"unos dispositivos no se austan a este es%uema de clasi#cacin$ por eemplo los reloes$ %ue ntienen

    direcciones por medio de ,lo%ues ! no "eneran o aceptan 3uos de caracteres.

    Los dispositivos de E/S tam,i5n se pueden a"rupar en tres "randes "rupos se"+n su funcin:

    6 Dispositivos de interfa de usuario. Se llama as* a los dispositivos %ue permiten la comunicacinentre los

    usuarios ! la computadora. Dentro de este "rupo se inclu!en todos los dispositivos %ue sirvenpara

    proporcionar interfa con el usuario$ tanto para entrada 7ratn$ teclado$ etc.8 como para salida7impresoras$

    pantalla$ etc.8. E9isten perif5ricos menos 'a,ituales$ pero m&s so#sticados$ tales como unesc&ner$ lectores de

    'uella di"ital$ lectores de cinta ma"n5tica$ instrumentos musicales di"itales 7;D;8$ etc.

    6 Dispositivos de almacenamiento. Se usan para proporcionar almacenamiento no vol&til dedatos !

    memoria. Su funcin primordial es a,astecer de datos ! almacenamiento a los pro"ramas %ue seeecutan en el

    CPU. Se"+n su capacidad ! la inmediate con %ue se puede acceder a los datos almacenados enestos

    dispositivos$ se pueden dividir en almacenamiento secundario 7discos ! memorias 3as'8 !terciario 7cintas8

    6 Dispositivos de comunicaciones. Permiten conectar a la computadora con otras computadoras atrav5s de

    una red. Los dos tipos de dispositivos m&s comunes de esta clase son los mdems$ paracomunicacin v*a red

    telefnica$ ! las taretas de interfa a la red$ para conectar la computadora a una red de &realocal.

    Controladores o maneadores de Dispositivos

    Las unidades de e/s "eneralmente constan de:

    Un componente mec&nico. 0

    Un componente electrnico: el controlador del dispositivo o tareta.

    uc'os controladores pueden manear m&s de un dispositivo.

    El S. O. "eneralmente tra,aa con el controlador ! no con el dispositivo.

    Los modelos m&s frecuentes de comunicacin entre el CPU ! los controladores son:

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    3/24

    Para la ma!or*a de las micro ! mini computadoras:

    o odelo de ,us del sistema.

    Para la ma!or*a de los mainframes:

    o odelo de varios ,uses ! computadoras especialiadas en e/s llamadas canales de e/s.

    La interfa entre el controlador ! el dispositivo es con frecuencia de mu! ,ao nivel:

    La comunicacin es mediante un 3uo de ,its en serie en el %ue:

    El controlador de,e:

    Convertir el 3uo de ,its en serie en un ,lo%ue de ,!tes.

    Efectuar cual%uier correccin de errores necesaria.

    Copiar el ,lo%ue en la memoria principal.

    Cada controlador posee re"istros %ue utilia para comunicarse con el CPU:

    Pueden ser parte del espacio normal de direcciones de la memoria: e/s mapeada a memoria.

    Pueden utiliar un espacio de direcciones especial para la e/s$ asi"nando a cada controlador unaparte

    de 5l.

    El S. O. realia la e/s al escri,ir comandos en los re"istros de los controladores< los par&metros delos

    comandos tam,i5n se car"an en los re"istros de los controladores.

    Al aceptar el comando$ el CPU puede dear al controlador ! dedicarse a otro tra,ao.

    Al terminar el comando$ el controlador provoca una interrupcin para permitir %ue el S. O.:

    O,ten"a el control del CPU.

    =eri#%ue los resultados de la operacin.

    El cpu o,tiene los resultados ! el estado del dispositivo al leer uno o m&s ,!tes de informacinde los

    re"istros del controlador. >

    El sistema de E/S es la parte del sistema operativo %ue se ocupa de facilitar el maneo de los

    dispositivos de

    E/S ofreciendo una visin l"ica simpli#cada de los mismos %ue pueda ser usada por otroscomponentes del

    sistema operativo 7como el sistema de arc'ivos8 o incluso por el usuario. ediante esta visinl"ica se ofrece

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    4/24

    a los usuarios un mecanismo de a,straccin %ue oculta todos los detalles relacionados con losdispositivos

    f*sicos$ as* como del funcionamiento real de los mismos. El sistema operativo de,e controlar el

    funcionamiento de todos los dispositivos de E/S para alcanar los si"uientes o,etivos:

    6 )acilitar el maneo de los dispositivos de E/S. Para ello de,e ofrecer una interfa entre losdispositivos ! el

    resto del sistema %ue sea sencilla ! f&cil de utiliar.6 Optimiar la E/S del sistema$ proporcionando mecanismos de incremento de prestaciones dondesea

    necesario.

    6 Permitir la cone9in de dispositivos nuevos de E/S$ solventando de forma autom&tica suinstalacin usando

    mecanismos del tipo plu"?pla!.

    4

    @ AB

    Para empear una operacin de E/S$ el CPU tiene %ue escri,ir so,re los re"istros anteriores losdatos de la

    operacin a trav5s de una direccin de E/S o de memoria asi"nada +nicamente al controlador.Se"+n se 'a"a

    de una u otra forma$ se distin"ue entre dispositivos conectados por puertos o pro!ectados en

    memoria. Elmodelo de dispositivos por puertos es cl&sico en las ar%uitecturas de ;ntel. En ellas$ cuando seinstala un

    dispositivo$ a su controlador se le asi"na un puerto de E/S$ una interrupcin 'ard(are ! un vectorde

    interrupcin. Para efectuar una operacin de E/S el CPU eecuta operaciones port o portout con ladireccin

    de puerto del dispositivo ! con par&metros para indicar %u5 re"istro se %uiere manipular. odas la

    operaciones de entrada/salida 7pantalla "rca$ impresoras$ ratn$ discos$ etc.8 se realian usandesas dos

    instrucciones de len"uae m&%uina con los par&metros adecuados. El pro,lema de este tipo de

    direccionamiento es %ue e9i"e conocer las direcciones de E/S ! pro"ramar las instruccionesespeciales de E/S$

    lo %ue es si"ni#cativamente distinto del modelo de memoria de la computadora.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    5/24

    Eemplos de controladores$ sus direcciones de e/s ! sus vectores de interrupcin en la PC ;pueden verse

    en la a,la 4. .

    Controlador de e/s Direccin de e/s =ector de interrupciones

    Belo 242 24> 1

    eclado 2@2 2@>

    Disco duro >02 F >0f >

    ;mpresora >G1 F >Gf H

    Disco 3e9i,le >f2 F >fG 4

    Bs0>0 primario >f1 F >I 0

    Bs0>0 secundario 0f1 F 0I

    a,la 4.: Controladores de e/s$ direcciones de e/s ! vector de interrupciones.

    El otro modelo de direccionamiento de E/S es el modelo pro!ectado en memoria. Este modelo$t*pico de las

    ar%uitecturas de otorola$ asi"na a cada dispositivo de E/S un ran"o de direcciones de memoria atrav5s de

    las cuales se escri,e so,re los re"istros del controlador. En este modelo no 'a! instruccionesespec*#cas de

    E/S$ sino %ue las operaciones se llevan a ca,o mediante instrucciones m&%uina de maneo dememoria$ lo %ue

    permite "estionar un mapa +nico de direcciones de memoria. Sin em,ar"o$ para no tener

    con3ictos con otros

    accesos a memoria ! para optimiar las operaciones$ se reserva una ona de memoria f*sica paraasi"nar las

    direcciones de E/S.

    Los dispositivos de almacenamiento secundario ! terciario manean la informacin en unidades dtama-o

    #o$ denominadas ,lo%ues$ por lo %ue a su ve se denominan dispositivos de ,lo%ues. Estos,lo%ues se pueden

    direccionar de manera independiente$ lo %ue permite leer o escri,ir un ,lo%ue con independenciade los

    dem&s. Los dispositivos de ,lo%ue lo son por%ue el 'ard(are fuera la e9istencia de accesos deun tama-o

    determinado. Un disco$ por eemplo$ se divide en sectores de H0 ,!tes o de J$ siendo unsector la unidad

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    6/24

    m*nima de transferencia %ue el controlador del disco puede manear. Los dispositivos decaracteres$ como los

    terminales$ impresoras$ taretas de red$ mdems$ etc5tera$ no almacenan informacin en ,lo%uesde tama-o

    #o. Kestionan 3uos de caracteres de forma lineal ! sin nin"+n tipo de estructura de ,lo%ue. Unteclado es un

    ,uen eemplo de estos dispositivos. Est& conectado a una UAB 7Universal As!nc'ronous

    Beceiver/ransmiter8 %ue reci,e un car&cter del teclado cada ve %ue se pulsa una tecla. o esposi,le leer un

    ,lo%ue de teclas de un "olpe o ,uscar dentro del dispositivo por nin"una unidad. Un terminal porl*nea serie

    tam,i5n es un dispositivo de caracteres. Su controlador se limita a enviar al perif5rico el 3uo decaracteres

    %ue de,e representar en la pantalla ! a reci,ir del mismo los caracteres tecleados por el usuario.

    Drivers de E/S

    Un controlador de dispositivo 7llamado normalmente controlador$ o$ en in"l5s$ driver8 es unpro"rama

    inform&tico %ue permite al sistema operativo interactuar con un perif5rico$ 'aciendo unaa,straccin del

    'ard(are ! proporcionando una interfa Fposi,lemente estandariadaF para usarlo. Se puedees%uematiar H

    como un manual de instrucciones %ue le indica cmo de,e controlar ! comunicarse con undispositivo en

    particular. Por tanto$ es una piea esencial$ sin la cual no se podr*a usar el 'ard(are.

    E9isten tantos tipos de controladores como tipos de perif5ricos$ ! es frecuente encontrar m&s deun

    controlador posi,le para el mismo dispositivo$ cada uno ofreciendo un nivel distinto defuncionalidades. Por

    eemplo$ aparte de los o#ciales 7normalmente disponi,les en la p&"ina (e, del fa,ricante8$ sepueden

    encontrar tam,i5n los proporcionados por el sistema operativo$ o tam,i5n versiones no o#ciales'ec'as por

    terceros. Estos controladores pueden ser "en5ricos 7v&lidos para m&s de un modelo del mismoperif5rico8 o

    espec*#cos para cada modelo. am,i5n se distri,u!en actualiaciones a nuevas versiones$ %uepueden dar un

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    7/24

    meor funcionamiento. ormalmente son los fa,ricantes del 'ard(are %uienes escri,en suscontroladores$ !a

    %ue conocen meor el funcionamiento interno de cada aparato$ pero tam,i5n se encuentrancontroladores

    li,res$ por eemplo en los sistemas operativos li,res. En este caso$ los creadores no son de laempresa

    fa,ricante$ aun%ue a veces 'a! una cooperacin con ellos$ cosa %ue facilita el desarrollo. Si no la

    'a!$ el

    procedimiento necesita de in"enier*a inversa ! otros m5todos dif*ciles o con ries"os le"ales.

    Los controladores son mu! variados$ casi tanto como los dispositivos de E/S. uc'os de ellos$como los de

    disco$ pueden controlar m+ltiples dispositivos. Otros$ como los de canales de E/S$ inclu!en supropio CPU !

    ,us para controlar la E/S por pro"rama ! evitar interrupciones en el CPU de la computadora. Decual%uier

    forma$ en los +ltimos a-os 'a e9istido un esfuero importante de estandariacin de losdispositivos$ lo %ue

    permite usar un mismo controlador para dispositivos de distintos fa,ricantes. Un ,uen eemplo loconstitu!en

    los dispositivos SCS; 7Small Computer S!stem ;nterface8$ cu!os controladores ofrecen unainterfa com+n

    independientemente de %ue se trate de un disco$ una cinta$ un CDFBO$ etc. Otro ,uen eemploson los

    controladores ;DE 7;n te"rated Drive Electronics8$ %ue suelen usarse para conectar los discos en

    todas las

    computadoras personales. En cual%uier caso$ ! sea como sea el controlador$ su misin esconvertir los datos

    del formato interno del dispositivo a uno e9terno %ue se ofreca a trav5s de una interfa depro"ramacin ,ien

    de#nida. Los controladores de dispositivo se suelen a"rupar en al"una de las si"uientescate"or*as o clases:

    6 Adaptadores de audio 7taretas de sonido8.

    6 Dispositivos de comunicacin 7infrarroos$ mdems$ etc8.6 Dispositivos de visualiacin< pantallas 7displa!s8.

    6 eclados.

    6 Batn 7mouseM ! otros se-aladores "rcos8.

    6 Dispositivos multimedia.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    8/24

    6 Dispositivos de Bed.

    6 ;mpresoras.

    6 Almacenamiento

    4.0 ecanismos ! funciones de los maneadores de dispositivos 7device drivers8.

    El controlador es el componente m&s importante desde el punto de vista del sistema operativo$ !

    %ue

    constitu!e la interfa del dispositivo con el ,us de la computadora ! es el componente %ue se vedesde el

    CPU. El S. O. "eneralmente tra,aa con el controlador ! no con el dispositivo.

    La interfa entre el controlador ! el dispositivo es con frecuencia de mu! ,ao nivel:

    FLa comunicacin es mediante un 3uo de ,its en serie %ue:

    Comiena con un pre&m,ulo.

    Si"ue con una serie de ,its 7de un sector de disco$ por eemplo8.Conclu!e con una suma para veri#cacin o un cdi"o corrector de errores.

    FEl pre&m,ulo:

    Se escri,e al dar formato al disco.

    Contiene el n+mero de cilindro ! sector$ el tama-o de sector ! otros datos similares.

    El controlador de,e:

    Convertir el 3uo de ,its en serie en un ,lo%ue de ,!tes.

    Efectuar cual%uier correccin de errores necesaria.

    Copiar el ,lo%ue en la memoria principal.

    Cada controlador posee re"istros %ue utilia para comunicarse con el CPU:

    Pueden ser parte del espacio normal de direcciones de la memoria: e/s mapeada a memoria.

    Pueden utiliar un espacio de direcciones especial para la e/s$ asi"nando a cada controlador unaparte

    de 5l. @

    El S. O. realia la e/s al escri,ir comandos en los re"istros de los controladores< los par&metros delos

    comandos tam,i5n se car"an en los re"istros de los controladores. Al aceptar el comando$ el CPUpuede dear

    al controlador ! dedicarse a otro tra,ao.

    Al terminar el comando$ el controlador provoca una interrupcin para permitir %ue el S. O.:

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    9/24

    FO,ten"a el control del CPU.

    F=eri#%ue los resultados de la operacin.

    El CPU o,tiene los resultados ! el estado del dispositivo al leer uno o m&s ,!tes de informacinde los

    re"istros del controlador.

    Su pro"ramacin se lleva a ca,o mediante una interfa de mu! ,ao nivel %ue proporciona acceso

    a una seriede re"istros del controlador$ incluidos en el mapa de E/S de la computadora$ %ue se puedenacceder mediante

    instrucciones de m&%uina de E/S.

    Na! tres re"istros importantes en casi todos los controladores:

    re"istro de datos

    estado

    control

    El re"istro de datos sirve para el intercam,io de datos. En 5l ir& el controlador car"ando losdatos le*dos

    ! de 5l ir& e9tra!endo los datos para su escritura en el perif5rico.

    Un ,it del re"istro de estado sirve para indicar %ue el controlador puede transferir una pala,ra.En las

    operaciones de lectura esto si"ni#ca %ue 'a car"ado en el re"istro de datos un nuevo valor$mientras %ue

    en las de escritura si"ni#ca %ue necesita un nuevo dato. Otros ,its de este re"istro sirven para%ue el

    controlador indi%ue los pro,lemas %ue 'a encontrado en la eecucin de la +ltima operacin deE/S.

    El re"istro de control sirve para indicarle al controlador las operaciones %ue 'a de realiar. Losdistintos

    ,its de este re"istro indican distintas acciones %ue 'a de realiar el perif5rico.

    G

    G AB

    Para empear una operacin de E/S$ el CPU tiene %ue escri,ir so,re los re"istros anteriores losdatos de la

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    10/24

    operacin a trav5s de una direccin de E/S o de memoria asi"nada +nicamente al controlador.Este modelo

    vale tanto para los terminales o la pantalla como para los discos. Las caracter*sticas delcontrolador son mu!

    importantes$ !a %ue de#nen el aspecto del perif5rico para el sistema operativo. Atendiendo a las

    caracter*sticas del 'ard(are de los dispositivos$ se pueden o,servar los si"uientes aspectosdistintivos:

    6 Direccin de E/S. En "eneral 'a! dos modelos de direccionamiento de E/S$ los %ue usan puertos! los %ue

    pro!ectan los re"istros en memoria.

    6 Unidad de transferencia. Los dispositivos suelen usar unidades de transferencia de tama-o #o.Na! dos

    modelos cl&sicos de dispositivos: de caracteres ! de ,lo%ues.

    6 ;nteraccin CPUFcontrolador. El CPU tiene %ue interaccionar con el controlador para realiarlas

    operaciones de E/S ! sa,er cu&ndo terminan.

    Un controlador de dispositivo o unidad de E/S se encar"a de controlar uno o m&s dispositivos delmismo tipo

    ! de intercam,iar informacin entre ellos ! la memoria principal o unidad central de proceso de la

    computadora. El controlador de,e encar"arse adem&s de sincroniar la velocidad del procesadorcon la del

    perif5rico ! de detectar los posi,les errores %ue se producan en el acceso a los perif5ricos. En el

    caso de un

    controlador de disco$ 5ste de,e encar"arse de convertir un 3uo de ,its procedente del disco a un,lo%ue de

    ,!tes detectando ! corri"iendo$ si es posi,le$ los errores %ue se producan en esta transferenciaUna ve

    o,tenido el ,lo%ue ! compro,ado %ue se encuentra li,re de errores$ de,er& encar"arse detransferirlo a

    memoria principal. La informacin entre los controladores de dispositivo ! la unidad central deproceso o

    memoria principal se puede transferir mediante un pro"rama %ue eecuta continuamente ! lee oescri,e los

    datos del 7al8 controlador. Con esta t5cnica$ %ue se denomina E/S pro"ramada$ la transferencia deinformacin

    entre un perif5rico ! el procesador se realia mediante la eecucin de una instruccin de E/S. Conesta

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    11/24

    t5cnica$ es el procesador el responsa,le de e9traer o enviar datos entre el procesador ! elcontrolador de

    dispositivo$ lo %ue provoca %ue el procesador ten"a %ue esperar mientras se realia latransferencia entre el

    perif5rico ! el controlador. Dado %ue los perif5ricos son sensi,lemente m&s lentos %ue elprocesador$ 5ste

    de,er& esperar una "ran cantidad de tiempo 'asta %ue se complete la operacin de E/S. En este

    caso no e9iste

    nin"+n tipo de concurrencia entre la E/S ! el procesador !a %ue 5ste de,e esperar a %ue #nalice loperacin.

    Aun%ue esta t5cnica es mu! anti"ua$ !a %ue proviene del tiempo en %ue los controladores noten*an

    interrupciones$ actualmente los canales de E/S ! al"unos multiprocesadores usan esta t5cnicapara evitar %ue

    lle"uen al CPU de la computadora muc'as interrupciones de E/S. En am,os casos$ la t5cnica es lamisma:

    dedicar un CPU especial para la E/S. La forma de 'acerlo es muestrear continuamente losre"istros de estado

    de los controladores para ver si est&n disponi,les !$ en ese caso$ leer o escri,ir los re"istros.;ma"ine un canal

    de E/S al %ue 'a! conectados m+ltiples ,uses de E/S %ue$ a su ve$ tienen m+ltiples dispositivosde E/S. Si el

    CPU %uiere escri,ir en uno de ellos$ de,e mirar su re"istro de estado 'asta %ue los ,its indi%uen%ue no est&

    ocupado. Cuando esto ocurra$ escri,ir& un ,lo%ue en los re"istros del controlador ! esperar&'asta %ue los ,its

    de estado indi%uen %ue est& disponi,le. ;ma"ine %ue %uiere leer de otro controlador$ de,er&esperar a %ue los

    ,its de estado le indi%uen %ue est& disponi,le$ pro"ramar la operacin ! esperar a %ue se indi%ue%ue los datos

    est&n disponi,les. Evidentemente$ incluso aun%ue el CPU est5 controlando varios dispositivos deE/S$ siempre

    e9iste p5rdida de ciclos de,ido a la e9istencia de las esperas. Sin em,ar"o$ e9isten situaciones en

    %ue esto no

    es as*.

    Na! %ue recalcar %ue el controlador al ser una parte cr*tica del sistema operativo$ si falla puedeser m&s "rave

    %ue otros errores de soft(are$ pudiendo ,lo%uear el ordenador o incluso da-ar el 'ard(are.De,ido a %ue el

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    12/24

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    13/24

    correspondiente maneador de interrupcin cu!o efecto es el de salvar los re"istros$ comunicar elevento al

    maneador del dispositivo ! restaurar la eecucin de un proceso 7%ue no tiene por %u5 ser elinterrumpido8.

    Los maneadores de interrupcin suelen 'acer al"o m&s %ue comunicar el evento al maneador dedispositivo.

    Cuando una interrupcin ocurre mu! frecuentemente$ caso del relo$ o cuando la cantidad de

    informacin a

    transferir es mu! pe%ue-a$ caso del teclado$ ser*a mu! costoso comunicar siempre el evento almaneador de

    dispositivo asociado. En estos casos$ el propio maneador de interrupcin re"istra la ocurrencia deevento$

    ,ien mediante el incremento de una varia,le "lo,al para el relo o la acumulacin de caracteresen un ,uIer

    del teclado. La noti#cacin al maneador se 'ace +nicamente cada cierto n+mero de ocurrenciasdel evento$

    en el caso del relo$ o activando una ,andera %ue indica %ue 'a! datos en el ,uIer del teclado.

    Las interrupciones de,en ocultarse en el S. O.:

    Cada proceso %ue inicie una operacin de e / s se ,lo%uea 'asta %ue termina la e / s ! ocurra la

    interrupcin.

    El procedimiento de interrupcin realia lo necesario para des,lo%uear el proceso %ue lo inici.

    AB

    aneadores de dispositivos

    Cada dispositivo de E/S$ o cada clase de dispositivos$ tiene un maneador asociado en el sistemaoperativo.

    Dic'o maneador inclu!e: cdi"o independiente del dispositivo para proporcionar al nivel superiordel sistema

    operativo una interfa de alto nivel ! el cdi"o dependiente del dispositivo necesario parapro"ramar el

    controlador del dispositivo a trav5s de sus re"istros ! datos. La tarea de un maneador dedispositivo es

    aceptar peticiones en formato a,stracto$ de la parte del cdi"o de E/S independiente deldispositivo$ traducir

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    14/24

    dic'as peticiones a t5rminos %ue entienda el controlador$ enviar al mismo las rdenes adecuadasen la

    secuencia correcta ! esperar a %ue se cumplan.

    odos los maneadores tienen una lista de peticiones pendientes por dispositivo donde se encolalas

    peticiones %ue lle"an de niveles superiores. El maneador e9plora la lista de peticiones$ e9traeuna peticin

    pendiente ! ordena su eecucin. La pol*tica de e9traccin de peticiones de la lista es dependientedel

    maneador ! puede ser );)O. Una ve enviada la peticin al controlador$ el maneador se ,lo%ueao no$

    dependiendo de la velocidad del dispositivo. Para los lentos 7discos8 se ,lo%uea esperando unainterrupcin.

    Para los r&pidos 7pantalla$ discos BA$ etc5tera8 responde inmediatamente. Despu5s de reci,ir el#n de

    operacin$ controla la e9istencia de errores ! devuelve al nivel superior el estado de terminacinde la

    operacin. Si tiene operaciones pendientes en la cola de peticiones$ atiende a la si"uiente$ encaso de %ue le

    to%ue eecutar despu5s de la operacin de E/S. En caso contrario se ,lo%uea.

    odo el cdi"o %ue depende de los dispositivos aparece en los maneadores de dispositivos.

    Cada controlador posee uno o m&s re"istros de dispositivos:

    Se utilian para darle los comandos.

    Los maneadores de dispositivos proveen estos comandos ! veri#can su eecucin adecuada.

    La la,or de un maneador de dispositivos es la de:

    Aceptar las solicitudes a,stractas %ue le 'ace el soft(are independiente del dispositivo.

    =eri#car la eecucin de dic'as solicitudes.

    Si al reci,ir una solicitud el maneador est& ocupado con otra solicitud$ a"re"ar& la nueva solicitua

    una cola de solicitudes pendientes.

    La solicitud de e / s$ por e. para un disco$ se de,e traducir de t5rminos a,stractos a

    t5rminos concretos:

    El maneador de disco de,e:

    o Estimar el lu"ar donde se encuentra en realidad el ,lo%ue solicitado.

    o =eri#car si el motor de la unidad funciona.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    15/24

    o =eri#car si el ,rao est& colocado en el cilindro adecuado$ etc.

    o Besumiendo: de,e decidir cu&les son las operaciones necesarias del controlador ! su

    orden.

    o Env*a los comandos al controlador al escri,ir en los re"istros de dispositivo del mismo.

    o )recuentemente el maneador del dispositivo se ,lo%uea 'asta %ue el controlador realia

    cierto tra,ao< una interrupcin lo li,era de este ,lo%ueo.

    o Al #naliar la operacin de,e veri#car los errores.

    o Si todo esta o transferir& los datos al soft(are independiente del dispositivo.

    o Be"resa informacin de estado so,re los errores a %uien lo llam.

    o ;nicia otra solicitud pendiente o %ueda en espera. 2

    Soft(are de E/S independiente del dispositivo

    La ma!or parte del sistema de E/S es soft(are independiente de dispositivo. Este nivel inclu!e elsistema de

    arc'ivos ! el de "estin de red$ el "estor de ,lo%ues$ la cac'e de ,lo%ues ! una parte de losmaneadores de

    dispositivo. La principal funcin de esta capa de soft(are es eecutar las funciones de E/S %ue soncomunes a

    todos los dispositivos a trav5s de una interfa uniforme.

    ;nternamente$ en este nivel se proporciona acceso a nivel de ,lo%ues o caracteres$

    almacenamiento

    intermedio$ "estin de los dispositivos$ plani#cacin de la E/S ! control de errores.

    El tama-o de acceso a nivel de ,lo%ues se 'ace usando tama-os de ,lo%ue de acceso comunespara todo un

    sistema de arc'ivos$ lo %ue permite ocultar %ue cada dispositivo puede tener distinto tama-o desector !

    distinta "eometr*a. Estos detalles %uedan ocultos por la capa de soft(are independiente deldispositivo %ue

    ofrece una interfa so,re la ,ase de ,lo%ues l"icos del sistema de arc'ivos. Lo mismo ocurre conlos

    dispositivos de caracteres$ al"unos de los cuales tra,aan con un car&cter cada ve$ como elteclado$ mientras

    otros tra,aan con 3uos de caracteres$ como el modem o las redes.

    Para optimiar la E/S ! para armoniar las peticiones de usuario$ %ue pueden ser de cual%uiertama-o$ con los

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    16/24

    ,lo%ues %ue manea el sistema de arc'ivos$ el soft(are de E/S proporciona almacenamientointermedio en

    memoria del sistema operativo. Esta facilidad se usa para tres cosas:

    6 Optimiar la E/S evitando accesos a los dispositivos.

    6 Ocultar las diferencias de velocidad con %ue cada dispositivo ! usuario manean los datos.

    6 )acilitar la implementacin de la sem&ntica de comparticin$ al e9istir una copia +nica de los

    datos enmemoria.

    El sistema de E/S mantiene ,uIers en distintos componentes. Por eemplo$ en la parte delmaneador del

    teclado independiente del dispositivo e9iste un ,uIer para almacenar los caracteres %ue teclea eusuario 'asta

    %ue se pueden entre"ar a los niveles superiores. Si se usa una l*nea serie para leer datos de unsistema remoto

    ! almacenarlos en el disco$ se puede usar un ,uIer para "uardar temporalmente los datos 'asta%ue ten"an

    una cierta cantidad ! sea renta,le escri,irlos a disco. Si se est& le!endo o escri,iendo un arc'ivose "uardan

    copias de los ,lo%ues en memoria para no tener %ue acceder al disco si se vuelven a leer.

    La "estin de los dispositivos a"rupa a su ve tres servicios: nom,rado$ proteccin ! control deacceso.

    El nom,rado permite traducir los nom,res de usuario a identi#cadores del sistema. Por eemplo$en U;$

    cada dispositivo tiene un nom,re 7p. e.: /dev/cdrom8 %ue se traduce en un +nico identi#cadorinterno 7o nodoF

    i8$ %ue a su ve se traduce en un +nico n+mero de dispositivo principal 7clase de dispositivo8 !secundario

    7elemento de la clase8. Cada dispositivo tiene asociada una informacin de proteccin 7en U;mediante >

    ,its para due-o$ "rupo ! mundo8 ! este nivel de soft(are ase"ura %ue los re%uisitos de proteccise cumplen.

    Adem&s proporciona control de acceso para %ue un dispositivo dedicado$ como una impresora$

    sea accedido

    por un +nico usuario cada ve.

    Una de las funciones principales del sistema de E/S es la plani#cacin de la E/S de los distintoscomponentes.

    Para ello se usan colas de peticiones para cada clase de dispositivo$ de las %ue se e9traen laspeticiones de

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    17/24

    cada dispositivo en particular. Cada una de estas colas se ordena si"uiendo una pol*tica deplani#cacin$ %ue

    puede ser distinta en cada nivel.

    Por +ltimo$ este nivel proporciona "estin de errores para a%uellos casos %ue el maneador dedispositivo no

    puede solucionar. Un error transitorio de lectura de un ,lo%ue se resuelve en el maneadorreintentando su

    lectura. Un error permanente de lectura no puede ser resuelto ! de,e ser comunicado al usuariopara %ue tome

    las medidas adecuadas. En "eneral$ todos los sistemas operativos inclu!en al"una forma decontrol de errores

    internos ! de noti#cacin al e9terior en caso de %ue esos errores no se puedan resolver.

    ;ma"ine$ por eemplo$ %ue una aplicacin %uiere leer de un dispositivo %ue no e9iste. El sistemade E/S ver&

    %ue el dispositivo no est& ! lo noti#car& a los niveles superiores 'asta %ue el error lle"ue a la

    aplicacin. Sin

    em,ar"o$ es importante resaltar %ue los sistemas operativos son cada ve m&s ro,ustos ! cadave inclu!en

    m&s control ! reparacin de errores$ para lo cual usan m5todos de paridad$ c'ecsums$ cdi"oscorrectores de

    error$ etc. Adem&s$ la informacin %ue proporcionan cuando 'a! un error es cada ve ma!or.

    )unciones "eneralmente realiadas por el soft(are independiente del dispositivo:

    ;nterfa uniforme para los maneadores de dispositivos.

    om,res de los dispositivos.

    Proteccin del dispositivo.

    Proporcionar un tama-o de ,lo%ue independiente del dispositivo.

    Uso de ,uIers.

    Asi"nacin de espacio en los dispositivos por ,lo%ues.

    Asi"nacin ! li,eracin de los dispositivos de uso e9clusivo.

    ;nforme de errores.

    Las funciones ,&sicas del soft(are independiente del dispositivo son:

    Efectuar las funciones de e / s comunes a todos los dispositivos.

    Proporcionar una interfa uniforme del soft(are a nivel usuario.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    18/24

    El soft(are independiente del dispositivo asocia los nom,res sim,licos de los dispositivos con el

    nom,re adecuado.

    El soft(are independiente del dispositivo de,e:

    Ocultar a los niveles superiores los diferentes tama-os de sector de los distintos discos.

    Proporcionar un tama-o uniforme de los ,lo%ues$ por e.: considerar varios sectores f*sicos

    como un solo ,lo%ue l"ico.

    0

    0 AB

    Espacio de usuario para soft(are de E/S

    La ma!or*a del soft(are de e / s est& dentro del S. O. Una pe%ue-a parte consta de ,i,liotecas

    li"adas entre s* con los pro"ramas del usuario. La ,i,lioteca est&ndar de e / s contiene varios

    procedimientos relacionados con e / s ! todos se eecutan como parte de los pro"ramas del

    usuario.

    Otra cate"or*a importante de soft(are de e / s a nivel usuario es el sistema de spoolin". Elspoolin"

    es una forma de tra,aar con los dispositivos de e /s de uso e9clusivo en un sistema de

    multipro"ramacin:

    El eemplo t*pico lo constitu!e la impresora de l*neas.

    Los procesos de usuario no a,ren el arc'ivo correspondiente a la impresora.

    Se crea un proceso especial$ llamado demonio en al"unos sistemas.

    Se crea un directorio de spoolin".

    Para imprimir un arc'ivo:

    Un proceso "enera todo el arc'ivo por imprimir ! lo coloca en el directorio de spoolin".

    El proceso especial 7demonio8$ +nico con permiso para utiliar el arc'ivo especial de la

    impresora$ de,e imprimir los arc'ivos en el directorio.

    Se evita el posi,le pro,lema de tener un proceso de usuario %ue manten"a un recurso tomado

    lar"o tiempo.

    Un es%uema similar tam,i5n es aplica,le para la transferencia de arc'ivos entre e%uipos

    conectados:

    Un usuario coloca un arc'ivo en un directorio de spoolin" de la red.

    Posteriormente$ el proceso especial lo toma ! transmite. Un e. son los sistemas de correo

    electrnico.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    19/24

    Demonio o Daemon 7Dis And E9ecution Oitor8 Suena E9tra-o 'a,lar de QdemoniosQ en los

    Sistemas Operativos$ pero es la raduccin literal %ue se le puede dar a los Procesos %ue se

    eecutan de manera no Q=istaQ u Oculta por el Usuario dentro del sistema$ pero %ue se est&n

    eecutando ! %ue pueden ser controlados por el Administrador. En Sistemas como Rindo(s son

    llamados QServiciosQ ! son los e%uivalentes de Rindo(s para los demonios de U;$ tienen el

    mismo Propsito. Su contraparte en Sistemas del tipo DOS es al"o complicado e9plicar$ puesto%ue

    son onousuario ! onoproceso$ es decir %ue solo admiten un Usuario ! %ue solo QeecutanQ un

    solo pro"rama dentro de la emoria$ 7Olvidando el Jernel$ Con#".s!s$ Autoe9ec.,at ! sin olvidar

    el Command.com8$ en estos casos se manea,an los SB 7erminate and Sta! Besident8 ermina

    Si"ue BesidenteT %ue era la forma m&s primitiva de ultitarea en DOS. En Sistemas como el ac

    OS$ son llamados e9tensiones del sistema. Na! %ue diferenciar entre una Aplicacin activa ! entre

    un Demonio Entre un Servidor Soft(are ! un Demonio$ la Aplicacin activa pro"ramasimplemente es una Aplicacin %ue se car"a en la memoria ! %ue tiene #nes espec*#cos como u

    Procesador de Pala,ras$ un Beproductor$ un ave"ador$ etc. El demonio se eecuta en la emoria

    pero sin Q;nterfaceQ ! las +nicas opciones %ue posee son las de iniciar$ reiniciar o detenerse.7Esto

    solamente dentro de la Sesin8. Un Servidor es una Aplicacin en Se"undo Plano 7como el

    demonio8 pero %ue cuenta con un interface ! es con#"ura,le ! %ue tra,aa directamente con el

    Jernel. Un Eemplo es un Servidor )P. Lo demonios son pro"rama,les$ !a sea ;niciarlos o

    deternerlos de manera manual$ editando al"+n arc'ivo$ 'aciendo al"+n Script pro"ram&ndolos

    para realiar determinadas tareas. Los demonios se distin"uen por%ue est&n presentes en&reas

    sensi,les del sistema. En los SO U;Flie los demonios se arrancan cuando el Sistema Operativo>

    inicia ! como a cual%uier aplicacin se les asi"na un P;D 7Process ;D8 ;denti#cacin de ProcesosT

    es un n+mero %ue ;denti#ca al pro"rama 'asta %ue termina.

    4.4 Operaciones de Entrada /salida.

    anto en la E/S pro"ramada como la ,asada en interrupciones$ el CPU de,e encar"arse de latransferencia de

    datos una ve %ue sa,e %ue 'a! datos disponi,les en el controlador. Una meora importante paraincrementar

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    20/24

    la concurrencia entre el CPU ! la E/S consiste en %ue el controlador del dispositivo se puedaencar"ar de

    efectuar la transferencia de datos$ li,erando de este tra,ao al CPU$ e interrumpirlo slo cuando'a!a

    terminado la operacin completa de E/S. Esta t5cnica se denomina acceso directo a memoria7DA$ Direct

    emor! Access8.

    Si se lee el disco sin DA:

    El controlador lee en serie el ,lo%ue 7uno o m&s sectores8 de la unidad:

    o La lectura es ,it por ,it.

    o Los ,its del ,lo%ue se "ra,an en el ,uIer interno del controlador.

    Se calcula la suma de veri#cacin para corro,orar %ue no e9isten errores de lectura.

    El controlador provoca una interrupcin.

    El S. O. lee el ,lo%ue del disco por medio del ,uIer del controlador:

    o La lectura es por ,!te o pala,ra a la ve.

    o En cada iteracin de este ciclo se lee un ,!te o una pala,ra del re"istro del controlador

    ! se almacena en memoria.

    Se desperdicia tiempo del CPU.

    DA se ide para li,erar al CPU de este tra,ao de ,ao nivel.

    El CPU le proporciona al controlador:

    La direccin del ,lo%ue en el disco.

    La direccin en memoria a donde de,e ir el ,lo%ue.

    El n+mero de ,!tes por transferir.

    Lue"o de %ue el controlador le! todo el ,lo%ue del dispositivo a su ,uIer ! de %ue corro,or la

    suma de veri#cacin:

    Copia el primer ,!te o pala,ra a la memoria principal.

    Lo 'ace en la direccin especi#cada por medio de la direccin de memoria de DA.

    ;ncrementa la direccin DA ! decrementa el contador DA en el n+mero de ,!tes %ue aca,a

    de transferir.

    Se repite este proceso 'asta %ue el contador se anula ! por lo tanto el controlador provoca una

    interrupcin.

    Al iniciar su eecucin el S. O. lue"o de la interrupcin provocada$ no de,e copiar el ,lo%ue en

    la memoria$ por%ue !a se encuentra a'* 7ver )i"ura H. 8. 4

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    21/24

    El controlador necesita un ,uIer interno por%ue una ve iniciada una transferencia del disco:

    Los ,its si"uen lle"ando del disco constantemente.

    o interesa si el controlador est& listo o no para reci,irlos.

    Si el controlador intentara escri,ir los datos en la memoria directamente:

    o endr*a %ue recurrir al ,us del sistema para c / u de las pala,ras 7o ,!tes8 transferidas.

    o El ,us podr*a estar ocupado por otro dispositivo ! el controlador de,er*a esperar.

    o Si la si"uiente pala,ra lle"ara antes de %ue la anterior 'u,iera sido almacenada$ el

    controlador la tendr*a %ue almacenar en al"una parte.

    Si el ,lo%ue se "uarda en un ,uIer interno:

    El ,us no se necesita sino 'asta %ue el DA comiena.

    La transferencia DA a la memoria !a no es un aspecto cr*tico del tiempo.

    Los controladores simples no pueden atender la e / s simult&nea:

    ientras trans#eren a la memoria$ el sector %ue pasa de,ao de la ca,ea del disco se pierde< es

    decir %ue el ,lo%ue si"uiente al reci5n le*do se pierde.

    La lectura de una pista completa se 'ar& en dos rotaciones completas$ una para los ,lo%ues

    pares ! otra para los impares.

    Si el tiempo necesario para una transferencia de un ,lo%ue del controlador a la memoria por

    medio del ,us es ma!or %ue el tiempo necesario para leer un ,lo%ue del disco:

    o Ser*a necesario leer un ,lo%ue ! lue"o saltar dos o m&s ,lo%ues.

    o El salto de ,lo%ues:

    Se eecuta para darle tiempo al controlador para la transferencia de los datos a

    la memoria.

    Se llama separacin.

    Al formatear el disco$ los ,lo%ues se numeran tomando en cuenta el factor de

    separacin 7ver )i"ura H.0 8.

    Esto permite al S. O.:

    Leer los ,lo%ues con numeracin consecutiva.

    Conservar la m&9ima velocidad posi,le del 'ard(are. H

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    22/24

    @

    > AB

    ;nstrucciones m&%uina %ue el CPU puede utiliar para E/S

    o SAB ;/O ;nicia una operacin de E/S. El campo de direccin de la instruccin se emplea para

    especi#car el canal ! el dispositivo de E/S %ue participa en la operacin.

    o NAL ;/O )inalia la operacin del canal.

    o ES CNAEL Prue,a el estado del canal.

    o ES ;/O Prue,a el estado del canal$ el su,canal ! el dispositivo de E/S.

    Eecucin de instrucciones e interrupciones ! estructura de E/S.

    ;nterrupciones de E/S:

    Para iniciar una operacin de E/S por parte de un proceso del usuario:

    6La CPU car"a los re"istros en el controlador del dispositivo.

    6El controlador e9amina los re"istros para sa,er %u5 accin realiar.

    6ras realiar la accin el controlador informa de ello a la CPU.

    6Esa comunicacin se efect+a "enerando una interrupcin.

    Al iniciar una E/S 'a! dos alternativas:

    E/S s*ncrona: el SO espera a %ue termine la E/S.

    E/S as*ncrona: el SO devuelve el control al pro"rama del usuario sin esperar a %ue se

    complete la E/S.

    )uncionamiento as*ncrono multipro"ramado:

    El usuario solicita E/S mediante llamada al sistema.

    El SO tramita la operacin.

    El SO entre"a el control a otro proceso 7mientras se desarrolla la E/S8.

    Cuando la E/S termina "enera una interrupcin %ue:

    6;nterrumpe el proceso actual.

    6Provoca la aparicin del SO$ %ue reactiva el proceso %ue 'io la llamada

    G

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    23/24

    1

    4 AB

    Estructuras de datos de un driver

    Las rutinas de un driver para dar un correcto servicio a las peticiones de entrada / salidanecesitan

    para cada dispositivo una serie de datos %ue se encuentran en estructuras de datos en forma deta,la

    de manera %ue su composicin depende del sistema operativo$ aun%ue tienen forma ! nom,res

    similares a los si"uientes:

    lo%ue de control del driver 7CD8

    Es la representacin del driver desde el punto de vista del sistema operativo. Contiene a%uellos

    par&metros %ue son suscepti,les de ser variados din&micamente ! a%uellos %ue de#nen el tipo dedispositivo %ue puede ser atendido por el driver. Los datos %ue suele contener son:

    Direccin del si"uiente CD.

    om,re del driver.

    Direccin de comieno de los ,lo%ues de control de unidades 7CU8 %ue controle el driver.

    +mero de unidades a servir.

    Direccin de comieno de la rutina de inicialiacin del driver.

    Estado del driver 7On/oI line8.

    Direccin de comieno de la cola de ,lo%ues de entrada / salida 7ES8.

    Direccin del ES %ue est& siendo servido.

    =aria,les particulares del driver.

    lo%ue de control de la unidad 7CU8

    Cada dispositivo f*sico se relaciona desde el punto de vista del sistema operativo como unaunidad

    dentro del tipo al %ue le corresponda ! es de#nido e identi#cado por el sistema operativo pormedio

    de su CU. En "eneral$ contiene los si"uientes datos:

    Direccin del si"uiente CU del driver.

    +mero de unidad.

  • 7/25/2019 Unidad 4 SAdministracin de Entrada

    24/24

    Estado de la unidad

    +mero del vector de interrupcin asociado.

    Direccin de la rutina de "estin de la interrupcin.

    Direccin del puerto 7port8 de entrada / salida.

    Direccin del CD al %ue pertenece.

    Direccin del PC del proceso %ue tiene reservada esta unidad.

    Direccin del comieno de la cola de ,lo%ues de entrada / salida 7ES8.

    Direccin del ES %ue est& siendo servido.

    Caracter*sticas de la unidad.

    =aria,les particulares del drive.

    Pa%uete de peticin de entrada/salida 7PES8

    Cuando un proceso de usuario intenta 'acer una operacin de entrada/salida$ el sistema

    operativo

    crea un pa%uete asociado a dic'o proceso ! a dic'a peticin para ser tratado por el driver. Este

    pa%uete se coloca en una cola prioritaria para ser atendido por el driver al %ue va diri"ido. Losdatos

    %ue normalmente contiene son:

    Direccin del si"uiente PES en la cola.

    Prioridad de la peticin de entrada/salida.

    Proceso %ue 'a lanado la peticin.

    Direccin dnde devolver el resultado de la peticin.

    )uncin a realiar 7entrada o salida8.

    identi#cador del dispositivo.

    identi#cador de la unidad.

    Direccin de la lista de par&metros de entrada de la llamada al sistema operativo.

    02

    0