Sistemas operativos – Sistema de Entrada-Salida (E/S)

Los ordenadores actuales están basados en la arquitectura de Von Neumann. Esta arquitectura consta de tres partes claramente diferenciadas: El procesador, la memoria y uno o varios dispositivos de E/S. Para conectar estas partes, se usan tres tipos básicos de buses:

  • Bus de datos: Puede ser de 8, 16, 32 o 64 bits, dependiendo del modelo de procesador.
  • Bus de direcciones: Se usa para poder conectar la CPU con la memoria y con dispositivos de E/S.
  • Bus de control: Se usa para enviar señales que determinan cómo se comunica la CPU con el resto del sistema.

Con esta arquitectura, debe haber un sistema que se encargue de comunicar y gestionar los dispositivos de E/S con el procesador, reduciendo la carga de trabajo en la CPU tanto como sea posible. Esto es el módulo de E/S.

El módulo de E/S, también llamado controlador, es un circuito o chip integrado en la placa base, separado físicamente del procesador y la memoria, pero unido a estos mediante buses de la propia placa. Este módulo suele ser conocido como southbridge o northbridge, dependiendo de su ubicación en la placa.

SouthNorth

Este chip transfiere y controla el flujo de información entre la memoria principal, el procesador y los periféricos.  Los periféricos se conectan a la placa base mediante una serie de módulos físicos. Los módulos E/S pueden controlar múltiples dispositivos. El sistema operativo se comunica con el dispositivo a través del módulo E/S. Cada dispositivo físico está hecho por un fabricante diferente y puede tener unos registros, chips y manera de trabajar propias. Se necesita entonces un conjunto de instrucciones que conformen un protocolo de comunicación entre el computador y el dispositivo físico. Para ello, el fabricante crea un software llamado driver. Los drivers se implementan mediante módulos añadidos al núcleo del sistema operativo, son objetos software con una interfaz bien definida para especificar al sistema operativo y al módulo de E/S cómo debe controlar y comunicarse con ese dispositivo.

El sistema E/S tiene las siguientes funciones:

  • Envío de comandos a los dispositivos, recibir sus interrupciones y ocuparse de sus errores.
  • Ofrecer una interfaz entre los dispositivos y el resto del sistema, incluyendo la CPU, simple y fácil de usar.
  • Optimizar la E/S del sistema. Los dispositivos de E/S son muy lentos en comparación con el procesador. Si no se delega trabajo en los propios dispositivos y en el módulo E/S, estaríamos haciendo un mal uso del procesador, ya que quedaría innecesariamente a la espera de datos en una operación E/S.
  • Permitir la conexión de nuevos dispositivos de E/S.
  • Almacenamiento temporal de datos en un buffer. La velocidad de acceso de la memoria es mucho más alta que la que proporcionan los dispositivos periféricos, el módulo de E/S dispone de una memoria local bastante rápida que usa para comunicarse con la memoria y la CPU. De esta forma, puede recibir rápidamente un bloque de datos, liberar el bus, y luego escribirlo en el dispositivo a la velocidad que éste estipule.
  • Detección de errores. Debe ocuparse de detectar y comunicar a la CPU los errores mecánicos y eléctricos del dispositivo.
Anuncios
Publicado en Sistemas operativos, Varios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s

Sobre mi…

Soy Técnico en Explotación de Sistemas Informáticos y Técnico Superior en Administración de Sistemas Informáticos en Red. Actualmente estudiando el Grado de Ingeniería Informática en la Universidad de Córdoba (España).

Enamorado de la ciencia en general y de la computación en particular.

Música: Heavy, Rock, Celta, New Age, Electrónica, etc...
Libros:Isaac Asimov, Richard Dawkins, Stephen Hawking, Carl Sagan...

Estoy interesado en la programación de videojuegos. Políticamente de izquierdas, escéptico y ateo. En definitiva, mala gente.

Sígueme en Twitter

Introduce tu dirección de correo electrónico para seguir este Blog y recibir las notificaciones de las nuevas publicaciones en tu buzón de correo electrónico.

Únete a otros 24 seguidores

Usa Linux Mint
The Bit Developer Box
A %d blogueros les gusta esto: