Dispositivos de bloques y dispositivos de caracteres



Descargar 13.53 Kb.
Fecha de conversión30.03.2019
Tamaño13.53 Kb.
Vistas60
Descargas0

los dispositivos de E/S pueden clasificarse en dos categorías:

dispositivos de bloques y dispositivos de caracteres. Un dispositivo de bloques es uno que

almacena la información en bloques de tamaño fijo, cada uno con su propia dirección. El

tamaño de los bloques varía desde 512 bytes a 32768 bytes. La propiedad esencial de un

dispositivo de bloques es que es posible leer o escribir cada bloque independientemente de

todos los demás. Los discos son los dispositivos de bloques más comunes.

Un dispositivo

de caracteres proporciona o acepta un flujo de caracteres, sin tener en cuenta ninguna estructura

de bloque. No es un dispositivo direccionable y no cuenta con ninguna operación de

posicionamiento. Las impresoras, los interfaces de red, los ratones (para señalar en la pantalla),

las ratas (para experimentar en el laboratorio de psicología) y la mayoría de los otros

dispositivos que no son similares a los discos, pueden ser vistos como dispositivos de

caracteres.

Las unidades de E/S constan normalmente de un componente mecánico y un

componente electrónico. En muchos casos es posible separar las dos partes para tener un diseño

más modular y general. El componente electrónico se denomina controlador del dispositivo o

adaptador. En los ordenadores personales, este componente suele adoptar la forma de una

tarjeta de circuito impreso (tarjeta controladora) que puede insertarse en una ranura de

expansión. El componente mecánico es el dispositivo mismo.

La tarjeta controladora está provista usualmente de un conector en el cual puede

conectarse un cable que va al dispositivo. Muchas controladoras pueden manejar dos, cuatro o

incluso ocho dispositivos idénticos. Si la interfaz entre la controladora y el dispositivo es un

interfaz estándar, ya sea un estándar ANSI, IEEE o ISO oficial, o un estándar de facto, eso

permite que cualquier fabricante de hardware pueda manufacturar controladores o dispositivos

que se ajusten a esa interfaz. Por ejemplo, muchas compañías de hardware fabrican unidades de

disco compatibles con la interfaz IDE o SCSI.

Cada controlador tiene unos cuantos registros que le sirven para comunicarse con la

CPU. Escribiendo en estos registros, el sistema operativo puede ordenar al dispositivo que

suministre datos, acepte datos, se encienda o apague a sí mismo, o realice alguna otra acción.

Leyendo de estos registros, el sistema operativo puede averiguar en qué estado se encuentra el

dispositivo, si está preparado o no para aceptar un nuevo comando, etc.

Además de los registros de control, muchos dispositivos tienen un búfer de datos que el

sistema operativo puede leer y escribir. Por ejemplo, en muchos ordenadores la manera usual de

visualizar píxeles en la pantalla es mediante una RAM de vídeo (que es básicamente un búfer de

datos) en la que los programas o el sistema operativo pueden escribir.

Dicho lo anterior surge la pregunta de cómo se comunica la CPU con los registros de

control y los búferes de datos de los dispositivos. Existen dos alternativas. Con el primer

enfoque, a cada registro de control se le asigna un número de puerto de E/S, que es un número

entero de 8 o 16 bits. Utilizando una instrucción especial de E/S como

IN REG,PUERTO

la CPU puede leer el registro de control PUERTO y almacenar el resultado en un registro REG

de la CPU. Similarmente, con

OUT PUERTO,REG

la CPU necesita

direccionar los controladores de dispositivo para intercambiar datos con ellos. La CPU puede

solicitar datos del controlador de E/S byte a byte, pero haciéndolo así estaría desperdiciándose

mucho tiempo de CPU. Por ese motivo normalmente se utiliza un esquema diferente,

denominado acceso directo a memoria (DMA; Direct Memory Access). El sistema operativo

sólo puede utilizar DMA si el hardware dispone de un controlador de DMA, por lo que la

mayoría de los sistemas cuentan con él. A veces ese controlador está integrado en los

controladores de disco o en otros controladores, pero tal diseño significa tener un controlador de

DMA por cada dispositivo. Más comúnmente, se tiene un único controlador de DMA (por



ejemplo en la placa madre) para regular las transferencias con múltiples dispositivos, a menudo

de forma concurrente.


Compartir con tus amigos:


La base de datos está protegida por derechos de autor ©psicolog.org 2019
enviar mensaje

enter | registro
    Página principal


subir archivos