Académique Documents
Professionnel Documents
Culture Documents
Cuando hay ms de un proceso que est en condiciones de ejecutarse en la CPU, se debe escoger alguno. El encargado de tomar esa decisin es el planificador del sistema operativo y el algoritmo que usa se llama algoritmo de planificacin.
Qu es un proceso?
Un proceso puede informalmente entenderse como un programa en ejecucin. ejecucin Formalmente un proceso es "Una unidad de actividad que se caracteriza por la ejecucin de una secuencia de instrucciones, un estado actual, y un conjunto de recursos del sistema asociados"
EJECUCIN: El proceso est empleando la cpu,est ejecutndose.Pueden haber tantos procesos ejecutndose como procesadores existan,por tanto, si el sistema dispone de un nico procesador, nicamente puede haber un proceso ejecutndose a la vez. LISTO: El proceso no est ejecutndose pero es candidato a pasar a estado de ejecucin. Es el planificador el que, en base a un criterio de planificacin, decide qu proceso selecciona de la lista de procesos preparados para pasar a estado activo. BLOQUEADO: el proceso est pendiente de un evento externo que le ha hecho bloquear, tales como una operacin de lectura/escritura, la espera de finalizacin de un proceso hijo,...El dispositivo/hecho externo "avisa" al S.O. cuando ha terminado la accin que realizaba mediante una INTERRUPCIN, dejando el S.O. lo que est haciendo para atender a esta ltima. Tras esto, el S.O. comprueba cuales son los procesos que fueron bloqueados por ese evento externo, cambindolos al estado de preparado.
Identificador del proceso (Process Identificator -PID-, de sus siglas en Ingls). Estado del proceso. Por ej. listo, en espera, bloqueado. Contador de Programa: Direccin de la prxima instruccin a ejecutar. Valores de registro de CPU. Se utilizan tambin en el cambio de contexto. Espacio de direcciones de memoria. Prioridad en caso de utilizarse dicho algoritmo para planificacin de CPU. Lista de recursos asignados . Estadsticas del proceso. Datos del propietario (owner). Permisos asignados. Signals pendientes de ser servidos.
- Una complicacin adicional que hay que tener presente es que cada proceso es nico e impredecible. - Algunos son procesos limitados por E/S, es decir, pierden la mayor parte del tiempo esperando por E/S; otros son procesos limitados por CPU, es decir, requieren principalmente tiempo de CPU. - En cualquier caso, todos los procesos alternan entre una fase de ejecucin de CPU y otra de espera por E/S. Aunque la duracin de las fases de CPU es impredecible y vara mucho entre un proceso y otro.
Tipos de Planificacin:
En los casos 1 y 2, necesariamente hay que escoger un nuevo proceso, pero en los casos 3 y 4 podra no tomarse ninguna decisin de planificacin, y dejar que contine ejecutando el mismo proceso que estaba ejecutando. En ese caso, se habla de planificacin noexpropiadora. Si en cambio se toma una decisin de planificacin en los casos 3 y 4, entonces se habla de planificacin expropiadora.
ALGORITMOS DE PLANIFICACIN:
Primero en Entrar Primero en Salir (FIFO):
1. Cuando se tiene que elegir a qu proceso asignar la CPU se escoge al que llevara ms tiempo listo. El proceso se mantiene en la CPU hasta que se bloquea voluntariamente. 2. La ventaja de este algoritmo es su fcil implementacin, sin embargo, no es vlido para entornos interactivos ya que un proceso de mucho clculo de CPU hace aumentar el tiempo de espera de los dems procesos . 3. Para implementar el algoritmo slo se necesita mantener una cola con los procesos listos ordenada por tiempo de llegada. Cuando un proceso pasa de bloqueado a listo se sita el ltimo de la cola.