Estructura del sistema operativo

Slides:



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

Creación de procesos Asignar un único identificador al nuevo proceso. Asignar espacio para el proceso. Debe inicializarse el bloque de control del proceso.
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.
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.
Modelo de procesos de dos estados
Estructuras en Sistemas Operativos
SISTEMAS OPERATIVOS UNIDAD 1..
UTFSM - Sistemas Operativos
Introducción al Software
ConceptoDefiniciónCaracterísticas (palabra clave) Ejemplo/Aplicación Sistema operativo Un sistema operativo es un software, es decir, forma parte de la.
Introducción a los SSOO Sebastián Sánchez Prieto.
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Tema 10: Gestión de Memoria
Sebastián Sánchez Prieto
Hilos - Lightweight process - Procesos ligeros
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
Profesor: Rodrigo Sanhueza Figueroa
Programación de Sistemas
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.
Hebras Cecilia Hernández. Qué es un proceso? Consiste Espacio de direccionamiento Código a ejecutar Datos estáticos y dinámicos Pila o stack CPU: PC,
Concepto de proceso Sebastián Sánchez Prieto. Procesos 2  S2P, OGP & IGT Definición de proceso Un proceso es un programa en ejecución Componentes:
Introducción a los Sistemas Operativos
Introducción al tiempo real en sistemas empotrados
FUNDAMENTOS TECNOLÓGICOS DE INFORMACIÓN
El núcleo o kernel.
 Hardware de E/S  Interfaz de aplicación E/S (API)  Sub-sistema de E/S en el Kernel  Transformando solicitudes de E/S en operaciones de hardware 
Gestión de procesos Sistemas Operativos Edwin Morales
TEMA 10. SISTEMAS OPERATIVOS DISTRIBUIDOS
Estructuras en Sistemas Operativos DAISY KATERINE RODRÍGUEZ.
1 Descripción y control de procesos Capítulo 3. 2 Requerimientos de un SO relacionados con procesos Ejecutar concurrentemente múltiples procesos para.
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
El núcleo del sistema operativo
Estructura de los Sistemas Operativos
Clasificación y estructura. Alejandra Rivero Esteban
1/58 Introducción a los Sistemas Operativos SISTEMAS OPERATIVOS.
INTRODUCCION A SISTEMAS OPERATIVOS
ARQUITECTURA DE SISTEMAS OPERATIVOS.
Sistemas Operativos.
Estructura del Sistemas Operativos por su Estructura
SISTEMAS OPERATIVOS.
INTERRUPCIONES – ABRAZO MORTAL
María Camila Restrepo C. Mantener la Operatividad del sistema
Programación de Clientes Especialidad en Base de Datos.
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.
Sistemas Operativos SENA – CEET, Distrito Capital ADSI
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.
Evelin Ramos Cabrera 1° B
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 Tema 2: Fundamentos Sistemas Operativos. 22 Tema 2: Fundamentos Índice: 1.Conceptos básicos 2.Modelos de diseño 3.Ejemplos de organización interna.
Estructura del sistema operativo
Transcripción de la presentación:

Estructura del sistema operativo Sebastián Sánchez Prieto

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 ¿Cómo abordar un programa de hasta 50 millones de líneas de código?  1999-2003 S2P, OGP & IGT

Hardware y SSOO El sistema operativo debe ser seguro, robusto, estable y con un alto rendimiento 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 (hardware de protección) Dispositivos (hardware de protección o instrucciones privilegiadas) Procesador (Interrupciones)  1999-2003 S2P, OGP & IGT

Mecanismo de interrupciones El hardware salva el contador de programa Se carga un nuevo contador de programa Se salvan los registros Se cambia el valor del puntero de pila 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 arranca proceso elegido  1999-2003 S2P, OGP & IGT

Niveles de interrupción Mecanismo empleado para determinar en qué orden se atienden las interrupciones Puede ser proporcionado por el hardware o por el software Típicamente existen 32 niveles de nivel de prioridad de interrupción (NPI) En UNIX se les suele conocer como Interrupt Priority Level o IPL En W2K se les conoce como Interrupt Request Level o IRQL  1999-2003 S2P, OGP & IGT

Diagrama de manejo de interrupciones Interrupción ¿Nuevo NPI > actual NPI? No Guardar interrupción Sí Crear un nuevo contexto Guardar el CP y lo flags NPI = nuevo NPI Llamada al manejador Bloquear Manejador de interrupción Sí ¿Hay int. pendientes? Desbloquear No Retornar  1999-2003 S2P, OGP & IGT

Niveles de interrupción en W2K 31 Alta Fallo de alimentación IPI Reloj Perfiles Interrupciones HW Dispositivo n ... Dispositivo 1 DPC/Dispatch Interrupciones SW APC Nivel de ejecución ordinario Base  1999-2003 S2P, OGP & IGT

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: Mach, L4, Chorus  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

Comparativa Monitor monolítico Micronúcleo Todo el SO se ejecuta en modo supervisor Sólo el núcleo se ejecuta en modo supervisor Menos robusto Más robusto El SO es ininterrumpible El SO es interrumpible Menor rendimiento debido a la sobrecarga de comunicaciones Mayor rendimiento Empleado en sistemas pequeños Empleado en sistemas grandes Difícil de modificar en tiempo de ejecución Fácil de modificar en tiempo de ejecución Menos adaptable Más adaptable  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT

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 Carácter Bloque Planificador Drivers Control hardware Nivel kernel Nivel hardware HARDWARE  1999-2003 S2P, OGP & IGT

Estructura de Mach Manejadores de dispositivo Manejo de hilos Hardware Programas de usuario Servidor de procesos Servidor de memoria Servidor de archivos Servidor de gráficos Nivel de usuario Nivel kernel Manejo de hilos Manejadores de dispositivo Nivel kernel Nivel hardware Hardware  1999-2003 S2P, OGP & IGT

Estructura de Linux Modo usuario Alto nivel del núcleo Bajo nivel Interfaz de llamadas de alto nivel Modo usuario Validación de argumentos de las llamadas al sistema Alto nivel del núcleo Conmutador de sistemas de archivo Manejador de memoria Manejador de procesos Manejador de archivos Manejador de terminales Interfaz de sockets y streams Bibliotecas del kernel Manejador de callouts Sistemas de archivo Estructuras del núcleo (alto nivel) Pila de red Estructuras de datos compartidas entre el alto y el bajo nivel Manejadores de dispositivo Manejador de interrupciones Tabla de dispatch Manejador de procesos de bajo nivel Callout de bajo nivel Cambio de contexto Bajo nivel del núcleo Manejador de traps de llamadas al sistema Manejador de excepciones HARDWARE  1999-2003 S2P, OGP & IGT

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  1999-2003 S2P, OGP & IGT