La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Estructura del sistema operativo

Presentaciones similares


Presentación del tema: "Estructura del sistema operativo"— Transcripción de la presentación:

1 Estructura del sistema operativo
Rina Arauz

2 Introducción En el tema anterior se dio una visión desde el punto de vista funcional del sistema operativo ¿Qué hace? En este tema lo analizaremos desde el punto de vista estructural ¿Cómo lo hace? Objetivo de la estructuración: Buscar una organización interna que facilite la comprensión, incremente la portabilidad, extensión y favorezca el mantenimiento

3

4 El sistema operativo debe ser seguro, estable y con un alto rendimiento.
En un sistema multiprogramado los recursos se comparten y la cpu se conmuta entre los procesos en estado de listo. Un sistema operativo bien diseñado debe evitar que una operación incorrecta por parte de un proceso afecte al resto de procesos en el sistema. El diseñador de sistemas operativos solicita al arquitecto de computadores: Modo dual de ejecución de instrucciones Instrucciones normales e instrucciones privilegiadas Mecanismos para pasar a modo protegido Interrupciones y llamadas al sistema Mecanismos de protección de: Memoria E/S (Dispositivos) Procesador

5 Modo dual de ejecución de las instrucciones:
Para asegurar una operación adecuada, se debe proteger: al sistema operativo, a todos los otros programas y a los datos; de cualquier programa que esté funcionando de forma incorrecta. La protección es necesaria para cualquier recurso compartido. El enfoque que asumen muchos SO es proporcionar un soporte HW que permita diferenciar entre cada modo de ejecución. Se requieren 2 modos distintos de operación: modo usuario y modo supervisor. Se adiciona al hardware un bit de modo para indicar el modo actual: Monitor (0) o modo usuario (1).

6 Modo dual de ejecución de las instrucciones:
Modo supervisor –> Ejecución realizada por parte del sistema operativo También llamado modo sistema. Ejecuta instrucciones privilegiadas(cuya ejecución afecta directamente los recursos de la máquina y están asociada a la protección E/S, la memoria el procesador). Modo de usuario –-> Ejecución de parte del usuario Se ejecutan instrucciones normales (no privilegiadas, aquellas que su ejecución no afecta los recursos de la máquina y pueden ser empleadas tanto por los procesos del sistema operativo como por los procesos de usuario).

7

8

9 Llamadas al sistema operativo
Son las llamadas que ejecutan los programas de aplicación para pedir algún servicio al SO. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el S.O. Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto de llamadas es la interfaz del SO frente a las aplicaciones.

10 Mecanismos para pasar a modo protegido
Solo el sistema accede directamente a los recursos del sistema ¿Cómo pasar a modo protegido para acceder a los recursos necesarios (dispositivos de E/S, etc)? A través de las INTERRUPCIONES y SVC, un programa de usuario conmuta del modo usuario al modo sistema (modo protegido). Las aplicaciones que se ejecutan en modo usuario necesitan pasar a modo supervisor cuando pretenden utilizar alguno de los recursos protegidos y para ello realizan las llamadas a las funciones del kernel (svc). El codigo de las SVC es codigo del sistema y por lo tanto tambien se ejecuta en modo sistema(modo protegido).

11 Mecanismos de protección de:
E/S: Para evitar el libre acceso a los registros de control de los dispositivos ->Todas las instrucciones de E/S son privilegiadas. Memoria: Con el fin de proteger la memoria asignada a cada proceso, se agregan dos registros que determinan el rango de las direcciones validas que un programa puede acceder: Registro Base –> Contiene la dirección legal física más pequeña. Registro Limite –> Contiene el tamaño. CPU: Para evitar que un proceso monopolice el procesador ->Temporizador – Interrumpe al computador después de un periodo especifico para garantizar que el SO mantenga el control.

12 Enfoques de diseño A grandes rasgos cabe considerar dos enfoques de diseño: Enfoque monitor monolítico Enfoque micronúcleo En el primero, toda la funcionalidad del SO se incluye se incluye en el núcleo Ejemplo: MS-DOS, Windows XP, Linux En el segundo, parte de esa funcionalidad es llevada a cabo por procesos de sistema que se sirven de la funcionalidad mínima proporcionada por un micronúcleo Ejemplo: Windows 2000

13 Proceso de la interrupción
Monitor monolítico Proceso de usuario Proceso de usuario Proceso de usuario Procesos de usuario SVC Despertar Intérprete de la SVC Desbloquea r Monitor Petición de E/S Proceso de la interrupción Comienzo de la E/S Interrupción Dispositivos

14 Estructura de UNIX Programas de usuario Bibliotecas Trap
Nivel de usuario Nivel kernel Interfaz de llamadas al sistema Subsistema de Subsistema Subsistema control de procesos de archivos de E/S Manejo de memoria Buffer caché IPC Planificador Carácter Bloque Drivers Control hardware Nivel kernel Nivel hardware HARDWARE

15 Enfoque micronúcleo Este método estructura al SO removiendo todos los componentes no esenciales del kernel, e implementándolos como programas del sistema y de nivel de usuario. La función principal del micronucleo es proporcionar un modulo de comunicaciones entre el programa cliente y los diversos servicios que también están ejecutándose en el espacio de usuario, mediante el paso de mensajes. Ventaja: Si un servicio falla el resto del SO permanece intacto.

16 Micronúcleo Devolver los datos Inicio de la E/S Dispositivo
Proceso de usuario Proceso de usuario Proceso de usuario Proceso de usuario Devolver los datos Inicio de la E/S Proceso gestionador de dispositivo Lectura de disco Dispositivo Interrupción Despertar Determinación del proceso que solicitó la E/S Proceso de la interrupción Micronúcleo

17 Manejadores de dispositivo
Estructura de W2K Procesos de sistema Servicios Aplicaciones Subsistemas POSIX Controlador de servicios Replicador Alertador OS2 WinLogon RPC Aplicaciones de usuario Manejador de sesiones DLLs Registrador de eventos Win32 DLLs DLLs Hilos del sistema NTDLL.DLL API del núcleo Manejador de E/S Sistema de archivos Manejador de cache PnP Control de alimentación Seguridad Memoria virtual Procesos e hilos Win32 GDI NtosKrnl.exe Manejador de objetos Manejadores de dispositivo Kernel HAL HARDWARE

18 Comparativa Monitor monolítico Micronúcleo
Todo el SO se ejecuta en modo supervisor Sólo el núcleo se ejecuta en modo supervisor El SO es ininterrumpible El SO es interrumpible Mayor rendimiento Menor rendimiento debido a la sobrecarga de comunicaciones Difícil de modificar en tiempo de ejecución Fácil de modificar en tiempo de ejecución Menos adaptable Más adaptable

19 Investigar… http://es.wikipedia.org/
Tipos de sistemas (Micronúcleos, monolíticos , híbridos, Exonúcleos). Núcleos de sistemas operativos (Nanonúcleo, híbrido, monolítico, micronúcleo)

20 Diseño por capas El diseño por capas lleva asociada una jerarquización que permite disminuir la complejidad observable de un sistema Concepto de capa: conjunto de funciones claramente definidas hacia un objetivo común Entidad N Capa N Servicios Entidad N-1 Capa N-1 Entidad N-1

21 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 Pueden existir realizaciones alternativas llevadas a cabo por diferentes grupos de trabajo Algunas capas pueden ser transparentes si sus servicios no son necesarios Cada capa se codifica y prueba de modo independiente. Esto es muy importante en el desarrollo del software Desventaja: Poca eficiencia (por ejemplo cuando un proceso de usuario hace una llamada, toma mas tiempo, porque debe pasar por cada una de las capas).

22 Niveles clásicos de un SO

23 Niveles clásicos de un SO
Nivel inferior de gestión del procesador Objetivo: Compartir la CPU entre procesos Funciones: Sincronización entre procesos Conmutación de la CPU Gestión de interrupciones

24 Niveles clásicos de un SO
Gestión de memoria Objetivo: Repartir la memoria entre procesos Funciones: Asignación y liberación de memoria Control violación de acceso

25 Niveles clásicos de un SO
Nivel superior de gestión de procesos Objetivo: Gestión de procesos Funciones: Creación y destrucción de procesos Intercambio de mensajes entre procesos Detención y arranque de procesos

26 Niveles clásicos de un SO
Nivel de gestión de dispositivos Objetivo: Realizar la gestión de las E/S en función de los dispositivos existentes Funciones: Creación de procesos de E/S Asignación y liberación de dispositivos de E/S Planificación de la E/S

27 Niveles clásicos de un SO
Nivel de gestión de la información Objetivo: Gestionar el espacio de nombres lógicos y la protección de la información. Funciones: Creación y destrucción de archivos y directorios Apertura y cierre de archivos Lectura y escritura de archivos Protección de acceso


Descargar ppt "Estructura del sistema operativo"

Presentaciones similares


Anuncios Google