Fundamentos de Arquitectura y Mecanismos Internos del Sistema Operativo
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 5,38 KB
Requisitos Fundamentales del Sistema Operativo
El sistema operativo debe ser seguro, robusto, estable y con un alto rendimiento.
Modo Dual de Ejecución y Protección
El diseñador de sistemas operativos solicita al arquitecto de computadores el Modo Dual de Ejecución de Instrucciones, que incluye:
- Instrucciones normales.
- Instrucciones privilegiadas.
Este modo dual proporciona los medios para proteger al sistema operativo de usuarios errantes y a los usuarios errantes entre sí.
Mecanismos para pasar a modo protegido
- Interrupciones.
- Llamadas al sistema.
Mecanismos de Protección
El sistema operativo requiere mecanismos de protección para:
- Memoria: Mediante hardware de protección.
- Dispositivos: Mediante hardware de protección o instrucciones privilegiadas.
- Procesador: Mediante interrupciones.
Interrupciones y Gestión de Prioridades
Interrupciones
La interrupción es una señal recibida por la CPU, la cual indica que debe detener la ejecución normal y pasar a ejecutar código específico para tratar alguna situación.
Objetivo y Método
El objetivo principal de las interrupciones es lograr el máximo rendimiento. El método incluye:
- Solapamiento de la E/S con el uso de la CPU: Interrupciones y DMA (Acceso Directo a Memoria).
- Multiprogramación.
Proceso de una Interrupción
- Se salvan los registros, incluyendo el PC (Program Counter).
- Se conmuta la pila y se carga el PC con el vector de interrupción, pasando a modo supervisor.
- Se conmuta el proceso que estaba bloqueado al estado de listo.
- El planificador elige el siguiente proceso.
- Se cede el control a un programa ensamblador que a su vez cede el control al proceso elegido, volviendo a modo usuario.
El reloj del sistema genera interrupciones periódicas.
Niveles de Prioridad de Interrupción (NPI)
- A cada interrupción se le asocia un NPI (Nivel de Prioridad de Interrupción).
- En UNIX se les suele conocer como Interrupt Priority Level o IPL.
- En Windows NT se les conoce como Interrupt Request Level o IRQL.
Estructuras del Sistema Operativo
Enfoque Monitor Monolítico
Toda la funcionalidad del SO se incluye en el núcleo. Todo el SO se ejecuta en modo supervisor.
Características
- Ejemplo: MS-DOS, Windows NT, Linux.
- Menos robusto.
- El SO es ininterrumpible.
- Mayor rendimiento.
- Menos adaptable.
Enfoque Micronúcleo
Parte de la funcionalidad es llevada a cabo por procesos de sistema que se sirven de la funcionalidad mínima proporcionada por un micronúcleo. Solo el micronúcleo se ejecuta en modo supervisor.
Características
- Ejemplo: Mach, L4, QNX.
- Más robusto.
- El SO es interrumpible.
- Menor rendimiento debido a la sobrecarga de comunicaciones.
- Más adaptable.
Enfoque por Capas
La principal ventaja es la modularidad. Las capas se seleccionan de tal manera que cada una utilice funciones y servicios exclusivamente de capas de niveles inferiores. Este enfoque simplifica la depuración y la verificación del sistema.
Ventajas del Empleo de Capas
- Las estructuras internas y algoritmos de una capa no son visibles a las demás.
- El sistema puede evolucionar fácilmente. Lo único que hay que mantener son las interfaces.
- Cada capa se codifica y prueba de modo independiente.
Conceptos de Memoria y Ejecución
Trampas (Traps)
Una trampa es una instrucción máquina que emplea el usuario para ejecutar una operación privilegiada.
Caché
Los accesos a la memoria pueden tomar muchos ciclos para completarse. El remedio consiste en agregar una memoria rápida entre la CPU y la memoria principal, un buffer de memoria, denominado caché, empleado para compensar un diferencial de velocidades.
Nota: No se pueden eliminar otros dispositivos de almacenamiento como discos, ya que la memoria caché tiene un tamaño limitado.
Administración de Procesos y Principios de Diseño
5 Actividades del SO Relacionadas con la Administración de Procesos
- Crear y eliminar procesos de usuario y procesos del sistema.
- Suspender y continuar procesos.
- Proporcionar mecanismos para la sincronización de procesos.
- Proporcionar mecanismos para la comunicación de procesos.
- Proporcionar mecanismos para el manejo de bloqueos mutuos.
Separación entre Mecanismo y Política
Los mecanismos determinan cómo hacer algo; las políticas determinan qué se hará.
La separación entre política y mecanismo es importante por cuestiones de flexibilidad, ya que las políticas probablemente cambiarían de un lugar a otro con el paso del tiempo. En el peor de los casos, cada cambio en la política requeriría un cambio en el mecanismo particular.