Las ventajas y desventajas de la memoria de entrada y salida aislada

Los dispositivos de entrada y salida (E/S) son las partes de un sistema informático, como el teclado o el módem, que envían o reciben información hacia y desde los procesadores de la computadora. En los sistemas de E/S mapeados en memoria, los dispositivos de E/S utilizan parte de la memoria de la computadora como dirección para transmitir mensajes. En computadoras con sistemas de memoria aislada, la E/S y la memoria tienen direcciones diferentes.

E/S

Los sistemas informáticos pueden asignar E/S a una dirección en los bancos de memoria porque el proceso de enviar mensajes a los dispositivos de E/S es similar al intercambio de datos con la memoria de la computadora. El mismo bus, la vía electrónica para transmitir información hacia y desde los procesadores, sirve para acceder tanto a la memoria como a los dispositivos de entrada y salida. Una desventaja de la memoria aislada es que los sistemas de asignación de memoria son más simples para el bus, ya que utiliza el mismo conjunto de direcciones para operaciones de memoria y E/S.

Mapa de memoria

En un sistema mapeado en memoria, se vuelve difícil para la computadora distinguir las operaciones de E/S de otras opciones de software que acceden a la memoria; Los sistemas de memoria aislada no tienen este problema. Las operaciones de E/S en computadoras mapeadas en memoria solo usan parte de la dirección de memoria completa, para que su ubicación sea más distintiva. Los sistemas de memoria aislada son más complejos porque, a diferencia de las computadoras asignadas a la memoria, no pueden usar los mismos sistemas de decodificación y control para la memoria y los dispositivos de E/S. En las computadoras mapeadas en la memoria, cualquier instrucción que extraiga datos de la memoria también opera en los dispositivos de entrada y salida.

Programación

En una computadora con memoria aislada, la programación es más limpia:la E/S tiene su propia dirección separada, por lo que la computadora puede usar las direcciones para identificar si es memoria o E/S con la que debe trabajar un programa. Sin embargo, con el mapeo de memoria, cualquier instrucción que haga referencia a la memoria también se puede usar como una instrucción para el sistema de E/S. Con memoria aislada, los programas necesitan instrucciones adicionales de "Entrada" y "Salida" para extraer o enviar datos a la memoria o direcciones de E/S.

Espacio de memoria

Cuando una computadora usa un sistema de E/S mapeado en la memoria, parte del espacio que la computadora usa para la memoria se dedica a las direcciones de entrada y salida, dejando menos para el almacenamiento real de la memoria. Con el mapeo de memoria, las direcciones de E/S deben escribirse de modo que sean distintas de los bancos de memoria que las rodean; la asignación de direcciones de E/S es más sencilla en los sistemas de memoria aislada. Debido a que los dispositivos de E/S ocupan menos espacio que la memoria en una dirección determinada, es posible que parte del espacio de memoria en la dirección de E/S no se utilice y se desperdicie.