Documente Academic
Documente Profesional
Documente Cultură
SISTEMAS OPERATIVOS:
INTRODUCCIÓN A
LOS SISTEMAS
OPERATIVOS
Sistemas Opera,vo s
2
Objetivos
• Comprender de forma global la estructura y
funcionamiento del computador.
• Recordar los elementos del computador que tienen
impacto en el sistema operativo.
• Comprender qué es un Sistema Operativo.
• Conocer los principales servicios y componentes del
Sistema Operativo.
• Comprender el proceso de arranque del sistema
operativo.
3
Porque estudiar SO
• Monoprocesador
• Multiprocesador: MIMD: M. Distribuida vs. (UMA y NUMA)
Arquitectura del
8 computador
• Modelo de programación
• Juego de instrucciones (Usuario y Núcleo –ó K ó S--)
31 16 15 87 0
D0
D1
D2 Registro de estado
D3
D4 Registros de datos T 15
D5
Modo Traza 14
D6 13
D7 Sistema/Usuario S 12 Octeto de
11 Sistema
A0 Máscara 10
A1
A2 de I2 98
A3 Interrupciones
A4 I1 7
Registros de dirección I0 6
A5
A6 5
A7 Puntero de pila de usuario Extensión 4 Octeto de
A7' Puntero de pila de sistema Negativo 3
Cero 2
Usuario
PC Contador de programa Desbordamiento X 1
Acarreo N 0
Z
0
V
C
Mapa de 0
Mapa de Juego de Instrucciones
memoria 16 E/S
2 -1
32
2 -1
9
Niveles de ejecución
D0 D0 Registro de estado
D1 D1
D2 D2 T 15
D3 D3 14
Sistema
D4 D4 S 13
Octeto
D5 D5 12
D6 D6 11
de
D7 D7 10
A0 A0 8
A1 7 A1 I2 7
A2 6 A2 I1 6
A3 A3
Usuario
Usuario
A4 5 A4 I0 5
Octeto
Octeto
A5 X 4 A5 4
A6 N 3 A6 3
A7
de
de
A7 Z 2 2
A7' 1
V 1
C 0 PC X 0
PC N
Z
0 V
0 C
0
31
2 -1
2 16 -1
2 32-1
Mapa de
Mapa de Juego de Mapa de E/S Juego de
memoria Instrucciones memoria Instrucciones
Memoria principal
(RAM + ROM)
Memoria
Procesador Dirección física Secundaria
Dirección
virtual Fa llo página
(Intercambio)
MMU
12
La MMU realiza la traducción de Pagina
Virtual a Marco de Pagina
n bits Dirección en el nivel k+1
Traductor
Traductor
m-1 p p-1 0
Palabra en Dirección Y
Página Direcc. págiona la Página real
División de la dirección Traducción de la dirección
Entrada/Salida (E/S): periféricos
13
Procesador
CONTROLADOR
Bus
Módulo de E/S
¿Qué es un sistema
operativo?
• Objetivos:
– Ejecutar programas.
– Hacer un uso eficiente de los recursos.
– Proporcionar visión de máquina virtual extendida.
15
Funciones del
sistema operativo
• Gestor de recursos (UCP, memoria, ...)
– Asignación y recuperación de recursos
– Protección de los usuarios
– Contabilidad/monitorización
– Soporte de usuario
• Máquina extendida (servicios)
– Ejecución de programas (procesos)
– Órdenes de E/S
– Operaciones sobre archivos
– Detección y tratamiento de errores
• Interfaz de usuario
– Shell
16
Niveles del
sistema operativo
• El SO está formado conceptualmente
por 3 capas principales:
Usuarios
– Núcleo o Kernel
– Servicios o llamadas al sistema
Programas de Intérprete de
– Intérprete de mandatos o shell Usuario mandat
os o
Shell
Capa de Servicios
(llamadas al sistema)
Núcleo o Kernel
Hardware
17
Estructura
conceptual
• Modos de ejecución:
– Modo usuario: Ejecución de procesos de usuario.
– Modo supervisor o núcleo: Ejecución del núcleo del SO.
• Los procesos y el SO utilizan espacios de memoria
separados.
• Cuando un proceso necesita un servicio lo solicita al
SO mediante una llamada al sistema.
– El sistema operativo entra en ejecución para realizar la
función solicitada.
Componentes del Sistema Operativo
Usuarios
Núcleo o Kernel
Hardware
Componentes de un SO
Creación, Asignación Manejo de
Planificación Liberación dispositivos Manejo de
Identificar Mecanismos
Destrucción Control periféricos archivos y
usuarios y Comunicación y
directorios
capacidades Sincronización
Interactúa directamente con el Hardware Funciones
básicas de gestión del procesador, de la memoria
y de las interrupciones
Gestor de procesos
19
– Creacion y destrucción.
– Suspensión y reanudación.
– Proporcionar mecanismos de sincronización y
comunicación.
– Asignación y mantenimiento de los recursos del proceso.
Gestor de memoria
20
Monolíticos
Sistemas
Operativos Por capas
Estructurados
Cliente/
servidor
26 Sistemas Operativos
Monolíticos
• No hay una estructura clara y bien definida.
• Todo el código del SO está enlazado como un único ejecutable
(un solo espacio de direcciones) que se ejecuta en modo
“núcleo”.
• El código presenta cierta organización pero internamente no
existe ocultación de información entre los distintos módulos,
pudiéndose llamar unos a otros sin restricciones
• Aunque es más eficiente en su funcionamiento, su desarrollo y
mantenimiento es muy complejo.
• Ejemplos:
– Todos los SO hasta los 80, incluido UNIX
– MS-DOS y variantes actuales de UNIX: Solaris, Linux, AIX, HP-UX,...
Sistemas Operativos
27 estructurados
por capas
• El sistema se organiza como un conjunto de capas superpuestas,
cada una con una interfaz clara y bien definida
• Cada capa se apoya en los servicios de la inmediatamente inferior
para realizar sus funciones
• Las ventajas son la modularidad y la ocultación de la información,
que facilita mucho el desarrollo y la depuración de cada capa por
separado.
• Esta estructura, sin embargo, no resulta tan eficiente porque
una determinada operación en la capa superior implica realizar
múltiples llamadas desde el nivel superior hasta el inferior.
• Dificultad a la hora de distribuir las distintas funciones del SO entre
las distintas capas
Sistemas Operativos
28
estructurados
por capas
Capa 0: Hardware
Sistemas Operativos estructurados:
29 cliente/servidor
• Implementar la mayor parte de los servicios del SO como procesos
de usuario, dejando solo una pequeña parte corriendo en modo
núcleo denominada micronúcleo o microkernel
• Hay dudas sobre qué funciones debe implementar realmente el
microkernel pero al menos: interrupciones, gestión básica de
procesos y memoria y servicios básicos de comunicación
• Ventajas
– Muy flexible. Cada servidor puede desarrollarse y depurarse
más fácilmente al tratarse de programas pequeños y
especializados.
– Es fácilmente extensible a un modelo distribuido
• Desventajas
– Sobrecarga en la ejecución de los servicios
30 Sistemas Operativos
estructurados:
cliente/servidor
Procesos Procesos
clientes Servidores
Micronúcleo
Hardware
Usuario
Kernel
Windows NT.
33
Arquitectura
Replicator Win32
Session Mgr Alerter POSIX
WinLogon Event Log OS/2
Ntdll.dll
Usuario
Kernel
System Service Dispatcher
Sistema Monitor Procesos/ Servicios Memoria Win32
E/S Seguridad Threads de objetos Mgmt GDI
Sistemas Gestión de Objectos
ficheros Exec.
Drivers Kernel RTL
Hardware Abstraction Layer (HAL)