Sie sind auf Seite 1von 46

GESTION DE PROCESOS

Procesos y tareas


Uno de los mdulos ms importantes de un sistema operativo es la de administrar los procesos y tareas del sistema de cmputo. El sistema realiza varias actividades simultneamente que compiten por la utilizacin de determinados recursos, entre los que destaca la CPU, estas actividades se denominan procesos.

Un programa, por si solo, es una entidad pasiva mientras que un proceso es una entidad activa ya que compite por los recursos mquina. El proceso es una unidad de trabajo del sistema y el sistema operativo es el responsable de realizar un seguimiento de todas las actividades del sistema en conexin con los procesos generados.

Divisin implcita y explicita de traers




Dependiendo del SO y del entorno objetivo de ejecucin de programas. La divisin de un trabajo en tareas que sern ejecutadas como procesos independientes as como la asignacin inicial de los atributos de esos procesos pueden ser efectuadas o bien por el SO o bien por el desarrollador de la aplicacin

En otras palabras lo que constituir un proceso independiente




1._ Divisin implcita de tareas definida por el sistema 2._ Divisin explicita de tareas definida por el desarrollador

Tipos de procesos y relacin entre procesos concurrentes




En principio podemos realizar una clasificacin muy general de los procesos entre procesos de usuario y procesos de sistema Un proceso de usuario es aquel creado por el SO. Un proceso de sistema es un proceso que forma parte del propio SO y que desempea alguna de sus labores caractersticas

El sistema operativo y los procesos




Todos los SO de multiprogramacin estn construidos entorno al concepto de proceso Los requerimientos principales que debe cumplir un SO para con los procesos son los siguientes:

1._ El SO debe intercalar la ejecucin de procesos para optimizar la utilizacin de l procesador ofreciendo alavs un tiempo de respuesta razonable 1._ El SO debe asignar los recursos del sistema a los procesos en conformidad con una poltica especifica que evite situaciones de nter bloqueo 1._ El SO podra tener que dar soporte ala comunicacin entre procesos y ofrecer mecanismos para su creacin

Creacin y terminacin de procesos




El sistema de operacin debe crear un mecanismo para la creacin y terminacin de procesos. Cuando un nuevo proceso se agrega el sistema de operacin construye las estructuras de datos que son usadas para administrar los procesos y le asigna espacio de direcciones. Estas acciones constituyen la creacin de un nuevo proceso.

1._ Creacin de procesos

Los eventos comunes para la creacin de procesos




- En un ambiente batch, un proceso es creado en batch, respuesta al sometimiento a ejecucin de un trabajo. - En un ambiente interactivo, un proceso es creado cuando un nuevo usuario entra al sistema. - El sistema de operacin puede crear un proceso para que realice una funcin en respuesta a una peticin de un programa usuario, sin que el usuario tenga que esperar. - Creacin de procesos hijos por parte de procesos usuarios ya existentes el proceso que crea se llama proceso padre.

2._ Terminacin de procesos




Un proceso termina cuando ejecuta su ltima instruccin y pide al sistema operativo que lo elimine. En este momento, el proceso puede devolver un valor de estado a su proceso padre. El sistema operativo libera la asignacin de todos los recursos del proceso, incluyendo las memorias fsica y virtual, los archivos abiertos y los bferes de E\S. E\

La terminacin puede producirse tambin en otras circunstancias. Un proceso puede causar la terminacin de otro proceso a travs de la adecuada llamada al sistema. Dicha llamada al sistema al sistema slo puede ser invocada por el padre del proceso que va a terminar. En caso contrario, los usuarios podran terminar arbitrariamente los trabajos de otros usuarios.

    

Adicionalmente, un nmero de error o una condicin de fallo puede llevar a la finalizacin de un proceso. Las condiciones mas habituales son las siguientes: Finalizacin normal . Limite de tiempo excedido. Memoria no disponible. Violaciones de frontera . Error de proteccin .

     

 

Limite de tiempo. Fallo de E/S. Instruccin no vlida. Instruccin privilegiada. Uso inapropiado de datos. Intervencin del operador por el sistema operativo. Terminacin del proceso padre. Solicitud del proceso padre.

ESTADOS DE UN PROSESO
El SO gestiona los recursos disponibles (memoria, CPU, etc.) entre los procesos que en ese momento trabajan en el sistema, de tal forma que, para ellos, el sistema se comporte como si fuera monousuario. As que, en un sistema monoprocesador, la CPU se reparte entre los procesos que se tengan en ese momento.

ESTADOS DE UN PROSESO

El SO gestiona los recursos disponibles (memoria, CPU, etc.) entre los procesos que en ese momento trabajan en el sistema, de tal forma que, para ellos, el sistema se comporte como si fuera monousuario. As que, en un sistema monoprocesador, la CPU se reparte entre los procesos que se tengan en ese momento.

Modelo de dos estados




Se trata de la utilizacin de dos archivos, un objeto ejecutable y una biblioteca del sistema, que despus se colocan en la imagen del proceso dentro de la memoria RAM y posteriormente tambin se dan de alta dentro de la tabla de procesos, bloqueo de control del proceso.
EXPEDIR

ENTRAR NO EJECUCION

SALIR EJECUCION

PAUSAR

En ese modelo, un proceso puede estar ejecutndose o no. Cuando se crea un nuevo proceso, se pone en estado de No ejecucin. En algn momento el proceso que se est ejecutando pasar al estado No ejecucin y otro proceso se elegir de la lista de procesos listos para ejecutar para ponerlo en estado Ejecucin. Es necesario q el SO pueda seguirle la pista a los procesos, conociendo su estado y el lugar que ocupa en memoria, y procesos que no se estn ejecutando deben guardarse en algn tipo de cola mientras esperan su turno para ejecutar.

Modelo de cinco estados


NUEVO TERMINADO

LISTO

ESPERA

EJECUCION

El modelo anterior de 2 estados funcionara bien con una cola FIFO y planificacin por turno rotatorio para los procesos que no estn en ejecucin, si los procesos estuvieran siempre listos para ejecutar, se deba esperar algn suceso antes de continuar. Es por esto que se necesita un estado donde los procesos permanezcan esperando la realizacin de la operacin de Entrada Salida por parte del Sistema Operativo hasta que puedan proseguir. Se divide entonces al estado No ejecucin en dos estados: Listo y Espera. Se agregan adems un Espera. estado Nuevo y otro Terminado. Terminado.

Los cinco estados de este diagrama


y Nuevo: El proceso recin fue creado y todava no fue admitido por el
y

y y y y

SO . En general los procesos que se encuentran en este estado Todava no fueron cargados en la memoria principal. Listo: el proceso est listo para ser ejecutado, slo est esperando que el planificador de corto plazo as lo disponga. Ejecucin: Se encuentra el proceso que tiene el control del procesador. Dado que en un instante determinado solo un proceso puede encontrarse en este estado. Espera: el proceso no puede ejecutar hasta que no se produzca cierto suceso, como la finalizacin de una operacin 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 algn fallo, como un error de proteccin, aritmtico, etc.

ESTADOS DE UN PROSESO DE SISTEMAS


 

Preparado (R).- Proceso que est listo para ejecutarse (R).Ejecutando (O).- Slo uno de los procesos preparados se est (O).ejecutando en cada momento Suspendido (S).- Se esta suspendido si no entra en el reparto de (S).CPU, el proceso pasa a formar parte del conjunto de procesos preparados. preparados. PARADO (T).- Ser cuando pasarn a estar preparados cuando (T).reciban una seal determinada que les permita continuar. Zombie (Z).- Todo proceso al finalizar avisa a su proceso padre . En (Z).vaso de que el padre no lo reciba, el proceso hijo queda en estado zombie, no est consumiendo CPU, pero s continua consumiendo zombie, recursos del sistema .

Transiciones de estado de los procesos




 

 

De ejecucin Bloqueado: Se realiza esta transicin cuando cuando queda en espera cuando por la concesin de sus recursos o por la determinacin de un suceso. De ejecucin Listo: Cuando el proceso que ocupa la CPU lleva demasiado tiempo ejecutndose ,el sistema operativo decide que otro proceso ocupe la CPU, pasando el proceso que ocupaba la CPU a estado listo. De Listo en ejecucin: Cuando lo requiere el planificador de la CPU. De Bloqueado Listo: Se dispone del recurso por el que se haba bloqueado el proceso. De Nuevo a Preparado: Es cuando el SO acepta o admite un proceso mas. De Preparado a Terminado: Ocurre cuando cuando el proceso padre decide finalizar la ejecucin del hijo. De Bloqueado a Terminado: Ocurre cundo el proceso supere el tiempo mximo de espera de un recurso y el SO decida terminarlo.

PROCESOS SUSPENDIDOS
Debido a que el procesador es mucho mas rpido que los dispositivos de E/S puede ocurrir que en un momento dado todos los procesos del sistema se encuentran bloqueados a al espera de que se complete alguna operacin de E/S. E/S. Para solucionar este problema existe dos opciones: opciones:

1. Ampliar la memoria en forma quesea posible y albergar en ella mas procesos y incrementar asi la posibilidad de que alguno de ellos haga uso efectivo del procesador. procesador. 2. La otra solucin consiste en ampliar una tcnica conocida como INTERCAMBIO SHAPING: SHAPING: esta tcnica consiste que en cuando todos los procesos que se encuentran en memoria principal estn bloqueados. bloqueados.

En general se considera suspendido a un proceso que presenta las caractersticas siguientes


1)

2)

3)

4)

Un proceso suspendido no esta disponible de inmediato para su ejecucin. Un proceso puede estar esperando o no un suceso. Si lo esta la condicin de bloqueado es independiente de la condicin de suspendido y el acontecimiento del suceso bloqueante no lo habilita para ejecucin. El proceso fue situado en estado en estado suspendido por un agente (el SO o el proceso padre) con el fin de impedir la ejecucin El proceso no puede apartarse de estado hasta que llegue la orden exprese para ello.

LAS TRANSMISIONES QUE INVOLOGRAN A LOS NUEVOS ESTADOS SON LOS SIGUENTES:


   

Transmisin bloqueado y suspendido preparado y suspendido: Transmisin preparado y suspendido-preparado: suspendidoTransmisin preparado-preparado y suspendido: preparadoTransmisin bloqueado y suspendido bloqueado: Transmisin ejecucin preparado y suspendido:

Entre las razones mas habituales para la suspensin de procesos podemos podemos citar las siguientes:
1.

2.

3. 4.

5.

Intercambio un proceso por otros. El SO nesicita liberar memoria principal para cargar un proceso que esta listo para ejecutarse Suspensin de un proceso por el SO por sospechar que esta causado algn tipo de problemas. Solicitud expresa del usuario. Un proceso puede ejecutarse peridicamente y puede ser suspendido mientras espera el intervalo de tiempo antes de una nueva ejecucin. Por una peticin del proceso padre.

ESTRUCTURA DE CONTROL DEL SISTEMA OPERATIVO

El s.o. es el controlador de los sucesos que se producen en un sistema informtico, responsable de las solicitudes del usuario, administra los procesos y recursos del sistema, mediante elementos

TABLAS DE MEMORIA DE E/S DE ARCHIVOS Y DE PROCESOS


Si el SO para administrar los procesos y recursos mantiene tablas de informacin sobre cada entidad que esta administrando e incluyen lo siguiente. siguiente. 1. Asignacin de memoria principal y secundaria a los procesos. procesos. 2.Informacin necesaria para la gestin de la memoria secundaria. secundaria.

las tablas de E/S: administra los dispositivos y E/S: canales de E/S puede estar disponible o estar asignado a un proceso particular.  tablas de archivos: Sobre su posicin y archivos: distribucin en la memoria sec Un ejemplo de estructura para la ubicacin de archivos es la conocida como FAT (File Allocation Table) la informacion almacenada para cada proceso consiste en


1.

Datos de usuario.

2. Programa de usuario. 3. Pila de sistema. 4. Bloque de control de proceso.

BLOQUE DE CONTROL DE PROCESOS (BCP)


Cada vez que se crea un proceso, el SO crea uno de estos bloques, Cuando el proceso termina, su BCP es liberado y devuelto al deposito de celdas libres del cual se extraen nuevos BCPs.

La informacin del BCP se agrupa generalmente en las siguientes categoras

1.

IDENTIFICACIN DEL PROCESO


a) El identicador del proceso (PID): Consiste en un nmero entero asignado por el sistema. b) El identicador del proceso padre c) La Identicacion del usuario: Es una cadena de caracteres

2. INFORMACIN

PROCESADOR

DEL ESTADO DEL

a) Registros visibles para el usuario: b) Registros de control y estado. c) Puntero a la pila del proceso:

3. INFORMACIN DE CONTROL Y GESTIN DEL PROCESO: a) Informacin de planicacion y estado: b) Estructuracin de datos: c) Comunicacin entre procesos: d) Privilegios de los procesos: e) Gestin de memoria: f ) Recursos en propiedad y utilizacin de los procesos:

ESTADOS DE UN PROSESO

El SO gestiona los recursos disponibles (memoria, CPU, etc.) entre los procesos que en ese momento trabajan en el sistema, de tal forma que, para ellos, el sistema se comporte como si fuera monousuario. As que, en un sistema monoprocesador, la CPU se reparte entre los procesos que se tengan en ese momento.

Modelo de dos estados




Se trata de la utilizacin de dos archivos, un objeto ejecutable y una biblioteca del sistema, que despus se colocan en la imagen del proceso dentro de la memoria RAM y posteriormente tambin se dan de alta dentro de la tabla de procesos, bloqueo de control del proceso.
EXPEDIR

ENTRAR NO EJECUCION

SALIR EJECUCION

PAUSAR

En ese modelo, un proceso puede estar ejecutndose o no. Cuando se crea un nuevo proceso, se pone en estado de No ejecucin. En algn momento el proceso que se est ejecutando pasar al estado No ejecucin y otro proceso se elegir de la lista de procesos listos para ejecutar para ponerlo en estado Ejecucin. Es necesario q el SO pueda seguirle la pista a los procesos, conociendo su estado y el lugar que ocupa en memoria, y procesos que no se estn ejecutando deben guardarse en algn tipo de cola mientras esperan su turno para ejecutar.

Modelo de cinco estados


NUEVO TERMINADO

LISTO

ESPERA

EJECUCION

El modelo anterior de 2 estados funcionara bien con una cola FIFO y planificacin por turno rotatorio para los procesos que no estn en ejecucin, si los procesos estuvieran siempre listos para ejecutar, se deba esperar algn suceso antes de continuar. Es por esto que se necesita un estado donde los procesos permanezcan esperando la realizacin de la operacin de Entrada Salida por parte del Sistema Operativo hasta que puedan proseguir. Se divide entonces al estado No ejecucin en dos estados: Listo y Espera. Se agregan adems un Espera. estado Nuevo y otro Terminado. Terminado.

Los cinco estados de este diagrama


y Nuevo: El proceso recin fue creado y todava no fue admitido por el
y

y y y y

SO . En general los procesos que se encuentran en este estado Todava no fueron cargados en la memoria principal. Listo: el proceso est listo para ser ejecutado, slo est esperando que el planificador de corto plazo as lo disponga. Ejecucin: Se encuentra el proceso que tiene el control del procesador. Dado que en un instante determinado solo un proceso puede encontrarse en este estado. Espera: el proceso no puede ejecutar hasta que no se produzca cierto suceso, como la finalizacin de una operacin 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 algn fallo, como un error de proteccin, aritmtico, etc.

ESTADOS DE UN PROSESO DE SISTEMAS


 

Preparado (R).- Proceso que est listo para ejecutarse (R).Ejecutando (O).- Slo uno de los procesos preparados se est (O).ejecutando en cada momento Suspendido (S).- Se esta suspendido si no entra en el reparto de (S).CPU, el proceso pasa a formar parte del conjunto de procesos preparados. preparados. PARADO (T).- Ser cuando pasarn a estar preparados cuando (T).reciban una seal determinada que les permita continuar. Zombie (Z).- Todo proceso al finalizar avisa a su proceso padre . En (Z).vaso de que el padre no lo reciba, el proceso hijo queda en estado zombie, no est consumiendo CPU, pero s continua consumiendo zombie, recursos del sistema .

Transiciones de estado de los procesos




 

 

De ejecucin Bloqueado: Se realiza esta transicin cuando cuando queda en espera cuando por la concesin de sus recursos o por la determinacin de un suceso. De ejecucin Listo: Cuando el proceso que ocupa la CPU lleva demasiado tiempo ejecutndose ,el sistema operativo decide que otro proceso ocupe la CPU, pasando el proceso que ocupaba la CPU a estado listo. De Listo en ejecucin: Cuando lo requiere el planificador de la CPU. De Bloqueado Listo: Se dispone del recurso por el que se haba bloqueado el proceso. De Nuevo a Preparado: Es cuando el SO acepta o admite un proceso mas. De Preparado a Terminado: Ocurre cuando cuando el proceso padre decide finalizar la ejecucin del hijo. De Bloqueado a Terminado: Ocurre cundo el proceso supere el tiempo mximo de espera de un recurso y el SO decida terminarlo.

Das könnte Ihnen auch gefallen