administrador de dispositivos

32
Sergio Fuenlabrada Velázquez Sergio Fuenlabrada Velázquez Edna Martha Miranda Chávez Sistemas Operativos VI. Administración de dispositivos

Upload: guillermo-bricker

Post on 25-Dec-2015

5 views

Category:

Documents


0 download

DESCRIPTION

Sistemas Operativos, Administrador de Dispositivos

TRANSCRIPT

Page 1: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez

Sergio Fuenlabrada Velázquez

Edna Martha Miranda Chávez

Sistemas Operativos

VI. Administración de

dispositivos

Page 2: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Page 3: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

DISPOSITIVOS DE E/S

Dispositivos de bloque :

Son los que almacenan la

información en bloques de

tamaño fijo, cada uno con su

propia dirección. Los tamaños

de bloques van desde 128 bytes

hasta 1024 bytes.

La propiedad esencial es la

posibilidad de leer o escribir en

un bloque de forma

independiente.

scanner

Impresora

Page 4: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

DISPOSITIVOS DE E/S

Dispositivos de carácter :

Es el que envía o recibe un

flujo de caracteres sin

sujetarse a una estructura

de bloques.

No utiliza direcciones ni

tiene una operación de

búsqueda.

Page 5: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

PROBLEMAS DE ENTRADA/SALIDA

1.- Operación síncrona :

El procesador trabaja en

forma síncrona con

dispositivos de entrada/salida,

con el fin de obtener

instrucciones para su

ejecución y acceder a los

datos.

Envía y recibe bloques de

caracteres de los dispositivos.

Ejemplo: La impresión. Puertos paralelos

Page 6: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

PROBLEMAS DE ENTRADA/SALIDA

2.- Operación asíncrona :

El procesador trabaja en

forma asíncrona con

dispositivos de entrada/salida,

con el fin de obtener una

instrucción a ejecutar y

acceder a los datos.

Envía o recibe un carácter del

dispositivo.

Ejemplo: Teclado, mouse.

Page 7: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Universal Serial Bus - Bus Universal en Serie o

Conductor Universal en Serie

Permite conectar dispositivos sin necesidad

de reiniciar el equipo (Plug and Play).

Reconoce las características del dispositivo

A este puerto se pueden conectar varios

dispositivos (carácter o paralelos).

Puertos USB: •Baja velocidad 1.0 - 1,5 Mbp, USB 1.0

•Velocidad completa 1.1 - 12 Mbps, USB 1.1

•Alta velocidad (2.0) , 125Mbps, USB 2.0

•Super alta velocidad (3.0), hasta 4.8 Gbps, USB

3.0 o USB3

Page 8: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Velocidad de los dispositivos :

Los dispositivos de E/S

orientados a caracteres son más

lentos que los dispositivos

orientados a bloque.

Los primeros operan a

velocidad muy por debajo del

ancho de banda que opera el

procesador y la memoria

principal.

PROBLEMAS DE ENTRADA/SALIDA

Page 9: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Los controladores de entrada/salida están

encargados de los dispositivos serie, paralelo y

DMA (dispositivos que son usados al mismo

tiempo por varios usuarios).

SERIE PARALELO DMA

Page 10: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Aplicación

Núcleo del sistema operativo

Administrador de Dispositivos

Controlador general de dispositivos

Driver

Manejador, Controlador del dispositivo

Dispositivo

Llamada al S.O.

BCD

BCU

PES

PES

Page 11: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

DIAGRAMA DE BLOQUE DE UN

CONTROLADOR DE E/S

Interfaz del bus

Controlador

genérico del

dispositivo

Interfaz del

dispositivo

Administrador de dispositivos

Administrador genérico de

dispositivos

Administrador del dispositivos

Interfaz del dispositivo

Organización y Arquitectura de computadores, William Stallings, Prentice Hall

Page 12: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

PRINCIPIOS DEL SOFTWARE DE E/S

• Organizan el software como

una serie de capas.

• Las capas superiores ocultan

las peculiaridades del

hardware (capas inferiores).

• Las capas superiores se

preocupan de presentar un

interfaz agradable, limpia y

estándar a los usuarios.

Modelo OSI

Capas para la comunicación de datos

Page 13: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

OBJETIVOS DEL SOFTWARE.

Drive - Independencia del dispositivo -

• El software del dispositivo de E/S opera de forma independiente una vez que el Sistema Operativo le sede el control.

• Manejo de errores.

• El sistema operativo debe administrar los dispositivos compartidos y de uso exclusivo de forma que evite problemas.

Monitores

Impresoras

scanner

Page 14: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Dispositivos compartidos :

Son usados por varios

proceso al mismo tiempo.

Dispositivos exclusivos :

Se deben dedicar a un solo

proceso hasta concluir con

él.

OBJETIVOS DEL SOFTWARE

Disco Duro

Impresora

Page 15: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

SOFTWARE DE CONTROL DE E/S (DRIVER)

Driver : Software formado por rutinas y tablas que

forman parte del sistema operativo. Ejecutan y

controlan todas las operaciones de E/S sobre cualquier

periférico conectado a la computadora. Se encuentra

alojado permanentemente en memoria y requieren

rapidez de ejecución.

Proceso de usuario

Sentencias Primitivas de E/S

DRIVER

Periférico

Núcleo

del S.O.

Page 16: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

FUNCIONES DE UN DRIVER.

• Definir características del periférico.

• Inicializar los registros.

• Habilitar y deshabilitar el dispositivo.

• Procesar todas las operaciones de E/S.

• Cancelar toda operación de E/S cuando sea necesario.

• Procesar todas las interrupciones.

• Tratar los errores.

Page 17: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

MANEJADORES DE DISPOSITIVOS.

• Proveen comandos y

verifican su adecuada

ejecución.

• Acepta las solicitudes

abstractas que le hace el

software

independientemente del

dispositivo y verifica su

ejecución.

Page 18: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

SOFTWARE DE E/S INDEPENDIENTE DEL

DISPOSITIVO

Funciones :

• Interfaz uniforme para los manejadores de dispositivos.

• Nombres de los dispositivos.

• Protección del dispositivo.

• Proporcionar un tamaño de bloque independiente del dispositivo.

• Uso de buffers.

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

• Asignación y liberación de los dispositivo de uso exclusivo.

• Informe de errores.

La meta principal es llevar a cabo las funciones de

E/S comunes a todos los dispositivos.

Page 19: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

CONTROLADORES DE DISPOSITIVOS

Las unidades de entrada/salida constan de 2 componentes : • La parte electrónica : Controlador de dispositivo o adaptador.

• La parte mecánica : El propio dispositivo.

CPU

Unidad

de

memoria

Unidad de

entrada

/salida

Dispositivos

Periférico

Bus de datos

Líneas de control, líneas de direccionamiento, líneas de datos

Page 20: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

RUTINAS DEL DRIVER (MANEJADOR)

• Inicialización.

• Atención de peticiones de

E/S.

• Gestión de interrupciones.

• Cancelación de operaciones

de E/S.

Driver

Administrador general

de dispositivos

Dispositivo

Electrónico

Mecánico

Page 21: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

ESTRUCTURAS DE DATOS DE UN DRIVER.

• Bloque de control del

driver (BCD).

• Bloque de control de la

unidad (BCU).

• Paquete de petición de

E/S (PES).

Driver

Administrador general

de dispositivos

Dispositivo

Electrónico

Mecánico

BCD

BCU

PES

PES

Page 22: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

MANEJADORES DE INTERRUPCIONES.

• Mecanismo asistido por

password para sincronizar el

procesador con los sucesos.

• Las interrupciones deben

ocultarse en lo más profundo

del sistema operativo. La

forma más óptima es que

cada proceso que inicia una

operación de E/S se bloquee

hasta que termine la E/S y

ocurra la interrupción.

Semáforo

1, 0

Cola de

interrupciones

Prioridad

Page 23: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

CONMUTACIÓN DE CONTEXTO

• El contexto del programa interrumpido debe preservarse mientras se ejecuta la RSI (rutina de servicio de interrupción) y se restaura cuando se le devuelve el control.

• El proceso de cambiar el contexto desde un programa en ejecución a un gestor de interrupciones se denomina conmutación de contexto, la cual requiere de una combinación de hardware y software.

Page 24: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

RUTINA DE SERVICIO DE INTERRUPCIÓN.

• La RSI es un trozo de código que se ejecuta en respuesta a un suceso externo.

• Sólo se ejecuta cuando se produce un suceso de E/S.

• Consta de instrucciones para transferir datos, verificar y corregir errores, actualizar punteros, o envió y recepción de mensajes a otra computadora.

• La petición que invoca a una RSI es una señal eléctrica.

• La RSI a diferencia de un procedimiento se invoca por hardware.

Page 25: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

FLUJO DE CONTROL DEL PROGRAMA CON INTERRUPCIONES

Organización y Arquitectura de computadores, William Stallings, Prentice Hall

Page 26: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

CICLO DE LA INSTRUCCIÓN CON INTERRUPCIONES

Organización y Arquitectura de computadores, William Stallings, Prentice Hall

Page 27: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

CONTROL DE MÚLTIPLES DISPOSITIVOS.

Cuando hay varias

peticiones de interrupción

pendientes simultáneamente,

se ejecuta la interrupción

que se encuentra en la cola

de interrupciones que tiene

la máxima prioridad, esta

obtiene primero el servicio.

Page 28: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

VECTORIZACIÓN DE INTERRUPCIONES.

• Proporciona enlace directo

entre cada fuente de

interrupción y su rutina de

servicio asociado.

• Cada interrupción llama a

ejecutar a un programa de

interrupción asociado

• Minimiza la latencia de

interrupción y proporciona el

máximo ancho de banda de

E/S.

Page 29: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

NIVELES DE CONTROL DE INTERRUPCIÓN.

1.- Máxima prioridad -

Nivel global del

sistema. Interrupción

de hardware

2.- Control selectivo de

niveles de interrupción.

Interrupción del

sistema operativo

3.- Nivel individual de

dispositivo de control

de interrupciones.

Interrupción de

aplicación

Page 30: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

Excepción

• Cuando sucede una situación de error que es detectada por el sistema operativo mientras ejecutaba una instrucción o comando, y requiere atención por parte del sistema operativo, se genera una llamada a un excepción.

• Las rutinas de excepción su función principal datos en lo posible, es cuidar la consistencia e integridad de los, restaurar el sistema y en algunos casos cancelar el proceso que se estaba ejecutando.

Page 31: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

API

API Application Programming Interface o interfaz de programación de

aplicaciones.

Son bibliotecas de enlace o vinculo dinámico (DLL Dinamic Link

Library), del sistema operativo, que contiene archivos con código

ejecutable, objetos, funciones o programas que son llamados,

invocados o importados por un software de aplicación para realizar un

servicio o función en especifico.

Facilitan la programación de las aplicaciones ya que el programador se

evita la programación de estos módulos complejos.

– Dibujar una ventana o icono

– Limpiar una ventana

– Servicios de interfase, etc.

Al elegir usar una API se debe contemplar que su uso esta relacionado con

una perdida de flexibilidad

Page 32: Administrador de Dispositivos

Sergio Fuenlabrada Velázquez, Edna Martha Miranda Chávez

API

• Identifique el nombre de la función que se desea llamar

• Identifique la ubicación de la DLL que la contiene

• Identifique los argumentos de entrada y salida, su longitud y tipo de dato.

• Agregue el llamado a la función en su programa y relacione dicha llamada al API con un evento.