PDF de programación - Gestión de E/S - Sistemas Operativos I

Imágen de pdf Gestión de E/S - Sistemas Operativos I

Gestión de E/S - Sistemas Operativos Igráfica de visualizaciones

Publicado el 8 de Mayo del 2019
1.805 visualizaciones desde el 8 de Mayo del 2019
438,1 KB
36 paginas
Creado hace 15a (30/09/2008)
5

Gestión de E/S
Gestión de E/S

• Servicios de E/S que
suministra el SO
• Hardware de Entradas/salidas
• Implementación de los
servicios
• Mejora del redimiento de E/S

SOI

1

Hardware de E/S
Hardware de E/S

Elementos hardware del sis-
tema de E/S y arquitectura:

Bus
Puerto
Controlador
Dispositivo

Comunicación con el
hardware de E/S:
Sondeo
Interrupciones
DMA

SOI

2

Arquitectura hardware del
Arquitectura hardware del
sistema de E/S
sistema de E/S

El hardware asociado con un dispositivo de E/
S consta de cuatro elementos básicos:

Un bus para comunicarse con la CPU y es
compartido entre varios dispositivos.
Un puerto que consta de varios registros:

Estado-indica si esta ocupado, los datos
están listos, o ha ocurrido un error.
Control-operación que ha de realizar.
Datos_entrada-datos a enviar a CPU.
Datos_salida-datos recibidos de la CPU.

SOI

3

Arquitectura (ii)
Arquitectura (ii)

Existen una gran variedad de dispositivos:

Un controlador que recibe ordenes del
bus del sistema, traduce ordenes en
acciones del dispositivo, y lee/escribe
datos desde/en el bus del sistema.
El propio dispositivo.
Tradicionales: discos, impresoras,
teclado, modem, ratón, pantalla, etc.
No tradicionales: joystick, actuador de
robot, superficie de vuelo de un avión,
sistema de inyección de un coche, etc.

SOI

4

Arquitectura (y iii)
Arquitectura (y iii)

CPU

Interrupción
Estado

Control

Bus del sistema

Salida

Entrada

Controlador

Dispositivo físico

SOI

5

Comunicación entre SO y
Comunicación entre SO y
dispositivo de E/S: Sondeo
dispositivo de E/S: Sondeo

Los pasos a seguir al usar sondeo son:

CPU espera hasta que el estado sea libre.
CPU ajusta el registro de ordenes y
datos-salida, si la operación es de salida.
CPU ajusta el estado a orden-preparada.
El controlador reacciona a orden-
preparada y pone estado a ocupado. Lee
registro de ordenes y ejecuta orden, pone
un valor en datos-salida, si es una orden
de salida.

SOI

6

Sondeo (cont.)
Sondeo (cont.)

Suponiendo que la orden tiene éxito, el
controlador cambia el estado a ocioso.
La CPU observa el cambio a ocioso y lee
los datos si es una operación de salida.

Es buena elección si los datos van a ser
manejados al instante (un modem o
teclado), ua que los datos se perderían si
no se retiran del dispositivo lo suficiente-
mente rápido; pero ¿y si el dispositivo es
lento comparado con la CPU?

SOI

7

Comunicación entre SO y
Comunicación entre SO y
dispositivo: interrupción
dispositivo: interrupción
En lugar de tener la CPU ocupada espe-
rando la disponibilidad del dispositivo, el
dispositivo interrumpe a la CPU cuando ha
terminado una operación de E/S.
Cuando se produce la interrupción de E/S:
Determinar que dispositivo la provocó.
Si la última orden fue una operación de
entrada, recupera los datos del registro
del dispositivo.
Inicia la siguiente operación para el
dispositivo.

SOI

8

Acceso directo a
Acceso directo a
memoria (DMA)
memoria (DMA)

La CPU recupera la información byte a byte

no adecuado para grandes volúmenes..
DMA (Direct Memory Access) – Controlador de
dispositivo que puede escribir directa-mente
en memoria. En lugar de registros de e/s,
tiene un registro de dirección.
La CPU indica al DMA la ubicación de la
fuente/destino de la transferencia.
DMA opera el bus e interrumpe a la CPU
cuando se completa la transferencia.
DMA y CPU compiten por el bus de memoria.

SOI

9

Implementación
Implementación

Servicios suministrados
Estructura del software
de E/S:

Manejadores
Soft. independiente
del dispositivo
Software e/s en
espacio de usuario

SOI

10

Servicios de E/S
Servicios de E/S

Denominación de archivos y dispositivos.
Control de acceso.
Operaciones adecuadas para archivos y
dispositivos.
Asignación de dispositivos.
Búfering. caché, y spooling, para suminis-
trar una comunicación eficiente con el
dispositivo.
Planificación de E/S.
Gestión de errores y recuperación de fallos
asociados con el dispositivo.
Aislar en un módulo las características y
conducta específica del dispositivo.

SOI

11

Arquitectura software
Arquitectura software
del sistema de E/S
del sistema de E/S

Podemos estructurar el
soft. de e/s en capas:

Manejadores de
dispositivos
Software de e/s
independiente del
dispositivo
Software a nivel de
usuario.

SOI

Programa
usuario
Biblioteca

Software

e/s

Manejador
dispositivo

Usuario

Sistema
operativo

Hardware

Controlador
dispositivo

12

Manejador de
Manejador de
dispositivos
dispositivos

Contienen todo el código dependiente del
dispositivo. Cada manejador gestiona un
tipo o clase de dispositivo.
Acepta peticiones “abstractas” de la capa
de software independiente del dispositivo,
y controla que la petición se realiza:
¶Traduce petición abstracta en ordenes
para el controlador del dispositivo.
• Se bloquea o no,según tipo de operación
‚ Si no hay errores, da respuesta si es

necesario, y retorna al llamador.

SOI

13

Software de e/s
Software de e/s
independiente del
independiente del
dispositivo
dispositivo

Realiza las tareas comunes a todos los
dispositivos y suministra una interfaz
común al usuario.
Las principales funciones son:

Suministra interfaz uniforme a los
manejadores
Realiza la designación de dispositivos
Implementa la protección de dispositivos
... (continua)

SOI

14

Software de e/s
Software de e/s
independiente del
independiente del
dispositivo ( y ii)
dispositivo ( y ii)
Establece el tamaño de bloque
independiente del dispositivo (para
dispositivos de bloques) .
Implementa el búfering
Realiza la asignación de
almacenamiento en dispositivos de
bloques (básicamente discos)
Asignar y liberar dispositivos dedicados
Informar de errores producidos en la
realización de la operación.

SOI

15

Designación de
Designación de
dispositivos
dispositivos

Espacio de nombre de dispositivos -define
cómo identificar y nombrar los dispositivos
Existen diferentes espacios de nombre:

Espacio de nombres hardware -especifica
el dispositivo por el controlador al que
esta ligado y el número de dispositivo
lógico dentro del controlador.
Espacio de nombres kernel -utilizado por
el núcleo, suele basarse en el anterior.
Espacio de nombres de usuario -debe ser
un esquema sencillo y familiar.

SOI

16

Designación (cont.)
Designación (cont.)

El sistema de e/s independiente del disposi-
tivo define las semánticas de los espacios de
nombres kernel y usuario, y establece las
correspondencias entre ellas.
En Unix, el espacio de nombres kernel
identifica un dispositivos por:

número principal-identifica el controlador
número secundario-instancia del
dispositivo.
tipo de dispositivo -carácter o bloque.

SOI

17

Espacio de nombres
Espacio de nombres
de usuario
de usuario

La forma de designación más extendida es
la integración del espacio de nombres de
dispositivos en el de archivos.
El concepto central es el archivo de
dispositivo: permite manejar de la misma
forma archivos y dispositivos (mismas
llamadas al sistemas), y aplicarles los
mismos mecanismo de protección.
En UNIX un archivo dispositivo es un
archivo especial que no contiene datos, si
no el número principal y secundario.

SOI

18

Designación e indepen-
Designación e indepen-
dencia del dispositivo
dencia del dispositivo

open (d, ..)

Proceso

Interfaz del SO

Tabla de conmutación

de dispositivos

¿d?

i
dispositivo

archivo
Sistema

de archivos

SOI

servicios

Otros
kernel

open(..) { }

write() { }
. . .
close() { }

r
o
d
a

l

o
r
t
n
o
c

Manejador del
dispositivo i

j

r
o
d
a
e
n
a
m

-
l
e
n
r
e
k


z
a
f
r
e
t
n

I

19

Búfering de E/S
Búfering de E/S

Los dispositivos suelen tener una pequeña
memoria en la tarjeta para almacenar datos
temporalmente antes de transferirlos
a/desde la CPU.
¿Por qué tener búferes en el SO? Para:

Acoplar la diferencia de velocidades entre
la CPU y el dispositivo.
Hacer frente a la diferencia de tamaños
de transferencia de datos entre
dispositivos.
Minimizar el tiempo que el proceso de
usuario esta bloqueado en una escritura.

SOI

20

Caché
Caché

Mejorar el rendimiento del disco
reduciendo el número de acceso al disco.
Mantener bloques de datos recientemente
usados en memoria después de que se
complete la llamada de E/S que lo trajo.
Ej.: read(DireccionDisco)
if (bloque en memoria)then
Retorna su valor

else LeeSector(DireccionDisco).

SOI

21

Caché (cont.)
Caché (cont.)

Políticas de escritura:

Ej.: write(direcciónDisco)
If (bloque en memoria) then
actualiza su valor
else
asigna espacio en memoria; leelo de disco;
actualiza su valor en memoria.
Write-trouhg -escribir todos los niveles de
memoria que contienen el bloque, incluido
el disco. Muy fiable.
Write-back - escribir sólo en memoria más
rápida que contiene el bloque; escribir en
memorias más lentas y disco más tarde.
Más rápido.

SOI

22

Software de e/s
Software de e/s
en espacio de usuario
en espacio de usuario

Bibliotecas estándar de e/s - permiten
realizar las llamadas al sistema de e/s para:
Gestión el formatos (ej. printf)
Control de los dispositivos (p. ej. iocntl)
Spooling- técnica para manejar dispositivos
dedicados en sistemas multiprogramados.
P. ej. No asignamos impresora sino que
generamos la impresión en un archivo; un
proceso especial manda los archivos a
impresión. Igual que el correo electrónico.

SOI

23

Spooling
Spooling

Proceso

“Fin

imprimir”

Manejador
de disco

file.prn

SOI

Algo que
imprimir

Rutina
de e/s

Búfer

Fin

transferencia

Comunicación
Llamada a rutina

Spooler

Fin

impresión

Manejador
impresora

24

Visión del programador
Visión del programador

Visión del usuario de los
dispositivos de E/S
ofrecida por el SO.
Una operación completa
de E/S.
Cómo afecta la visión del
programador a la
estructura del manejador.

SOI

25

Visión del programador
Visión del programador
de los dispositivos de E/S
de los dispositivos de E/S

El SO suministra una interf
  • Links de descarga
http://lwp-l.com/pdf15871

Comentarios de: Gestión de E/S - Sistemas Operativos I (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad