2. Es un programa que
actúa como
intermediario entre el
usuario y el hardware.
Es el único programa
del que no se puede
prescindir
Gestiona periféricos,
ficheros y usuarios
A) Nivel bajo o núcleo
del SO
B) Nivel alto, de
utilidades y
herramientas
3. • Gestión versátil de los
periféricos
• Procesamiento por
lotes
MS-DOS
• Presentación de la
información en forma
de ventanas
WINDOWS
• Pensados para operar
en forma multiusuario y
multitareas, con gran
cantidad de
herramientas y
utilidades
OTROS (UNIX,
Linux, OS/2, etc.)
4. Existen diversas clasificaciones desde distintos puntos de vista para los
sistemas operativos.
Clasificación
de los
Sistemas
Operativos
Por el número
de usuarios
Monousuarios
Multiusuarios
Por el número
de tareas
Monotareas
Multitareas
Por el número
de procesadores
Uniproceso
Multiproceso Simétricos
Asimétricos
Por el propósito
Específico
General
Por el tipo de
diseño
Monolíticos
Abiertos
Modulares
Por capas
Micronúcleo
Máquinas virtuales
Por el tipo de
desarrollo Cerrado
Ciclo Escolar 2013-2014B
5. Generación
0
40's
El usuario debía codificar
su programa en código
máquina, introducirlo
mediante tarjetas
perforadas y recibir la
salida de forma impresa.
No existían los
sistemas operativos.
El procesamiento se dice
que se realiza en serie por
que refleja el hecho de
que los usuarios tenían
que acceder en serie al
computador.
ENIACEDVAC
6. Ciclo Escolar 2013-2014B
El software principal del
S.O. se denominaba
monitor, y era el que
controlaba la secuencia de
sucesos.
Disponían de un conjunto
de rutinas de E/S.
Procesamiento por lotes:
agrupar los trabajos en
lotes, para que se
ejecutaran de forma
continua para no perder
tiempo en la transición
Permitían la recuperación
del sistema si un trabajo
acababa en error.
1ª. Generación.
50's
$END
$RUN
$LOAD
$FTN
$JOB
Programa
a compilar
7. Ejecutar Ejecutar
Esperar E/S
Tiempo
Monoprogramación
Solo un programa
en ejecución a la vez
Ejecutar
A
Ejecutar
A
Tiempo
Ejecutar
B
Ejecutar
B
Multiprogramación
Más de un programa
en ejecución a la vez
Esperar E/S
Esperar E/S Esperar E/S
Ciclo Escolar 2013-2014B
10. Sistema operativo
(Unix/Linux)
Estructura general de un sistema Unix/Linux
HardwareHardwareHardware
Núcleo
Interfaz de
Llamadas al Sistema
Shell
Comandos y
Librerías
Programas de
Aplicación
Componentes
del compilador
Compilador
Ciclo Escolar 2013-2014B
12. Subsistema de archivos
Controla los recursos del sistema de archivos, tiene funciones como:
Reservar espacio para los archivos.
Administrar el espacio libre
Controlar el acceso a los archivos
Permitir el intercambio de datos entre los archivos y el usuario.
Los procesos interaccionan con el subsistema de archivos a través de unas
llamadas específicas (open, read, write, status, etc).
Se comunica con los dispositivos de almacenamiento secundarios a través de
los controladores de dispositivos. Se consideran dos tipos según el acceso:
bloques y caracteres. Un mismo dispositivo puede ser manejado en modo
bloque o en modo carácter, depende del controlador que se este usando.
Subsistema de control de procesos
Es el responsable de la planificación de los procesos, su sincronización,
comunicación entre los mismos y del control de la memoria principal.
Ciclo Escolar 2013-2014B
Sistema operativo (Unix/Linux)
13. Casos de estudio (Unix/Linux) … (5)
El módulo de gestión de memoria
Se encarga de controlar qué procesos están cargados en la memoria principal en
cada instante.
Cuando no hay memoria suficiente se recurre al swaping (intercambio).
El planificador
Se encarga de gestionar el tiempo del CPU que tiene asignado cada proceso.
Entra en ejecución cada cuanto de tiempo y decide si el proceso actual tiene
derecho a seguir ejecutándose o a de conmutarse de contexto.
La comunicación entre procesos
Puede realizarse de forma asíncrona (señales) o síncrona (colas de mensajes,
semáforos).
El módulo de control de hardware
Es la parte del kernel encargada del manejo de las interrupciones y de la
comunicación con la máquina.
Ciclo Escolar 2013-2014B
14. Sistema operativo(Windows)
Arquitectura simplificada deWindows (NT)
Modo
Kernel
Modo
Usuario
Capa de Abstracción de Hardware (HAL)
Kernel
Controladores de
Dispositivos
Ejecutor
Sistema de
Ventanas
y Gráficos
Procesos de
Soporte del
Sistema
Subsistema de DLL’s
Procesos
de
Servicio
Aplicaciones
de
Usuario
Subsistemas
de
Ambiente
Ciclo Escolar 2013-2014B
16. (Windows)
Modo Usuario
Procesos de soporte del sistema
Entre otras cosas, tiene las tareas de: (1) Acceso al sistema
(nombre de usuario y contraseña) y (2) Administrar la sesión.
Procesos de servicio
Son servicios anfitriones de Windows, como: (1) El planificador de
tareas, (2) Servicios de Spooler (ej. Impresión).Y muchas otras
aplicaciones servidor deWindows.
Subsistema de DLL’s (Librerías de Enlace Dinámico)
Traduce de una función documentada a una llamada interna del
sistemaWindows apropiada (no documentada).
Subsistemas de Ambiente
Maneja los procesos del cliente en su mundo.
Windows API (originalmente de 32 bits, ahora de 64 bits)
POSIX (escasos servicios Unix)
Ciclo Escolar 2013-2014B
17. MS-DOS,Windows 95, 98 y ME (16 bits)
sobreWindows XP (32 bits).
Windows corre una Máquina DOSVirtual NT
(NTVDM.EXE), la cual es una imagen
Windows de 16 bits montada sobre el
Subsistema de DLL’s. En realidad CMD.EXE es
una aplicación de consola de Windows.
Para aplicaciones de 16 bits NTVDM carga
“WOW”, un traductor de API de 16 a 32 bits.
Modo
Kernel
Modo
Usuario
Capa de Abstracción de Hardware (HAL)
Kernel
Controladores de
Dispositivos
Administrador Sistema de
Ventanas
y Gráficos
Procesos de
Soporte del
Sistema
Subsistema de DLL’s
Procesos
de
Servicio
Aplicaciones
de
Usuario
Subsistemas
de
Ambiente
Aplicación MS-DOS
Aplicación de 16 bits
Emulación MS-DOS
Memoria Extendida de MS-DOS
Emulación de MS-DOS a 32 bits
Controladores de dispositivos
Virtuales (COM, LPT, Teclado)
Subsistema de DLL’s
0 K
640 K
1 MB
16 MB
16 bits
32 bits
7FFFFFFF
Ciclo Escolar 2013-2014B
Sistema operativo(Windows)
18. Casos de estudio (Windows) …(5)
hardware interfaces (buses, I/O devices, interrupts,
interval timers, DMA, memory cache control, etc., etc.)
System Service Dispatcher
Task Manager
Explorer
SvcHost.Exe
WinMgt.Exe
SpoolSv.Exe
Service
Control Mgr.
LSASS
Object
Mgr.
Windows
USER,
GDI
File
System
Cache
I/O Mgr
User
Application
Subsystem DLLs
System Processes Services Applications
Original copyright by Microsoft Corporation.
CRK.
User
Mode
Kernel
Mode
Device &
File Sys.
Drivers
WinLogon
Session Manager
Services.Exe POSIX
Windows DLLs
Plugand
PlayMgr.
Power
Mgr.
Security
Reference
Monitor
Virtual
Memory
Processes
&
Threads
Local
Procedure
Call
Graphics
Drivers
Kernel
Hardware Abstraction Layer (HAL)
(kernel mode callable interfaces)
Configura-
tionMgr
(registry)
OS/2
Windows
System
Threads
NTDLL.DLL
Ciclo Escolar 2013-2014B
19. Casos de estudio
(Linux/Windows)
Al final del día, en la práctica, ambos se pueden clasificar como
monolíticos:
Todo el núcleo del sistema operativo y sus servicios se ejecutan en un espacio de
direcciones compartido y en modo kernel.
El núcleo y los servicios forman parte de un módulo
En Linux: vmlinuz
En Windwos: ntoskrnl.exe
La interfaz gráfica de usuario se maneja diferente
EnWindows es un subsistema del kernel
En Linux se maneja en modo usuario
Device
Drivers
Process Management,
Memory Management,
I/O Management, etc.
Win32
Windowing
Application
System Services
User Mode
Kernel Mode
Hardware Dependent Code
Windows
Device
Drivers
Process Management,
Memory Management,
I/O Management, etc.
X-Windows
Application
System Services
User Mode
Kernel Mode
Hardware Dependent Code
Linux
Ciclo Escolar 2013-2014B
20. Casos de estudio (Linux/Windows)
También es modular por:
Opciones en tiempo de compilación
La mayoría de los componentes del kernel
pueden ser construidos para cargarse de
forma dinámica (DLKMs)
DLKMs
Se pueden construir de forma separada del
núcleo principal.
Se cargan en el kernel en tiempo de ejecución
y sobre demanda.
Los módulos del kernel pueden ser
actualizados.
Se pueden configurar kernels mínimos.
Portabilidad
La codificación se realiza principalmente en C
y es libre.
Arquitecturas:
Alpha, ARM, ARM26, CRIS, H8300, x86, IA-64, M68000, MIPS,
PA-RISC, PowerPC, S/390, SuperH, SPARC, VAX, v850, x86-64
Requiere memoria > 4MB
La gran mayoría del supercómputo usa Linux
(diferentes distribuciones)
También es modular, pero en menor
grado:
La inclusión de nuevos drivers
extienden la funcionalidad del kernel.
Algunas versiones cuentan con
herramientas para configurar kernels
más a la medida.
Los drivers son cargados
dinámicamente como módulos
Una cantidad significativa código se
ejecuta como drivers.
Se construyen de manera
independiente del kernel
Pueden ser cargados por demanda.
Portabilidad
La codificación se realiza
principalmente en C y no es libre
Arquitecturas
x86, MIPS, PowerPC, Alpha, IA-64, x86-64
Requiere memoria > 64MB
Solo un par de supercomputadoras
usan Windows (versión Server)
Linux Windows
Ciclo Escolar 2013-2014B
22. Arranque y activación
El arranque de una computadora actual tiene dos fases:
La fase de arranque del hardware
La fase de arranque del SO
S.O
(Wnd, Linux, Mac OS X)
HDD
RAM
Test del Hardware
S.O.
-Test del sistema de
archivos
-Creación de ED internas
- Completa carga del SO
residente
- Creación de proceso
login
CPU
ROM
Carga en memoria del
cargador del SO
Bajo el control del
Inicador ROM
Carga en
memoria
Componentes
del SO
Bajo el control del
Cargador del SO
Inicialización bajo el control
de la parte residente del SO
Arranque del Hardware Arranque del SO
Ciclo Escolar 2013-2014B