planificacion de procesos

3
NIVELES DE PLANIFICACIÓN La planificación se hace en cuatro instantes de tiempo. De estas cuatro, una no la realiza el sistema operativo, sino que es externa al procesamiento, pero tiene una influencia enorme sobre la definición del procesamiento, dado que el sistema operativo queda determinado por las decisiones que se toman en este nivel. A esta instancia le daremos el nombre de "extra largo plazo" por ser en la escala de tiempo del ser humano. En la administración del procesador podemos distinguir tres niveles de planificación de acuerdo a la escala de tiempo en que se realiza la misma. El largo plazo en segundos, mediano plazo en milisegundos y el corto plazo en nanosegundos o microsegundos. PLANIFICACIÓN A EXTRA LARGO PLAZO Consiste en una planificación externa que se hace en el centro de cómputos y está estrechamente ligada a las políticas de funcionamiento del sistema, ya que se determina la importancia relativa de los usuarios. A través de procedimientos escritos se fijan las reglas que se aplicarán a los usuarios relativos al uso, seguridad, accesos, prioridades, etc, así como también las reglas en cuanto a modalidad de procesamiento, la operación, la política de backup, etc. Esta planificación busca satisfacer cuatro objetivos desde el punto de vista de los usuarios: Mayor velocidad de respuesta en sus trabajos con lo que disminuye el tiempo de espera de los usuarios. Existencia y disponibilidad de recursos que necesitan para ejecutar sus trabajos. Importancia de sus tareas. Seguridad de que sus trabajos sean completados correctamente. PLANIFICACIÓN A LARGO PLAZO El planificador a largo plazo, scheduler o planificador de trabajos, es un administrador que se encarga de organizar la ejecución con un adecuado planeamiento de recursos para que el trabajo se ejecute ordenadamente y eficientemente según la modalidad de procesamiento. El sheduler se ejecuta con poca frecuencia, sólo cuando se necesita crear un nuevo proceso en el sistema, cuando termina un proceso, o ingresa un usuario en el sistema, por lo que tiene prioridad máxima para ejecutar. Es el responsable de controlar el nivel de multiprogramación del sistema y el balance de carga del sistema. Esto último implica la selección cuidadosa de trabajos para mantener un adecuado balance de carga de procesos que hacen uso de E/S intensivo (I/O bound) o uso de CPU intensivo (CPU bound). PLANIFICACIÓN A MEDIANO PLAZO Es el que decide sacar de memoria central y llevar a disco (swap-out) a aquellos procesos inactivos o a los activos cuyos estados sean bloqueado momentáneamente o temporalmente o los suspendidos y luego, cuando desaparezcan las causas de sus bloqueos, traerlos nuevamente a memoria (swap-in) para continuar

Upload: carlos-hip-garcia

Post on 07-Feb-2016

216 views

Category:

Documents


0 download

DESCRIPTION

Sistemas Operativos

TRANSCRIPT

Page 1: Planificacion de Procesos

NIVELES DE PLANIFICACIÓN

La planificación se hace en cuatro instantes de tiempo. De estas cuatro, una no la realiza el sistemaoperativo, sino que es externa al procesamiento, pero tiene una influencia enorme sobre la definición delprocesamiento, dado que el sistema operativo queda determinado por las decisiones que se toman en estenivel. A esta instancia le daremos el nombre de "extra largo plazo" por ser en la escala de tiempo del serhumano.

En la administración del procesador podemos distinguir tres niveles de planificación de acuerdo a la escalade tiempo en que se realiza la misma. El largo plazo en segundos, mediano plazo en milisegundos y el cortoplazo en nanosegundos o microsegundos.

PLANIFICACIÓN A EXTRA LARGO PLAZO

Consiste en una planificación externa que se hace en el centro de cómputos y está estrechamente ligada alas políticas de funcionamiento del sistema, ya que se determina la importancia relativa de los usuarios. Através de procedimientos escritos se fijan las reglas que se aplicarán a los usuarios relativos aluso, seguridad, accesos, prioridades, etc, así como también las reglas en cuanto a modalidad deprocesamiento, la operación, la política de backup, etc.

Esta planificación busca satisfacer cuatro objetivos desde el punto de vista de los usuarios:

Mayor velocidad de respuesta en sus trabajos con lo que disminuye el tiempo de espera de losusuarios.

Existencia y disponibilidad de recursos que necesitan para ejecutar sus trabajos. Importancia de sus tareas. Seguridad de que sus trabajos sean completados correctamente.

PLANIFICACIÓN A LARGO PLAZO

El planificador a largo plazo, scheduler o planificador de trabajos, es un administrador que se encarga deorganizar la ejecución con un adecuado planeamiento de recursos para que el trabajo se ejecuteordenadamente y eficientemente según la modalidad de procesamiento.

El sheduler se ejecuta con poca frecuencia, sólo cuando se necesita crear un nuevo proceso en el sistema,cuando termina un proceso, o ingresa un usuario en el sistema, por lo que tiene prioridad máxima paraejecutar. Es el responsable de controlar el nivel de multiprogramación del sistema y el balance de carga delsistema. Esto último implica la selección cuidadosa de trabajos para mantener un adecuado balance decarga de procesos que hacen uso de E/S intensivo (I/O bound) o uso de CPU intensivo (CPU bound).

PLANIFICACIÓN A MEDIANO PLAZO

Es el que decide sacar de memoria central y llevar a disco (swap-out) a aquellos procesos inactivos o alos activos cuyos estados sean bloqueado momentáneamente o temporalmente o los suspendidos y luego,cuando desaparezcan las causas de sus bloqueos, traerlos nuevamente a memoria (swap-in) para continuar

Page 2: Planificacion de Procesos

su ejecución. Este tipo de planificador se encuentra solo en algunos sistemas especialmente en los detiempo compartido, ya que permite mantener un equilibrio entre los procesos activos e inactivos.Este planificador puede ser invocado cuando quede espacio libre de memoria por efecto de la terminaciónde un proceso o cuando el suministro de procesos caiga por debajo de un límite especificado.

PLANIFICACIÓN A CORTO PLAZO

También llamado short-term scheduler o low scheduler, es el responsable de decidir quién, cuándo, cómo ypor cuánto tiempo recibe el procesador un proceso que está preparado (ready queue) para ejecutar (losrecursos a esta altura ya deben estar todos disponibles para este trabajo). Además en sistemas operativoscon esquemas expropiativos (se quita el recurso procesador al proceso) verifica las interrupciones.

ESTADOS DE UN PROCESO

Todo proceso en un sistema operativo presenta un estado que indica la situación de la ejecución en que seencuentra. El número de posibles estados varía de un sistema operativo a otro.

DIAGRAMA DE ESTADOS SIMPLIFICADO

Consideramos que todo proceso puede estar, como mínimo, en uno de los siguientes tres estados:

Activo: el proceso está empleando la CPU, por tanto, está ejecutándose. Pueden haber tantosprocesos activos como procesadores haya disponibles. Por tanto, si el sistema dispone de un únicoprocesador, únicamente puede haber un proceso activo a la vez.

Preparado: el proceso no está ejecutándose pero es candidato a pasar a estado activo. Es elplanificador el que, en base a un criterio de planificación, decide qué proceso selecciona de la listade procesos preparados para pasar a estado activo.

Bloqueado: el proceso está pendiente de un evento externo que le ha hecho bloquear, tales comouna operación de lectura/escritura, la espera de finalización de un proceso hijo, una señal o unaoperación sobre un semáforo. El dispositivo/hecho externo "avisa" al S.O. cuando ha terminado laacción que realizaba mediante una INTERRUPCIÓN, dejando el S.O. lo que está haciendo paraatender a esta última. Tras esto, el S.O. comprueba cuales son los procesos que fueron bloqueadospor ese evento externo, cambiándolos al estado de preparado.

La transición de activo a preparado y viceversa depende de decisiones tomadas por el planificador delsistema operativo en base a un cierto criterio. La transición de activo a bloqueado, y de bloqueado apreparado puede inducirlas el programador mediante llamadas al sistema.

Page 3: Planificacion de Procesos

DIAGRAMA DE ESTADOS AMPLIADO

En espera / Preparación: Estado por el que pasan los procesos antes de pasar a estar preparadospor primera vez. Los procesos, cuando comienzan a existir, no están preparados para comenzar aejecutar instrucciones hasta que el sistema no ha llevado a cabo una serie de actividades. Una vezque el proceso está completamente cargado, ya se puede producir la primera transición al estadopreparado.

Terminado: La transición de activo a este estado ocurre cuando el proceso realiza una llamada alsistema solicitando su propia terminación. En estas circunstancias, hay estructuras de datoscorrespondientes al proceso que no pueden ser liberadas hasta que el proceso padre del que estáterminando recoja el código de terminación del mismo. Hasta que esto ocurra, estas estructuras semantendrán y el proceso seguirá existiendo en estado terminado.

Transición: cuando se completa la operación que mantiene a un proceso en estado bloqueadotermina, el proceso puede haber perdido parte de los recursos que necesita para proseguir suejecución.