Está en la página 1de 24

INTRODUCCIÓN AL SISTEMA OPERATIVO

FUNCIONES DEL SISTEMA OPERATIVO

 Máquina ampliada (servicios)


• Ejecución de programas (procesos)
• Órdenes de E/S
• Operaciones sobre ficheros
• Detección y tratamiento de error
 Gestor de recursos (UCP, memoria, ...)
• Asignación y recuperación de recursos
• Protección de los usuarios
• Contabilidad/monitorización
 Soporte de usuario
• Shell
Usuarios
API
Programas de usuario Shell
Servicios Sistema
Núcleo operativo
Hardware

API: Application Programming Interface 2


COMPONENTES DEL SISTEMA OPERATIVO

Usuarios
Varias API
Programas de usuario Shell 2 Shell 1
Win 32 POSIX Sistema
Núcleo operativo
Hardware

3
CONCEPTO DE USUARIO

Usuario: Persona autorizada a utilizar un sistema


 Se identifica en la autenticación mediante:
• Código de cuenta
• Clave (password)
 Internamente el SO le asigna el “uid” (user identification)
Super-usuario
 Tiene todos los derechos
 Administra el sistema
Grupo de usuarios
 Los usuarios se organizan en grupos
• Alumnos
• Profesores
 Todo usuario ha de pertenecer a un grupo

4
CONCEPTO DE PROCESO

Programa en ejecución
 El programa ha de estar traducido a código máquina
 El programa ha de estar almacenado en disco
 El programa ha de cargarse en memoria

5
ARRANQUE DEL COMPUTADOR
ARRANQUE DEL COMPUTADOR

 El Reset carga valores predefinidos en registros


 CP  dirección de arranque del cargador ROM
 Se ejecuta el cargador ROM del sistema
• Test del sistema
• Trae a memoria el boot del SO

Unidad de Memoria Unidad de Memoria


Dirección Celdas Dirección Celda s
0 0
Zona
2.047 ROM

1.046.528 Zona
ROM
1.048.575 1.048.575

En el caso del PC la ROM contiene, además, sw de E/S (BIOS)


7
ARRANQUE DEL SO

El SO está almacenado en el disco


Programa cargador
(identificador) Disco

Sistema Operativo
 El cargador ROM carga el sector de boot del SO y le da control
 El boot del SO carga el SO residente y da control al programa de
arranque del SO, que:
• Comprueba el hardware
• Comprueba el sistema de ficheros
• Establece las tablas del SO
• Crea procesos (según el tipo de SO)
– Proceso INIT
– Procesos o tareas del sistema (demonios)
– Procesos de login (uno por terminal)
• Tras la autenticación, el proceso login se convierte en shell

8
ACTIVACIÓN DEL SO
ACTIVACIÓN DEL SO

El SO se activa por
 Llamadas emitidas por los programas
 Interrupciones
 Excepciones
Avanza la ejecución

Proceso A
Salva el estado del proceso A
Sistema Realiza la función pedida
operativo
Planificador
Activador

Proceso B

10
ACTIVACIÓN DEL SO

El SO se activa por
• Llamadas emitidas por los programas
• Interrupciones producidas
por los periféricos
• Condiciones de excepción
o error del hardware
 Forma de pedir
• Por llamada  problema de
seguridad
• Por interrupción o trap
 Rutina de biblioteca:
Instrucciones de máquina
que prepara la llamada al SO

11
ACTIVACIÓN DE LOS SERVICIOS DEL SO

MEMORIA
PROCESO N

MODO
PROCESO 2 USUARIO

PROCESO 1
4
1

3
SERVICIO MODO
2 NÚCLEO
TABLA
SISTEMA OPERATIVO

PROCESO RUTINA DE TRATAMIENT0 RUTINA DE


TRAP RECURSO
DE USUARIO BIBLIOTECA DE INTERRUP. SERVICIO

PROCESO DE USUARIO HW SISTEMA OPERATIVO


12
PROCESOS
CONCEPTO DE PROCESO

Proceso  Programa en ejecución


 Unidad de procesamiento gestionada por el SO
Información del proceso
• Imagen de memoria (core image)
• Estado del procesador (registros del modelo de programación)
• Bloque de control del proceso BCP
- Identificador “pid” - “uid” y “gid”- Ficheros abiertos
- Estado (registros) - Señales - Semáforos
- Segmentos de memoria - Puertos - Temporizadores

Código
y Registros generales
datos Mapa
de
E/S
PC
BCP
SP
Estado
Mapa de
Memoria
14
JERARQUÍA DE PROCESOS

Grupos de procesos dependientes de cada shell


Familia de procesos
• Proceso hijo
• Proceso padre Proc. Inic.

• Proceso hermano
Inicio Inicio Inicio Inicio Dem. Impr. Dem. Com..
• Proceso abuelo
Vida de un proceso Shell Shell

• Crea Proceso A
Editor
• Ejecuta
• Muere o termina Proceso B Proceso D Proceso C

Ejecución del proceso Proceso E Proceso F


• Batch
• Interactivo
Grupo de procesos

15
TIPOS DE SISTEMAS OPERATIVOS I

• Monotarea o monoproceso
• Multitarea o multiproceso
• Monousuario
• Multiusuario (tiempo compartido) ( multprocesador)
Nº procesos

1 más de 1

Monoproceso Multiproceso
1
Monousuario Monousuario
Nº usuarios
Multiproceso
más de 1 Multiusuario

16
CONCEPTO DE MULTITAREA I

Base de la multitarea
 Paralelismo real entre E/S y UCP (DMA)
 Alternancia en los procesos de fases de E/S y de procesamiento
 La memoria almacena varios procesos

Procesamiento

Entrada/salida
Tiempo

17
CONCEPTO DE MULTITAREA II

Proceso A

Proceso B Procesamiento
Entrada/salida
Listo
Proceso C SO

Procesador
Tiempo

Proceso nulo

18
CONCEPTO DE MULTITAREA III
Ventajas de la multiprogramación
• Facilita la programación, dividiendo los programas en procesos
(modularidad)
• Permite el servicio interactivo simultáneo de varios usuarios de
forma eficiente
• Aprovecha los tiempos que los procesos pasan esperando a que se
completen sus operaciones de E/S
• Aumenta el uso de la CPU
Grado de multiprogramación: nº de procesos en memoria (proc. activos)
Necesidades de memoria principal: Sistema sin memoria virtual
100%

Utilización del procesador


Proceso A

Proceso B
Proceso C
SO
Memoria
principal
Cada proceso reside 0%
totalmente en M.p Grado de multiprogramación 19
CONCEPTO DE MULTITAREA IV

Necesidades de memoria principal: Sistema con memoria virtual


Marcos de página por proceso

Al aumentar el nivel de multiprogramación a


cada proceso le tocan menos marcos de página

1 2 3 4
Nivel de Multiprogramación

20
CONCEPTO DE MULTITAREA V

Necesidades de memoria principal: Sistema con memoria virtual

100 % 100 %
% Utilización de UCP

% Utilización de UCP
Limitado por el Limitado por el
dispositivo de dispositivo de
paginación paginación

Nivel de Multiprogramación Nivel de Multiprogramación


MEMORIA PEQUEÑA MEMORIA GRANDE

21
ENTORNO DEL PROCESO

Tabla NOMBRE-VALOR

PATH=/usr/bin:/home/pepe/bin
TERM=vt100
HOME=/home/pepe
PWD=/home/pepe/libros/primero
TIMEZONE=MET
Variables globales a disposición del proceso
Las pone el SO en la pila del proceso

22
CRACIÓN DE UN PROCESO

Se selecciona un BCP libre


Se genera un nuevo “pid”
Se lee de disco la imagen de memoria y se carga en memoria
Se rellena el BCP
• Estado inicial
• Información de segmentos

23
CAMBIO DEL PROGRAMA DE UN PROCESO

Se borra del BCP la información relativa al programa actual, como es el


contenido de los registros y las señales pendientes,
pero se mantiene la información del proceso que es independiente del
programa, como son los ficheros abiertos.
Se borra la imagen de memoria del proceso.
Se introducen los nuevos valores en el BCP.
Se lee de disco la nueva imagen de memoria y se carga en memoria.

24

También podría gustarte