Estructura del sistema operativo

Slides:



Advertisements
Presentaciones similares
Introducción Principios del Software E/S Principios del Hardware E/S
Advertisements

Capítulo I Gestión de E/S 1.- Gestión de E/S 2.- Hardware de E/S 3.- Software de E/S.
Sistemas operativos Prof. Alberto Rivas.
Arquitectura de Sistema de E/S
UNIX COMP 240.
Sistema operativo Componentes de un sistema operativo
Estructura de un Sistema Operativo
Subsistemas De un Sistema Operativo Celeste Domínguez Romo
Núcleos de SO Contemporáneos
Profesor: Jennyfer Briceño SISTEMAS OPERATIVOS I.
Programación Visual de Sistemas
Sistemas en estratos. Descripción: se organiza en una jerarquía de estratos, estando construido cada uno de ellos sobre el otro que tiene menor jerarquía.
Introducción al software
Estructuras en Sistemas Operativos
Introducción al Software
Introducción a los SSOO Sebastián Sánchez Prieto.
Elemento Lógico (Software)
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Tema 10: Gestión de Memoria
Administración de memoria
Introducción a la Ingeniería en Sistemas
OMAR SANCHEZ ROBLES HECTOR PEREZ GARCIA. “Sistemas de cómputo compuesto por un gran número de CPU´s conectados mediante una red de alta velocidad”, Tanenbaum.
Software Sistemas Operativos
Estructura del sistema operativo
Administración de Memoria Memoria Virtual
Programación de Sistemas
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
SISTEMA OPERATIVO Un sistema operativo es un programa que actúa como intermediario entre el usuario y el hardware de un computador y su propósito es proporcionar.
Asignación de Espacio No Contiguo
SISTEMAS OPERATIVOS.
Programación I MC José Andrés Vázquez Flores
Introducción a los Sistemas Operativos
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
El núcleo o kernel.
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
Introducción a los Sistemas Operativos
Gestión de Memoria.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO
W w w. i n a c a p. c l FUNDAMENTOS DE SISTEMAS OPERATIVOS LUIS ALEJANDRO PACHECO TORO.
Sistemas Distribuidos
Estructura de los Sistemas Operativos
Clasificación y estructura. Alejandra Rivero Esteban
INTRODUCCION A SISTEMAS OPERATIVOS
Sistemas de Archivos Sistemas Operativos.  Se debe proporcionar un almacenamiento secundario que respalda a la memoria principal  El Sistema de archivos.
VIRTUALIZACIÓN.
Estructura del Sistemas Operativos por su Estructura
SISTEMAS OPERATIVOS.
Laboratorio Informática I Clase 2 Software Sistemas Operativos.
Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Programación I MC Beatriz Beltrán Martínez.
 El origen de Linux se encuentra en el sistema operativo MINIX. MINIX fue desarrollado por Andrew S. Tanenbaum con el objetivo de que sirviera de apoya.
INTERRUPCIONES – ABRAZO MORTAL
María Camila Restrepo C. Mantener la Operatividad del sistema
Programación de Clientes Especialidad en Base de Datos.
Sistemas Operativos I Introducción
Elementos y tipos de sistemas operativos
SISTEMAS OPERATIVOS Son un conjunto de programas destinados a permitir la comunicación entre el usuario y en computador y gestionar sus recursos.
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
ELEMENTO DE COMPETENCIA 3
TECNICO EN SISTEMAS NUMERO DE FICHA:
También es conocido como proceso ligero. Es una entidad básica de utilización de CPU y esta formado por un contador de programa, algunos registros y una.
Instituto de Ciencias y Humanidades Tabasco. El software Coordinar el uso del hardware Coordinar el uso del hardware Ejercer el control Programas de aplicación.
SOFTWARE DE COMPUTADORAS
El Sistema Operativo es el software básico necesario para el funcionamiento de cualquier ordenador Los Sistemas Operativos están en continua evolución.
CAPITULO III El Sistema Operativo (OS)
Gestión de Memoria – Parte 2
1/50 Ing. Gerardo Chávez Malpartida Administración de Memoria SISTEMAS OPERATIVOS.
Estructura del sistema operativo
Transcripción de la presentación:

Estructura del sistema operativo Rina Arauz

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

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

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).

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).

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.

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).

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.

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

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

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

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.

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

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

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

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)

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

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).

Niveles clásicos de un SO

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

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

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

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

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