Volver al temario
Tema 02 · 44 páginas

El sistema operativo: una máquina virtual

Tema completo Modo estudio
GUÍA DE ESTUDIO · Páginas 1920 Ver PDF

3. Apoyo del hardware para implementar el sistema operativo

Material de estudio basado en la edición de 2014. Borrador pendiente de revisión editorial independiente.

Apoyo del hardware para el SO

Si un usuario insistiera en trabajar directamente con la maquina fisica ignorando el SO, podria provocar errores irrecuperables o acceder a recursos que no le pertenecen. El SO necesita apoyo del hardware para garantizar la fiabilidad:

  1. Instrucciones privilegiadas: un subconjunto de instrucciones del lenguaje maquina que pueden comprometer la estabilidad (detener el procesador, inhibir interrupciones, leer/escribir registros de control de dispositivos E/S). Los programas de usuario no pueden usarlas directamente.

  2. Modos de ejecucion: el procesador ofrece modo privilegiado (puede ejecutar cualquier instruccion) y modo no privilegiado/usuario (solo instrucciones no privilegiadas; si intenta una privilegiada, genera excepcion).

  3. Modo de ejecucion por contexto: el codigo de usuario se ejecuta en modo usuario; el codigo del SO en modo privilegiado. El procesador controla en cada momento en que modo se encuentra.

  4. Vector de interrupciones (VI): determina que rutinas atienden interrupciones/excepciones/llamadas al sistema. La MMU (Memory Management Unit) impide que los procesos de usuario lo modifiquen, limitando los rangos de direcciones accedibles.

  5. Dispositivo temporizador: genera interrupciones periodicamente (100-1000 veces/segundo) para garantizar que el SO tome el control de la maquina periodicamente.

Caso MS-DOS

MS-DOS tenia graves problemas de estabilidad porque el procesador 8088/8086 no tenia varios modos de ejecucion, instrucciones privilegiadas ni MMU. Cualquier programa tenia control total de la maquina.

Esquema de repaso

  • Instrucciones privilegiadas: reservadas al SO para proteger el sistema.
  • Modos de ejecucion: privilegiado (SO) vs usuario (aplicaciones).
  • MMU: protege memoria y el vector de interrupciones.
  • Temporizador: garantiza que el SO recupere el control periodicamente.

Debes poder explicar

  • Las cinco necesidades de hardware para un SO multiusuario.
  • Por que MS-DOS era inestable.
  • Que papel juega la MMU en la proteccion de memoria.
Consultar el contenido original