Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CURSO DE
SISTEMAS
OPERATIVOS
CONTENIDO
Controladores de dispositivo
Los dispositivos constan de una parte mecnica y
otra electrnica. A la parte electrnica se le llama
controlador o manejador del dispositivo. El
sistema operativo trata generalmente con el
controlador.
Manejadores de disco
Interfaz del controlador y dispositivo
CPU
Memoria
Controlador
de disco
Impresora
Controlador de
la impresora
Otros
...
controladores
Continuacin
El trabajo del controlador es convertir un flujo de
bits en serie en un bloque de bytes y realizar
cualquier correccin de errores que se necesite.
Controladores de E/S
Direcciones de E/S
Vector de int.
Reloj
040-043
Teclado
060-063
RS232 secundaria
2F8-2FF
11
Disco duro
320-32F
13
Impresora
378-37F
15
Despliegue mono.
3B8-3BF
Despliegue de color
3D0-3DF
Disco flexible
3F0-3F7
14
RS232 primaria
3F8-3FF
12
continuacin
CPU
Controlador
del disco
Memoria
Manejador
Buffer
Registros DMA
Conteo
Direccin de la memoria
Conteo
Bus del sistema
Intercalacin
7
3
(a)
5
(b)
1
(c)
continuacin
Otro aspecto importante es el de nominacin,
esto es, los archivos y dispositivos deben
reconocerse con nombres que no dependan del
dispositivo en ninguna manera, como en UNIX.
Por otro lado el manejo de errores debe hacerse en
los estratos ms bajo. Y solo se deber informar a
los estratos superiores si el estrato bajo no puede
manejarlo.
Clasificacin de dispositivos
Los dispositivos se clasifican en compartibles y
dedicados.
Los compartibles son como los discos, varios
usuarios pueden hacer uso de ellos al mismo
tiempo sin crear conflictos.
Los dedicados como las impresoras, solo
aceptan un usuario a la vez.
Manejadores de
interrupciones
Las interrupciones son indeseables, una forma de
ocultarlas es bloquear los procesos de E/S
siempre que ocurra un comando de E/S y se
espere una interrupcin.
Al recibir la interrupcin, el procedimiento de
interrupciones desbloquea al manejador mediante
un semforo o mediante seales.
Manejadores de dispositivos
En trminos generales, el trabajo de un
manejador de dispositivo consiste en aceptar
solicitudes abstractas del software independiente
del dispositivo que est sobre l y observar que
se cumpla la requisicin.
Despus de que la operacin se ha completado
debe verificar si hubo errores.
Si todo est bien, el manejador puede hacer que
pasen los datos al software independiente del
dispositivo.
Funciones
Sincronizacin uniforme de los manejadores de dispositivos
Nominacin de dispositivos
Proteccin de los dispositivos
Proporcin de un tamao de bloque independiente del
dispositivo
Separacin
Asignacin del almacenamiento en dispositivo de bloque
Asignacin y devolucin de dispositivos dedicados
Informe de errores
continuacin
Otro software a nivel de usuario es el manejo de
la cola de impresin.
La cola es controlada por un software llamado
demonio impresor, el cual maneja un directorio
especial llamado directorio de manejo de cola
de impresin.
Los demonios tambin se utilizan en la
transferencia de archivos de un sistema a otro.
continuacin
Solicitud de E/S
Estrato
Contestacin de E/S
Funciones de E/S
Procesos de usuarios
Software independiente
del dispositivo
Manejadores de dispositivos
Manejadores de interrupciones
Hardware
Estancamientos
Supngase que una computadora tiene una
unidad de cinta y una graficadora.
El proceso A solicita la cinta y B, la graficadora.
Ahora A pide la graficadora (sin renunciar a la
cinta) y B pide la cinta (sin renunciar a la
graficadora), de manera que ambos procesos se
bloquean indefinidamente.
A esta situacin se le llama estancamiento.
continuacin
D
T
(a)
(b)
U
C
(c)
Solicitud de R
Solicitud de S
Liberacin de R
Liberacin de S
Solicitud de S
Solicitud de T
Liberacin de S
Liberacin de T
(a)
1. A solicita a R
2. B solicita a S
3. C solicita a T
4. A solicita a S
5. B solicita a T
6. C solicita a R
estancamiento
(d)
C
Solicitud de T
Solicitud de R
Liberacin de T
Liberacin de R
(b)
(c)
(e)
(f)
(g)
(h)
(i)
(j)
1. A solicita a R
A
2. C solicita a T
3. A solicita a S
4. C solicita a R
R
5. A libera a R
6. A libera a S
no hay estancamiento
A
(k)
(l)
(m)
(n)
(o)
(p)
(q)
Condiciones de
estancamiento
1. Condicin de exclusin mutua. Cada recurso se asigna
por lo regular exactamente a un proceso o bien esta
disponible.
2. Condicin de contencin y espera. Los procesos que
regularmente contienen recursos otorgados antes pueden
solicitar nuevos recursos.
3. Condicin de sin prioridad. Los recursos previamente
otorgados no pueden extraerse por la fuerza de un proceso.
Deben ser liberados en forma explcita por el proceso que lo
contiene.
4. Condicin de espera circular. Debe haber una cadena
circular de dos o ms procesos, cada uno de los cuales est
esperando un recurso contenido en el siguiente miembro de
la cadena.
Deteccin y recuperacin
Esta tcnica consiste en eliminar los ciclos
cuando estos se produzcan, esto se hace
eliminando un proceso si se produce un ciclo al
concederle un recurso.
Prevencin del
estancamiento
Esta tcnica consiste en garantizar que nunca se
produzcan las cuatro condiciones para conducir
al estancamiento. Esto se hace, por ejemplo, con
el demonio impresor, ya que es el nico
capacitado para solicitar la impresora teniendo,
por tanto, exclusin mutua.
1. Lectora de tarjetas
2. impresora
3. Graficadora
4. Unidad de cinta
5. Perforadora de tarjetas
(a)
j
(b)
Mtodo
Exclusin mutua
Espera circular
Se usa Mximo
Nombre
Se usa Mximo
Nombre
Se usa Mximo
Andy
Andy
Andy
Brbara
Brbara
Brbara
Marvin
Marvin
Marvin
Suzanne
Suzanne
Suzanne
Disponible:10
Disponible:2
(a)
(b)
Disponible:1
(c)
Trayectoria de recursos
En la se aprecia un modelo para trabajar con dos
procesos y dos recursos, una graficadora y una
impresora. El eje horizontal representa el nmero
de instrucciones ejecutadas por el proceso A. El
eje vertical denota el nmero de instrucciones
ejecutadas por el proceso B, en I1 A solicita la
impresora; en I2 necesita una graficadora. La
primera la devuelve en I3 y la segunda en I4. El
proceso B necesita la graficadora de I5 a I7 y la
impresora de I6 a I8.
continuacin
B
Impresora
8
7
6
Graficadora
s
p
A
4
Impresora
Graficadora
continuacin
Proceso
Manejadores de cinta
Graficadoras
Impresoras
Perforadoras
Proceso
Manejadores de cinta
Graficadoras
Impresoras
Perforadoras
Recursos asignados
E=(6342)
P=(5322)
A=(1020)
Comunicacin usuario
sistema
Sistema estructurado por procesos
Procesos
Espacio del
usuario
1
Sistema
de archivo
Sistema monoltico
Proceso
del usuario
4
3
Manejador
del dispositivo
(a)
Espacio del
kernel
Un proceso
Parte del
espacio
del usuario
Sistema
de archivo
Manejador
del dispositivo
Discos de RAM
La idea que ostenta un disco de RAM es simple.
Un dispositivo de bloque es un medio de
almacenamiento con dos comandos: la escritura
de un bloque y la lectura de un bloque.
Al colocar el directorio raz en al disco RAM, el
nico disco flexible puede montarse y
desmontarse a voluntad, permitiendo que haya
medios removibles. Al tener el dispositivo raz en
el disco de RAM el sistema se vuelve altamente
flexible: cualquier combinacin de discos flexibles
y duros puede montarse en l.
Un disco de RAM
Memoria central (RAM)
Programas
de usuarios
Disco
de RAM
Bloque 1 del disco de RAM
Sistema
Operativo
40
6ms
77ms
Tiempo de rotacin
200ms
720
250ms
512
22ms
368640
Solicitudes
pendientes
10
15
20
25
30 Cilindro
Secuancia de
localizaciones
Posicin
inicial
0
Tiempo
10
15
20
Secuancia de
localizaciones
25
30 Cilindro
Manejo de errores
Algunos de los ms comunes son:
1. Error de programacin (por ejemplo, solicitud de un
sector no existente).
2. Error transitorio de la suma de verificacin (por
ejemplo, ocasionado por polvo en la cabeza).
3. Error permanente de la suma de verificacin (por
ejemplo, bloque del disco fsicamente daado).
4. Error de localizacin (por ejemplo, el brazo se envi al
cilindro 6 pero se fue al 7).
5. Error del controlador (por ejemplo, el controlador se
niega a aceptar comandos).
do_rdwt
dma_setup
start_motor
Formacin de
registros DMA
Encendido del
motor de la
unidad
localizacin
Desplazamiento
del brazo al
cilindro adecuado
transferencia
Lectura o
escritura
de datos
clock_mess
Iniciacin
del cronmetro
guardian
Relojes
Los relojes controlan la hora del da y evitan que
algn proceso monopolice a la CPU, entre otras
cosas.
Oscilador de cristal
Hora del da
64 bits
32 bits
32 bits
Contador en pulsos
(a)
(b)
Simulacin de cronmetros
mltiples con un solo reloj
Es posible simular varios relojes con un solo reloj fsico. Se puede
utilizar una lista enlazada como en la figura 24. Cada captacin de
la lista indica cuntas pulsaciones del reloj despus de la anterior se
debe esperar antes de producir una seal. En este ejemplo, las
seales estn pendientes para 4203, 4207, 4213, 4215 y 4216.
Tiempo corriente
Encabezado
4200
Siguiente seal
3
del reloj
3
1 x
Terminales
La tarea del manejador de la terminal es ocultar
la diferencias entre las diferentes terminales, de
manera que la parte independiente del
dispositivo del sistema operativo y los
programas de los usuarios no tengan que
reescribirse para cada tipo de terminal.
Tipos de terminales
Terminales
Interfaz de
la RS-232
Copia dura
Tty
de vidrio
Interfaz delineada
en la memoria
Inteligente
Blit
Orientada a
los caracteres
Orientada
a los bits
Terminal RS-232
Computadora
CPU
Bus
Tarjeta de
interfaz de
Memoria RS-232
UART
Terminal
Lnea de recepcin
Lnea de
transmisin
(50 a 9600 bps)
UART
Terminales delineadas en la
memoria
Controlador de video
CPU
Memoria
Tarjeta de la
RAM de video
Monitor
Bus
Seal de video analgica
(por ejemplo, 16MHz)
Puerto paralelo
Teclado
Pantalla
Direccin de RAM
A B C D
0 1 2 3
25 lneas
...x3 x 2 x 1 x 0
0xB00A0
80 caracteres
...xD x C x B x A 0xB0000
160 caracteres
(a)
(b)
Software de entrada
El manejador se hace cargo de la edicin entre
lneas y simplemente entrega las lneas
corregidas a los programas de los usuarios o
bien puede suministrar los caracteres tal y
como los recibe. El primer modo es el modo
elaborado y el segundo el modo no
elaborado.
Buffer de la terminal
Estructura de datos
de la terminal
La reserva del
Terminal
buffer central
Estructura de datos
de la terminal
Terminal
0
1
Area del
buffer de la
terminal 0
3
1
(a)
Area del
buffer de la
terminal 1
(b)
Modo elaborado
Carcter
Comentario
Retroceso
tab
CTRL-S
Detiene la salida
CTRL-Q
Inicia la salida
DEL
CTRL-\
CTRL-D
Fin de archivo