Professional Documents
Culture Documents
Procesos
1. 2. Concepto de proceso. Principios de la Programacin concurrente.
1. 2. 3. 4. Concurrencia. Programacin concurrente. reas de comunicacin entre procesos.
1. 2. 1. 2. Exclusin mutua. Sincronizacin. Concepto de interbloqueo. Inanicin de procesos. Condiciones necesarias para que se produzca interbloqueo.
3. 4. 5. 6.
Estados de un proceso. Representacin de los procesos. Operaciones bsicas sobre procesos. Planificacin de procesos.
1. 2. 3. Concepto de planificacin. Objetivos. Planificacin apropiativa frente a no apropiativa. Algoritmos de planificacin. Caractersticas del ncleo. Componentes del ncleo.
1. 2. El dispatcher. El controlador de interrupciones.
7.
1. Concepto de proceso
Definiciones: 1. Un programa es una secuencia de instrucciones o acciones definidas a priori, que pueden ser ejecutadas por parte de un procesador. 2. Un proceso es una secuencia de acciones derivadas de la ejecucin de una serie de instrucciones. Esto implica que:
un proceso puede requerir la ejecucin de uno o varios programas; y que un programa puede formar parte de ms de un proceso.
3.
4.
Un proceso se lleva a cabo por la accin de un agente (procesador) que ejecuta el programa asociado. Es decir, un procesador ejecuta un proceso, o un proceso se ejecuta sobre un procesador. El programa o programas asociados a un proceso no tienen porqu estar implementados en software.
Real o paralelismo
N procesadores >= N procesos
Tiempo
Postergacin indefinida (inanicin o Lockout): cuando un proceso espera por un evento que puede ocurrir pero no se sabe cuando.
Interbloqueo entre dos procesos por el uso de recursos no compartibles (abrazo mortal)
1. 2. 3. 4.
3. Estados de un proceso
Tiene el control de un procesador
ASIGNACIN DE CPU HA COMPLETADO SU EJECUCIN ESPERAR UN EVENTO
Activo
EXCEDE QUANTUM OCURRE EL EVENTO
Listo Pa
SE CREA EL PROCESO
Bloqueado Pe Pm
Pb
...
Pn
...
Pc
No esta ordenada
...
Hijo N
2. 3. 4. 5. 6.
Destruir un proceso: devolver al sistema los recursos que tiene asignado, eliminarlo de todas las listas del sistema y borrar su PCB. Cambiar la prioridad de un proceso. Bloquear un proceso. Despertar un proceso. Despachar un proceso.
Planificacin apropiativa: si se le puede retirar la CPU a un proceso mientras est en ejecucin. Ventajas:
tiles en sistemas cuyos procesos de alta prioridad requieren atencin rpida; Permiten obtener tiempos de respuesta aceptable.
Inconvenientes:
Los trabajos largos hacen esperar a los cortos.
Inconvenientes:
Conllevan un coste debido al intercambio de contexto; Requieren sobrecarga debido a la necesidad de mantener en memoria principal programas que no se estn ejecutando.
B.
Utilizacin de un quantum de tiempo. Quantum: tiempo mximo que un proceso puede hacer uso del procesador. Puede ser fijo o variable y puede tener el mismo valor para todos los procesos o distinto.
Ventajas:
permite predecir el orden de ejecucin de los procesos; es fcil de implementar.
Ventajas:
con respecto al algoritmo FIFO, reduce al mnimo el tiempo promedio de espera de los trabajos, ya que al favorecer los trabajos cortos sobre los largos reduce el nmero de trabajos en espera.
Prioridad
La lista de procesos en estado listo esta formada por varios niveles y cada uno de ellos con una cola circular. Cuando se inserta un nuevo proceso este se aade al final de Niveles la cola de mayor nivel gestionada de forma FIFO.
Continuar? NO
Control al proceso
Fin
Salvar el entorno del proceso activo Restaurar el entorno del proceso que esta en la cabecera de la lista de procesos en estado listo