Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Una vez completada toda la información del proceso, se puede marcar como
listo para ejecutar, de forma que el planificador, cuando lo considere oportuno,
lo seleccione para su ejecución.
Ejecución.- El proceso esta siendo ejecutado por el
procesador, es decir, esta en fase de procesamiento y el
estado del proceso reside en los registros del procesador.
Bloqueado.- un proceso bloqueado esta esperando a que
ocurra un evento y no puede seguir ejecutando hasta que
suceda el evento – es cuando el proceso solicita una
operación de E/S, hasta que no termina esta operación el
proceso queda bloqueado, en esta fase el estado del
proceso reside en el BCP.
Listo.- un proceso esta listo para ejecutar cuando puede
entrar en fase de procesamiento. Dado que puede haber
varios procesos en este estado, una de las tareas del
sistema operativo será seleccionar aquel que debe pasar a
ejecución y esto lo realiza el modulo Planificador del Sop.
En esta fase el estado del proceso reside en el BCP.
Se muestra estos 3 estados,
indicando algunas de las posibles
transiciones:
Puede verse que hay un solo
proceso en ejecución.
Del estado de ejecución se pasa al
estado de bloqueado al solicitar
una operación de E/S.
También puede pasar del estado
de ejecución al estado de listo
cuando el Sop decide que ese
proceso lleva mucho tiempo en
ejecución.
Del estado de bloqueado pasa al
estado del listo cuando se produce
el evento por el que estaba
esperando el proceso (cuando se
completa la operación de E/S
solicitada)
Los procesos entran en el sistema porque lo solicita un
proceso de usuario o porque esta prevista su ejecución Batch.
Es frecuente tener una lista de procesos Batch en espera para
ser ejecutados cuando se pueda. El sistema operativo ha de ir
analizando dicha lista para lanzar la ejecución de los procesos
a medida que disponga de los recursos necesarios.
Los procesos salen del sistema cuando mueren, es decir, al
ejecutar el servicio correspondiente o al producir algún error
irrecuperable.
El SOp. Puede suspender algunos procesos, lo que implica
retirar sus marcos de páginas, dejándolos en la zona de
intercambio. El objetivo es dejar suficiente memoria a los
procesos no suspendidos para que su conjunto residente
tenga un tamaño adecuado que evite la hiperpaginación.
Los procesos Batch que entran en el sistema lo hacen pasando
al estado listo o al de listo suspendido.
Hilos a nivel de usuario.
– Se usan aplicaciones o bibliotecas de hilos para
manejarse (Creación, destrucción, planificación).
– El S.O. no conoce la existencia de los hilos
– (Unix) Existe un único hilo por proceso
– Hay un paquete de hilos que corre en el espacio del
usuario
Hilos a nivel de Kernel.
– El sistema operativo conoce la existencia de los
hilos.
– El planificador no selecciona procesos para ser
ejecutados sino hilos.
– El hilo seleccionado puede pertenecer al mismo
proceso o a un proceso diferente
Web browser
– Un Hilo decodifica la página y la presenta en Pantalla.
– Un Hilo toma los datos de la página de Internet.
Procesador de Texto.
– Un Hilo despliega en Pantalla la interfaz.
– Un Hilo toma los datos del Teclado.
– Un Hilo revisa la ortografía.
Servidor Web
– Un Hilo acepta peticiones de los clientes.
– Para cada petición recibida se crea un Hilo que la atiende.
– Usa muchos Hilos para atender en paralelo a muchos
clientes.
Un proceso ligero o thread es un
programa en ejecución que
comparte la imagen de memoria y
otras informaciones con otros
procesos ligeros
Un proceso puede contener un solo
flujo de ejecución, como ocurre en
los procesos clásicos, o mas de un
flujo de ejecución (procesos
ligeros).
Un proceso ligero se define como una función cuya
ejecución se puede lanzar en paralelo con otras. El
hilo de ejecución primario, o de proceso ligero
primario, corresponde a la función main
Cada proceso ligero tiene informaciones que le
son propias y que no comparte con otros proceso
ligeros, las informaciones propias se refieren
fundamentalmente al contexto de ejecución,
pudiéndose destacar las siguientes:
Contador de programa
Pila
Registros
Estado del proceso ligero (ejecutando, listo o
bloqueado)
Todos los proceso ligeros de un mismo proceso
comparten la información del mismo, es decir:
Espacio de memoria
Variables globales
Archivos abiertos
Procesos hijos
Temporizadores
Señales y semáforos
Contabilidad
El estado del Proceso P es la combinación de los
estados de sus Hilos.