2. Prestaciones de un Sistema Operativo
Los sistemas operativos ofrecen sus servicios a
los usuarios de dos formas diferentes:
1. Las llamadas al sistema operativo desde un
proceso y,
2. La ejecución de programas del propio sis-
tema.
2
3. Prestaciones de un Sistema Operativo
Llamadas al sistema operativo
Constituye la interfaz entre un programa en
ejecución y el sistema operativo y se pueden
agrupar de la siguiente forma:
Gestión de procesos.
Gestión operaciones entrada/salida.
Gestión del sistema de archivos.
Protección.
3
4. Prestaciones de un Sistema Operativo
Llamadas al sistema operativo
Las llamadas al sistema son similares a las llamadas a un
subprograma, desde el punto de vista del programa que
llama.
Las llamadas al sistema funcionan como interrupciones
del software, se administran igual que las interrupciones
del hardware, pero las provoca el procesador.
Algunas instrucciones de máquina que provocan in-
terrupción software son:
INT (Intel)
TRAP (Motorola) – Está en todos los S.Operativos
4
SYSCALL (MIPS)
5. Prestaciones de un Sistema Operativo
Llamadas al sistema operativo
Llamada
Proceso A Proceso B Proceso C
al S.O.
Interrupción
Fin de la llamada
Tabla de servicios
Nº Nro. Servicio Dirección
Servicios
Servicio del S.O.
Ejecuta rutina
del S.O.
Despacho
5
6. Prestaciones de un Sistema Operativo
Programas del sistema
Existe un conjunto de programas del sistema o de utilidad cuya función es
resolver problemas comunes en una forma cómoda y sencilla.
Intérprete de comandos
Programas
Usuario Soporte a de
leguajes de aplicación
programación
Información
Editores de estado
Núcleo
Cargadores y
Manipulación editores de
de archivos enlace
6
7. Prestaciones de un Sistema Operativo
Programas del sistema
Editores
Facilitan edición de archivos.
Manipulación de archivos
Crean, copian borran, ordenan, etc, uno o varios archivos.
Cargadores y Editores de enlace
Programas para construcción, depuración y carga de programas ejecutables.
Información
Informan estado del sistema, memoria discos, etc.
Soporte a los lenguajes de programación
Programas para gestión Base de Datos, coumnicaciones, etc.
Intérprete de comandos
Es el más importante ya que es el que crea el entorno de trabajo a los 7
8. Prestaciones de un Sistema Operativo
Servicios del sistema
Para el programador del sistema todos los recursos físicos
deben ser convertidos en entidades lógicas para ofrecérselas a los
usuarios. El sistema operativo es un programa activado por even-
tos, si no hay programas en ejecución ni operaciones de entra-
da/salida pendientes, el sistema estará inactivo.
Normalmente cada evento producirá una interrupción de la
ejecución del sistema operativo y se pueden agrupar en:
Llamadas al sistema operativo
Interrupciones de los dispositivos de Entrada/Salida.
Gestión de excepciones
8
9. Prestaciones de un Sistema Operativo
Servicios del sistema
Llamadas al sistema operativo
Terminación normal
Terminación anormal
Peticiones de estado
Peticiones de recursos
Peticiones de Entrada/Salida
9
10. Prestaciones de un Sistema Operativo
Servicios del sistema
Interrupciones de los dispositivos de Entra-
da/Salida
El proceso queda en espera hasta que se ter-
mine la operación entrada/salida.
El procesador seguirá realizando otras opera-
ciones.
10
11. Prestaciones de un Sistema Operativo
Servicios del sistema
Gestión de Interrupciones Hw.
Una interrupción es un suceso externo al proce-
sador que cambia el flujo normal de ejecución del
procesador.
Es un evento asíncrono.
Los dispositivos de E/S y el procesador operan
concurrentemente.
11
12. Prestaciones de un Sistema Operativo
Servicios del sistema
Gestión de excepciones
Es una interrupción de software, es un evento síncrono.
Cuando un programa en ejecución comete un error, se producirá
una interrupción.
La diferencia básica con las interrupciones es que las excep-
ciones se tratan en modo usuario.
El tratamiento de estos errores se conoce como manejo de
excepciones.
Ejemplo: Fallo de página y división por cero.
12
13. Protecciones
Las aplicaciones de usuarios no están libres de errores por lo que el
sistema operativo debe incluir funciones de protección con el objeto de evitar
problemas entre procesos y entre estos y el sistema operativo y son:
Protección de la Entrada/Salida
Los dispositivos cuentan con drivers que entre otras cosas protegen accesos
incorrectos, devolviendo al núcleo del sistema operativo el control.
Protección de la memoria
Para evitar la asignación de memoria de zonas ya asignadas al sistema
operativo u otros procesos existen registros de frontera que indican el límite
de memoria asignado a cada proceso.
Protección del procesador
Se pueden presentar bucles infinitos o accesos al procesador que no lo
liberan nunca. Una solución es utilizar temporizadores y otra es apagar la
máquina 13
15. Núcleo del Sistema Operativo
Corresponde al primer nivel jerárquico.
Suele permanecer en el almacenamiento primario o memoria
principal, ya que su código se ejecuta frecuentemente.
Conjunto de rutinas cuya misión es la de administrar en forma
eficiente los recursos, así como también los procesos.
Otros niveles
Kernel o Núcleo
Hardware
15
16. Núcleo del Sistema Operativo
Características generales
Es la parte más dependiente del hardware de todo el sistema operativo.
Parte de su desarrollo está en Assembler.
Algunas veces con dispositivos cableados.
Servicios a capas superiores
Objetivos del sistema Núcleo Decisiones del diseño
Dispositivos hardware
16
17. Núcleo del Sistema Operativo
Características generales
Elimina funciones del monitor y las tareas pasan a ser procesos
del sistema.
Los procesos son interrumpibles y todas las interrupciones son
manejadas por un núcleo mínimo transparente a los procesos.
Utilizado en sistemas grandes
17
18. Núcleo del Sistema Operativo
Funciones básicas
Proporcionar estado adecuado para existencia de procesos.
Manejo de interrupciones.
Conmutación del procesador entre procesos.
Mecanismos básicos de comunicación entre procesos.
Carga inicial y activación de la configuración del sistema.
18
19. Núcleo del Sistema Operativo
Categorías
Monolíticos:
Generalmente divididos en dos:
Dependientes del hardware: manejo de las IRQ, memoria, dispositivos
E/S.
Independientes del hardware: se encarga de las llamadas al sistema,
manejo de archivos y planificación de procesos.
MicroKernel o Micronúcleo:
Tiene solamente manejo de procesos y threads, manejo de memoria, comu-
nicaciones, operaciones bajo nivel E/S. El resto de los servicios, como manejo
de archivos, utilizan al núcleo por medio de las comunicaciones.
19