Vous êtes sur la page 1sur 41

SISTEMAS OPERATIVOS

UNIDAD:
3
Objetivo No. 3.1
PROCESOS.

Prof. Ana Lorena Fréitez S.

Ing. Ana Lorena Fréitez Sistemas Operativos UNEFA 2010


PROCESOS

El proceso se puede definir El concepto central en cualquier


como un programa en sistema operativo es el
ejecución y, de una forma proceso: una abstracción de
más precisa, como la un programa en ejecución.
unidad de procesamiento
gestionada por el sistema
operativo

Andrew S. Tanenbaum.
Carretero y otros.

Sistemas Operativos UNEFA 2010


BLOQUE DE CONTROL DEL PROCESO (P.C.B).

Es un bloque o registro de datos que contiene


diversa información relacionada con un proceso
concreto, incluyendo:

 Estado Actual del Proceso.  Recursos asignados


 Identificador del Proceso. (memoria, archivos, etc)
 Registros del CPU.  Información contable.
 Prioridad Tiempo de uso del CPU.
 Estado de Entrada/Salida

Sistemas Operativos UNEFA 2010


Información de un proceso

Cada proceso tiene asociado una serie


Registros de elementos de información que se
especiales Mapa de memoria
del Proceso A organizan en tres grupos: Estado del
procesador, Imagen de memoria y
Mapa de memoria Tablas de sistema operativo
del Proceso B
Tablas del sistema operativo
Registros
Mapa de memoria
generales del Proceso C Tabla de procesos
PCB Proceso A PCB Proceso B PCB Proceso C
- Estado (registros) - Estado (registros) - Estado (registros)
Tablas SO - Identificación - Identificación - Identificación
PC - Control - Control - Control
- Tabla de memoria
SP Mapa de
- Tabla de E/S
Memoria -Tabla de Archivos
Estado
Sistemas Operativos UNEFA 2010
ESTADOS DE UN PROCESO
(Según Deitel)

Terminación de la operación
Listo de E/S o del evento Bloqueado E A
Espera de E/S
S C
S Despachar o de algún S T T
R
U R evento U
E A I
S E Expiración S
P A del tiempo P A D V
En N
E N
ejecución
E
U
O O
N U N
D D D D S S
E A E A
R R R R
SUSPENDER
Estados
Suspendido Suspendido
Listo Bloqueado Pasivos
Terminación de la operación
de E/S o del evento
Sistemas Operativos UNEFA 2010
ESTADOS DE UN PROCESO

Desarrollo Despachar

Nacimiento Listo Corrida


Expiración
del tiempo
Terminación del
Terminó
evento Evento

Espera Zombie

Caso Unix
Sistemas Operativos UNEFA 2010
Operaciones sobre Procesos

• Crear un proceso. • Despachar un proceso.


• Destruir un proceso. • Permitir la comunicación
• Cambiar la prioridad de entre procesos.
un proceso. • Suspender un proceso.
• Bloquear un proceso. • Reanudar un proceso.

Sistemas Operativos UNEFA 2010


Operaciones sobre Procesos

 CREACIÓN DE UN  DESTRUIR UN
PROCESO: PROCESO:
1. Dar un nombre al 1. Se remueve de la
proceso. tabla de procesos.
2. Insertarlo en la tabla 2. Sus recursos se
de proceso.
devuelven al
3. Determinar la sistema
prioridad inicial
4. Asignar los recursos 3. Su P.C.B. Se borra.
iniciales
Sistemas Operativos UNEFA 2010
Jerarquía de procesos

 Familia de procesos P r o c . I n ic .
• Proceso hijo
• Proceso padre I n ic io I n ic io I n ic io I n ic io D e m . I m p r. D e m . C o m ..
• Proceso hermano
• Proceso abuelo S h e ll S h e ll
 Vida de un proceso
• Crea P ro c e so A
E d ito r
• Ejecuta
• Muere o termina P ro c e so B P ro c e so D P ro c e so C
 Ejecución del proceso
• Batch P ro c e so E P ro c e so F
• Interactivo
 Grupo de procesos
Sistemas Operativos UNEFA 2010
Procesos ligeros o threads

 Por proceso ligero


Un proceso ligero o thread, es un  Registros especificos, PC,SP
programa en ejecución.  Procesos ligeros hijos
Desde el punto de vista de la  Estado (ejecutando, listo o
Programación, se define como una bloqueado)
 Por proceso
función cuya ejecución se puede lanzar  Espacio de memoria
en paralelo con otras  Variables globales
 Archivos abiertos
P ro c e s o  Procesos hijos
 Señales y semáforos
 Contabilidad

P r o c e s o s lig e r o s
Sistemas Operativos UNEFA 2010
Estructura de un Proceso en Windows NT
Proceso

Código

Datos

Recursos

Entorno del proceso

Thread 1 Thread n
Registros ...... Registros

Pila Pila

Sistemas Operativos UNEFA 2010


Estados del Proceso Ligero

Bloqueado por comunicación


Proceso Bloqueado por acceso a disco
Activo

Procesos ligeros

Sistemas Operativos UNEFA 2010


Estados del Proceso Ligero

El estado del proceso será la combinación de


los estados de sus procesos ligeros:
• Si tiene un proceso ligero en ejecución, el
proceso (padre) está en ejecución.
• Si no tiene procesos ligeros en ejecución,
pero tiene alguno listo, el proceso está en
estado de listo.
• Si todos los procesos ligeros están
bloqueados, el proceso está bloqueado.

Sistemas Operativos UNEFA 2010


Planificación de Procesos.

Cuando son ejecutables varios procesos,


el sistema operativo debe decidir cuál conviene
ejecutar si el CPU se encuentra disponible.
El elemento del sistema quien toma esta
decisión se llama PLANIFICADOR (Scheduling)
y el algoritmo del cual hace uso se denomina
ALGORITMO PLANIFICADOR.

Sistemas Operativos UNEFA 2010


Objetivos de la Planificación
1. EQUIDAD: Cada proceso obtiene su porción justa del
CPU.
2. EFICACIA: Mantener ocupado el CPU el 100 % del
tiempo.
3. TIEMPO DE RESPUESTA: Minimizar el tiempo de
respuesta para usuarios interactivos
4. TIEMPO DE REGRESO: Minimizar el tiempo que
deben esperar los usuarios para obtener
los resultados en procesos por lotes.
5. RENDIMIENTO: Maximizar el número de tareas
procesadas por hora.
Sistemas Operativos UNEFA 2010
Niveles de Planificación

PLANIFICADOR Cola
INTERMEDIO SUSPENDIDOS

Cola
TRABAJOS Cola
CPU
LISTOS

PLANIFICADOR
PLANIFICADOR
LARGO PLAZO
CORTO PLAZO

Sistemas Operativos UNEFA 2010


Niveles de Planificación

Planificación de Largo Plazo

Tiene por objetivo, añadir nuevos procesos al


sistema, tomándolos de la lista de espera. Estos procesos
son de tipo batch, en los que no importa el instante
preciso en que se ejecuten.

Sistemas Operativos UNEFA 2010


Niveles de Planificación

Planificación de Nivel Intermedio:


Trata la suspensión de procesos. Es la que decide qué
procesos pasan a estado suspendido y cuáles dejan de estar
suspendidos.
Además, añade o elimina procesos en memoria principal,
modificando el grado de multiprogramación

Sistemas Operativos UNEFA 2010


Niveles de Planificación

Planificación de Corto Plazo:


Se encarga de seleccionar el proceso en estado listo que pasa a
estado de ejecución.

Posteriormente el DESPACHADOR (Función del kernel)


mueve el primer proceso de la cola de listo hacia el CPU para su ejecución.

Sistemas Operativos UNEFA 2010


Tipos de Planificación

No Apropiativa: Apropiativa:
Una vez que el CPU ha sido el sistema operativo
asignado a un
le puede quitar el CPU
proceso, ya no se le antes asignado a un
puede arrebatar. proceso en particular.
El sistema Operativo espera
hasta que el proceso lo
libera
en forma voluntaria.

Sistemas Operativos UNEFA 2010


Políticas de Planificación:
FIFO

Los procesos son atendidos en el orden en que entraron a la lista


de Ready. El proceso tiene asignado el CPU hasta que termina su
ejecución.
* No Apropiativa.
* Generalmente se utiliza combinando con otros esquemas.
Lista de Procesos Listos
Culminación

C B A CPU

Sistemas Operativos UNEFA 2010


Políticas de Planificación:

Primer Trabajo más corto (SJF)

Se ejecuta primero el proceso en espera que tiene el


próximo menor tiempo estimado de ejecución, hasta
terminar.
* No Apropiativa
* Favorece a los trabajos cortos a expensa de
los largos.
* La prioridad del proceso es inversamente
proporcional al tiempo de ejecución.

Sistemas Operativos UNEFA 2010


Políticas de Planificación:

ROUND ROBIN

Consiste en asignar el CPU al primer proceso de


la lista de Ready durante un tiempo de ejecución
(Quantum), el cual es igual para todos los procesos.

* Variación del FIFO


* Apropiativa.
* El quantum puede variar: Carga del sistema,
prioridad de los procesos.

Sistemas Operativos UNEFA 2010


ROUND ROBIN

Lista de Procesos Listos

A C B A CPU

Apropiación
Sistemas Operativos UNEFA 2010
Políticas de Planificación:

Tiempo Restante Más Corto (SRT)

Una vez que un proceso comienza su ejecución,


puede ser desplazado por un nuevo con menor tiempo
de ejecución estimado.

* Apropiativa.
* Implica mayor actividad que el Primer
Trabajo Más Corto (SJF).

Sistemas Operativos UNEFA 2010


Política de Planificación:

Prioridades

A cada proceso se le asigna una prioridad. Se le permi-


te la ejecución al trabajo que tenga la mayor prioridad.
•Es Apropiativo.
•Las prioridades son definidas por el sistema en
la mayoria de los casos.
* Las prioridades pueden ser:
- Estáticas: Cuando los procesos mantienen su prio-
ridad constante durante su existencia en el sistema
- Dinámicas: Cuando las prioridades sufren cambios.

Sistemas Operativos UNEFA 2010


Política de Planificación:

Colas Múltiples

El movimiento de los procesos se determina a través de


varias colas de diferentes niveles.
 Un proceso nuevo entra a la red de colas, al final de la
primera cola. Se desplaza por FIFO.
 Cuando a un proceso se le termina su quantum de
tiempo, se coloca al final de la cola del siguiente nivel.
 El quantum asignado a un proceso cuando pasa a una
cola de nivel inferior alcanza un valor mayor.
 Un proceso en cierta cola no puede ejecutarse a menos
que estén vacías las colas de los niveles más altos.

Sistemas Operativos UNEFA 2010


Colas Múltiples

Uso del
Terminación
Nivel 0 FIFO CPU

Uso del
Terminación
CPU
Nivel 1 FIFO

Uso del
Terminación
CPU
Nivel 2 FIFO

Nivel 3 Uso del


ROUND CPU
ROBIN

Sistemas Operativos UNEFA 2010


Evaluación de los Algoritmos de Planificacion

Tipos de Evaluación:
1. Analítica: Toman una serie de valores y se elabora
una especie de corrida en frío.
2. Simulación: Elaboración de modelos con algunas
herramientas y se trata de lograr un comportamiento real de
los procesos.
3. Implementación: Funcionar el sistema en su entorno real de trabajo.

Sistemas Operativos UNEFA 2010


Evaluación ANALÍTICA de los
Algoritmos de Planificación

Elementos de Medida:

Tiempo de respuesta (T): Tiempo durante el cual el proceso


está presente en el sistema
T= tiempo finalización - tiempo de llegada
Tiempo de ejecución en el CPU (t)
Tiempo desperdiciado(W): W = T - t
Tasa de penalización (P): P = T/ t

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
F.I.F.O. (P.E.P.S.)

L A B C D
U 0 1 2 3 4 5 6 7 8 9 10
E A A A B B B B B C C

L E
U 11 12 13 14 15 16 17 18 19 20
E D D D D D E E E E E

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
F.I.F.O. (P.E.P.S.)
Proceso Tiempo Tiempo Tiempo
llegada t Arranque Finalización T W P
A 0 3 0 3 3 0 1.0
B 1 5 3 8 7 2 1.4
C 3 2 8 10 7 5 3.5
D 9 5 10 15 6 1 1.2
E 12 5 15 20 8 3 1.6

Promedio: 6.2 2.2 1.74

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Primer Trabajo más corto (S.J.F.)

L A B C D
U 0 1 2 3 4 5 6 7 8 9 10
E A A A C C B B B B B

L E
U 10 11 12 13 14 15 16 17 18 19 20
E D D D D D E E E E E

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Primer Trabajo más corto (S.J.F.)

Proceso Tiempo Tiempo Tiempo


llegada t Arranque Finalización T W P
A 0 3 0 3 3 0 1.0
B 1 5 5 10 9 4 1.8
C 3 2 3 5 2 0 1.0
D 9 5 10 15 6 1 1.2
E 12 5 15 20 8 3 1.6

Promedio: 5.6 1.6 1.32

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Tiempo restante más corto (S.R.T.)
L A B C D E
U 0 1 2 3 4 5 6 7 8 9 10
E A A B C C B B B B D

L
U 10 11 12 13 14 15
E E E D D D

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Tiempo restante más corto (S.R.T.)
Proceso Tiempo Tiempo Tiempo
llegada t Arranque Finalización T W P
A 0 2 0 2 2 0 1.0
B 1 5 2 9 8 3 1.6
C 3 2 3 5 2 0 1.0
D 9 4 9 15 6 2 1.5
E 10 2 10 12 2 0 1.0

Promedio: 4 1 1.22

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Prioridades

L A B C D
U 0 1 2 3 4 5 6 7 8 9 10
E A B B C C B B B A A

L E
U 10 11 12 13 14 15 16 17 18 19 20
E D D D D D E E E E E

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Prioridades
Proceso Tiempo Tiempo Tiempo
llegada t Prioridad Arranque Finalización T W P
A 0 3 4 0 10 10 7 3.3
B 1 5 2 1 8 7 2 1.4
C 3 2 0 3 5 2 0 1.0
D 9 5 4 10 15 6 1 1.2
E 12 5 4 15 20 8 3 1.6

Promedio: 6.6 4.3 1.7

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Prioridades
Proceso Tiempo Tiempo Tiempo
llegada t Prioridad Arranque Finalización T W P
A 0 3 4 0 10 10 7 3.3
B 1 5 2 1 8 7 2 1.4
C 3 2 0 3 5 2 0 1.0
D 9 5 4 10 15 6 1 1.2
E 12 5 4 15 20 8 3 1.6

Promedio: 6.6 4.3 1.7

Sistemas Operativos UNEFA 2010


Evaluación del Algoritmo
Round Robin
LA B C D
U 0 1 2 3 4 5 6 7 8 9 10
E A B A B C A B C B D

L E
U10 11 12 13 14 15 16 17 18 19 20
E B D E D E D E D E E

Q = 1.
Sistemas Operativos UNEFA 2010
Evaluación del Algoritmo
Round Robin
Proceso Tiempo Tiempo Tiempo
llegada t Arranque Finalización T W P
A 0 3 0 6 6 3 2.0
B 1 5 1 11 10 5 2.0
C 3 2 4 8 5 3 2.5
D 9 5 9 18 9 4 1.8
E 12 5 12 20 8 3 1.6

Promedio: 7.6 3.6 1.98

Sistemas Operativos UNEFA 2010

Vous aimerez peut-être aussi