Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los...

58
12/11/2009 1 T ema ema 3 3 Sistema Sistema de de Entrada Entrada/Salida Salida El El corazón corazón de de una una computadora computadora lo lo constituye constituye la la UCP, UCP, pero ero no serviría serviría de de nada nada sin sin la la memoria memoria principal y los principal y los dispositivos dispositivos de E/S: de E/S: SISTEMA DE ENTRADA/SALIDA SISTEMA DE ENTRADA/SALIDA Dispositivos ispositivos periféricos periféricos, que le permitan interactuar con el usuario. que le permitan interactuar con el usuario. Generalmente eneralmente están están fuera fuera de la de la computadora computadora y se y se conectan conectan a ella ella mediante mediante cables cables. Son los on los teclados teclados, ratones ratones, micrófonos micrófonos, cámaras cámaras y cualquier cualquier otro otro dispositivo dispositivo de E/S de E/S que que se le se le ocurra ocurra conectar conectar a una una computadora computadora. Dispositivos ispositivos de de almacenamiento almacenamiento secundario secundario (discos) y (discos) y terciario terciario Dispositivos ispositivos de de almacenamiento almacenamiento secundario secundario (discos) y (discos) y terciario terciario (cintas cintas y sistemas sistemas de de archivo archivo). ). Dispositivos de Dispositivos de comunicaciones. comunicaciones.

Transcript of Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los...

Page 1: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

1

TTemaema 3 3

SistemaSistema de de EntradaEntrada//SalidaSalida

•• El El corazóncorazón de de unauna computadoracomputadora lo lo constituyeconstituye la la UCP, UCP, ppero ero nno o serviríaserviría de de nada nada sinsin la la memoriamemoria principal y los principal y los dispositivosdispositivos de E/S:de E/S:

SISTEMA DE ENTRADA/SALIDASISTEMA DE ENTRADA/SALIDA

–– DDispositivosispositivos periféricosperiféricos, , que le permitan interactuar con el usuario.que le permitan interactuar con el usuario.

•• GGeneralmenteeneralmente estánestán fuerafuera de la de la computadoracomputadora y se y se conectanconectan a a ellaellamediantemediante cablescables..

•• SSon los on los tecladosteclados, , ratonesratones, , micrófonosmicrófonos, , cámarascámaras y y cualquiercualquier otrootrodispositivodispositivo de E/S de E/S queque se le se le ocurraocurra conectarconectar a a unauna computadoracomputadora..

DDispositivosispositivos dede almacenamientoalmacenamiento secundariosecundario (discos) y(discos) y terciarioterciario–– DDispositivosispositivos de de almacenamientoalmacenamiento secundariosecundario (discos) y (discos) y terciarioterciario((cintascintas y y sistemassistemas de de archivoarchivo). ). 

–– Dispositivos de Dispositivos de comunicaciones.comunicaciones.

Page 2: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

2

El acceso a los dispositivos es: El acceso a los dispositivos es: 

I ó dI ó d

SISTEMA DE ENTRADA/SALIDASISTEMA DE ENTRADA/SALIDA

Incómodo Incómodo 

Detalles físicos de los dispositivos Detalles físicos de los dispositivos 

Dependiente de las direcciones físicas Dependiente de las direcciones físicas 

No seguro No seguro 

Si el usuario accede a nivel físico no tiene restricciones Si el usuario accede a nivel físico no tiene restricciones 

Objetivos: Objetivos: Obje osObje os

Suministrar una visión lógica de los dispositivos Suministrar una visión lógica de los dispositivos 

Ofrecer primitivas de acceso cómodas e Ofrecer primitivas de acceso cómodas e independientes de los detalles físicos independientes de los detalles físicos 

Mecanismos de protección Mecanismos de protección 

NivelesNiveles del software de E/Sdel software de E/S

4

NivelesNiveles del software e un del software e un sistemasistema de E/Sde E/S

Page 3: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

3

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

ClasificaciónClasificación de de dispositivosdispositivos E/SE/S

–– Periféricos. Se llama así a los dispositivos que permiten la Periféricos. Se llama así a los dispositivos que permiten la comunicación entre los usuarios y la computadora. Dentro de este comunicación entre los usuarios y la computadora. Dentro de este grupo se incluyen todos los dispositivos que sirven para proporcionar grupo se incluyen todos los dispositivos que sirven para proporcionar i t f l i t t t d ( tó t l d t )i t f l i t t t d ( tó t l d t )interfaz con el usuario, tanto para entrada (ratón, teclado, etc.) como interfaz con el usuario, tanto para entrada (ratón, teclado, etc.) como para salida   (impresoras, pantalla, etc.).para salida   (impresoras, pantalla, etc.).

–– Dispositivos de almacenamiento. Se usan para proporcionar Dispositivos de almacenamiento. Se usan para proporcionar almacenamiento no volátil de datos y memoria. Su función primordial almacenamiento no volátil de datos y memoria. Su función primordial es abastecer de datos y almacenamiento a los programas que se es abastecer de datos y almacenamiento a los programas que se ejecutan en la UCP. Según su capacidad e inmediatez se pueden dividir ejecutan en la UCP. Según su capacidad e inmediatez se pueden dividir en almacenamiento secundario (discos y disquetes) y terciario (cintas y en almacenamiento secundario (discos y disquetes) y terciario (cintas y sistemas de archivo).sistemas de archivo).

–– Dispositivos de comunicaciones. Permiten conectar a la computadora Dispositivos de comunicaciones. Permiten conectar a la computadora con otras computadoras a través de una red. Los dos tipos de con otras computadoras a través de una red. Los dos tipos de dispositivos más importantes de esta clase son los MODEM y las dispositivos más importantes de esta clase son los MODEM y las tarjetas de interfaz a la red.tarjetas de interfaz a la red.

Page 4: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

4

VelocidadesVelocidades de de dispositivosdispositivos típicostípicos

Dispositivos de Bloque y de Carácter Dispositivos de Bloque y de Carácter 

•• Dispositivos de bloque:Dispositivos de bloque:

–– Acceso a nivel de bloque, secuencial o aleatorioAcceso a nivel de bloque, secuencial o aleatorio

–– Mandatos: leer, escribir, buscar, …Mandatos: leer, escribir, buscar, …

–– E/S directa o a través del servidor de ficherosE/S directa o a través del servidor de ficheros

–– Acceso posible a través de ficheros proyectados en memoriaAcceso posible a través de ficheros proyectados en memoria

–– Ejemplo: discos y cintasEjemplo: discos y cintas

•• Dispositivos de carácter:Dispositivos de carácter:

–– Acceso a nivel de a carácter, secuencial o aleatorioAcceso a nivel de a carácter, secuencial o aleatorio

Mandatos:Mandatos: getget putput–– Mandatos: Mandatos: getget, , putput, …., ….

–– Bibliotecas para optimizar y dar forma a este tipo de accesos: edición Bibliotecas para optimizar y dar forma a este tipo de accesos: edición de líneas, ventanas virtuales, ….de líneas, ventanas virtuales, ….

–– Ejemplo: terminales e impresorasEjemplo: terminales e impresoras

Page 5: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

5

Conexión de dispositivos Conexión de dispositivos de E/Sde E/S

Memoria

Bus del sistema

Controlador gráfico

CPUMemoria

Controlador de disco

Bus de expansión

estado control datos

ControladoresControladores de de dispositivosdispositivos II•• El El dispositivodispositivo de E/S de E/S tienetiene dos dos componeentescomponeentes::

–– componentecomponente mecánicomecánico

–– componentecomponente electrónicoelectrónico

•• El componente mecánico se El componente mecánico se conectan a conectan a la CPU la CPU a través a través del controladordel controlador

•• El El componentecomponente electrónicoelectrónico eses el el controladorcontrolador del del dispositivodispositivo

–– PuedePuede controlarcontrolar variosvarios dispositivosdispositivos de E/Sde E/S

10

•• TareasTareas del del controladorcontrolador

–– convertirconvertir bit en bit en serieserie (bit stream) a (bit stream) a bloquesbloques de de bytesbytes

–– RealizarRealizar correcióncorreción de de erroreserrores sisi eses necesarionecesario

–– DejarDejar la la informacióninformación en MPen MP

Page 6: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

6

•• Los controladores son muy variados, Los controladores son muy variados, casi casi como los dispositivos de E/S.como los dispositivos de E/S.

–– Muchos de Muchos de ellos ellos pueden controlar múltiples dispositivos. pueden controlar múltiples dispositivos. 

–– OtrosOtros, , incluyen su propia UCP y bus para controlar la E/S por programa incluyen su propia UCP y bus para controlar la E/S por programa it i t i l UCP d l t dit i t i l UCP d l t d

ControladoresControladores de de dispositivosdispositivos IIII

y evitar interrupciones en la UCP de la computadora. y evitar interrupciones en la UCP de la computadora. 

•• En los últimos años ha existido un esfuerzo importante de estandarización En los últimos años ha existido un esfuerzo importante de estandarización de los dispositivos, lo que permite usar un mismo controlador para de los dispositivos, lo que permite usar un mismo controlador para dispositivos de distintos dispositivos de distintos fabricantesfabricantes (ejemplo: SCSI, Small Computer SystemInterface, o  IDE, Integrated Drive Electronics). . 

•• El controlador esEl controlador es lala interfaz del dispositivo con el bus de la computadora yinterfaz del dispositivo con el bus de la computadora yEl controlador es El controlador es la la interfaz del dispositivo con el bus de la computadora y interfaz del dispositivo con el bus de la computadora y es el componente que se ve desde la UCP. es el componente que se ve desde la UCP. 

–– Su programación se lleva a cabo mediante una interfaz de muy bajo Su programación se lleva a cabo mediante una interfaz de muy bajo nivel que proporciona acceso a una serie de registros del controlador.nivel que proporciona acceso a una serie de registros del controlador.

–– Las características del controlador son muy importantes, ya que Las características del controlador son muy importantes, ya que definen el aspecto del periférico para el sistema operativo.definen el aspecto del periférico para el sistema operativo.

–– Fundamental: Dirección de E/S, Unidad de transferencia e Interacción Fundamental: Dirección de E/S, Unidad de transferencia e Interacción computadoracomputadora‐‐controlador. controlador. 

•• Para realizar una operación de E/S, la UCP tiene que escribir en los registros Para realizar una operación de E/S, la UCP tiene que escribir en los registros deldel controlador.controlador.

CC dd i t d li t d l t l d di ió d E/S d it l d di ió d E/S d i i di d

Conexión por puerto o memoriaConexión por puerto o memoria

•• CCadaada registro delregistro del controlador. una dirección de E/S o de memoria controlador. una dirección de E/S o de memoria asignada.  asignada.  

•• El modelo de El modelo de dispositivos por puertosdispositivos por puertos es clásico en las arquitecturas de es clásico en las arquitecturas de Intel. Intel. 

–– Cuando se instala un dispositivo, a su controlador se le asigna un puerto Cuando se instala un dispositivo, a su controlador se le asigna un puerto de E/S, una interrupción hardware y un vector de interrupción. de E/S, una interrupción hardware y un vector de interrupción. 

–– Una operación de E/S la UCP ejecuta operaciones Una operación de E/S la UCP ejecuta operaciones portinportin o o portoutportout

•• El modelo El modelo proyectado en memoriaproyectado en memoria asigna a cada registro de E/S una asigna a cada registro de E/S una direccíóndireccíón de MP.de MP.

–– No hay instrucciones específicas de E/S, seNo hay instrucciones específicas de E/S, se usan las instrucciones usan las instrucciones de de acceso a memoria.acceso a memoria.

–– Mapa único de direcciones de memoria. Mapa único de direcciones de memoria. 

Page 7: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

7

UbicaciónUbicación de de puertospuertos de E/S de E/S een PCs (n PCs (parcialparcial) I) I

UbicaciónUbicación de de puertospuertos de E/S en PCs (de E/S en PCs (parcialparcial) II) II

Page 8: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

8

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

Drivers de Drivers de dispositivosdispositivos

•• PosicionesPosiciones lógicaslógicas de los drivers de de los drivers de dispositivodispositivo

•• La communications entre La communications entre drivers drivers y y controladorescontroladores eses medientemediente el busel bus

Page 9: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

9

TiposTipos de E/S de E/S 

•• ProgramadaProgramada

–– EsperaEspera actiavaactiavaEsperaEspera actiavaactiava

•• PorPor interrupcionesinterrupciones

–– AsociadaAsociada a la a la multiprogramaciónmultiprogramación

•• PorPor DMADMA

–– Para Para dispositivosdispositivos de de bloquesbloques

E/S E/S ProgramadaProgramada II

•• Se Se determinadetermina el el estadoestado de de dispositivodispositivo::

–– readyreadyreadyready

–– busybusy

–– ErrorError

•• Si Si estáestá busybusy se se esperaespera a a queque estéesté ready ready ((esperaespera activaactiva))

•• Se Se realizarealiza la la operaciónoperación de E/Sde E/S

Page 10: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

10

E/S E/S ProgramadaProgramada IIII

19

PasosPasos parapara imprimririmprimrir un string un string 

E/S E/S ProgramadaProgramada IIIIII

20

EscribiendoEscribiendo un string en la un string en la impresoraimpresora mediantemediante E/S  E/S  programadaprogramada

Page 11: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

11

•• La CPU La CPU tienetiene unauna/s /s línealínea/s de /s de peticiónpetición de de interrupcióninterrupción conectadaconectada a los a los dispositivosdispositivos de E/Sde E/S

E/S E/S porpor interrupcionesinterrupciones II

•• El El manejadormanejador de de interrupcióninterrupción reciverecive la la interrupcióninterrupción

•• EnmascarableEnmascarable parapara ignorarignorar or or postponerpostponer algunasalgunas interrupcionesinterrupciones

•• El vector de El vector de InterruciponesInterrucipones eligeelige el el manejadormanejador de de interrupcióninterrupcióncorrespondientecorrespondiente

–– BasadoBasado een la n la prioridadprioridad de la de la interrucióninterrución

–– AlgunasAlgunas son son nono‐‐enmascarablesenmascarables

•• El El mecanismomecanismo de de interrucionesinterruciones tambiéntambién se se usausa parapara exceptionesexceptiones

E/S E/S porpor interrupcionesinterrupciones IIII

22

•• EscribiendoEscribiendo un string en la un string en la impresoraimpresora mediantemediante E/S  E/S  porpor interrupcionesinterrupciones

–– El El códigocódigo se se ejecutaejecuta cuandocuando se se invocainvoca la la llamadallamada al al sistemasistema de la de la impresoraimpresora

–– RutinaRutina de de servicioservicio de de interrupcióninterrupción

Page 12: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

12

ManejadoresManejadores de de interrupcionesinterrupciones

El driver El driver iniciainicia unauna operanciónoperanción de E/S y de E/S y  se se bloqueabloquea hastahasta queque unaunainterrupcióninterrupción notificanotifica susu finalizaciónfinalizaciónpp

La La funciónfunción de de interrupcióninterrupción hacehace la la tareatarea

‐‐ CuandoCuando terminatermina desbloqueadesbloquea el driver el driver queque la la inicióinició

LasLas rutinasrutinas dede interrupcióninterrupción suelensuelen tenertener dosdos partespartes::

‐‐ unauna genéricagenérica yy

otraotra particularparticular parapara elel dispositivodispositivo

23

‐‐ otraotra particularparticular parapara elel dispositivodispositivo

Rutina de interrupciónRutina de interrupción

lala parteparte genéricagenérica hacehace lolo siguientesiguiente::

1.1. Captura de la interrupción.Captura de la interrupción.

2.2. Salvaguarda de estado del procesador.Salvaguarda de estado del procesador.

3.3. Activación de la rutina particular de servicio de la interrupción.Activación de la rutina particular de servicio de la interrupción.

4.4. PPlanificaciónlanificación comocomo lista para ejecutar lista para ejecutar la rutina particularla rutina particular..

5.5. Desactivación de la interrupción.Desactivación de la interrupción.

6.6. Restauración del estado del procesador.Restauración del estado del procesador.

7.7. Cesión de control (RETI).Cesión de control (RETI).

Page 13: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

13

TablaTabla de de excepcionesexcepciones del del procesadosprocesados PentiumPentium

Interrupciones que usan Interrupciones que usan algunos controladoresalgunos controladores

Page 14: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

14

E/S E/S mediantemediante DMA IDMA I

•• Se usa para evitar la E/S programada de grandes bloques de datosSe usa para evitar la E/S programada de grandes bloques de datos

•• Necesita un controlador con DMANecesita un controlador con DMA

•• Evita el uso de la CPU transfiriendo los datos directamente entre los Evita el uso de la CPU transfiriendo los datos directamente entre los dispositivos de E/S y la memoriadispositivos de E/S y la memoria

–– del usuariodel usuario

–– del núcleo del núcleo 

•• Básico para aprovechar la CPU en un sistema Básico para aprovechar la CPU en un sistema multiprogramadomultiprogramado, ya que , ya que libera tiempo de la CPU que se puede usar para ejecutar otros programas.libera tiempo de la CPU que se puede usar para ejecutar otros programas.

Memoria

Registrode datos

E/S E/S mediantemediante DMA IIDMA II

Petición DMA(contador,di ió

Co

nta

do

r

Contador

Direcc ión

Disco

Bus

de

l sis

tem

a

dirección,datos)

InterrupciónOperación

(L/E)

Aceptación DMA

Lógica de control

ControladorUCP

Page 15: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

15

E/S E/S mediantemediante DMA IIIDMA III

•• ImprimeImprime un string un string usandousando DMADMA

29

–– UtilizadoUtilizado parapara programarprogramar E/S E/S parapara grandesgrandes movimientosmovimientos de de datosdatos

–– RequiereRequiere uncontroladoruncontrolador DMA DMA 

–– TransfiereTransfiere los los datosdatos directamentedirectamente entre los entre los dispositivosdispositivos de E/S a MPde E/S a MP

OOperacionesperaciones enen un un manejadormanejador (driver)(driver)

Contestación aExtraer peticiónE/S d l li

Peticiones de E/S del dispositivo

Enviar mandatosal controlador

Operacionessobre datos

la petición

Traducir a formatodel controlador

Prepararrespuestade error

E/S de la lista

Error

Si No

Bloqueo

Esperarinterrupción

Programación delcontrolador

Si

No

Interrupción

Leer registrosestado delcontrolador

Page 16: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

16

FlujoFlujo del software de E/Sdel software de E/S

31

NivelesNiveles del del sistemasistema de E/S y de E/S y principalesprincipales funcionesfunciones de de cadacada nivelnivel

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

Page 17: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

17

SWSW de E/Sde E/S independiente de dispositivo independiente de dispositivo 

FuncionesFunciones del del swsw de E/S de E/S independienteindependiente del del dispositivodispositivo II

‐‐ IInterfaznterfaz uniformeuniforme parapara los los dispositivodispositivo

‐‐ Tamaño de acceso: bloques, flujo de caracteresTamaño de acceso: bloques, flujo de caracteres

‐‐ ProporcionarProporcionar un un tamañotamaño de de bloquebloque independienteindependiente del del dispositivodispositivo

‐‐ Almacenamiento intermedio (Almacenamiento intermedio (bufferingbuffering): almacena datos en memoria ): almacena datos en memoria mientras se transfieren entre dos dispositivosmientras se transfieren entre dos dispositivos

‐‐ evita accesos repetidosevita accesos repetidosl d f d l d dl d f d l d d‐‐ oculta diferencias de velocidadoculta diferencias de velocidad

‐‐ copia única (semántica de compartición)copia única (semántica de compartición)‐‐ Gestión de dispositivoGestión de dispositivo

‐‐ nombrado [/nombrado [/devdev//cdromcdrom inodoinodo (mayor, menor)](mayor, menor)]‐‐ protección (protección (rwxrwx))‐‐ asignaciónasignación y  y  liberaciónliberación de de dispositivosdispositivos‐‐ acceso en serie (si no se puede compartir)acceso en serie (si no se puede compartir)

Page 18: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

18

•• Planificación de E/S (Planificación de E/S (SScheduling)cheduling) –– encolaencola laslas peticionespeticiones de E/S  en colas; de E/S  en colas; unauna porpor dispositivodispositivo; genérica (ej., FIFO) y de manejador (ej., SCAN)

FuncionesFunciones del del swsw de E/S de E/S independienteindependiente del del dispositivodispositivo IIII

•• Gestión de erroresGestión de errores

‐‐ Transitorios: resueltos por el driver (reparación)Transitorios: resueltos por el driver (reparación)

‐‐ Permanentes: notificados al usuario y registradosPermanentes: notificados al usuario y registrados

•• BufferingBuffering CachingCaching –– mantienemantiene unauna copiacopia en en memoriamemoria muymuy rápidarápida–– PerformancePerformance

•• SpoolingSpooling –– retieneretiene la la salidasalida de un de un dispositivodispositivo

Si elSi el dispositivodispositivo únicamenteúnicamente puedepuede servirservir unauna peticiónpetición a laa la vezvez–– Si el Si el dispositivodispositivo únicamenteúnicamente puedepuede servirservir unauna peticiónpetición a la a la vezvez

–– ejej., la ., la impresoraimpresora

•• Device Device reservationreservation –– proporcionaproporciona accesoacceso exclusivoexclusivo al al servicioservicio

–– LlamadasLlamadas al al sistemasistema parapara la la asignanaciónasignanación y y liberaciónliberación

–– ProblemaProblema con con interbloqueosinterbloqueos

IndependenciaIndependencia del del dispositivodispositivo II

(a(a)  Sin )  Sin interfazinterfaz de E/S de E/S estandarestandar

(b) (b) Con Con interfazinterfaz de E/S de E/S estandarestandar

Page 19: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

19

IndependenciaIndependencia del del dispositivodispositivo IIII

37

(a) (a)  Sin bufferSin buffer(b) (b) Con buffer en Con buffer en espacioespacio de de usuariousuario(c) (c)  Con buffer en el kernel y Con buffer en el kernel y copiacopia en en espacioespacio de de usuariousuario(d) Double (d) Double  buffer en el buffer en el kernelkernel

IndependenciaIndependencia del del dispositivodispositivo

38

UnaUna transferenciatransferencia porpor red red puedepuede requerirrequerir variasvarias copiascopias

Page 20: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

20

Capas del sistema de E/SCapas del sistema de E/S

Interfaz del Sistema Operativo

Gestor de Cache

Gestor de Bloques

Sistemas de ArchivosNFTS HPFS FAT CD-ROM ...

Gestión de Redes(IPX/SPX, NETBEUI,

TCP/IP, ... )

Gestión de Redes

Controladores de dispositivo

Gestor de Cache

Manejadores de Dispositivos(CD-ROM, cinta, disco, puerto, ... )

FFlujo de una operación de E/Slujo de una operación de E/S

AplicaciónSubsistema

o DLLCopia en

Procesode usuario

Manejadorde

Gestor dearchivos

Gestor debloques

Gestor decache

Servicios

Copia en elsistema operativo

pmemoria delusuarioModo usuario

Modo núcleo

SW de E/S independiente de dispositivo

SW de E/S independiente de dispositivo

SW de E/S dedispositivo

Manejador deinterrupción

Controlador

Dispositivo(disco)

SW de E/S dependiente

de dispositivo

Hardware

Software

Bloque deldispositivo

Copia en elcontrolador

Page 21: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

21

E/S Bloqueante y E/S Bloqueante y NoNo‐‐bloqueante Ibloqueante I

•• Bloqueante: procesos suspendidos hasta que la E/S terminaBloqueante: procesos suspendidos hasta que la E/S termina

–– Fácil de usar y comprenderFácil de usar y comprender

–– Insuficiente para algunos requisitosInsuficiente para algunos requisitos

–– Ejemplo: Ejemplo: readread, , writewrite, ... de POSIX, ... de POSIX

•• No bloqueante: la llamada de E/S vuelve inmediatamenteNo bloqueante: la llamada de E/S vuelve inmediatamente

–– Interfaz de usuario más complejo y espacio para copia de datosInterfaz de usuario más complejo y espacio para copia de datos

–– Vuelve rápidamente con el estado de la operaciónVuelve rápidamente con el estado de la operación

–– Se Se puede implementar con puede implementar con threadsthreadsp pp p

•• Asíncronas: los procesos ejecutan mientras la E/S se lleva a caboAsíncronas: los procesos ejecutan mientras la E/S se lleva a cabo

–– Difícil de usar por operaciones pendientesDifícil de usar por operaciones pendientes

–– El sistema de E/S envía El sistema de E/S envía en una en una señal el fin de operación pendienteseñal el fin de operación pendiente

–– Interfaz para comprobar estado y esperar (Interfaz para comprobar estado y esperar (aiowaitaiowait))

E/S Bloqueante y NoE/S Bloqueante y No‐‐bloqueante bloqueante II II 

Sínchrona Asíncrona

Page 22: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

22

E/S Bloqueante y NoE/S Bloqueante y No‐‐bloqueante bloqueante III III 

Operac ión de E/S

Retorno de

Llamadade E/S

Registro de op. E/S

Biblioteca

Proceso

Operac ión de E/SProceso

Proceso NO bloqueado

Retorno deLlamada E/S

Programación de E/S

Tratamiento interrupciónContestac ión de E/S

interrupción

ControladorDispositivo

Controlador

ID. op. de E/S

Biblioteca

ProcesoLlamadade E/S

Proceso bloqueado

Programación de E/S

Tratamiento interrupciónContestac ión de E/S

interrupción

ControladorDispositivo

Controlador

Biblioteca

(A) E/S bloqueante (B) E/S no bloqueante

¿Fin Op. de E/S?

Retorno deLlamada E/S

Llamadade E/S

Registro de op. E/S

Biblioteca

Biblioteca

Proceso

Proceso

Retorno deLlamada E/S

Fin Op. de E/S

Contestac ión de E/S

Proceso

Biblioteca

EstructurasEstructuras de de datosdatos del Kernel de E/Sdel Kernel de E/S

•• El kernel El kernel guardaguarda informacióninformación de de estadoestado de los de los dispositivosdispositivos de E/S , de E/S , incluyendoincluyendo tablastablas de de ficherosficheros abiertosabiertos, , conexionesconexiones de red, de red, estadoestado de los de los dispositivosdispositivos de de caracterescaracteres..

•• MuchasMuchas estructurasestructuras de de datosdatos complejascomplejas parapara buffers, buffers, ubicaciónubicación de de memoriamemoria, , bloquesbloques ““suciossucios”.”.

Page 23: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

23

TablaTabla de de estadoestado de de dispositivosdispositivos

EstructuraEstructura del kernel de E/S en  UNIXdel kernel de E/S en  UNIX

Page 24: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

24

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

EstructuraEstructura

•• El sistema de almacenamiento secundario se usa para guardar los El sistema de almacenamiento secundario se usa para guardar los programas y datos en dispositivos rápidos, de forma que sean programas y datos en dispositivos rápidos, de forma que sean fácilmente accesibles a las aplicaciones a través del sistema de fácilmente accesibles a las aplicaciones a través del sistema de archivos Esa es la razón por la que en la jerarquía de E/S losarchivos Esa es la razón por la que en la jerarquía de E/S losarchivos. Esa es la razón por la que en la jerarquía de E/S los archivos. Esa es la razón por la que en la jerarquía de E/S los dispositivos de almacenamiento secundario se colocan justo debajo dispositivos de almacenamiento secundario se colocan justo debajo de la memoria RAM. de la memoria RAM. 

•• Hay dos elementos principales involucrados en este sistema:Hay dos elementos principales involucrados en este sistema:

–– Discos. El almacenamiento secundario se lleva a cabo casi Discos. El almacenamiento secundario se lleva a cabo casi exclusivamente sobre discos, por lo que es interesante conocer exclusivamente sobre discos, por lo que es interesante conocer su estructura y cómo se gestionan.su estructura y cómo se gestionan.

–– Manejadores de disco. Controlan todas las operaciones que se Manejadores de disco. Controlan todas las operaciones que se hacen sobre los discos, entre las que son especialmente hacen sobre los discos, entre las que son especialmente importantes las cuestiones de planificación de peticiones a importantes las cuestiones de planificación de peticiones a disco.disco.

Page 25: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

25

Estructura del sistema de E/S en LINUXEstructura del sistema de E/S en LINUX

Interfaz de llamadas al sistemaSistema de ficheros virtual

Sistema de ficheros Controlador del

dispositivo

Caché de bloques

Gestor de peticiones a los discos

Planificador de los discos

Caché de páginas de memoria

S s e de c e os dispositivo[alto nivel]

Controlador de dispositivos[bajo nivel]

Sistema de Almacenamiento Secundario

DiscosDiscos•• Dispositivos básicos para llevar a cabo almacenamiento masivo y no Dispositivos básicos para llevar a cabo almacenamiento masivo y no 

volátil de datos. Además se usan como plataforma para el sistema de volátil de datos. Además se usan como plataforma para el sistema de intercambio que usa el gestor de memoria virtual. Son dispositivos intercambio que usa el gestor de memoria virtual. Son dispositivos electromecánicos (HARD DISK) u electromecánicos (HARD DISK) u optomecánicosoptomecánicos (CD(CD‐‐ROM y DVD), ROM y DVD), 

d i l d bl ló i l i t d hid i l d bl ló i l i t d hique se acceden a nivel de bloque lógico por el sistema de archivos y que se acceden a nivel de bloque lógico por el sistema de archivos y que, actualmente, que, actualmente, se se agrupan agrupan en:en:

•• dos tipos básicos, atendiendo a la interfaz de su controlador:dos tipos básicos, atendiendo a la interfaz de su controlador:

–– DispositivosDispositivos SCSI (SCSI (Small Computer System InterfaceSmall Computer System Interface))..

–– DispositivosDispositivos IDE (IDE (Integrated Drive ElectronicsIntegrated Drive Electronics))..

•• tres tres tipos básicos atendiendo a su tecnología de fabricación:tipos básicos atendiendo a su tecnología de fabricación:

–– Discos duros (Discos duros (WinchesterWinchester). ). 

Di ó tiDi ó ti–– Discos ópticos. Discos ópticos. 

–– Discos extraíbles. Discos extraíbles. 

•• Independientemente del tipo al que pertenezcan, las estructuras Independientemente del tipo al que pertenezcan, las estructuras física y lógica de todos los discos son muy similares, como se muestra física y lógica de todos los discos son muy similares, como se muestra a continuación.a continuación.

Page 26: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

26

Organización del disco duroOrganización del disco duro

Pista: Pista: cada corona circular que se encuentra sobre una superficie. cada corona circular que se encuentra sobre una superficie. Sector:Sector: divisiones físicas de tamaño fijo en que se considera dividida una divisiones físicas de tamaño fijo en que se considera dividida una pista. Típicamente contienen 512Bpista. Típicamente contienen 512BCilindro: Cilindro: conjunto de pistas, una por cada superficie, al que se accede con conjunto de pistas, una por cada superficie, al que se accede con una posición fija del peine de una posición fija del peine de cabezascabezas. Son como . Son como los anilloslos anillos que marcan la que marcan la edad de un árbol.edad de un árbol.

Organización del disco Organización del disco duro IIIduro III

Los Los sectoressectores son como los son como los pedazos de una pizza.pedazos de una pizza.Una Una pistapista es es uno de los anillosuno de los anillos que solo se encuentran enque solo se encuentran en un plato del HDun plato del HD..En la imagen podemos apreciar un HD viejo, con En la imagen podemos apreciar un HD viejo, con 20 pistas20 pistas y y 16 sectores.16 sectores.

Page 27: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

27

Características de los discos Características de los discos II

•• Un disco duro es un dispositivo de gran capacidad compuesto por Un disco duro es un dispositivo de gran capacidad compuesto por varias superficies magnetizadas y cuyas cabezas lectoras funcionan varias superficies magnetizadas y cuyas cabezas lectoras funcionan por efecto electromagnético. por efecto electromagnético. 

•• En el ámbito organizativo las superficies del disco están divididas enEn el ámbito organizativo las superficies del disco están divididas en•• En el ámbito organizativo, las superficies del disco están divididas en En el ámbito organizativo, las superficies del disco están divididas en cilindros, con una pista para cada cabeza y un cierto número de cilindros, con una pista para cada cabeza y un cierto número de sectores por pista. El tamaño del sector es 512 bytes.sectores por pista. El tamaño del sector es 512 bytes.

•• Capacidad del disco:Capacidad del disco:–– Capacidad = cilindros * Capacidad = cilindros * pistas pistas * sectores * tamaño sector* sectores * tamaño sector

•• Los parámetros de la estructura física del disco son muy importantes Los parámetros de la estructura física del disco son muy importantes para el manejador del mismo.para el manejador del mismo.

•• Las operaciones de E/S se calculan y optimizan mediante dos Las operaciones de E/S se calculan y optimizan mediante dos parámetros fundamentales:parámetros fundamentales:parámetros fundamentales: parámetros fundamentales: –– tiempo de búsquedatiempo de búsqueda (lo que se tarda a ir de una pista a otra) y (lo que se tarda a ir de una pista a otra) y –– tiempo de latenciatiempo de latencia (el tiempo medio que se tardan a llegar los (el tiempo medio que se tardan a llegar los 

datos debajo de las cabezas, una vez posicionadas en la pista) datos debajo de las cabezas, una vez posicionadas en la pista) –– T_accesoT_acceso = n * = n * T_búsquedaT_búsqueda + + T_latenciaT_latencia + + T_transferenciaT_transferencia

•• Densidad de cada pista. En los discos modernos las pistas tienen Densidad de cada pista. En los discos modernos las pistas tienen distinta densidad, por lo que el número de sectores varía de unas distinta densidad, por lo que el número de sectores varía de unas pistas a otras. pistas a otras. 

Características de los discos Características de los discos IIIIII

•• Intercalado de sectores. El controlador debe emplear tiempo en Intercalado de sectores. El controlador debe emplear tiempo en copiar los datos leídos a memoria principal. Durante este tiempo no copiar los datos leídos a memoria principal. Durante este tiempo no puede estar transfiriendo datos del puede estar transfiriendo datos del disco, disco, que se sigue moviendo a que se sigue moviendo a velocidad constante, lo que significa que si quiere leer el sector velocidad constante, lo que significa que si quiere leer el sector siguiente deberá esperar a que las cabezas lectoras den una vuelta y siguiente deberá esperar a que las cabezas lectoras den una vuelta y lleguen de nuevo a ese bloque. lleguen de nuevo a ese bloque. 

•• Almacenamiento intermedio en el controlador. Se puede optar por Almacenamiento intermedio en el controlador. Se puede optar por leer la pista entera y mantenerla en memoria del controladorleer la pista entera y mantenerla en memoria del controladorleer la pista entera y mantenerla en memoria del controlador. leer la pista entera y mantenerla en memoria del controlador. 

•• Controladores inteligentes. Cuando controlan varios dispositivos, Controladores inteligentes. Cuando controlan varios dispositivos, permiten efectuar operaciones de búsqueda de forma solapada.permiten efectuar operaciones de búsqueda de forma solapada.

Page 28: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

28

Características de los discos IICaracterísticas de los discos IIEjemplo Ejemplo de disco durode disco duro

SEAGATE Barracuda ATA II ST330630A

Capacidad:Cilindros: Cabezas:Sectores:

1

7200 RPM

0.2 GB102325683

Parámetro Valor

Veloc idad:T. Búsqueda:Latencia:Memoria:

7200 RPM8,5 mseg.4,16 mseg2 Mbytes

•• Los discos se Los discos se direccionandireccionan comocomo un un grangran array 1array 1‐‐dimensional de dimensional de bloquesbloqueslógicoslógicos,, dondedonde el el bloquebloque lógicológico eses la la unidadunidad de de transferenciatransferencia másmáspequeñapequeña..

EstructuraEstructura de disco Ide disco I

pequeñapequeña..

•• Los Los bloquesbloques lógicoslógicos del array  1del array  1‐‐dimensional se dimensional se correspondencorresponden con con sectoressectores secuencialessecuenciales en el discoen el disco–– El sector 0 El sector 0 eses el primer sector de la el primer sector de la primeraprimera pistapista del del cilindrocilindro másmás

externoexterno..–– En el sector 0 se guarda la En el sector 0 se guarda la tabla de particionestabla de particiones..–– Particiones activas o de sistema: permiten arrancar desde un sistema Particiones activas o de sistema: permiten arrancar desde un sistema 

operativo.operativo.

•• La La correspondenciacorrespondencia se se realizarealiza en en ordenorden alrededoralrededor de la de la pistapista,  el ,  el restoresto de de pistaspistas y el y el restoresto de de cilindroscilindros desdedesde el el másmás externoexterno al al másmás internointerno.. El El manejador de disco no sabe nada de la organización de los ficheros, sólo de manejador de disco no sabe nada de la organización de los ficheros, sólo de particiones y bloques.particiones y bloques.

Page 29: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

29

EstructuraEstructura de disco IIde disco II

•• GeometríaGeometría físicafísica de un disco con 2 de un disco con 2 zonaszonas (176 (176 sectoressectores))

•• UnaUna posibleposible geometríageometría virtual virtual parapara esteeste disco (175 disco (175 sectoressectores))

•• FormateoFormateo físicofísico o de o de bajobajo nivelnivel——Divide Divide aal disco en l disco en sectoressectores quequeel el controladorcontrolador de disco de disco puedepuede leer y leer y escribirescribir..

Gestión de discoGestión de disco

•• FormateoFormateo lógicológico o “o “construirconstruir el el sistemasistema de de archivoarchivo”, ”, lleva a cabo lleva a cabo otras tres tareas fundamentales:otras tres tareas fundamentales:1.1. Creación del  bloque de carga oCreación del  bloque de carga o bloquebloque Boot Boot queque initializainitializa el el sistemasistema. . incluye el programa de incluye el programa de 

arranque del computador, programa que se activa cuando se conecta la corriente eléctrica y se arranque del computador, programa que se activa cuando se conecta la corriente eléctrica y se produce un RESET. produce un RESET. 

2.2. Creación de una lista de bloques defectuosos.Creación de una lista de bloques defectuosos.

3.3. Creación de una lista de bloques de repuesto. Creación de una lista de bloques de repuesto. q pq p

Page 30: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

30

FormateoFormateo de disco Ide disco I

Un sector de discoUn sector de disco

a) No a) No intercaladosintercalados b) b) IntercaladoIntercalado sencillosencillo c) c) IntercaladoIntercalado dobledoble

FormateoFormateo de disco IIde disco II

DecalajeDecalaje de de cilindroscilindros

Page 31: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

31

•• ElEl bloquebloque dede cargacarga incluyeincluye elel programaprograma queque sese cargacarga enen RAMRAM (núcleo(núcleo deldel sistemasistema operativo)operativo)cuandocuando sese enciendeenciende elel ordenadorordenador..

–– ElEl programaprograma cragadorcragador Bootstrap Bootstrap se se almacenaalmacena en ROM, en ROM, incluye solo los aspectos más incluye solo los aspectos más básicos de iniciación del hardware del sistema y un bucle de lectura que carga el sistemabásicos de iniciación del hardware del sistema y un bucle de lectura que carga el sistema

Creación de la estructura lógica Creación de la estructura lógica II

básicos de iniciación del hardware del sistema y un bucle de lectura que carga el sistema básicos de iniciación del hardware del sistema y un bucle de lectura que carga el sistema operativo en una dirección de la memoria. operativo en una dirección de la memoria. 

– Lee palabras consecutivas de la entrada y las coloca de forma consecutiva en MP a partir de una dirección determinada.

Address  Content  Purpose. 000 17001  Read a word from the input into the following memory location. 001  17002 Execute what was just read above. 002  12000  Go back and do it again.

–– CuandoCuando haha terminadoterminado saltasalta aa lala direccióndirección dede memoriamemoria dondedonde pusopuso

•• LaLa listalista dede bloquesbloques defectuososdefectuosos,, incluyeincluye loslos bloquesbloques enen malmal estadoestado..–– SeSe marcanmarcan siempresiempre comocomo ocupadosocupados yy nono sese liberanliberan nuncanunca..pp pp yy–– UnUn bloquebloque eses defectuosodefectuoso porqueporque algunoalguno dede loslos sectoressectores queque lolo componencomponen sonson

defectuososdefectuosos.. SeSe sabesabe porpor lala paridadparidad deldel sectorsector introducidaintroducida durantedurante elel formatoformato físicofísico..

•• ListaLista dede bloquesbloques dede repuestorepuesto parapara elel casocaso enen queque algúnalgún bloquebloque deldel dispositivodispositivo fallefalle durantedurante eleltiempotiempo dede vidavida deldel mismomismo..

Creación de la estructura lógica Creación de la estructura lógica IIII

•• Para facilitar el uso de una partición de Para facilitar el uso de una partición de distintas formas , distintas formas , la la utilidad utilidad fdiskfdisk o o formatformat permite crear dos imágenes asociadas permite crear dos imágenes asociadas a cada partición:a cada partición:

–– Dispositivo de bloques. Todos los accesos al mismo pasan por el Dispositivo de bloques. Todos los accesos al mismo pasan por el sistema de archivos y la cache de bloques. sistema de archivos y la cache de bloques. 

–– Dispositivo de caracteres. Permite Dispositivo de caracteres. Permite acceder a bloques de la partición acceder a bloques de la partición directamente. directamente. 

•• Las peticiones deben ser forzosamente múltiplo del tamaño deLas peticiones deben ser forzosamente múltiplo del tamaño de•• Las peticiones deben ser forzosamente múltiplo del tamaño de Las peticiones deben ser forzosamente múltiplo del tamaño de bloquebloque

•• Deben estar alineadas al principio de un bloque.Deben estar alineadas al principio de un bloque.

Page 32: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

32

Tabla de particiones de un discoTabla de particiones de un disco

Manejadores de disco Manejadores de disco II

Funciones principales:Funciones principales:1.1. Proceso de la petición de E/S de bloques.Proceso de la petición de E/S de bloques.22 T d ió d l f ló i d d l l dT d ió d l f ló i d d l l d2.2. Traducción del formato lógico a mandatos del controlador.Traducción del formato lógico a mandatos del controlador.3.3. Insertar la petición en la cola del dispositivo, llevando a cabo Insertar la petición en la cola del dispositivo, llevando a cabo 

la política de planificación de disco pertinente (la política de planificación de disco pertinente (FIFOFIFO, , SJFSJF, , SCANSCAN, , CSCANCSCAN, , EDFEDF, etc.)., etc.).

4.4. Enviar los mandatos al controlador, programando la DMA.Enviar los mandatos al controlador, programando la DMA.5.5. Bloqueo en espera de la interrupción de E/S.Bloqueo en espera de la interrupción de E/S.6.6. Comprobación del estado de la operación cuando llega la Comprobación del estado de la operación cuando llega la 

interrupción.interrupción.77 Gestionar los errores si existen y resolverlos si es posibleGestionar los errores si existen y resolverlos si es posible7.7. Gestionar los errores, si existen, y resolverlos si es posible.Gestionar los errores, si existen, y resolverlos si es posible.8.8. Indicación del estado de terminación al nivel superior del Indicación del estado de terminación al nivel superior del 

sistema de E/S.sistema de E/S.

Page 33: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

33

Manejadores de disco Manejadores de disco IIII

•• El paso 1 se lleva a cabo en un manejador para la clase de dispositivo disco El paso 1 se lleva a cabo en un manejador para la clase de dispositivo disco independiente del tipo de disco en particular, denominado independiente del tipo de disco en particular, denominado manejador manejador genéricogenérico. . gg

•• El paso 2 se lleva a cabo en un manejador dependiente del dispositivo, El paso 2 se lleva a cabo en un manejador dependiente del dispositivo, denominado denominado manejador particularmanejador particular. . 

–– El El tipo de dispositivo y el dispositivo en particular se  distinguen porque tipo de dispositivo y el dispositivo en particular se  distinguen porque en la petición de E/S viene información que lo indica.en la petición de E/S viene información que lo indica.

En En UNIX y LINUX UNIX y LINUX majormajor numbernumber y y minorminor numbernumber

•• El paso 3 depende del diseño del manejador:El paso 3 depende del diseño del manejador:–– Cola global para cada tipo de dispositivoCola global para cada tipo de dispositivo–– Cola para dispositivo particular Cola para dispositivo particular –– Ambas. Ambas. 

•• El  SO El  SO eses responsableresponsable del del usouso eficienteeficiente del Hwdel Hw—— en un disco,  en un disco,  estoesto eses el el timpotimpo de de accesoaccesomínimomínimo y el mayor y el mayor anchoancho de de bandabanda..

PlanificaciónPlanificación de disco Ide disco I

•• MejorarMejorar el el ttiempoiempo de de accesoacceso::–– Minimizar el Minimizar el tiempo de ptiempo de posicionamientoosicionamiento oo búsquedabúsqueda

‐‐> > distancedistance recorrida en el posicionamientorecorrida en el posicionamiento–– MinimizarMinimizar la la latencialatencia de de rotaciónrotación ((tiempotiempo de de esperaespera hastahasta queque el sector el sector deseadodeseado estáestá

debajodebajo de la de la cabezacabeza))

•• Objetivo: Objetivo: minimizar el tiempo de búsquedaminimizar el tiempo de búsqueda, que es directamente proporcional a la , que es directamente proporcional a la distancia de búsquedadistancia de búsqueda

•• ElEl tiempo de transferenciatiempo de transferencia tiene que ver con la velocidad de rotación del disco:tiene que ver con la velocidad de rotación del disco:•• El El tiempo de transferencia tiempo de transferencia tiene que ver con la velocidad de rotación del disco:tiene que ver con la velocidad de rotación del disco:‐‐ Ancho de banda: bytes transferidos / velocidad de transferenciaAncho de banda: bytes transferidos / velocidad de transferencia

•• El El anchoancho de de bandabanda eses el el númeronúmero total de bytes total de bytes transferidostransferidos dividodivido entre el entre el tiempotiempo total total entre la entre la primeraprimera peticiónpetición del del servicioservicio y la y la últimaúltima transferenciatransferencia..

Page 34: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

34

•• Criterios de planificación:Criterios de planificación:–– Optimizar el tiempo de búsqueda (Optimizar el tiempo de búsqueda (SSOOSSOO))

PlanificaciónPlanificación de disco IIde disco II

–– Dar servicio determinista (Dar servicio determinista (multimedia y SSTRmultimedia y SSTR))

•• ExistenExisten diferentesdiferentes algoritmosalgoritmos de de planificaciónplanificación de de peticionespeticiones de E/S a de E/S a disco.disco.

FCFS, SSTF, SCAN, CFCFS, SSTF, SCAN, C‐‐SCAN, CSCAN, C‐‐LOOKLOOK

•• PorPor ejemploejemplo parapara unauna cola de cola de peticionespeticiones de  0 a 199:de  0 a 199:j pj p pp pp

98, 183, 37, 122, 14, 124, 65, 6798, 183, 37, 122, 14, 124, 65, 67

Head pointer 53Head pointer 53

MecanismoMecanismo de de movimientomovimiento de de brazobrazo de discode disco

Page 35: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

35

FCFS (FIFO)FCFS (FIFO)

VemosVemos queque la la cabezacabeza I/O I/O atraviesaatraviesa un total de un total de 640640 cilindroscilindros

Shortest Seek First (SSTF) IShortest Seek First (SSTF) I

•• SelecionaSeleciona la la petiónpetión con con mínimamínima distanciadistancia desdedesde el el posicionamientoposicionamientoactual.actual.

(( ))•• SSTF SSTF eses unauna variantevariante de  de  planificaciónplanificación SJF (SJF (ShortestShortest Job Job FirstFirst); ); puedepuedecausarcausar inanicióninanición (starvation(starvation) en ) en algunasalgunas peticionespeticiones..

•• Primero las peticiones que minimizan el movimiento de cabezas desde la Primero las peticiones que minimizan el movimiento de cabezas desde la posición actual.posición actual.

•• Idea: maximizar el ancho de banda del disco.Idea: maximizar el ancho de banda del disco.

Page 36: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

36

VemosVemos queque la la cabezacabeza I/O I/O atraviesaatraviesa un total de un total de 236236 cilindroscilindros

Shortest Seek First (SSTF) IIShortest Seek First (SSTF) II

Ascensor (Ascensor (SCAN) ISCAN) I

•• El El brazobrazo de disco se de disco se muevemueve haciahacia un un extremoextremo sirviendosirviendo peticionespeticiones en en susurecorridorecorrido; el ; el sentidosentido se se invierteinvierte y y continúacontinúa el el servicioservicio de de peticionespeticiones hastahastaalcanzaralcanzar el el otrootro extremoextremo..

•• Idea: evitar desplazamientos atrás y adelante.Idea: evitar desplazamientos atrás y adelante.

•• Ventaja: combate el problema de inanición y Ventaja: combate el problema de inanición y homogeinizahomogeiniza las las desviaciones típicas de las latencias. desviaciones típicas de las latencias. 

•• Problema: diferentes latencias según la posición; peor en los extremos, Problema: diferentes latencias según la posición; peor en los extremos, mejor en el centro.mejor en el centro.

Page 37: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

37

VemosVemos queque la la cabezacabeza I/O I/O atraviesaatraviesa un total de  un total de  208208 cilindroscilindros

Ascensor (Ascensor (SCAN) IISCAN) II

•• ProporcionaProporciona un un tiempotiempo de de esperaespera másmás uniformeuniforme queque el el SCAN.SCAN.

Ascensor cíclico (Ascensor cíclico (SCAN) ISCAN) I

•• El El brazobrazo de disco se de disco se muevemueve haciahacia un un extremoextremo sirviendosirviendopeticionespeticiones en en susu recorridorecorrido. Cuando . Cuando alcanzaalcanza el el extremoextremo final , final , inmediatamenteinmediatamente se  se  muevemueve al principio del disco  sin al principio del disco  sin servirservirpeticionespeticiones,  ,  desdedesde dondedonde se se muevemueve hacíahacía el el extremoextremo final final sirviendosirviendo laslas restantesrestantes peticionespeticiones..

•• TrataTrata los los cilindroscilindros comocomo unauna listalista circular circular dondedonde el el siguientesiguienteal al últimoúltimo cilindrocilindro eses el el primeroprimero..

•• Se Se usausa frecuentementefrecuentemente

Page 38: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

38

VemosVemos queque la la cabezacabeza I/O I/O atraviesaatraviesa un total de un total de 345345 cilindroscilindros ‐‐ 199199::VaVa del del últimoúltimo al al primeroprimero en un único movimiento y tarda muy pocoen un único movimiento y tarda muy poco

Ascensor cíclico (Ascensor cíclico (SCAN) IISCAN) II

CC‐‐LOOK ILOOK I

•• VersiónVersión del Cdel C‐‐SCANSCAN

•• El El brazobrazo únicamenteúnicamente vava hastahasta la la peticiónpetición másmás extremaextremaen en cadacada direccióndirección, sin , sin llegarllegar a los a los extremosextremos del disco.del disco.

Page 39: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

39

VemosVemos queque la la cabezacabeza I/O I/O atraviesaatraviesa un total de un total de ?? cilindroscilindros

CC‐‐LOOK IILOOK II

SelecciónSelección de un de un algorithmoalgorithmo de de planificaciónplanificación de discode disco

•• SSTF es frecuente y parece el más naturalSSTF es frecuente y parece el más natural

SCAN CSCAN C SCAN ti j di i t i t h lSCAN ti j di i t i t h l•• SCAN y CSCAN y C‐‐SCAN tienen mejor rendimiento para sistemas que usan mucho el SCAN tienen mejor rendimiento para sistemas que usan mucho el discodisco . . 

•• La La eficienciaeficiencia dependedepende del del númeronúmero y y tipotipo de de peticionespeticiones..

•• Las Las peticionespeticiones al al servidorservidor de disco de disco estánestán influenciadasinfluenciadas porpor el el métodométodo de de ubicaciónubicación de de ficherosficheros..

•• El El algoritmoalgoritmo de de planificaciónplanificación de disco de disco puedepuede estarestar en un en un módulomódulo separadoseparadodel SOdel SO permitiendopermitiendo queque sese sustituyasustituya porpor otrootro algoritmoalgoritmo sisi eses necesarionecesariodel SO, del SO, permitiendopermitiendo queque se se sustituyasustituya porpor otrootro algoritmoalgoritmo sisi eses necesarionecesario..

•• Algoritmo estándar en casi todos los sistemas: CAlgoritmo estándar en casi todos los sistemas: C‐‐SCAN.SCAN.

•• SSTF y LOOK son SSTF y LOOK son alternativasalternativas razonablesrazonables comocomo algorithmoalgorithmo porpor defectodefecto..

Page 40: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

40

EficienciaEficiencia en el en el sistemasistema de de archivosarchivos

79

•• II‐‐nodes nodes situadossituados al al inicioinicio del del deldel discodisco•• Disco Disco divididodividido en en gruposgrupos cilindroscilindros

–– CadaCada unouno con con sussus propiospropios bloquesbloques e e ii‐‐nodosnodos

Gestión de errores de discoGestión de errores de disco

•• Errores Errores transitoriostransitorios

–– Debidos a la existencia de partículas de polvo en la superficie del Debidos a la existencia de partículas de polvo en la superficie del disco cuando se efectúa la operación de E/S, a pequeñas variaciones disco cuando se efectúa la operación de E/S, a pequeñas variaciones eléctricas en la transmisión de datos, fallos de calibración de cabezas, eléctricas en la transmisión de datos, fallos de calibración de cabezas, ......

–– Se detectan porque el ECC de los datos no coincide con el calculado y Se detectan porque el ECC de los datos no coincide con el calculado y se resuelven repitiendo la operación de E/S. se resuelven repitiendo la operación de E/S. 

–– Si después de un cierto número de repeticiones no se resuelve el Si después de un cierto número de repeticiones no se resuelve el problema, el manejador concluye que la superficie del disco está problema, el manejador concluye que la superficie del disco está dañada y lo comunica al nivel superior de E/S. dañada y lo comunica al nivel superior de E/S. 

•• Errores Errores permanentespermanentes se tratan de distintas formas. se tratan de distintas formas. 

–– Errores de aplicación: poco que hacer. Errores de aplicación: poco que hacer. 

–– Errores del controlador: tratar de reiniciar el controlador.Errores del controlador: tratar de reiniciar el controlador.

–– Errores de superficie del dispositivo: sustituir el bloque por uno de Errores de superficie del dispositivo: sustituir el bloque por uno de repuesto.repuesto.

Page 41: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

41

Gestión de Gestión de erroreserrores

•• UnaUna pistapista de disco con un sector de disco con un sector defectuosodefectuoso

•• Se Se sustituyesustituye el sector el sector malomalo porpor un un sparespare

•• Se Se desplazandesplazan los los sectotressectotres parapara evitarevitar el el malomalo

Fiabilidad y tolerancia a fallosFiabilidad y tolerancia a fallos

•• El sistema de E/S es uno de los componentes del sistema con mayores El sistema de E/S es uno de los componentes del sistema con mayores exigencias de fiabilidad, debido a que se usa para almacenar datos y exigencias de fiabilidad, debido a que se usa para almacenar datos y programas de forma permanente.programas de forma permanente.programas de forma permanente. programas de forma permanente. 

•• Las principales técnicas usadas para proporcionar esta fiabilidad son:Las principales técnicas usadas para proporcionar esta fiabilidad son:–– Códigos correctores de error, como los existentes en las cabeceras y Códigos correctores de error, como los existentes en las cabeceras y 

colas de los sectores.colas de los sectores.–– Operaciones fiables, cuya corrección se puede verificar antes de dar Operaciones fiables, cuya corrección se puede verificar antes de dar 

el resultado de la operación de E/S. Esta técnica se implementa el resultado de la operación de E/S. Esta técnica se implementa mediante técnicas de almacenamiento estable.mediante técnicas de almacenamiento estable.

–– Redundancia, tanto en datos replicados como en código de paridad Redundancia, tanto en datos replicados como en código de paridad Redundancia, tanto en datos replicados como en código de paridadRedundancia, tanto en datos replicados como en código de paridadpara detectar errores y recuperarlos. Esta técnica se implementa para detectar errores y recuperarlos. Esta técnica se implementa mediante el uso de dispositivos mediante el uso de dispositivos RAID RAID ((RedundantRedundant ArrayArray of of InexpensiveInexpensive DisksDisks).).

–– Redundancia hardware, como el sistema de Windows NT que Redundancia hardware, como el sistema de Windows NT que permite conectar un disco a través de dos controladores.permite conectar un disco a través de dos controladores.

Page 42: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

42

RAID StructureRAID Structure

•• RAID RAID –– Multiples discos Multiples discos proporcionanproporcionan fiabilidadfiabilidad via via redundanciaredundancia..

•• Se Se utilizautiliza un un grupogrupo de discos de discos comocomo unauna unidadunidad de de almacezamientoalmacezamiento..

–– Discos Discos espejoespejo (Mirroring(Mirroring or or shadowing).shadowing).

–– BloquesBloques de de paridadparidad intercaladosintercalados ((menosmenos redundanciaredundancia).).

•• Hay 6 Hay 6 nivelesniveles RAID:RAID:

NivelesNiveles RAIDRAID

Page 43: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

43

Organizaciones RAIDOrganizaciones RAID

•• RAID 0RAID 0: la información se graba y se lee en paralelo entre varios discos : la información se graba y se lee en paralelo entre varios discos físicosfísicos

•• RAID 1RAID 1: Dos discos en configuración “espejo”. Uno contiene los datos y el otro : Dos discos en configuración “espejo”. Uno contiene los datos y el otro os d scos e co gu ac ó espejo U o co t e e os datos y e ot oos d scos e co gu ac ó espejo U o co t e e os datos y e ot ouna réplica una réplica exactaexacta

•• RAID 2RAID 2: : ArrayArray de discos sincronizados, con varios discos redundantes que de discos sincronizados, con varios discos redundantes que contienen el código de corrección contienen el código de corrección HammingHamming

•• RAID 3RAID 3: : ArrayArray de discos sincronizados, con un disco redundante que contiene el de discos sincronizados, con un disco redundante que contiene el bit de bit de paridadparidad

•• RAID 4RAID 4: : ArrayArray de discos independientes, con un disco de control de paridad de discos independientes, con un disco de control de paridad dedicadodedicado

•• RAID RAID 55: : ArrayArray de discos independientes, con control de paridad de discos independientes, con control de paridad distribuidodistribuido

•• RAID 6RAID 6: : ArrayArray de discos independientes, con control de CRC distribuidode discos independientes, con control de CRC distribuido

RAID (0 + 1) RAID (0 + 1) yy (1 + 0)(1 + 0)

Page 44: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

44

RAID RAID 55

Controlador

bloque 0

bloque 3

paridad

paridad

bloque 2bloque 1

Disco 0 Disco 1 Disco 2 Disco 3

bloque 3paridad

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

Page 45: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

45

DispositivosDispositivos de de almacenamientoalmacenamiento terciarioterciario

•• La La característicacaracterística queque define el define el almacenamientoalmacenamiento terciarioterciario eses Low cost.Low cost.

•• GeneralmenteGeneralmente, el , el almacenamientoalmacenamiento terciarioterciario eses mobiblemobible::

–– Discos floppy, Discos floppy, másmás rápidosrápidos queque los discos los discos durosduros y y capacidadcapacidad de de 1 MB.

–– CDCD‐‐ROMsROMs

–– Cintas Cintas magnéticosmagnéticos

Discos Discos removiblesremovibles

•• Un disco magnetoUn disco magneto‐‐ópticoóptico almacenaalmacena datosdatos en en unauna superficiesuperficie rígidarígida de de material material magnéticomagnético cubiertacubierta con con unauna capacapa de de plásticoplástico..

–– UnaUna cabezacabeza laser laser amplificaamplifica un campo un campo magnéticomagnético parapara grabargrabar un bit.un bit.

–– La La luzluz laser se laser se utilizautiliza tambiéntambién parapara leer los leer los datosdatos..

•• Los discos Los discos ópticosópticos no no utilizanutilizan magnetismomagnetismo, , empleanemplean materialesmaterialesespecialesespeciales queque se se alteranalteran con la con la luzluz del laser.del laser.

Page 46: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

46

Discos WORMDiscos WORM

•• WORM (“Write Once, Read Many Times”) se WORM (“Write Once, Read Many Times”) se puedenpueden escribirescribir sólosólo unaunavezvez ..

•• UnaUna capacapa de de papelpapel aluminioaluminio entre dos entre dos capascapas de de plásticoplástico..

•• Para Para escribirescribir un bit, se un bit, se quemaquema con laser un con laser un pequeñopequeño agujeroagujero en el en el papelpapelde de aluminioaluminio del del dispositivodispositivo;  la ;  la informacióninformación se se puedepuede destruirdestruir peropero no no alteraralterar..

•• MuyMuy duraderosduraderos yy fiablesfiables•• MuyMuy duraderosduraderos y y fiablesfiables

•• LosLos Read OnlyRead Only disks, disks, comocomo CDCD‐‐ROM ROM yy DVD,  DVD,  vienenvienen de de fabricafabrica con los con los datosdatos prepre‐‐grabadosgrabados..

Cintas Cintas magnéticasmagnéticas

FueFue el primer el primer dispositivodispositivo de de lamacenamientolamacenamiento secuendariosecuendario..

ComparadaComparada con los con los disosdisos, , eses másmás baratabarata y y almacenaalmacena másmás datosdatos, , peropero el el pp yy ppaccesoacceso aleatorioaleatorio eses mucho mucho másmás lectoslectos: ~1000 : ~1000 vecesveces másmás lentoaquelentoaque el el disco.disco.

TípicamenteTípicamente almacenaalmacena 2020‐‐200GB .200GB .

UnaUna vezvez queque los los datosdatos estánestán bajobajo la la cabezacabeza I/O, la I/O, la velocidadvelocidad de de transferenciatransferencia eses comparable a la del disco.comparable a la del disco.

Se Se utilizautiliza parapara backups, o backups, o parapara guardarguardar datosdatos queque apenasapenas se se usanusan..

TecnologíasTecnologías comunescomunes son 4mm, 8mm, 19mm, LTOson 4mm, 8mm, 19mm, LTO‐‐2 and SDLT2 and SDLT

Page 47: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

47

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

•• Varias acepciones:Varias acepciones:

–– Reloj del procesadorReloj del procesador

El El relojreloj

j pj p

–– Reloj del sistema (que mantiene fecha y hora)Reloj del sistema (que mantiene fecha y hora)

–– Temporizador que activa periódicamente al S.OTemporizador que activa periódicamente al S.O..

•• S.O. vinculado con las dos últimas S.O. vinculado con las dos últimas acepcionesacepciones

•• ¿Reloj es un dispositivo de E/S?¿Reloj es un dispositivo de E/S?

–– Sí, ya que implica registros Sí, ya que implica registros de E/S de E/S e interrupcionese interrupciones

–– Generalmente el Generalmente el S.O. le da tratamiento específico  S.O. le da tratamiento específico  

Page 48: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

48

RelojReloj hardwarehardwareRRelojeloj programableprogramable: : 

•• Circuito temporizador que genera señal periódica (Circuito temporizador que genera señal periódica (ticktick))

–– Conectado a línea de interrupción de alta prioridadConectado a línea de interrupción de alta prioridad

–– Frecuencia programable (actúa como divisor de frecuencias)Frecuencia programable (actúa como divisor de frecuencias)Frecuencia programable (actúa como divisor de frecuencias)Frecuencia programable (actúa como divisor de frecuencias)

–– Modo operación programable (único disparo, onda cuadrada)Modo operación programable (único disparo, onda cuadrada)

–– Generalmente circuito con múltiples temporizadoresGeneralmente circuito con múltiples temporizadores

•• No todos conectados a línea de interrupción No todos conectados a línea de interrupción 

•• Reloj alimentado por batería que mantiene hora y fechaReloj alimentado por batería que mantiene hora y fecha

–– Consultado por S.O. en su arranqueConsultado por S.O. en su arranque

–– También denominado reloj CMOSTambién denominado reloj CMOS

El El relojrelojRelojReloj softwaresoftware

96

TresTres manerasmaneras distintasdistintas de de maintenermaintener la la horahora del del díadía

Page 49: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

49

•• Labor principal de Labor principal de SO: SO: manejo manejo de interrupciones de CKde interrupciones de CK–– También iniciación y gestión de llamadas También iniciación y gestión de llamadas relacionadasrelacionadas

Driver deDriver de relojreloj

•• Compromiso al fijar frecuencia de interrupción:Compromiso al fijar frecuencia de interrupción:–– Demasiado alta: Excesiva sobrecarga por tratamiento de Demasiado alta: Excesiva sobrecarga por tratamiento de intint..–– Demasiado baja: Limitada precisión en medida del tiempoDemasiado baja: Limitada precisión en medida del tiempo–– Ejemplo típico: 100 Hz (1 interrupción cada 10 msEjemplo típico: 100 Hz (1 interrupción cada 10 ms))

•• Minimizar el trabajo Minimizar el trabajo realizado por realizado por la rutina la rutina de interrupciónde interrupción–– Ya que mientras no se atiende Ya que mientras no se atiende intint de disp. de menos de disp. de menos prioridadprioridad

•• Solución típica: Dividir trabajo asociado a Solución típica: Dividir trabajo asociado a intint. de reloj. de reloj–– Operaciones más urgentes realizadas por rutina de Operaciones más urgentes realizadas por rutina de interrinterr..–– Resto: tratamiento posterior fuera de la rutina (Resto: tratamiento posterior fuera de la rutina (intint. software. software)  )  

Funciones del manejador del reloj:Funciones del manejador del reloj:

Driver deDriver de relojreloj

• Mantenimiento de fecha y hora

• Gestión de temporizadores

• Contabilidad y estadísticas

• Soporte para la planificación de procesos

Page 50: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

50

Mantenimiento de fecha y horaMantenimiento de fecha y hora

•• En arranque En arranque SO SO programa temporizador y lee fechaprograma temporizador y lee fecha

–– A partir de A partir de entonces se entonces se actualiza la hora en cada actualiza la hora en cada intint CKCK

•• Almacenamiento de Almacenamiento de fecha y fecha y hora:hora:

–– Espacio Espacio suficientesuficiente

•• Debe Debe poder seguir usándose en un futuro lejanopoder seguir usándose en un futuro lejano

–– Diferencias entre horarios de países:Diferencias entre horarios de países:

•• Se Se almacena en UTC y bibliotecas se encargan de almacena en UTC y bibliotecas se encargan de conversiónconversión

–– Unidades de tiempo desde fecha fija en el pasadoUnidades de tiempo desde fecha fija en el pasado

•• UNIX: UNIX: segssegs. o . o µµsegssegs. desde 1. desde 1‐‐11‐‐19701970gg µµ gg

•• Windows: centenas de Windows: centenas de nsegsnsegs. desde 1. desde 1‐‐11‐‐16011601

•• Servicios Servicios para leer y para leer y cambiar hora cambiar hora (sólo (sólo superusuariosuperusuario)  )  

–– Peligroso retrasar hora:Peligroso retrasar hora:

•• Algunos SS.OO. permiten hacerlo gradualmenteAlgunos SS.OO. permiten hacerlo gradualmente

Gestión de temporizadoresGestión de temporizadores

• Algunos procesos necesitan esperar un plazo de tiempo– S.O. ofrece servicios para ello

• Propio S.O.  también lo requiere– P.ej. módulo de comunicaciones o manejador de disquete

• Múltiples temporizadores a partir del temporizador HW– Lista de temporizadores activos:

• Elemento: plazo restante (ticks) + función a ejecutar al cumplir– Posible organización de la lista:

• Orden creciente y con plazos restantes relativos a anteriores• Orden creciente y con plazos restantes relativos a anteriores• Ejemplo: temp1 5 ticks, temp2 8 ticks y temp3 8 ticks:

– [temp1 5]  [temp2 3]  [temp3 0]

• Si la gestión del temporizador consume mucho  tiempo‐ >  ejecutada fuera de rutina de interrupción

Page 51: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

51

Contabilidad y estadísticasContabilidad y estadísticas

•• Ejecución periódica de rutina de Ejecución periódica de rutina de intint. reloj. relojj pj p jj

–– Permite muestreo de diversas Permite muestreo de diversas variablesvariables

•• Contabilidad de uso de procesador de cada procesoContabilidad de uso de procesador de cada proceso

–– Proceso que estaba ejecutando cuando Proceso que estaba ejecutando cuando intint. de reloj. de reloj

•• Se le carga uso de procesador en ese intervaloSe le carga uso de procesador en ese intervalo

•• Se distingue si estaba en modo usuario o Se distingue si estaba en modo usuario o sistemasistema

•• Perfiles de ejecuciónPerfiles de ejecución

–– Tiempo que consumen Tiempo que consumen las distintas partes del programalas distintas partes del programa

–– Rutina de Rutina de intint. . Muestrea el Muestrea el PC PC del del proceso interrumpidoproceso interrumpido

–– Se obtiene histograma de la Se obtiene histograma de la ejecución ejecución del programa del programa 

Soporte Soporte para para planificación de procesosplanificación de procesos

•• Algoritmos Algoritmos de planificación de planificación basados en basados en el tiempoel tiempo

–– Rutina de Rutina de intint. . CK CK conlleva acciones de conlleva acciones de planificaciónplanificación

•• En En RoundRound‐‐RobinRobin::

–– En cada interrupción se descuenta tiempo a la rodajaEn cada interrupción se descuenta tiempo a la rodaja

–– Cuando llega a cero Cuando llega a cero  ReplanificaciónReplanificación

•• Algoritmos que Algoritmos que recalculanrecalculan periódicamente la prioridadperiódicamente la prioridad

P j d di d d d UCP/ últi i t lP j d di d d d UCP/ últi i t l–– P.ej. dependiendo de uso de UCP/proceso en último intervalo P.ej. dependiendo de uso de UCP/proceso en último intervalo 

Page 52: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

52

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

El terminalEl terminal

•• Teclado + pantallaTeclado + pantalla

•• Dependiendo de forma de conexión:Dependiendo de forma de conexión:

–– Terminales serieTerminales serie

–– Terminales proyectados en Terminales proyectados en memoriamemoria

•• Dependiendo de tipo de información manejada:Dependiendo de tipo de información manejada:

–– Terminales en modo Terminales en modo alfanumérico (texto)alfanumérico (texto)

• Memoria de vídeo contiene códigos ASCII

• Controlador de vídeo genera patrones de pixels

–– Terminales en modo Terminales en modo gráficográfico

• Memoria de vídeo contiene matriz de pixels

• SW debe transformar de código ASCII a patrón de pixels

•• Exposición se centra en terminales en modo textoExposición se centra en terminales en modo texto

Page 53: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

53

Modo de operación del Modo de operación del terminalterminal

• Similar en todos los tipos de terminales– Diferencia: ¿Qué se hace por HW y qué por SW?

• Teclado genera interrupción al pulsar tecla– S.O. lee código de tecla de registro de controlador de teclado– Conversión a ASCII  y manejo de teclas modif. por SW

• Salida para terminal mapeado en Memoria– Pantalla: matriz de pixels con memoria de vídeo asociada– Memoria de vídeo directamente accesible al procesador– Escritura en pantalla requiere escritura en memoria de vídeoEscritura en pantalla requiere escritura en memoria de vídeo

• Controlador de vídeo lee de memoria de video y refresca pantalla• Carácter ASCII  Patrón de pixels

– Secuencias de escape:• Permiten operaciones especiales (p.ej. borrar la pantalla)

Hardware de terminal IHardware de terminal I

P ll l t

106

Terminal mapeado en Memoria• El driver escribe directamente en la RAM de video

Parallel port

Page 54: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

54

Hardware del terminal IIHardware del terminal II

107

• Una imagen de la  RAM de video – Display sencillo monocromático– Modo carácter

• Corespondencía en la pantalla– los xs son bytes de atributos

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

Page 55: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

55

La redLa red

•• Dada su creciente importancia, soporte de S.O. cada vez Dada su creciente importancia, soporte de S.O. cada vez mejormejor

•• Algunos SS.OO. le dan tratamiento diferente a otros dispositivosAlgunos SS.OO. le dan tratamiento diferente a otros dispositivosAlgunos SS.OO. le dan tratamiento diferente a otros dispositivosAlgunos SS.OO. le dan tratamiento diferente a otros dispositivos

–– En Linux no hay archivos en /En Linux no hay archivos en /devdev para la para la redred

•• Software de red organizado en tres niveles:Software de red organizado en tres niveles:

–– Nivel de interfaz a las aplicacionesNivel de interfaz a las aplicaciones

•• Típicamente, Típicamente, socketssockets ((WinsockWinsock en Windows) (capítulo 10)en Windows) (capítulo 10)

•• Puede considerarse como nivel de sesión OSIPuede considerarse como nivel de sesión OSI

–– Nivel de protocolosNivel de protocolos

•• Capa(s) que implementa(n) transporte y red OSI (o TCP/IP)Capa(s) que implementa(n) transporte y red OSI (o TCP/IP)

•• Incluye funciones de encaminamientoIncluye funciones de encaminamiento

–– Nivel de dispositivo de redNivel de dispositivo de red

•• Manejadores de dispositivos de red (nivel de enlace OSIManejadores de dispositivos de red (nivel de enlace OSI))

Niveles del software de redNiveles del software de red

Page 56: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

56

Niveles del software de redNiveles del software de red

Interfaz a las aplicaciones

Nivel de transporte

•• Niveles trabajan de forma independienteNiveles trabajan de forma independiente

–– Uso de interfaces estándar entre Uso de interfaces estándar entre nivelesniveles

•• Mensaje desciende como resultado de llamada de aplicaciónMensaje desciende como resultado de llamada de aplicación

Nivel de red

Ethernet SLIP ..........

Mensaje desciende como resultado de llamada de aplicaciónMensaje desciende como resultado de llamada de aplicación

–– Se va añadiendo información de Se va añadiendo información de controlcontrol

•• Menaje asciende como resultado de interrupción de recepciónMenaje asciende como resultado de interrupción de recepción

–– Se va eliminando información de Se va eliminando información de controlcontrol

•• Para implementación eficiente, minimizar copia de informaciónPara implementación eficiente, minimizar copia de información

EntradaEntrada//SalidaSalida

• Caracterización de los dispositivos de E/S

• Drivers: software de E/S dependiente del dispositivo/ p p

• Software de E/S independiente del dispositivo

• Almacenamiento secundario

• Almacenamiento terciario

• El reloj

• El terminal

• La red

• Servicios de entrada/salida 

Page 57: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

57

Servicios de entrada/salidaServicios de entrada/salida

•• Servicios relacionados con el relojServicios relacionados con el reloj

–– Servicios de hora y fechaServicios de hora y fecha

•• Para leer y cambiar (sóloPara leer y cambiar (sólo superusuariosuperusuario) fecha y hora) fecha y horaPara leer y cambiar (sólo Para leer y cambiar (sólo superusuariosuperusuario) fecha y hora) fecha y hora

–– TemporizacionesTemporizaciones

•• Tanto síncronas (bloqueantes) como asíncronasTanto síncronas (bloqueantes) como asíncronas

–– Servicios de contabilidadServicios de contabilidad

•• Ejemplo: tiempo de procesador consumido por un Ejemplo: tiempo de procesador consumido por un procesoproceso

•• Servicios de entrada/salidaServicios de entrada/salida

–– Acceso a dispositivos a través de interfaz de archivosAcceso a dispositivos a través de interfaz de archivos

•• Programas independientes del medio que usanProgramas independientes del medio que usan

–– Sólo específicos para operaciones dependientes de Sólo específicos para operaciones dependientes de dispositivo.dispositivo.

•• Por ejemplo, desactivar eco de terminalPor ejemplo, desactivar eco de terminal

Servicios de fecha y hora en POSIXServicios de fecha y hora en POSIX

time_t time (time_t *t);• Devuelve número de segundos desde 1‐1‐1970 en UTC• Algunos UNIX tienen gettimeofday con precisión de µsegs.• Funciones de biblioteca para convertir a año, mes, ..., segundos

– gmtime (UTC) y localtime (horario local)

int stime (time_t *t);• Fija hora según parámetro (segundos desde 1‐1‐1970 en UTC).• Sólo para superusuario• Algunos UNIX tienen settimeofday con precisión de µsegs.

Page 58: Sistema de E-S-2 de E-S-2.pdf12/11/2009 6 • Los controladores son muy variados, casi como los dispositivos de E/S. – Muchos de ellos pueden controlar múltiples dispositivos. –

12/11/2009

58

Servicios de temporización en POSIXServicios de temporización en POSIX

unsigned int alarm (unsigned int segundos);

• Establece temporizador del plazo especificado• El proceso solicitante no se bloquea:

– Cuando se cumple plazo recibe señal SIGALRM• Sólo uno activo por proceso

– Si había uno activo, lo desactiva y devuelve plazopendientependiente

• Temporizadores más avanzados (setitimer):– Mayor resolución y diversos modos de operación

Servicios de contabilidad en POSIXServicios de contabilidad en POSIX

• Diversas funciones, se presenta una frecuentemente usada:– Obtiene tiempo de procesador consumido por un proceso

clock_t times (struct tms *info);• Proporciona info. sobre tiempo de ejecución del proceso e

hijos:– En parámetro de salida, tiempo en modo usuario y sistema

consumido por proceso e hijosp p j– Devuelve valor relacionado con tiempo real en el sistema

• p. ej. ticks de reloj desde arranque del sistema• Este valor no se usa de forma absoluta

– Se realizan dos llamadas y se calcula la diferencia