E/S programada, por interrupciones y DMA; usos y ventajas de las máquinas virtuales
Resumen
El documento explica las tres técnicas de sincronización de la CPU con los periféricos (E/S programada, E/S por interrupciones y acceso directo a memoria, DMA) y su impacto en el rendimiento. Después define qué es una máquina virtual, enumera sus principales usos (consolidación de servidores, recuperación ante desastres, pruebas de aplicaciones, simulación de redes, etc.) y resume sus ventajas e inconvenientes.
Puntos clave
- E/S programada (PIO): la CPU inicia y controla toda la transferencia, lo que penaliza el rendimiento.
- E/S por interrupciones: es el periférico quien notifica a la CPU su disponibilidad, evitando que la CPU consulte continuamente los dispositivos.
- DMA: el controlador de dispositivo escribe directamente en memoria sin intervención de la CPU tras iniciar el proceso; se usa con grandes volúmenes de datos.
- Una máquina virtual es un software que emula un ordenador y puede ejecutar programas como si fuese un ordenador real.
- Ventajas de las máquinas virtuales: seguridad por aislamiento, fácil migración, ahorro de costes y mejor aprovechamiento de recursos.
- Desventajas de las máquinas virtuales: requieren muchos recursos del host y pueden ralentizar el sistema respecto al hardware físico.
Técnicas de Entrada y Salida (E/S) en Sistemas Informáticos
La forma en que la CPU se sincroniza con los dispositivos periféricos puede ser:
1. E/S Programada (PIO)
- La CPU tiene todo el protagonismo, ya que inicia y lleva a cabo la transferencia de datos.
- Esta técnica repercute negativamente en la velocidad de procesamiento del ordenador, porque la CPU debe interrumpir sus tareas para gestionar el proceso de entrada/salida.
2. E/S por Interrupciones
- La CPU ejecuta la transferencia, pero el inicio es solicitado por el periférico, que indica así su disponibilidad.
- La CPU no consulta a los dispositivos, sino que son estos los que la notifican cuando es necesario.
3. Acceso Directo a Memoria (DMA - Direct Memory Access)
- Esta técnica acelera enormemente el proceso de E/S y libera a la CPU de carga de trabajo.
- Los datos que se desean escribir en el dispositivo o que son leídos de este provienen o se dirigen directamente a la memoria del ordenador.
- Con esta técnica, se permite que el Controlador de Dispositivo pueda escribir directamente en memoria.
- En este caso, la CPU inicia el proceso, pero este continúa sin requerir la intervención de la CPU, lo que acelera significativamente el proceso de entrada/salida y libera a la CPU.
- Se usa habitualmente en dispositivos que trabajan con grandes volúmenes de información.
Máquinas Virtuales: Concepto, Usos, Ventajas y Desventajas
¿Qué es una Máquina Virtual?
Una máquina virtual es un software que emula un ordenador y puede ejecutar programas como si fuese un ordenador real.
Usos y Aplicaciones de las Máquinas Virtuales
- Consolidación de servidores: Permite que servicios que normalmente requerirían ejecutarse en ordenadores distintos para evitar interferencias, puedan coexistir en una única máquina física mediante la virtualización.
- Recuperación ante desastres: Las máquinas virtuales se pueden respaldar muy fácilmente, y su estado puede almacenarse, lo que permite una rápida recuperación de la información en caso de desastre.
- Pruebas de aplicaciones: En muchas ocasiones, se necesita un entorno limpio para probar una aplicación. El uso de una máquina virtual permite instalar un sistema operativo desde cero, probar la aplicación y luego eliminar la máquina virtual sin afectar el sistema principal.
- Entornos completos sin instalación ni configuración: La posibilidad de descargar máquinas virtuales preconfiguradas desde Internet permite ahorrar tiempo en instalaciones y configuraciones.
- Aplicaciones portátiles: Con el uso de máquinas virtuales, se pueden tener entornos de PC completos listos para usar en dispositivos USB, lo que resulta muy útil para disponer de un entorno privado y utilizarlo en cualquier PC.
- Ejecutar sistemas operativos para "probarlos": Permite probar sistemas operativos (especialmente versiones beta) sin necesidad de instalarlos directamente en nuestro ordenador y sin riesgo de desconfigurar el sistema operativo primario.
- Simulación de entornos de red: Se pueden utilizar varias máquinas virtuales interconectadas para simular escenarios complejos en entornos de red, facilitando pruebas y desarrollo.
Ventajas de las Máquinas Virtuales
- Seguridad: Aislamiento de entornos, lo que mejora la seguridad.
- Fácil migración: Las máquinas virtuales son portables y fáciles de migrar entre diferentes hosts físicos.
- Ahorro de costes: Reduce la necesidad de hardware físico, lo que implica un ahorro en costes de adquisición y mantenimiento.
- Aprovechamiento de recursos: Optimiza el uso del hardware físico al permitir que múltiples sistemas operativos compartan los mismos recursos.
Desventajas de las Máquinas Virtuales
- Necesidad de gran cantidad de recursos: Requieren una cantidad considerable de recursos del host (espacio en disco, RAM, procesador, etc.).
- Ralentización del sistema: Puede haber una ligera penalización en el rendimiento en comparación con la ejecución directa en hardware físico.
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué diferencia hay entre E/S programada y E/S por interrupciones?
En la E/S programada la CPU consulta y controla la transferencia, mientras que en la E/S por interrupciones es el periférico quien avisa a la CPU cuando está disponible. Así la CPU no tiene que consultar continuamente a los dispositivos.
¿Para qué se usa la técnica DMA?
DMA se usa para acelerar la E/S y liberar a la CPU, permitiendo que el controlador de dispositivo lea o escriba directamente en memoria. Se emplea habitualmente en dispositivos que manejan grandes volúmenes de información.
¿Qué es una máquina virtual?
Es un software que emula un ordenador y permite ejecutar programas como si fuese un ordenador real. Sirve para aislar entornos y probar sistemas sin afectar al sistema principal.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.