Donaciones: https://www.paypal.me/micaelfelizarias
Principios de Hardware de E/S
Distintas personas analizan de varias maneras el hardware de Entrada y Salida. Los ingenieros eléctricos lo hacen en términos de chips, cables, fuentes de poder, etc. Los programadores se fijan en la interfaz que se presenta al software (los comandos que aceptan el hardware, las funciones que realiza y los errores que puede informar. En este trabajo nos interesaremos por la programación de los dispositivos de entrada y salida no por su diseño, construcción o mantenimiento, así nuestro interés estará restringido a la forma de programar el hardware y no su funcionamiento interno. Sin embargo es frecuente que la programación de muchos dispositivos de entrada y salida este íntimamente ligada con su operación interna.
El enfoque que se considerará tiene que ver con la interfaz que desde el hardware se presenta al software:
Comandos que acepta el hardware.
Funciones que realiza.
Errores que puede informar.
Dispositivos/Perifericos
El hardware abarca todas las piezas físicas de un ordenador.Es todo lo que puedo ver y tocar. Ej:* Monitor* Teclado.* CPU* Mouse* Impresora, etc.En otras palabras son los denominados DISPOSITIVOS.Hardware es el substrato físico en el cual existe el software.
2. Distintas personas analizan de varias maneras el hardware de
Entrada y Salida. Los ingenieros eléctricos lo hacen en términos
de chips, cables, fuentes de poder, etc. Los programadores se
fijan en la interfaz que se presenta al software (los comandos que
aceptan el hardware, las funciones que realiza y los errores que
puede informar. En este trabajo nos interesaremos por la
programación de los dispositivos de entrada y salida no por su
diseño, construcción o mantenimiento, así nuestro interés estará
restringido a la forma de programar el hardware y no su
funcionamiento interno. Sin embargo es frecuente que la
programación de muchos dispositivos de entrada y salida este
íntimamente ligada con su operación interna.
El enfoque que se considerará tiene que ver con la interfaz que
desde el hardware se presenta al software:
Comandos que acepta el hardware.
Funciones que realiza.
Errores que puede informar.
3. El hardware abarca todas las piezas físicas de un ordenador.
Es todo lo que puedo ver y tocar. Ej:
* Monitor
* Teclado.
* CPU
* Mouse
* Impresora, etc.
En otras palabras son los denominados DISPOSITIVOS.
Hardware es el substrato físico en el cual existe el software.
4. Son herramientas que permiten la comunicación entre el
HOMBRE Y EL ORDENADOR.
CLASIFICACIÓN DE DISPOSITIVOS
*DISPOSITIVOS DE ENTRADA:
Son aquellos que sirven para introducir datos a la computadora
para su proceso. Los datos se leen de los dispositivos de
entrada y se almacenan en la memoria central o interna. Los
dispositivos de entrada convierten la información en señales
eléctricas que se almacenan en la memoria central.
Los dispositivos de entrada son:
Mouse o ratón
Escáner
Lectores de códigos de barras
Pantallas sensibles al tacto
Lápiz óptico
Joysticks
Micrófono
Cámara digital
Lectores de bandas magnéticas
5. *DISPOSITIVOS DE SALIDA:
Son los que permiten representar los resultados (salida)
del proceso de datos. El dispositivo de salida típico es la
pantalla o monitor. Otros dispositivos de salida son:
impresoras (imprimen resultados en papel), trazadores
gráficos (plotters), bocinas, entre otros..
6. *DISPOSITIVOS DE ENTRADA Y SALIDA
Son aquellos que tienen doble función de ingresar y
sacar la información del computador; entre ellos
tenemos:
* La Lectora de CD.
* La Disquetera.
* Los Puertos USB
* Modem.
* Fax.
* lectores de DVD.
7. Los controladores de dispositivo son programas añadidos al
núcleo del sistema operativo, concebidos inicialmente para
gestionar periféricos y dispositivos especiales. Los
controladores de dispositivo pueden ser de dos tipos:
orientados a caracteres (tales como los dispositivos NUL,
AUX, PRN, etc. del sistema) o bien orientados a bloques,
constituyendo las conocidas unidades de disco.
Cada controlador tiene algunos registros que utiliza para
establecer comunicación con la unidad central de
procesamiento.
Y como en la figura de abajo muestra las direcciones de E/S
y los vectores de interrupción asignados a algunos de los
controladores de la IBM PC.
8. El proceso que realiza es el siguiente:
1~El controlador lee del bloque de la unidad de serie
2~Calcula la suma de comprobación para verificar que no hay
errores de lectura
3~El controlador produce una interrupción
( para que el sistema operativo pueda leer el bloque de discos del
buffer del controlador; ejecute un ciclo, que es lo que le lleva leer
un byte o palabra del registro de dispositivos del controlador y
almacenarlo en memoria )
4~Ya libre de errores ; después el controlador copia el primer byte
o palabra en la memoria central en la dirección especifica por la
dirección de memoria del DMA
5~Incrementa la dir. del DMA y determina el conteo DMA por el
numero de bytes que acaba de transferir; todo se repite asta que
el conteo DMA se vuelve cero.
Y todo esto es para liberar al CPU de este trabajo de bajo nivel y
evitar que en caso de que el bus este ocupado no tenga que
esperar.
9. La idea básica es organizar el software como una serie de capas
donde:
Las capas inferiores se encarguen de ocultar las
peculiaridades del hardware a las capas superiores. Las capas
superiores deben presentar una interfaz agradable, limpia y
regular a los usuarios.
Objetivos del Software de Entrada/Salida.
Un concepto clave es la independencia del dispositivo:
Debe ser posible escribir programas que se puedan utilizar con
archivos en distintos dispositivos, sin tener que modificar los
programas para cada tipo de dispositivo.
El problema debe ser resuelto por el S. O.
El objetivo de lograr nombres uniformes está muy relacionado
con el de independencia del dispositivo.
Todos los archivos y dispositivos adquieren direcciones de la
misma forma, es decir mediante el nombre de su ruta de
acceso.
10. Generalmente el software de entrada/salida se
estructura en capas :
Manejadores de interrupciones.
Directivas de dispositivos.
Software de S. O. independiente de los dispositivos.
Software a nivel usuario.
11. Manejadores de interrupciones.
Las interrupciones deben ocultarse de tal forma que una
solo una pequeña parte del sistema sepa de ellas. La mejor
manera de esconderlas es que cada proceso que inicie una
operación de E/S se bloqueé hasta que termine dicha operación
y ocurra una interrupción. Al ocurrir una interrupción el
procedimiento de interrupción realiza lo debido para eliminar el
bloqueo del proceso que inicio la E/S.
Manejadores de Dispositivos.
Todo el código que depende de los dispositivos aparece en
los manejadores de dispositivos.
Cada controlador posee uno o más registros de dispositivos:
Se utilizan para darle los comandos.
Los manejadores de dispositivos proveen estos comandos y
verifican su ejecución adecuada.
12. Software de Entrada/Salida Independiente del Dispositivo.
Funciones generalmente realizadas por el software
independiente del dispositivo:
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 dispositivos de uso
exclusivo.
Informe de errores.
13. Software de Entrada/Salida en el Espacio del Usuario.
La mayoría del software de entrada/salida está dentro del
Sistema. Operativo.
Una pequeña parte consta de bibliotecas ligadas entre sí
con los programas del usuario.
La biblioteca estándar de entrada/salida contiene varios
procedimientos relacionados con entrada/salida y todos
se ejecutan como parte de los programas del usuario.
Otra categoría importante de software de entrada/salida a
nivel usuario es el sistema de spooling.