Está en la página 1de 39

TECNOLÓGICO NACIONAL DE MÉXICO

Instituto Tecnológico Superior de la Costa Chica

MATERIA: SISTEMAS OPERATIVOS 1

TRABAJO: CUADROS SINOPTICOS - UNIDAD 4

NOMBRE DEL ALUMNO:


ERIK MIRANDA PINEDA

NOMBRE DEL PROFESOR(A):


LIC.ADELA JAIMES VILLALVA
Introducción Una de las funciones principales de un S. O. es el control
de todos los dispositivos de e / s de la computadora.
1. ADMINSTRACION DE DISPOSITIVOS DE
ENTRADA/SALIDA

* Enviar comandos a los dispositivos.

Las Principales Funciones * Detectar las interrupciones.


Relacionadas Son:
* Controlar los errores.
* Debe ser sencilla y fácil de usar.
* Proporcionar una interfaz entre los dispositivos y el resto
* Debe ser la misma (preferentemente) para todos los
del sistema:
dispositivos (independencia del dispositivo).
* Comandos que acepta el hardware.
El enfoque que se considerará tiene que ver con la * Funciones que realiza.
interfaz que desde el hardware se presenta al software
* Errores que puede informar.
2. PRINCIPIOS DEL HARDWARE

Se pueden clasificar en dos * Dispositivos de bloque.


Dispositivos de E / S grandes categorías * Dispositivos de caracter.

* La información se almacena en bloques de tamaño fijo.


DE E / S

* Cada bloque tiene su propia dirección.

* Los tamaños más comunes de los bloques van desde los


Las principales características de los 128 bytes hasta los 1.024 bytes.
dispositivos de bloque son:
* Se puede leer o escribir en un bloque de forma
independiente de los demás, en cualquier momento.

* Un ejemplo típico de dispositivos de bloque son los


discos.
* La información se transfiere como un flujo de caracteres, sin sujetarse a una estructura de bloques.

* No se pueden utilizar direcciones.


Las principales características de
los dispositivos de caracter son: * No tienen una operación de búsqueda.

* Un ejemplos típico de dispositivos de caracter son las impresoras de línea, terminales, interfaces de
2. PRINCIPIOS DEL HARDWARE

una red, ratones, etc.

No tienen direcciones por medio de bloques y no generan


Relojes
DE E / S

o aceptan flujos de caracteres.


* Un componente mecánico.

Las unidades de e / s generalmente * Un componente electrónico, el controlador del


constan de dispositivo o adaptador.

* Para la mayoría de las micro y Modelo de bus del sistema.


Controladores de Dispositivos

mini computadoras:
Los modelos más frecuentes de comunicación
entre la cpu y los controladores son
* Modelo de varios buses y computadoras especializadas
* Para la mayoría de los mainframes
en e / s llamadas canales de e / s.

* Comienza con un preámbulo.


* La comunicación es mediante
* Sigue con una serie de bits (de un sector de disco, por ej.).
La interfaz entre el controlador y el dispositivo es con un flujo de bits en serie que
frecuencia de muy bajo nivel: * Concluye con una suma para verificación o un código
corrector de errores.

* Se escribe al dar formato al disco.

El preámbulo * Contiene el número de cilindro y sector, el tamaño de


sector y otros datos similares.
* Convertir el flujo de bits en serie en un bloque de bytes.

El controlador debe * Efectuar cualquier corrección de errores necesaria.

* Copiar el bloque en la memoria principal.


Controladores de Dispositivos

Cada Controlador Posee Registros Que * Pueden ser parte del espacio normal de direcciones de la memoria: e / s mapeada a memoria.
Utiliza Para Comunicarse Con La Cpu * Pueden utilizar un espacio de direcciones especial para la e / s, asignando a cada controlador una parte de él.

* Obtenga el control de la cpu.


Al terminar el comando, el controlador provoca una
interrupción para permitir que el S. O * Verifique los resultados de la operación.
* La lectura es bit por bit.

* El controlador lee en serie el bloque (uno o más * Los bits del bloque se graban en el buffer interno
sectores) de la unidad: del controlador.

* Se calcula la suma de verificación para corroborar que


no existen errores de lectura.
ACCESO DIRECTO A MEMORIA (DMA)

* El controlador provoca una interrupción.


Controladores de Dispositivos

La lectura es por byte o palabra a la vez.

Si se lee el disco sin DMA *El S. O. lee el bloque del disco por En cada iteración de este ciclo se lee un byte o una palabra del registro del
medio del buffer del controlador controlador y se almacena en memoria.

* Se desperdicia tiempo de la cpu.


* La dirección del bloque en el disco.

* La cpu le proporciona al controlador * La dirección en memoria adonde debe ir el bloque.

* El número de bytes por transferir.


* Copia el primer byte o palabra a la memoria principal.

* Lo hace en la dirección especificada por medio de la


dirección de memoria de DMA.

* Incrementa la dirección DMA y decrementa el contador


Luego de que el controlador leyó todo el bloque del
DMA en el número de bytes que acaba de transferir.
dispositivo a su buffer y de que corroboró la suma de
verificación: * Se repite este proceso hasta que el contador se anula y
por lo tanto el controlador provoca una interrupción.
ACCESO DIRECTO A MEMORIA (DMA)

* Al iniciar su ejecución el S. O. luego de la interrupción


Controladores de Dispositivos

provocada, no debe copiar el bloque en la memoria,


porque ya se encuentra ahí

* Los bits siguen llegando del disco


El controlador necesita constantemente.
un buffer interno porque * Tendría que recurrir al bus del sistema para c / u de las palabras (o
una vez iniciada una * No interesa si el controlador está bytes) transferidas.
transferencia del disco listo o no para recibirlos.
* El bus podría estar ocupado por otro dispositivo y el controlador
* Si el controlador intentara escribir los debería esperar.
datos en la memoria directamente:
* Si la siguiente palabra llegara antes de que la anterior hubiera sido
almacenada, el controlador la tendría que almacenar en alguna parte.
El bus no se necesita sino hasta que el DMA comienza.
Si el bloque se guarda en un buffer interno La transferencia DMA a la memoria ya no es un aspecto
crítico del tiempo.
ACCESO DIRECTO A MEMORIA (DMA)
Controladores de Dispositivos

Mientras transfieren a la memoria, el sector que pasa debajo de la


cabeza del disco se pierde; es decir que el bloque siguiente al recién
leído se pierde.
Los controladores
simples no pueden La lectura de una pista completa se hará en dos rotaciones * Sería necesario leer un bloque y luego
atender la e / s completas, una para los bloques pares y otra para los impares. saltar dos o más bloques.
simultánea:
Si el tiempo necesario para una transferencia de un bloque del * El salto de bloques: Se ejecuta para
controlador a la memoria por medio del bus es mayor que el tiempo darle tiempo al controlador para la
necesario para leer un bloque del disco: transferencia de los datos a la memoria.
Se llama separación.
* Las capas inferiores se encarguen de ocultar las
La idea básica es organizar el software peculiaridades del hardware a las capas superiores.
como una serie de capas donde * Las capas superiores deben presentar una interfaz
agradable, limpia y regular a los usuarios.

* Debe ser posible escribir programas que se puedan


3. PRINCIPIOS DEL SOFTWARE

utilizar con archivos en distintos dispositivos, sin tener


Objetivos del Software de E / S Un concepto clave es la independencia del dispositivo: que modificar los programas para cada tipo de
dispositivo.

* El problema debe ser resuelto por el S. O.

Generalmente los errores deben manejarse lo más cerca


posible del hardware.
DE E / S

Otro aspecto importante del software


es el manejo de errores de e / s: Solo si los niveles inferiores no pueden resolver el
problema, se informa a los niveles superiores.

Generalmente la recuperación se puede hacer en un


nivel inferior y de forma transparente.

* Manejadores de interrupciones.

Generalmente el software de e / s se estructura en capas * Directivas de dispositivos.

* Software de S. O. independiente de los dispositivos.

* Software a nivel usuario.


* Cada proceso que inicie una operación de e / s se
bloquea hasta que termina la e / s y ocurra la interrupción.
Manejadores de Interrupciones Las interrupciones deben ocultarse en el S. O
* El procedimiento de interrupción realiza lo necesario
para desbloquear el proceso que lo inicio.

* Se utilizan para darle los comandos.


Cada controlador posee
Todo el código que depende de los dispositivos
Principios del Software de E / S

Manejadores de Dispositivos uno o más registros de * Los manejadores de dispositivos proveen


aparece en los manejadores de dispositivos estos comandos y verifican su ejecución
dispositivos
adecuada.

Aceptar las solicitudes abstractas que le hace el software


independiente del dispositivo.
La labor de un manejador de dispositivos es la de
Verificar la ejecución de dichas solicitudes.

* Estimar el lugar donde se encuentra en realidad el


bloque solicitado.
La solicitud de e / s, por ej. para un disco, se debe El manejador de disco debe * Verificar si el motor de la unidad funciona.
traducir de términos abstractos a términos concretos:
* Verificar si el brazo está colocado en el cilindro
adecuado, etc.
* Interfaz uniforme para los manejadores de dispositivos.

* Nombres de los dispositivos.

* Protección del dispositivo.

* Proporcionar un tamaño de bloque independiente del


Funciones generalmente realizadas por el dispositivo.
software independiente del dispositivo
Software de E / S Independiente del Dispositivo

* Uso de buffers.

* Asignación de espacio en los dispositivos por bloques.

* Asignación y liberación de los dispositivos de uso


exclusivo.

* Informe de errores.

* Efectuar las funciones de e / s comunes a todos los


Las funciones básicas del software independiente del dispositivos.
dispositivo son
* Proporcionar una interfaz uniforme del software a nivel
usuario.

* Este nodo-i contiene el número principal del dispositivo,


que se utiliza para localizar el manejador apropiado.
Un nombre de dispositivo determina de manera única el
nodo-i de un archivo especial: * El nodo-i contiene también el número secundario de
dispositivo, que se transfiere como parámetro al
manejador para determinar la unidad por leer o escribir.
* Ocultar a los niveles superiores los diferentes tamaños
de sector de los distintos discos.
El software independiente del dispositivo debe * Proporcionar un tamaño uniforme de los bloques, por
ej.: considerar varios sectores físicos como un solo bloque
lógico.
Software de E / S Independiente del Dispositivo

La biblioteca estándar de e / s contiene


La mayoría del software de Una pequeña parte consta de
Software de E / S en el Espacio del Usuario varios procedimientos relacionados
e / s está dentro del S. O. bibliotecas ligadas entre sí con
con e / s y todos se ejecutan como
los programas del usuario.
parte de los programas del usuario.

El ejemplo típico lo constituye la impresora de líneas.


El spooling es una forma de trabajar con Los procesos de usuario no abren el archivo
Otra categoría importante de software de e
los dispositivos de e /s de uso exclusivo correspondiente a la impresora.
/ s a nivel usuario es el sistema de spooling.
en un sistema de multiprogramación
Se crea un proceso especial, llamado demonio en
algunos sistemas.

Se crea un directorio de spooling.

* Un usuario coloca un archivo en un directorio de spooling


Un esquema similar también es aplicable para la de la red.
transferencia de archivos entre equipos conectados:
* Posteriormente, el proceso especial lo toma y transmite.
Un ej. son los sistemas de correo electrónico.
* Mucho mayor capacidad de espacio de almacenamiento.
Las siguientes son las principales ventajas con respecto
Discos del uso de la memoria principal como almacenamiento * Menor precio por bit.

* La información no se pierde al apagar la computadora.

Los discos están organizados en Los sectores cercanos a la


Hardware Para Discos El número típico de sectores por Todos los sectores tienen
cilindros, pistas y sectores. orilla del disco serán
pista varía entre 8 y 32 (o más).
4. DISCOS – HARDWARE PARA DISCOS

igual número de bytes. mayores físicamente que


los cercanos al anillo.

* Son las búsquedas traslapadas.


Un controlador puede realizar búsquedas
* Mientras el controlador y el software esperan el fin de
en una o más unidades al mismo tiempo:
una búsqueda en una unidad, el controlador puede iniciar
una búsqueda en otra.

Muchos controladores pueden: * Leer o escribir en una unidad.

* Buscar en otra.

Los controladores no pueden leer o escribir en dos La capacidad de búsquedas traslapadas puede reducir
unidades al mismo tiempo. considerablemente el tiempo promedio de acceso.
Los datos se graban en una serie El eje común de los discos gira a una velocidad del
de discos magnéticos o platos orden de las 4.000 o más revoluciones por minuto.
5. OPERACIÓN DE ALMACENAMIENTO DE DISCO DE CABEZA

* Se dispone de una por cada superficie de disco. * La parte de la superficie del disco de donde se leerá (o
Se lee o escribe mediante una serie sobre la que se grabará) debe rotar hasta situarse
de cabezas de lectura - escritura inmediatamente debajo (o arriba) de la cabeza de lectura -
* Solo puede acceder a datos inmediatamente escritura.
adyacentes a ella:
* El tiempo de rotación desde la posición actual hasta la
adyacente al cabezal se llama tiempo de latencia.

* Puede moverse hacia adentro o hacia afuera, en lo que


Todas las cabezas de lectura - escritura están se denomina operación de búsqueda.
montadas sobre una barra o conjunto de brazo móvil
* Para una posición dada, la serie de pistas accesibles
forman un cilindro vertical.
MÓVIL

* Involucra movimientos mecánicos.

El tiempo total de acceso a un registro particular: * Generalmente es del orden de centésimas de segundo,
aunque el tiempo de latencia sea de algunas milésimas de
segundo (7 a 12 aproximadamente).
Si el manejador del disco utiliza el algoritmo
La mayoría de los discos, el tiempo de La reducción del tiempo promedio de primero en llegar primero en ser atendido
búsqueda supera al de retraso búsqueda puede mejorar en gran (FCFS), poco se puede hacer para mejorar el
rotacional y al de transferencia medida el rendimiento del sistema tiempo de búsqueda

 El índice es el número de cilindro.


 Incluye las solicitudes pendientes para cada cilindro enlazadas
entre sí en una lista ligada.
 Cuando concluye una búsqueda, el manejador del disco tiene la
opción de elegir la siguiente solicitud a dar paso:
o Se atiende primero la solicitud más cercana, para
Estructura de una minimizar el tiempo de búsqueda.
tabla del manejador o Este algoritmo se denomina primero la búsqueda
más corta (SSF: shor-test seek first).
o Reduce a la mitad el número de movimientos del
brazo en comparación con FCFS.
6. Calibri (Cuerpo)

 Entran en conflicto los objetivos de:


El algoritmo SSF tiene el siguiente problema:  Tiempo mínimo de respuesta.
 Justicia en la atención.
Algoritmo SSF  El ingreso de nuevas solicitudes puede  La solución a este problema la brinda
demorar la atención de las más antiguas el algoritmo del elevador (por su
analogía con el ascensor o elevador)

Ocasionalmente es mejor que el algoritmo SSF.


Algunos controladores de disco permiten que el
Generalmente es peor que SSF.
El algoritmo del software inspeccione el número del sector
Dada cualquier colección de solicitudes, la cuota
elevador activo debajo del cabezal
máxima del total de movimientos está fija,
siendo el doble del número de cilindros
* Se construyen líneas de espera o colas para cada dispositivo.

Muchos procesos pueden estar


Sistemas de
generando peticiones de e / s
multiprogramación * Para reducir el tiempo de búsqueda de registros se ordena la cola de
sobre discos
peticiones: esto se denomina planificación de disco
7. PORQUÉ ES NECESARIA LA PLANIFICACIÓN DE DISCOS

Un examen cuidadoso de las peticiones pendientes


para determinar la forma más eficiente de
servirlas.

Un análisis de las relaciones posicionales entre las


La planificación de disco implica peticiones en espera.

Un reordenamiento de la cola de peticiones para


servirlas minimizando los movimientos
mecánicos.

Muchos algoritmos de planificación se


 Optimización de la
concentran en la reducción de los tiempos de
búsqueda.
búsqueda para un conjunto de peticiones.

Los tipos más comunes de


planificación son:

 Optimización rotacional Generalmente la reducción de la latencia recién


(latencia). tiene efectos bajo cargas de trabajo muy pesadas.
Los principales criterios de * Capacidad de ejecución.
categorización de las políticas de * Media del tiempo de respuesta.
planificación
* Varianza de los tiempos de respuesta (predicibilidad)
8. CARACTERÍSTICAS DESEABLES DE LAS POLÍTICAS DE

* Maximizar el número de peticiones servidas


por unidad de tiempo.

Intentar maximizar la capacidad * Minimizar la media del tiempo de respuesta


PLANIFICACIÓN DE DISCOS

de ejecución
* Mejorar el rendimiento global, quizás a
costa de las peticiones individuales

Política de planificación * Se mide utilizando la varianza de los tiempos de


respuesta.

* La varianza es un término estadístico que indica


hasta qué punto tienden a desviarse del promedio
Suele mejorar la imagen de todos los elementos los elementos individuales.
total al tiempo que reduce
los niveles de servicio de * A menor varianza mayor predecibilidad.
ciertas peticiones * Se desea una política de planificación que
minimice la varianza, es decir que maximice la
predecibilidad.

* No debe haber peticiones que puedan


experimentar niveles de servicio erráticos.
Una petición no puede ser desplazada Ofrece una varianza pequeña aunque perjudica a
1. Planificación FCFS (Primero las peticiones situadas al final de la cola. Ofrece
por la llegada de una petición con
en Llegar, Primero en Ser una varianza pequeña aunque perjudica a las
prioridad más alta
Servido) peticiones situadas al final de la cola.

El brazo del disco se sitúa en la Tiende a favorecer a las pistas del centro del disco.
2. Planificación SSTF (Menor siguiente petición que minimice el No respeta el orden de llegada de las peticiones a la
Tiempo de Búsqueda Primero) movimiento del brazo cola

Cambia de dirección cuando ya no hay peticiones


9. OPTIMIZACIÓN DE LA BÚSQUEDA EN DISCOS

pendientes en la dirección actual.

Ha sido la base de la mayoría de El brazo del disco se desplaza sirviendo a todas las
3. Planificación SCAN las estrategias de planificación peticiones que encuentra a su paso.
implementadas
Elimina las discriminaciones de SSTF y tiene menor
varianza.
Las peticiones que llegan durante un
recorrido son agrupadas y ordenadas y
Solo da servicio a las peticiones que se serán atendidas durante el recorrido de
4. Planificación SCAN de N - regreso.
encuentran en espera cuando comienza
Pasos
un recorrido particular
Posee menor varianza de los tiempos de
respuesta
El brazo se mueve del cilindro
exterior al interior, sirviendo a las Finalizado el recorrido hacia el interior, salta a la petición
5. Planificación C - SCAN
peticiones sobre una base de más cercana al cilindro exterior y reanuda su
(Búsqueda Circular)
búsqueda más corta. desplazamiento hacia el interior.

La varianza de los tiempos de No discrimina a los cilindros exterior e interior.


respuesta es muy pequeña.

Si dos peticiones trasladan posiciones de sectores


Las peticiones se reordenan para dentro de un cilindro, solo se sirve una en el
ser servidas dentro de un cilindro movimiento actual del brazo del disco.
6. Esquema Eschenbach
para tomar ventaja de la posición
rotacional Esta estrategia tiene en cuenta el retraso rotacional
Se basa en el hecho de que bajo
Cuando se tienen condiciones de carga muy Esta estrategia se ha usado
condiciones de carga muy pesada, la
pesada, la cola de servicio se hace muy por muchos años en discos
probabilidad de que ocurran
larga, por lo que es necesario considerar la de cabezas fijas ya que
referencias al mismo cilindro aumenta,
optimización rotacional para que junto con estos tienen un tiempo de
por lo que se puede utilizar un
la optimización de búsqueda puedan búsqueda despreciable.
algoritmo que optimice esas peticiones
manejar adecuadamente las peticiones.
10. OPTIMIZACIÓN ROTACIONAL EN DISCOS

Situado el brazo del disco en un


En este algoritmo cuando el cilindro:
brazo llega a un cilindro en
La estrategia utilizada es la SLTF Examina todas las peticiones
particular (usando cualquier
(tiempo de latencia más corto primero): sobre el cilindro.
algoritmo de optimización de
búsqueda)
Sirve primero a la que tiene el
retraso rotacional más corto

* Para carga baja, la planificación SCAN es la mejor

La mejor política de planificación de * Mientras que para cargas medias y pesadas C-SCAN produce los mejores
discos se puede manejar en tres etapas resultados
* Para cargas muy pesadas, el algoritmo C-SCAN con optimización
rotacional produce resultados efectivos.
La planificación de disco puede mejorar el
El almacenamiento en rendimiento y eliminar el embotellamiento, que
Cuándo es útil la se produce cuando se concentran grandes
disco como un recurso
planificación de disco. cargas de peticiones sobre relativamente pocos
limitado
discos o pocos cilindros de un disco

Los principales
interrogantes son
El embotellamiento puede
Cuándo puede degradar producirse en algún disco, algún
11. CONSIDERACIONES DE LOS DISCOS SOBRE LOS SISTEMAS

el rendimiento controlador o en algún cana

 Medir la actividad.
Subsistemas de Software
 Detectar dónde se produce
discos múltiples específico para el embotellamiento

Nivel de
multiprogramación  Agregar canales, controladores,
dispositivos.
Eliminar cierto  Cambiar dispositivos de un
embotellamiento controlador a otro.
 Cambiar controladores de un canal a
otro

RPS Reduce el tiempo durante el cual un canal se encuentra


Para ayudar a reducir la congestión ocupado en la búsqueda de un registro
del canal, muchos sistemas han
incorporado la técnica de examen Permite al canal quedar libre justo hasta antes de que el
(censado) de posición rotacional registro se encuentre debajo de la cabeza de lectura -
grabación apropiada

Son muy convenientes desde el punto


Los métodos de organización y acceso de vista de las aplicaciones y del
DBMS de archivos, así como los DBMS Técnicas de
usuario
(manejadores de bases de datos organización de
archivos Pueden generar complicaciones en la
implementación y el rendimiento
 Error de programación: o Ej.: Solicitar un sector no existente.
 Error temporal en la suma de verificación: o Ej.: Provocado por polvo
en la cabeza.
Errores más comunes en discos son  Error permanente en la suma de verificación: o Ej.: Un bloque del
disco dañado físicamente.
 Error de búsqueda: o Ej.: El brazo se envía al cilindro 6 pero va al 7.
Error del controlador: o Ej.: El controlador no acepta los comandos
12. MANEJO DE ERRORES EN DISCOS

Verifican los parámetros que se les proporcionan.


Mayoría de los controladores
Informan si no son válidos

El manejador del disco debe


controlar los errores
Generalmente se eliminan al repetir la operación.

Respecto de los errores Si persisten, el bloque debe ser marcado como


temporales un bloque defectuoso, para que el software lo
evite

Está alojada en la memoria interna del


Serán asignadas en reemplazo de controlador y en el disco.
pistas defectuosas.
La sustitución es transparente para el
Controladores inteligentes Una tabla asocia las pistas manejador
defectuosas con las pistas de
repuesto Puede afectarse el desempeño de los
algoritmos de búsqueda
Generalmente el tiempo de búsqueda
supera al de rotación y transferencia

El manejador puede ver que sector se


13. OCULTAMIENTO DE UNA PISTA A LA VEZ EN DISCOS

Especialmente en dispositivos encuentra debajo de la cabeza y puede


con sensibilidad rotacional (RPS) enviar una solicitud del siguiente
sector

Una vez resuelta la búsqueda del cilindro


correspondiente, no es muy importante si se lee
un sector o toda la pista
Es desconocido por el
Algunos manejadores aprovechan esto
software independiente
mediante un caché secreto de una pista a
del dispositivo
la vez

 Complejidad del software.


 Requerimientos de espacio para buffers.
Las principales desventajas de este  Las transferencias del caché al programa que
ocultamiento de una pista a la vez hace la llamada
son
Algunos controladores realizan el ocultamiento de una
pista a la vez en su propia memoria interna
 No hay demora rotacional o debida a las
Utilizan una parte de la memoria principal asignada Ventaja del acceso búsquedas.
con anterioridad para almacenar los bloques instantáneo  Son adecuados para el almacenamiento de
programas o datos con accesos muy frecuentes
14. DISCOS EN RAM

Cuando el manejador debe leer de o escribir en un


Los bloques de almacenamiento tienen el bloque de un disco en RAM, calcula el lugar de la
mismo tamaño que en los discos reales memoria donde se encuentra el bloque solicitado y lee o
escribe en el mismo
Los relojes o cronómetros son esenciales para Evitan que un proceso
la operación de sistemas de tiempo monopolice la CPU
compartido
Los relojes más sencillos trabajan con la línea de corriente eléctrica de 110 o 220 voltios y
provocan una interrupción por cada ciclo de voltaje, a 50 o 60 Hz

Otro tipo de relojes consta Un oscilador de cristal,


de tres componentes un contador y un
registro
 Genera una señal periódica de muy alta precisión,
Una pieza de cristal de generalmente entre 5 y 100 MHz.
cuarzo se monta en una  La señal se alimenta en el contador para que cuente en
estructura bajo tensión forma descendente hasta cero.
15. RELOJES

 Cuando el contador llega a cero, provoca una interrupción


de la CPU

Modo de una instancia Cuando el reloj se inicializa, copia el valor del registro en el contador
Relojes programables
tienen varios modos de
Luego de llegar a cero y provocar la interrupción, el registro se copia de
operación Modo de onda cuadrada
manera automática en el contador

 Mantener la hora del día o tiempo real.


 Evitar que los procesos se ejecuten durante más tiempo del permitido.
 Mantener un registro del uso de la CPU.
Principales funciones del  Controlar llamadas al sistema tipo “alarm” por parte de los procesos del
software manejador del reloj son usuario.
 Proporcionar cronómetros guardianes de partes del propio sistema.
 Realizar resúmenes, monitoreo y recolección de estadísticas

El software manejador del reloj puede tener que


simular varios relojes virtuales con un único reloj físico
La parte independiente del dispositivo en el S. O. y los
programas del usuario no se tienen que reescribir para cada tipo de
terminal. Poseen un teclado y un monitor
que se comunican mediante una
interfaz serial, un bit a la vez; las
o Hardcopy (terminales de impresión).
conversiones de bits a bytes y
o TTY “de vidrio” (terminales de video). Características: viceversa las efectúan los chips
Interfaz RS-232:
o Inteligente (computadoras con cpu y uart (transmisores - receptores
memoria). (pag.52) asíncronos universales).

• No se comunican mediante una línea serial.


Se Clasifican en:
• Poseen una interfaz mediante una
o Orientada a caracteres. memoria especial llamada video RAM:
16. TERMINALES

Interfaz mapeada a
Características: o Forma parte del espacio de direcciones de la
memoria: o Orientada a bits.
computadora.

o La cpu se dirige a ella como al resto de la


memoria
Cada caracter en la pantalla
equivale a dos caracteres de RAM:
A caracteres:
o Uno aloja al código (ASCII) del
caracter por exhibir.
Existen dos tipos de
pantalla mapeada: • Se utiliza el mismo principio.

• Cada bit en el video RAM


A bits:
controla en forma directa un solo
pixel de la pantalla.
• Mover el cursor hacia arriba, abajo, a la izquierda o a la
derecha una posición.
Las terminales pueden operar con una Soportan operaciones
estructura central de buffers o con tales como: • Insertar un caracter o una línea en el cursor.
buffers exclusivos para cada terminal.
• Eliminar un caracter o una línea en el cursor.

• Recorrer la pantalla hacia arriba o hacia abajo “n” líneas.


Un proceso dentro de un sistema de
multiprogramación está en un estado de
Concepto interbloqueo (o interbloqueado) si está
esperando por un evento determinado que no
ocurrirá.

 Puede producirse interbloqueos en los cuales los


17. INTRODUCCIÓN Y EJEMPLOS DE BLOQUEO (O INTERBLOQUEO)

procesos de algunos usuarios nunca podrán


llegar a su término.
Recursos compartidos
 Se debe considerar la prevención, evitación,
entre usuarios:
detección y recuperación del interbloqueo y la
postergación indefinida, que se da cuando un
proceso, aunque no esté interbloqueado, puede
estar esperando por un evento que
probablemente nunca ocurrirá.

 Un ejemplo claro son la impresoras, unidades de


cinta, espacio de nodos.
Recursos que solo  Los S.O tienen la capacidad de otorgar
pueden ser realizados temporalmente a un proceso el acceso de
por un proceso a la exclusivo a ciertos recursos.
vez:  Frecuentemente un proceso necesita el acceso
exclusivo no solo a un recurso, si no a varios.
Dos procesos desean imprimir grandes  El proceso ”a” solicita a la
archivos en cinta. unidad de cinta, pero se
deniega la solicitud hasta que
El proceso ”a” solicita la impresora,
”b” la libera.
Bloqueo(deadlock) Ejemplo que se le concede.
 El proceso ”b” solicita a la
El proceso “b” solicita la unidad de impresora y se produce el
cinta, que se le concede. bloqueo (deadlock). (pag.56)
17. INTRODUCCIÓN Y EJEMPLOS DE BLOQUEO (O INTERBLOQUEO)

Tiene similitud con el congestionamiento del tránsito en


la ciudades
Interbloqueo de
trafico: Ejemplo El trafico puede detenerse completamente

Es necesaria la intervención externa para poner orden y


restablecer la normalidad.

 Pueden ser utilizados por un solo usuario a la vez.


 Cada proceso está esperando por el otro para liberar
uno de los recursos.
 El recurso retenido no será liberado hasta que el
Ejemplo otro proceso usuario libere su recurso.
Interbloqueo de un
 Este último proceso usuario no liberara su recurso
recurso simple:
retenido hasta que el primer proceso usuario libere
a s u recurso retenido.
 Se produce una espera circular.
Las impresoras:

El sistemas Spool es utilizado para  si un programa envía líneas a


Interbloqueo en incrementar la capacidad de ejecución una impresora, en realidad son
Utilidad: Ejemplo:
sistemas de Spool: del sistema, al disociar un programa de enviadas a un dispositivo más
la lenta velocidad de los dispositivos. 7) rápido (disco).
 Se almacenan temporalmente
hasta ser impresas.
17. INTRODUCCIÓN Y EJEMPLOS DE BLOQUEO (O INTERBLOQUEO)

 Proporcionando un espacio en disco


considerablemente mayor que el
Reducción de probabilidad necesario,
de interbloqueos del Spool preferentemente con asignación dinámica.
(pag.57)  Limitando los spoolers de entrada para que no
lean más trabajos cuando los archivos de spool
llegan a cierto nivel de saturación.

 Se trata de la postergación indefinida.


Es posible que un proceso sea  Cuando los recursos son planificados en
postergado indefinidamente función de prioridades, un proceso dado
Postergación puede esperar indefinidamente, mientras sigan
en tanto que otros reciben la
indefinida: llegando procesos de prioridades mayores.
atención del sistema:

En algunos sistemas, la postergación indefinida se evita al permitir que la


prioridad de un proceso aumente mientras espera por un recurso; a esto se
llama envejecimiento.
El S.O. es, sobre todo, un administrador de
recursos.

La apropiatividad es extremadamente
Apropiativos importante para el éxito de los sistemas
computacionales multiprogramados.

Los recursos pueden ser:

Ciertos recursos son “no apropiativos”, como las unidades de


cinta o cartridge magnéticos, o sea que no pueden sacarse de
No Apropiativos
los procesos a los que están asignados.
18. CONCEPTOS DE RECURSOS

• Se carga una copia del código a memoria.

•Se habilitan varias copias de las estructuras de datos, una para cada usuario.

•Como el código puede ser utilizado por varios usuarios a la vez, no puede cambiar
durante la ejecución:
Recursos compartibles:
o El código que no cambia durante la ejecución se

denomina reentrante.

 El código que puede ser cambiado, pero se inicializa cada vez que se usa,
se denomina reutilizable en serie.

El código reentrante puede ser compartido


simultáneamente por varios procesos.
Código
El código reutilizable en serie puede ser usado
solo por un proceso a la vez. (pag.59)
1. Solicitar el recurso.
La secuencia de eventos necesarios 2. Utilizar el recurso.
para utilizar un recurso es la
siguiente: 3. Liberar el recurso.
19. BLOQUEOS Y CONDICIONES NECESARIAS PARA EL BLOQUEO

• El proceso solicitante debe esperar.

Si el recurso no está disponible se •En algunos S. O. el proceso se bloquea automáticamente y


Solicita: se despierta cuando dicho recurso está disponible.

•En otros S. O. la solicitud falla y el proceso debe esperar


para luego intentar nuevamente.

Un conjunto de procesos se bloquea si cada proceso del conjunto espera un evento


que solo puede ser provocado por otro proceso del conjunto:

o Ya que todos los procesos están esperando:

Ninguno realizará un evento que pueda despertar a los demás miembros del
Si define: conjunto.

o Generalmente el evento que espera cada proceso es la liberación de cierto recurso


que posee por el momento otro miembro del conjunto:

Cada miembro del conjunto de procesos bloqueados espera un recurso


poseído por un proceso bloqueado.

Ninguno de los procesos bloqueados puede continuar su ejecución, ni liberar


•Los
recursos, procesos
ni puede ser reclaman control exclusivo de los recursos que piden (condición de
despertado.
exclusión mutua).
Condiciones para •Los procesos mantienen los recursos que ya les han sido asignados mientras
el bloqueo: esperan por recursos adicionales (condición de espera por).

•Los recursos no pueden ser extraídos de los procesos que los tienen hasta su
completa utilización (condición de no

apropiatividad).
La modelación de bloqueos se puede mostrar mediante
gráficas dirigidas (Holt).

• Procesos (aparecen como círculos).

• Recursos (aparecen como cuadrados).

Las gráficas tienen dos •Un arco de un nodo de recurso a uno de proceso indica que el
tipos de nodos: recurso fue solicitado con anterioridad, fue otorgado y es poseído
en ese momento por dicho proceso.

•Un arco de un proceso a un recurso indica que el proceso está


20. MODELACIÓN DE BLOQUES

bloqueado, en espera de ese recurso.

• Un ciclo en la gráfica indica la existencia de un bloqueo


relacionado con los procesos y recursos en el ciclo.

• Ignorar todo el problema.

• Detección y recuperación.
Estrategias para
•Evitarlos dinámicamente mediante una cuidadosa asignación de recursos.
Bloqueos:
• Prevención mediante la negación estructural de una de las

cuatro condiciones necesarias.


* El interés se centra en condicionar un sistema para que
elimine toda posibilidad de que éstos se produzcan.
* Prevención del bloqueo
* Los métodos pueden dar como resultado una pobre
utilización de los recursos, aún así son ampliamente
utilizados.
21. ÁREAS PRINCIPALES EN LA INVESTIGACIÓN DE

* La meta es imponer condiciones menos estrictas que en


la prevención, para intentar lograr una mejor utilización de
los recursos.
*Evitación del bloqueo * No precondiciona al sistema para que evite todas las
posibilidades de que se produzca un bloqueo. Permiten
Los principales aspectos son

la aparición del bloqueo, pero siempre que se produce una


posibilidad de bloqueo, éste se esquiva.

* Se utiliza en sistemas que permiten que éstos ocurran,


ya sea voluntaria o involuntariamente. * Se debe detectar con precisión los procesos
* Detección del bloqueo
BLOQUEOS

* La meta es determinar si ha ocurrido un bloqueo: y recursos implicados en el bloqueo.

* Se puede eliminar el bloqueo detectado

* Continúe operando sin ellos.


* Recuperación del bloqueo Se utiliza para despejar bloqueos de un
* Terminen los procesos estancados.
sistema para que:
* Se liberen los recursos correspondientes a ellos
* Matemáticamente es inaceptable, considerándose que
los bloqueos deben evitarse a toda costa.

* Desde la ingeniería de software podría considerarse cuál


Esta estrategia puede generar distintas reacciones
es la frecuencia esperada del problema, cuáles son sus
consecuencias esperadas, cuáles son las frecuencias
esperadas de fallas de otro tipo, etc.
22. EL ALGORITMO DEL AVESTRÚZ O DE

* La mayoría de los usuarios preferiría un bloqueo


Los S. O. que ignoran el problema de los
ocasional, en vez de una regla que restringiera a todos los
bloqueos asumen la siguiente hipótesis
usuarios en el uso de los distintos tipos de recursos.

* En restricciones para los procesos.


El problema es que se debe pagar un cierto precio para
OSTRICH

encarar el problema del bloqueo * En el uso de recursos.

Un criterio de orden general utilizado por los * Intentar acceder al recurso compartido.
S. O. que no hacen tratamiento específico * Esperar un tiempo aleatorio.
* De no ser factible el acceso:
del bloqueo consiste en
* Reintentar nuevamente.
* Intenta detectar cuando han ocurrido.
El S. O. no intenta evitar los bloqueos
* Acciona para recuperarse después del hecho.

* Determinar si de hecho existe o no un bloqueo.


23. DETECCIÓN DE

La detección del bloqueo


es el proceso de * Identificar cuáles son los procesos y recursos implicados
en el bloqueo.
BLOQUEOS

compensa la sobrecarga implícita en los algoritmos de


Los algoritmos de detección de bloqueos implican cierta
detección de bloqueos, el ahorro potencial de localizarlos
sobrecarga en tiempo de ejecución, por lo cual surge el
y romperlos
siguiente interrogante
Una gráfica dirigida indica las asignaciones y peticiones de recursos.
 Una gráfica dirigida indica las
asignaciones y peticiones de recursos.
Gráficas de Asignación de Recursos

 Los cuadros representan procesos.


23. DETECCIÓN DE

 Los círculos grandes indican clases de recursos


idénticos.
BLOQUEOS

 Los círculos pequeños, dibujados dentro de los grandes,


representan el número de recursos idénticos dentro de cada
clase
Si las peticiones de recursos de un proceso pueden ser
concedidas, se dice que una gráfica puede ser reducida
Peticiones
por ese proceso.
Reducción de Gráficas de Asignación de Recursos
23. DETECCIÓN DE

* Las flechas que van de los recursos al proceso (los


recursos asignados al proceso).
La reducción de una gráfica por un proceso determinado
BLOQUEOS

se muestra retirando * Las flechas que van del proceso al recurso (las
peticiones actuales del proceso).

Si una gráfica no puede ser reducida por todos sus


Si una gráfica puede ser reducida por
procesos, entonces los procesos “irreducibles” constituyen
todos sus procesos, entonces no hay
la serie de procesos interbloqueados de la gráfica
interbloqueo
Cualquier proceso que forme parte de un
Si la gráfica de recursos ciclo está bloqueado; si no existen ciclos, el
No se dispone de más de un
Características contuviera uno o más ciclos, sistema no está bloqueado
objeto de cada clase de recurso.
existiría un bloqueo.
Detección de Bloqueos de Forma “Un Recurso de Cada Tipo”

* El proceso A posee a R y desea a S.

* El proceso B no posee recurso alguno y desea a T.

* El proceso C no posee recurso alguno y desea a S.


Sistema con 7 (siete) procesos (“A” a * La posesión de los
recursos es la siguiente * El proceso D posee a U y desea a S y a T.
23. DETECCIÓN DE

“G”) y 6 (seis) recursos (“R” a “W”)


* El proceso E posee a T y desea a V.
BLOQUEOS

* El proceso F posee a W y desea a S.

* El proceso G posee a V y desea a U.

1. Se considera a “N” como nodo inicial.


Algoritmo aplicable a cada nodo “N” de la gráfica 2. Se inicializan.
3. Se añade el nodo activo al final de “L” y se verifica si el nodo aparece en “L” dos veces
4. Desde el nodo dado se verifica si existen arcos que salgan de dicho nodo y no estén
marcados
5. Se elige al azar un arco de salida no marcado y se le marca
6. Se ha llegado a un punto donde no se puede continuar: o Se regresa
al nodo anterior, es decir al que estaba activo antes del actual.
Se parte de “R” y se inicializa “L” como la lista vacía.

Se añade “R” a la lista y se mueve a la única posibilidad,


“A”.

Se añade “A” a la lista: L=[R,A].


Detección de Bloqueos de Forma “Un Recurso de Cada Tipo”

Se pasa de “A” a “S”, quedando L=[R,A,S].

“S” no tiene arcos que salgan de él, por lo que no se puede


continuar y se regresa a “A”.

Ya que “A” no tiene arcos de salida no marcados se


regresa a “R”, finalizando la inspección de “R”.

La aplicación del algoritmo Se inicia nuevamente el algoritmo partiendo de “A”,


23. DETECCIÓN DE

precedente al ejemplo anterior siendo “L” otra vez la lista vacía.


de gráfica dirigida es la siguiente
BLOQUEOS

De “B” se siguen los arcos de salida hasta llegar a “D”,


siendo L=[B,T,E,V,G,U,D].

Se efectúa una elección al azar.

Si se elige “S” llegamos a un punto sin salida y debemos


regresar a “D”.

* Se ha descubierto un ciclo y el
La segunda vez se elige “T” quedando L=[B,T,E,V,G,U,D,T]
algoritmo se detiene.

También podría gustarte