stringtranslate.com

E/S vinculada

En informática , la limitación de E/S se refiere a una condición en la que el tiempo que lleva completar un cálculo está determinado principalmente por el período transcurrido esperando que se completen las operaciones de entrada/salida , que se puede yuxtaponer con la limitación de la CPU . Esta circunstancia se da cuando el ritmo al que se solicitan los datos es menor que el ritmo al que se consumen o, en otras palabras, se dedica más tiempo a solicitar datos que a procesarlos. [1]

La E/S vinculada como un problema inherente a la informática

El estado límite de E/S ha sido identificado como un problema en la informática casi desde sus inicios. La arquitectura Von Neumann , que es empleada por muchos dispositivos informáticos, implica múltiples soluciones posibles, como implementar una unidad de procesamiento central lógicamente separada que, además de almacenar las instrucciones del programa, también recupera datos reales, generalmente de la memoria principal , y hace uso de estos más. datos accesibles para trabajar. Cuando finaliza el proceso, vuelve a escribir los resultados en el almacenamiento original (normalmente la memoria principal ).

Dado que los datos deben moverse entre la CPU y la memoria a lo largo de un bus que tiene una velocidad de transferencia de datos limitada , existe una condición que se conoce como cuello de botella de Von Neumann . En pocas palabras, esto significa que el ancho de banda de datos entre la CPU y la memoria tiende a limitar la velocidad general de cálculo. En cuanto a la tecnología real que compone una computadora, el cuello de botella de Von Neumann predice que es más fácil hacer que la CPU realice cálculos más rápido que suministrarle datos al ritmo necesario para que esto sea posible.

En la historia reciente, el cuello de botella de Von Neumann se ha vuelto más evidente. La filosofía de diseño de las computadoras modernas se basa en una CPU y una memoria principal físicamente separadas. Es posible hacer que la CPU funcione a una alta velocidad de transferencia de datos porque los datos se mueven entre ubicaciones dentro de ella a través de distancias pequeñas. Sin embargo, la separación física entre la CPU y la memoria principal requiere un bus de datos para mover datos a través de distancias comparativamente largas, de centímetros o más. El problema de hacer que esta parte del sistema funcione lo suficientemente rápido como para seguir el ritmo de la CPU ha sido un gran desafío para los diseñadores. [2]

E/S vinculada como un problema práctico

El estado limitado de E/S se considera indeseable porque significa que la CPU debe detener su funcionamiento mientras espera que se carguen o descarguen datos de la memoria principal o del almacenamiento secundario . Dado que una velocidad de cálculo más rápida es el objetivo principal de los nuevos diseños de computadoras y que los componentes como la CPU y la memoria son costosos, existe un fuerte imperativo para evitar estados vinculados a E/S y eliminarlos puede generar una mejora más económica en el rendimiento que actualizar la CPU. o memoria.

A medida que la CPU se vuelve más rápida, los procesos tienden a estar más vinculados a las E/S

O en términos más simples:

A medida que la CPU se vuelve más rápida, los procesos tienden a no aumentar su velocidad en proporción a la velocidad de la CPU porque se limitan más a las E/S.

Esto significa que los procesos vinculados a E/S son más lentos que los procesos no vinculados a E/S, no más rápidos. Esto se debe a aumentos en la velocidad de procesamiento de datos en el núcleo, mientras que la velocidad a la que los datos se transfieren desde el almacenamiento al procesador no aumenta con él. A medida que aumenta la velocidad del reloj de la CPU, lo que permite ejecutar más instrucciones en un período de tiempo determinado, el factor limitante de la ejecución efectiva es la velocidad a la que las instrucciones pueden entregarse al procesador desde el almacenamiento y enviarse desde el procesador a su destino. En resumen, los programas naturalmente pasan a estar cada vez más vinculados a E/S. [3]

Comparación con CPU vinculada

Supongamos que tenemos un proceso vinculado a la CPU y muchos procesos vinculados a E/S. A medida que los procesos fluyen alrededor del sistema, puede resultar el siguiente escenario. El proceso vinculado a la CPU obtendrá y retendrá la CPU. Durante este tiempo, todos los demás procesos finalizarán su E/S y pasarán a la cola de listos, esperando la CPU. Mientras los procesos esperan en la cola de listos, los dispositivos de E/S están inactivos. Finalmente, el proceso vinculado a la CPU finaliza su ráfaga de CPU y pasa a un dispositivo de E/S. Todos los procesos vinculados a E/S, que tienen ráfagas cortas de CPU, se ejecutan rápidamente y regresan a las colas de E/S. En este punto, la CPU permanece inactiva. El proceso vinculado a la CPU regresará a la cola lista y se le asignará la CPU. Nuevamente, todos los procesos de E/S terminan esperando en la cola de listos hasta que finaliza el proceso vinculado a la CPU. Hay un efecto de convoy ya que todos los demás procesos esperan a que el proceso grande salga de la CPU. Este efecto da como resultado una menor utilización de CPU y dispositivos de la que sería posible si se permitiera que los procesos más cortos funcionaran primero. [4]

Ver también

Referencias

  1. ^ Identificación de sistemas vinculados a E/S de disco
  2. ^ Blog de Erik Engbrecht: ¿Qué significa realmente el límite de E/S?
  3. ^ hombre dormido. "por qué-los-procesos-vinculados-a-io-son-más-rápidos" . Consultado el 9 de agosto de 2014 .
  4. ^ Silberschatz, Abraham; Galvin, Peter B.; Gagne, Greg (2013). Conceptos del sistema operativo . vol. 9. John Wiley e hijos. ISBN 978-1-118-06333-0.