El documento describe los estados de un proceso en un sistema operativo. Explica un modelo de dos estados (ejecución y no ejecución) y un modelo más completo de cinco estados: nuevo, listo, ejecución, espera y terminado. Los diferentes estados representan donde se encuentra un proceso en el sistema a medida que se crea, ejecuta y finaliza.
1. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
GESTION DE PROCESOS
an R nfo
, S vin emi
Procesos y tareas
el
GB ar ic
• Uno de los módulos más importantes de un
U M .m
sistema operativo es la de administrar los
c. al
Li irtu
procesos y tareas del sistema de cómputo.
• El sistema realiza varias actividades
lav
simultáneamente que compiten por la utilización
au
de determinados recursos, entre los que destaca
la CPU, estas actividades se denominan
procesos.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
2. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
• Un programa, por si solo, es una entidad pasiva
M ome .co
mientras que un proceso es una entidad activa ya
an R nfo
que compite por los recursos máquina.
, S vin emi
• El proceso es una unidad de trabajo del sistema y
el
GB ar ic
el sistema operativo es el responsable de realizar
U M .m
c. al
un seguimiento de todas las actividades del
Li irtu
sistema en conexión con los procesos generados.
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
3. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
División implícita y explicita de
M ome .co
traerás
an R nfo
, S vin emi
• Dependiendo del SO y del entorno objetivo de
ejecución de programas.
el
GB ar ic
U M .m
• La división de un trabajo en tareas que serán
c. al
ejecutadas como procesos independientes así
Li irtu
como la asignación inicial de los atributos de
lav
esos procesos pueden ser efectuadas o bien por
au
el SO o bien por el desarrollador de la aplicación
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
4. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
En otras palabras lo que constituirá un proceso
M ome .co
independiente
an R nfo
, S vin emi
• 1._ División implícita de tareas definida por el
el
GB ar ic
U M .m
sistema c. al
Li irtu
• 2._ División explicita de tareas definida por el
lav
desarrollador
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
5. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Tipos de procesos y relación entre
igu ro m
procesos concurrentes
M ome .co
an R nfo
• En principio podemos realizar una clasificación
, S vin emi
muy general de los procesos entre procesos de
el
GB ar ic
usuario y procesos de sistema
U M .m
• Un proceso de usuario es aquel creado por el
c. al
Li irtu
SO.
• Un proceso de sistema es un proceso que forma
lav
parte del propio SO y que desempeña alguna de
au
sus labores características
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
6. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
El sistema operativo y los procesos
an R nfo
, S vin emi
• Todos los SO de multiprogramación están
construidos entorno al concepto de proceso
el
GB ar ic
U M .m
• Los requerimientos principales que debe
c. al
cumplir un SO para con los procesos son los
Li irtu
siguientes:
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
7. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
• 1._ El SO debe intercalar la ejecución de
an R nfo
procesos para optimizar la utilización de l
procesador ofreciendo alavés un tiempo de
, S vin emi
respuesta razonable
el
GB ar ic
U M .m
• 1._ El SO debe asignar los recursos del sistema a
c. al
los procesos en conformidad con una política
Li irtu
especifica que evite situaciones de ínter bloqueo
lav
• 1._ El SO podría tener que dar soporte ala
au
comunicación entre procesos y ofrecer
mecanismos para su creación
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
8. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Creación y terminación de procesos
igu ro m
M ome .co
• El sistema de operación debe crear un mecanismo
an R nfo
para la creación y terminación de procesos.
, S vin emi
1._ Creación de procesos
el
GB ar ic
U M .m
Cuando un nuevo proceso se agrega el sistema de
c. al
Li irtu
operación construye las estructuras de datos que
son usadas para administrar los procesos y le
lav
asigna espacio de direcciones. Estas acciones
au
constituyen la creación de un nuevo proceso.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
9. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Los eventos comunes para la creación
de procesos
igu ro m
M ome .co
• - En un ambiente batch, un proceso es creado en
an R nfo
respuesta al sometimiento a ejecución de un trabajo.
, S vin emi
• - En un ambiente interactivo, un proceso es creado
el
cuando un nuevo usuario entra al sistema.
GB ar ic
U M .m
• - El sistema de operación puede crear un proceso para
c. al
que realice una función en respuesta a una petición de
Li irtu
un programa usuario, sin que el usuario tenga que
lav
esperar.
au
• - Creación de procesos hijos por parte de procesos
usuarios ya existentes el proceso que crea se llama
proceso padre.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
10. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
2._ Terminación de procesos
an R nfo
• Un proceso termina cuando ejecuta su última
, S vin emi
instrucción y pide al sistema operativo que lo
el
GB ar ic
elimine. En este momento, el proceso puede
U M .m
devolver un valor de estado a su proceso padre.
c. al
Li irtu
• El sistema operativo libera la asignación de
todos los recursos del proceso, incluyendo las
lav
memorias física y virtual, los archivos abiertos y
au
los búferes de ES.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
11. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
• La terminación puede producirse también en
igu ro m
otras circunstancias.
M ome .co
• Un proceso puede causar la terminación de otro
an R nfo
proceso a través de la adecuada llamada al
, S vin emi
sistema.
el
GB ar ic
• Dicha llamada al sistema al sistema sólo puede
U M .m
ser invocada por el padre del proceso que va a
c. al
Li irtu
terminar.
lav
• En caso contrario, los usuarios podrían
terminar arbitrariamente los trabajos de otros
au
usuarios.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
12. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
• Adicionalmente, un número de error o una
M ome .co
condición de fallo puede llevar a la finalización
an R nfo
de un proceso. Las condiciones mas habituales
, S vin emi
son las siguientes:
el
GB ar ic
▫ Finalización normal .
▫
U M .m
Limite de tiempo excedido.
c. al
Li irtu
▫ Memoria no disponible.
▫ Violaciones de frontera .
lav
▫ Error de protección .
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
13. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
▫ Limite de tiempo.
igu ro m
M ome .co
▫ Fallo de E/S.
an R nfo
▫ Instrucción no válida.
▫ Instrucción privilegiada.
, S vin emi
▫ Uso inapropiado de datos.
el
GB ar ic
U M .m
▫ Intervención del operador por el sistema
c. al
operativo.
Li irtu
▫ Terminación del proceso padre.
lav
▫ Solicitud del proceso padre.
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
14. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
ESTADOS DE
M ome .co
an R nfo
, S vin emi
UN PROcESO
el
GB ar ic
U M .m
c. al
Li irtu
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
15. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
El SO gestiona los recursos disponibles
igu ro m
(memoria, CPU, etc.) entre los procesos que en
M ome .co
ese momento trabajan en el sistema, de tal
an R nfo
forma que, para ellos, el sistema se comporte
, S vin emi
como si fuera monousuario. Así que, en un
el
GB ar ic
sistema monoprocesador, la CPU se reparte
U M .m
c. al
entre los procesos que se tengan en ese
Li irtu
momento.
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
16. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Modelo de dos estados
igu ro m
M ome .co
• Se trata de la utilización de dos archivos, un
objeto ejecutable y una biblioteca del sistema,
an R nfo
que después se colocan en la imagen del proceso
, S vin emi
dentro de la memoria RAM y posteriormente
también se dan de alta dentro de la tabla de
el
GB ar ic
U M .m
procesos, bloqueo de control del proceso.
c. al EXPEDIR
Li irtu
lav
ENTRAR SALIR
EJECUCION
au
NO EJECUCION
PAUSAR
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
17. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
En ese modelo, un proceso puede estar
igu ro m
M ome .co
ejecutándose o no. Cuando se crea un nuevo
proceso, se pone en estado de No ejecución. En
an R nfo
algún momento el proceso que se está
, S vin emi
ejecutando pasará al estado No ejecución y
el
GB ar ic
otro proceso se elegirá de la lista de procesos
U M .m
listos para ejecutar para ponerlo en estado
c. al
Ejecución. Es necesario q el SO pueda seguirle
Li irtu
la pista a los procesos, conociendo su estado y
lav
el lugar que ocupa en memoria, y procesos que
no se están ejecutando deben guardarse en
au
algún tipo de cola mientras esperan su turno
para ejecutar.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
18. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Modelo de cinco estados
igu ro m
M ome .co
an R nfo
, S vin emi
el
GB ar ic
U M .m
NUEVO TERMINADO
c. al
Li irtu
lav
LISTO
ESPERA
au
EJECUCION
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
19. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
El modelo anterior de 2 estados funcionaría
igu ro m
bien con una cola FIFO y planificación por
M ome .co
turno rotatorio para los procesos que no están
an R nfo
en ejecución, si los procesos estuvieran siempre
, S vin emi
listos para ejecutar, se deba esperar algún
el
GB ar ic
suceso antes de continuar. Es por esto que se
U M .m
necesita un estado donde los procesos
c. al
permanezcan esperando la realización de la
Li irtu
operación de Entrada Salida por parte del
lav
Sistema Operativo hasta que puedan proseguir.
au
Se divide entonces al estado No ejecución en dos
estados: Listo y Espera. Se agregan además un
estado Nuevo y otro Terminado.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
20. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
Los cinco estados de este diagrama
an R nfo
Nuevo: El proceso recién fue creado y todavía no fue
, S vin emi
admitido por el SO . En general los procesos que se
encuentran en este estado
el
GB ar ic
Todavía no fueron cargados en la memoria principal.
U M .m
Listo: el proceso está listo para ser ejecutado, sólo está
c. al
esperando que el planificador de corto plazo así lo
disponga.
Li irtu
Ejecución: Se encuentra el proceso que tiene el control
del procesador. Dado que en un instante determinado
lav
solo un proceso puede encontrarse en este estado.
Espera: el proceso no puede ejecutar hasta que no se
au
produzca cierto suceso, como la finalización de una
operación de E/S solicitada por una llamada al SO .
Terminado: El proceso fue expulsado del grupo de
procesos ejecutables, ya sea porque terminó o por algún
fallo, como un error de protección, aritmético, etc.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
21. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
ESTADOS DE UN PROSESO DE SISTEMAS
an R nfo
• Preparado (R).- Proceso que está listo para ejecutarse
, S vin emi
• Ejecutando (O).- Sólo uno de los procesos preparados se está
el
GB ar ic
ejecutando en cada momento
U M .m
• Suspendido (S).- Se esta suspendido si no entra en el reparto
c. al
de CPU, el proceso pasa a formar parte del conjunto de
Li irtu
procesos preparados.
• PARADO (T).- Será cuando pasarán a estar preparados
lav
cuando reciban una señal determinada que les permita
au
continuar.
• Zombie (Z).- Todo proceso al finalizar avisa a su proceso
padre . En vaso de que el padre no lo reciba, el proceso hijo
queda en estado zombie, no está consumiendo CPU, pero sí
continua consumiendo recursos del sistema .
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
22. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Transiciones de estado de los procesos
igu ro m
M ome .co
• De ejecución á Bloqueado: Se realiza esta transición
an R nfo
cuando cuando queda en espera cuando por la concesión de sus
, S vin emi
recursos o por la determinación de un suceso.
• De ejecución á Listo: Cuando el proceso que ocupa la CPU lleva
el
GB ar ic
demasiado tiempo ejecutándose ,el sistema operativo decide que
U M .m
otro proceso ocupe la CPU, pasando el proceso que ocupaba la CPU
a estado listo.
c. al
• De Listo á en ejecución: Cuando lo requiere el planificador de la
Li irtu
CPU.
• De Bloqueado á Listo: Se dispone del recurso por el que se había
lav
bloqueado el proceso.
• De Nuevo a Preparado: Es cuando el SO acepta o admite un
au
proceso mas.
• De Preparado a Terminado: Ocurre cuando cuando el proceso
padre decide finalizar la ejecución del hijo.
• De Bloqueado a Terminado: Ocurre cuándo el proceso supere el
tiempo máximo de espera de un recurso y el SO decida terminarlo.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
23. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
M ome .co
an R nfo
, S vin emi
el
GB ar ic
U M .m
c. al
Li irtu
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
24. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
PROCESOS SUSPENDIDOS
igu ro m
M ome .co
• Debido a que el procesador es
an R nfo
mucho mas rápido que los
, S vin emi
dispositivos de E/S puede ocurrir
el
GB ar ic
que en un momento dado todos los
U M .m
procesos del sistema se encuentran
c. al
Li irtu
bloqueados a al espera de que se
complete alguna operación de E/S.
lav
au
Para solucionar este problema existe
dos opciones:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
25. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
1. Ampliar la memoria en forma que
sea posible y albergar en ella mas
igu ro m
M ome .co
procesos y incrementar asi la
an R nfo
posibilidad de que alguno de ellos
, S vin emi
haga uso efectivo del procesador.
el
GB ar ic
2. La otra solución consiste en ampliar
U M .m
c. al
una técnica conocida como
Li irtu
INTERCAMBIO SHAPING: esta
lav
técnica consiste que en cuando todos
au
los procesos que se encuentran en
memoria principal están bloqueados.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
26. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
En general se considera suspendido a un proceso que presenta las
igu ro m
características siguientes
M ome .co
1) Un proceso suspendido no esta disponible de
an R nfo
inmediato para su ejecución.
, S vin emi
2) Un proceso puede estar esperando o no un
el
GB ar ic
suceso. Si lo esta la condición de bloqueado es
U M .m
independiente de la condición de suspendido y
c. al
el acontecimiento del suceso bloqueante no lo
Li irtu
habilita para ejecución.
3) El proceso fue situado en estado en estado
lav
suspendido por un agente (el SO o el proceso
au
padre) con el fin de impedir la ejecución
4) El proceso no puede apartarse de estado hasta
que llegue la orden exprese para ello.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
27. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
LAS TRANSMISIONES QUE INVOLOGRAN A LOS
igu ro m
NUEVOS ESTADOS SON LOS SIGUENTES:
M ome .co
an R nfo
• Transmisión bloqueado y suspendido preparado
y suspendido:
, S vin emi
• Transmisión preparado y suspendido-
el
GB ar ic
preparado:
U M .m
c. al
• Transmisión preparado-preparado y
Li irtu
suspendido:
lav
• Transmisión bloqueado y suspendido –
bloqueado:
au
• Transmisión ejecución – preparado y
suspendido:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
28. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
Entre las razones mas habituales para la
igu ro m
suspensión de procesos podemos citar las
M ome .co
siguientes:
an R nfo
1. Intercambio un proceso por otros. El SO nesicita
, S vin emi
liberar memoria principal para cargar un proceso
el
GB ar ic
que esta listo para ejecutarse
2. U M .m
Suspensión de un proceso por el SO por sospechar
c. al
Li irtu
que esta causado algún tipo de problemas.
3. Solicitud expresa del usuario.
lav
4. Un proceso puede ejecutarse periódicamente y
au
puede ser suspendido mientras espera el intervalo
de tiempo antes de una nueva ejecución.
5. Por una petición del proceso padre.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
29. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
ESTRUCTURA DE CONTROL
igu ro m
DEL SISTEMA OPERATIVO
M ome .co
an R nfo
, S vin emi
el
GB ar ic
U M .m
c. al
Li irtu
lav
El S.O. es el controlador de los sucesos que se producen
en un sistema informático, responsable de las
au
solicitudes del usuario, administra los procesos y
recursos del sistema, mediante elementos
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
30. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
TABLAS DE MEMORIA DE E/S DE
M ome .co
ARCHIVOS Y DE PROCESOS
an R nfo
, S vin emi
El SO para administrar los procesos y recursos
mantiene tablas de información sobre cada
el
GB ar ic
U M .m
entidad que esta administrando e incluyen lo
c. al
siguiente:
Li irtu
lav
1. Asignación de memoria principal y secundaria
au
a los procesos.
2. Información necesaria para la gestión de la
memoria secundaria.
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
31. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
• Las tablas de E/S: administra los dispositivos
igu ro m
M ome .co
y canales de E/S puede estar disponible o estar
an R nfo
asignado a un proceso particular.
, S vin emi
el
• Tablas de archivos: Sobre su posición y
GB ar ic
U M .m
distribución en la memoria secundaria.
c. al
Li irtu
Un ejemplo de estructura para la ubicación de
lav
archivos es la conocida como FAT (File
au
Allocation Table) la informacion almacenada
para cada proceso consiste en:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
32. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
1. Datos de usuario.
M ome .co
an R nfo
2. Programa de usuario.
, S vin emi
el
GB ar ic
3. Pila de sistema.
U M .m
c. al
Li irtu
4. Bloque de control de proceso.
lav
au
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
33. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
BLOQUE DE CONTROL DE PROCESOS
igu ro m
(BCP)
M ome .co
Cada vez que se crea un proceso, el SO crea uno
an R nfo
de estos bloques, Cuando el proceso termina, su
, S vin emi
BCP es liberado y devuelto al deposito de celdas
el
GB ar ic
U M .m
libres del cual se extraen nuevos BCPs.
c. al
Li irtu
lav
au
La información del BCP se agrupa
generalmente en las siguientes categorías:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
34. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
1. IDENTIFICACIÓN DEL
igu ro m
PROCESO
M ome .co
a) El identificador del proceso (PID): Consiste en
an R nfo
un número entero asignado por el sistema.
, S vin emi
b) El identificador del proceso padre
el
c) La Identificacion del usuario: Es una cadena de
GB ar ic
U M .m
caracteres
c. al
Li irtu
2. INFORMACIÓNDEL ESTADO
DEL PROCESADOR
lav
au
a) Registros visibles para el usuario:
b) Registros de control y estado.
c) Puntero a la pila del proceso:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com
35. www.miceminfo.com www.aulavirtual.miceminfo.com marfonline@gmail.com
igu ro m
3. INFORMACIÓN DE CONTROL Y
M ome .co
GESTIÓN DEL PROCESO:
an R nfo
, S vin emi
a) Información de planificacion y estado:
el
GB ar ic
b) Estructuración de datos:
U M .m
c) Comunicación entre procesos:
c. al
Li irtu
d) Privilegios de los procesos:
e) Gestión de memoria:
lav
f ) Recursos en propiedad y utilización de los
au
procesos:
Lic. Marvin Romero UGB, San Miguel blog.miceminfo.com