Sie sind auf Seite 1von 22

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

NDICE:
1.- ESTADOS DE LOS PROCESOS.. 1
2.- BLOQUE DE CONTROL DE PROCESOS (BCP) 1
3.- EL PLANIFICADOR DE PROCESOS. 2
4.- OBJETIVOS DE PLANIFICACIN. 3
5.- CRITERIOS DE PLANIFICACIN. 3
6.- SINCRONIZACIN Y COMUNICACIN DE PROCESOS. 3
6.1.- Concurrencia... 4
6.2. Exclusin mutua 4
6.3. Sincronizacin.. 5
7. INTERBLOQUEO. 6
8.-ALGORITMOS DE PLANIFICACIN.. 8
8.1.- Planificacin por prioridades. 9
8.2.- Planificacin Primero en llegar, primero en ser servido (FCFS).. 9
8.3- Planificacin Primera tarea ms corta (Planificacin SJF).(SJN) 10
8.4.- Planificacin Round-Robin (RR). 10
8.5.- Planificacin El siguiente proceso, el restante ms corto (SRT).. 11
8.6.- Planificacin Prximo el de ms corto ndice de respuesta (HRN).. 11
8.7.- Planificacin Colas mltiples. 12
8.8.- Planificacin Colas mltiples con realimentacin (FB) 12
8.9.- Planificacin garantizada. 13
9.-CUESTIONES 13
10.-PROBLEMAS 17

1.- ESTADOS DE LOS PROCESOS:

Activo: se est ejecutando en ese instante.


Preparado: listo para ejecutarse, espera a que un/el procesador quede libre.
Bloqueado o suspendido: espera a que se cumpla alguna condicin (termine alguna
operacin de E/S...).
Nonato: existe, pero no es conocido por el S.O.
Muerto: termina su ejecucin o bien el S.O. ha detectado un error fatal.
Se denomina estado global del sistema en un instante determinado, al conjunto de recursos

y procesos existentes con sus estados correspondientes.


2.- BLOQUE DE CONTROL DE PROCESOS (BCP):
El sistema mantiene toda la informacin sobre un proceso en una estructura de datos
denominada bloque de control de procesos (BCP).
La creacin de un proceso origina la creacin de su BCP que sirve para describirle hasta que
se elimina o pasa al estado muerto.
El S.O. mantiene listas del sistema: uno de los estados
Una lista para los procesos que estn en estado preparado
Una lista de los procesos en estado bloqueado
El proceso puede estar en una nica lista de estados bloqueados o en una lista de estados
suspendidos ligada en exclusiva a un dispositivo o evento

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Una lista de los procesos en estado activo o de en ejecucin


Si el sistema es monoprocesador, slo posee una entrada
El planificador es el que gestiona el paso de los procesos de una lista a otra

3.- EL PLANIFICADOR DE PROCESOS


El objetivo principal de una planificacin en los Sistemas Operativos, es dar un buen servicio a todos los
procesos que existan en un momento dado en el sistema.
Se denomina planificador al software del SO encargado de asignar los recursos de un sistema entre los
procesos que lo solicitan. Y al algoritmo que se usa algoritmo de planificacin.
Por tanto, la planificacin de procesos es el conjunto de mecanismos que establecen el orden en que se van a
realizar los diferentes procesos. Los procesos pueden entrar y salir de la CPU sin que tengamos control sobre ellos.
Para calcular los tiempos de estancia suponemos que la CPU se reparte por igual, as pues sern necesarios varios
contadores, uno para la CPU que corresponder con el tiempo del reloj, y otros para cada proceso en ejecucin, que
contabilizar el tiempo de uso de CPU.
El planificador (scheduler) puede ser:


A largo plazo o de admisin al sistema. (PLP).- Carga los programas

A medio plazo, (PMP). Planificador de swapping.- Decide qu proceso pasa de la memoria


principal a la secundaria o viceversa.

A corto plazo (PCP). (dispatcher).- Decide qu proceso entra a ejecutarse.

4.- OBJETIVOS DE PLANIFICACIN.


Las polticas de planificacin intentan cubrir los siguientes objetivos:

1.- Justicia.- La poltica debe ser lo ms justa posible con todo tipo de procesos, sin favorecer a unos y
perjudicar a otros.

2.-Mxima capacidad de ejecucin.- Debe dar un servicio aceptable para que todos los trabajos se realicen
lo ms rpidamente posible. Esto se logra disminuyendo el nmero de cambios de proceso.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

3.-Mximo nmero de usuarios interactivos.- En los sistemas de tiempo compartido se tratar de que
puedan estar trabajando el mayor nmero de usuarios simultneamente.

4.-Predecibilidad.- La poltica de planificacin debe concebirse de tal forma que en todo momento pueda
saberse cmo ser su ejecucin.

5.-Minimizacin de la sobrecarga.- La computadora debe tener poca sobrecarga, ya que sta incide
directamente sobre el rendimiento final del sistema: a menor sobrecarga, mayor velocidad de proceso.

6.-Equilibrio en el uso de recursos.- Para obtener un buen rendimiento en el uso de los recursos y que
stos estn ocupados equitativamente el mayor tiempo posible.

7.-Seguridad de las prioridades.- Si un proceso tiene mayor prioridad que otro, ste debe ejecutarse ms
rpidamente.

Los objetivos enunciados pueden entrar en ocasiones en contradiccin; por ello es necesario llegar a una
situacin de compromiso entre todos los objetivos para conseguir del sistema operativo un buen
rendimiento y un buen servicio.

5.- CRITERIOS DE PLANIFICACIN.


Los criterios que se desean cumplir con un buen algoritmo de planificacin son, sobre todo:

Equidad: garantizar que cada proceso obtiene su proporcin justa de la CPU.

Eficacia o eficiencia: mantener ocupada la CPU el 100% del tiempo.

Tiempo de respuesta a un evento: es el intervalo de tiempo que transcurre desde que se seala un
evento hasta que se ejecuta la primera instruccin de la rutina de servicio de dicho evento.
Tiempo de regreso o retorno (turnaround): es el intervalo de tiempo que transcurre desde que un
proceso se crea o presenta hasta que se completa por el sistema.

Rendimiento (Throughput): es una medida del n de procesos por unidad de tiempo.

Tiempo de espera: es el tiempo que el proceso espera hasta que se le concede el procesador.

6.- SINCRONIZACIN Y COMUNICACIN DE PROCESOS.


La idea bsica es que los procesos ejecutan actividades diversas. Se puede compartir un procesador entre
varios procesos utilizando un algoritmo de planificacin que decida cundo interrumpir la labor de un proceso y
pasar a otro diferente.
Las tareas que corren en un sistema se disean para llevar a cabo un objetivo comn y, por lo tanto, es
necesario que algunas de ellas se comuniquen entre s; adems, en su ejecucin competirn por conseguir los
recursos del sistema, una zona de datos especficos, o un dispositivo de E/S y dicha competicin se debe regular
proporcionando los mecanismos adecuados para la sincronizacin de los procesos.
Concurrencia de procesos.- Son procesos que se pueden ejecutar simultneamente, sin interferir unos
con otros.
Sincronizacin de procesos: En la ejecucin concurrente, algunos procesos no pueden empezar su
ejecucin hasta que otros no hayan concluido, es decir, deben de sincronizarse. Una forma de lograr esto, es
mediante la generacin de envo de seales de control. Los mtodos de sincronizacin ms utilizados son:
o
o
o

Las variables compartidas


Semforos
Monitores

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

6.1.- CONCURRENCIA.
Es la existencia de varias actividades ejecutndose simultneamente, y necesitan sincronizarse para actuar
conjuntamente.
Para que dos actividades sean concurrentes, es necesario que tengan alguna relacin entre s, como
puede ser la cooperacin en un trabajo determinado o el uso de informacin compartida.
En un sistema monoprocesador, la existencia de multiprogramacin es condicin necesaria, pero no
suficiente para que exista concurrencia, ya que los procesos pueden ejecutarse de forma totalmente independiente.
Por ejemplo, un editor y un compilador pueden estar ejecutndose simultneamente en una
computadora sin que exista concurrencia entre ellos. Por otro lado, si un programa se est ejecutando y se
encuentra grabando datos en un archivo, y otros programa tambin en ejecucin est leyendo datos de ese mismo
archivo, s existe concurrencia entre ellos, pues el funcionamiento de uno interfiere en el otro.
Si un sistema es multiprocesador, tambin pueden presentarse situaciones de concurrencia siempre y
cuando las actividades necesiten actuar entre s, bien por utilizar informacin comn o por cualquier otra causa.
Con este ejemplo podemos resumir estos conceptos:
Supongamos un estudiante que tiene que preparar varias asignaturas durante el curso. Relacionamos el
estudiante con un ordenador con un nico procesador, su cerebro. Una organizacin secuencial del estudio de las
asignaturas podra ser estudiar una asignatura durante un nmero de das hasta aprenderla, despus otra
asignatura y as sucesivamente hasta preparar la ltima. Otra organizacin podra ser estudiar cada da un poco de
cada asignatura. En cada instante de tiempo estar estudiando una nica asignatura, pero visto el trabajo a una
escala macroscpica al cabo del curso podramos afirmar que el estudiante ha llevado las asignaturas en paralelo o
de forma concurrente.
Durante el proceso de aprendizaje habr momentos en que tendr que abandonar temporalmente sta
para realizar otras tareas, como atender una llamada de telfono o abrir la puerta. Al aadir estas nuevas tareas de
su quehacer cotidiano el estudiante necesita una cierta planificacin que le permita determinar cundo debe pasar
de la ejecucin de una tarea a otra. Dicha planificacin forma parte de su modus operandi o sistema operativo;
segn ste, el estudio de una asignatura se realizar durante un cierto intervalo de tiempo, transcurrido el cul se
producir el cambio a otra asignatura. Si durante el estudio se produce, por ejemplo, una llamada telefnica, el
estudiante la atender y salvo que la llamada le obligue a realizar otra tarea como salir a comprar comida para los
amigos que le acaban de comunicar que van a venir a cenar, proseguir su estudio.
Si este ejemplo lo pasramos ms al campo informtico, podemos situarlo en la ejecucin de un programa
de edicin de textos. Aunque los procesos de edicin se pueden considerar independientes, lo cierto es que stos
compiten por el uso de los recursos del sistema, de manera que se necesitan herramientas que permitan la
sincronizacin y la comunicacin entre los mismos. A veces dos o ms procesos cooperan para alguna operacin
comn. En cualquier instante, slo un proceso estar en ejecucin mientras que los otros estarn preparados para
acceder al procesador cuando lo disponga el SO, o bloqueados, esperando que ocurra algn evento que les permita
volver a estar dispuestos para acceder al procesador.
6.2. EXCLUSIN MTUA.
Es una sincronizacin por la cual una actividad impide que otras puedan tener acceso a un dato mientras
se encuentra realizando una operacin sobre el mismo.
Cuando se realiza una operacin de escritura y otro proceso diferente de lectura quiere entrar, se ha de
bloquear este ltimo proceso, pues sus datos seran inconsistentes. Hasta que no se terminan de modificar unos
campos o ampliar o reducir el fichero, no podemos leer datos fiables y seguros.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Si realizamos una operacin de lectura y otro proceso diferente de lectura quiere entrar, pueden
perfectamente aunque sea el mismo registro.
La zona de cdigo de un proceso que no puede ser interrumpida por otro, se denomina seccin crtica.
6.3. SINCRONIZACIN.

Es un elemento necesario para asegurar la exclusin mutua.

Si una actividad desea impedir que otra acceda a ciertos datos compartidos, mientras no se cumpla una
determinada condicin, debemos sincronizar las actividades con dicha condicin.
 1.-Espera activa. Son aquellos algoritmos que basan todo su funcionamiento en establecer la espera de
entrada a la seccin crtica con un bucle que ser roto en el momento en que se cumpla una determinada
condicin.
Se llaman de espera activa porque el proceso no queda bloqueado durante su ejecucin, sino que estar
compitiendo por el procesador constantemente. Por este motivo, estos algoritmos sobrecargan el sistema
innecesariamente.
Los primeros en utilizarse y han sido sustituidos por otros ms eficientes.
Ente los distintos algoritmos este tipo existentes podemos citar:


Espera con mutex.- Algoritmo que utiliza un switch (MUTEX) a travs del cual se produce la
sincronizacin.

Alternancia.- Ligeramente mejor que el anterior, utiliza tambin una variable TURNO para realizar el
sincronismo entre los procesos

Algoritmo de DEKKER . Resuelve el problema mediante la solucin propuesta por Dekker, basando su
funcionamiento en una tabla unidimensional de dos elementos lgicos (Switches).

2.- Espera no activa. Son los algoritmos que establecen la espera para entrar en la seccin crtica
bloqueando el proceso, haciendo que deje de competir por el procesador hasta que se cumpla
la condicin de desbloqueo.

Semforos.- Gestiona el trfico de procesos que desean acceder a datos compartidos. Es un mecanismo
basado en una variable entera utilizada como contador de peticiones de entrada a una seccin crtica. Esta
variable es compartida por todos los recursos del sistema.
Con este sistema, cuando un proceso intenta entrar en una seccin crtica mientras otro est
accediendo a los datos compartidos, se bloquear de igual manera que cuando un proceso accede a un
recurso que est ocupado.

Regiones crticas.- Slo permiten que los datos compartidos se puedan acceder desde determinadas
regiones, para protegerse de algunos usuarios. No sincronizan bien y no permiten actividades de lectura
simultnea.

El algoritmo de Dekker es un algoritmo de programacin concurrente para exclusin mtua, que permite a dos procesos hilos de ejecucin compartir un
recurso sin conflictos. Fue uno de los primeros algoritmos de exclusin mutua inventados, implementado por Edsger Dijkstra. Si ambos procesos intentan
acceder a la seccin crtica simultneamente, el algoritmo elige un proceso segn una variable turno. Si el otro proceso est ejecutando en su seccin crtica,
deber esperar su finalizacin.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Regiones crticas condicionales.- Consiste en una mejora del mtodo anterior tratando de resolver los
problemas de sincronizacin.

Monitores.- Solucionan el problema de los anteriores que necesitaban que el programador tena que
proporcionar de forma explcita el modo de sincronizacin.
Un monitor permite compartir, segura y eficientemente, datos entre varias actividades,
garantizando la exclusin mutua, sin necesidad de que el programador tenga que suministrarla
explcitamente.
Se basa en dos premisas:
La primera es la abstraccin de datos consistente en una tcnica capaz de separar las
operaciones a ejecutar sobre los datos, de los detalles de diseo propios de los mismos ADA y
MODULA).
La segunda es que realizan la exclusin mutua de forma implcita.

 Contadores de eventos.- Es un mecanismo para sincronizar actividades sin que sea necesario forzar la
exclusin mutua, ya sea porque no deseamos limitar la concurrencia de las actividades, o simplemente
porque no lo necesitemos. Se basa en una variable entera cuya misin es contar determinadas
operaciones.
 Mensajes.- Es un mecanismo que permite a los procesos intercambiar aquella informacin que sea
necesaria durante el desarrollo normal de su ejecucin.
Es ms un mecanismo de cooperacin que de sincronizacin.
Esta cooperacin se realiza por medio de mensajes que se envan entre s los procesos, guardando estos
mensajes en un zona de memoria compartida.
Existen dos tipos de comunicacin entre procesos: Directa e indirecta.
o
Directa.- Los procesos envan y reciben los mensajes directamente entre s, de manera que se
asocia un enlace bidireccional nico entre cada dos procesos.
o
Indirecta.- Los mensajes son enviados y recibidos a travs de mailboxes o buzones de correos.
Con este mtodo cada proceso puede estar relacionado con tantos buzones como desee
consiguiendo comunicarse con tantos procesos como sea necesario.
 Llamadas remotas.- Es una mezcla entre el concepto de mensaje y paso de parmetros, siendo dicha
ejecucin concurrente. Este tipo de interaccin asegura que hasta que un proceso no termine
determinadas operaciones, el siguiente permanecer a la espera.
 Rendez-vous.- Es una modificacin del mtodo de las llamadas remotas, donde la llamada, en lugar de ser
a todo un procedimiento, lo es solamente a un grupo de sentencias dentro de l.
o
Se trata de un procedimiento similar al monitor, pero con ms versatilidad y potencia.
o
Se ha llevado a la prctica con el lenguaje ADA.
 3.-Mecanismos hardware.- Son instrucciones hardware que aseguran la exclusin mtua. Entre las ms
utilizadas se citan las siguientes: Deshabilitar interrupciones, Instruccin TEST_AND_SET, LOCK.
 Deshabilitar interrupciones.-Por este medio, se puede forzar la exclusin mutua deshabilitando las
interrupciones mientras haya alguna actividad en las seccin crtica.
 Instruccin TEST_AND_SET.- Es una instruccin mquina para forzar la exclusin mutua. No puede ser
interrumpida por ser una instruccin hardware.
 LOCK.- Se basa en la anterior, adems permite el acceso a la seccin crtica a un proceso en caso de no
existir otra actividad.

7. - INTERBLOQUEO
Se define como la situacin de un conjunto de procesos en un estado de espera tal que ninguno de ellos tiene
suficientes criterios para continuar su ejecucin. Tambin conocido como abrazo mortal (deadlock).
Recursos:

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Se entiende como recurso un elemento que un programa o proceso puede utilizar en la


computadora donde se est ejecutando. Es algo (hardware o software) que puede ser utilizado
por un solo proceso en un instante dado.

Para que un proceso pueda utilizar un recurso, deber realizar la siguiente secuencia de
operaciones:

Solicitar el recurso (sino est disponible se bloquea hasta poder ser asignado).

Utilizar el recurso

Liberar el recurso

Modelo:

Los principios en que se basa todo sistema informtico:

Posee un nmero finito de recursos

Existe un nmero finito de procesos que compiten por los recursos.

Los recursos se pueden dividir en tipos de tal forma que cada uno de ellos est compuesto por
recursos idnticos entre s.

Los procesos deben realizar las tres acciones expuestas anteriormente sobre los recursos:
solicitar, utilizar y liberar.

Un proceso puede pedir tantos recursos como necesite para realizar su trabajo, ya sean del
mismo tipo o no, siempre que no excedan del total existente en el sistema.

Las operaciones sobre los recursos se realizarn a travs de llamadas al S.O., de manera que si
se solicita un recurso que est siendo utilizado, quedar bloqueado en espera de que se libere
dicho recurso.

Postergacin indefinida:

La postergacin indefinida (starvation), consiste en que un recurso puede quedar esperando


indefinidamente mientras otros reciben la atencin del sistema.

Este tipo de problemas suele surgir en sistemas gestionados por prioridades, pues puede quedar
un proceso bloqueado porque lleguen procesos con mayor prioridad. Una forma de corregirlo es
con el envejecimiento de prioridades.

Condiciones de interbloqueo:


Podemos asegurar que un conjunto de procesos ha llegado al interbloqueo si se cumplen las


siguientes condiciones: Exclusin mutua, posesin y espera, no apropiacin y espera circular.


Exclusin mutua.- Existencia al menos de un recurso compartido por los procesos, al


cual slo puede acceder uno simultneamente.

Posesin y espera.- Debe existir algn proceso que tenga asignado un recurso y est
esperando a que se le asignen otros que estn siendo utilizados por otros procesos.

No apropiacin.- Los recursos no pueden ser apropiados por los procesos, es decir, los
recursos slo podrn ser liberados voluntariamente por sus propietarios.

Espera circular.- Si existen varios procesos que se estn esperando cclicamente.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

En caso de que alguna de las condiciones anteriores no estuviera presente, podemos


asegurar sin ningn gnero de dudas que no existe interbloqueo.

Tratamiento de interbloqueo:

Existen cuatro estrategias para el tratamiento del interbloqueo: ignorar, prevenir, evitar y
detectar y recuperar.


1.- Ignorar.- Se trata de no tener en cuenta en el S.O. este tipo de situaciones, teniendo en
cuenta que su aparicin es bastante improbable. La solucin es volver a arrancar el sistema. Se
le llama algoritmo del avestruz. Es decir, mete la cabeza bajo tierra e ignora el problema. Linux
funciona con este algoritmo.9

2.- Prevenir.- Consiste en evitar alguna de las cuatro condiciones que deben estar presentes
para que pueda aparecer el interbloqueo, con lo cual nunca se podr presentar tal situacin.

3.- Evitar.- Se pueden evitar los posibles interbloqueos siempre y cuando tengamos disponible
cierta informacin sobre los recursos que necesita cada proceso por adelantado. Para evitar el
interbloqueo se han estudiado diversos mtodos, entre los que podemos citar el algoritmo del
banquero.


Algoritmo del banquero. Este algoritmo usualmente es explicado usando la analoga


con el funcionamiento de un banco. Los clientes representan a los procesos, que
tienen un crdito lmite, y el dinero representa a los recursos. El banquero es el
sistema operativo.

El banco confa en que no tendr que permitir a todos sus clientes la utilizacin de
todo su crdito a la vez. El banco tambin asume que si un cliente maximiza su crdito ser
capaz de terminar sus negocios y retornar el dinero de vuelta a la entidad, permitiendo servir a
otros clientes.


4.- Detectar y recuperar: Consiste en abortar un proceso cuando existen indicios de que se
pueda producir interbloqueo. Para abortar un proceso, el sistema operativo se basa en varias
caractersticas del mismo: prioridad, tiempo de procesador usado, tipo de recursos utilizados,
necesidades de recursos y facilidad de suspensin/reanudacin.
4.1.- Prioridad- Se elimina el menos prioritario.

4.2.- Tiempo de procesador usado.- Cuanto menos tiempo haya estado el proceso a abortar
menos trabajo se pierde y ms fcil ser recuperarlo.
4.3.- Tipo de recursos utilizados.- Si los recursos son muy crticos y escasos, ser preferible
liberarlos cuanto antes.
4.4.- Necesidad de recursos.- Es conveniente eliminar aquellos procesos que necesitan un gran
nmero de recursos.
4.5.- Facilidad de suspensin/reanudacin.- Se eliminarn antes aquellos procesos cuyo trabajo
perdido sea fcil de recuperar.

8. ALGORITMOS DE PLANIFICACIN.
El planificador del procesador tiene como misin la asignacin del mismo a los procesos que estn en la
cola de procesos preparados. Esta cola es alimentada desde dos puntos distintos:

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

 Cada vez que un usuario inicie la ejecucin de un programa, el planificador a largo plazo recibe la
orden de ejecucin, crea el proceso y lo pasa al planificador a corto plazo, colocndose en la cola de procesos
preparados.
 Cuando un proceso deja de estar en estado de ejecucin y no existen causas para su bloqueo, o
deja de estar bloqueado, pasa nuevamente a la cola de procesos preparados.

Las polticas de planificacin se agrupan en:

 Polticas expropiativas o apropiativas o expulsora.- Son las que producen un cambio de proceso
con cada cambio de contexto; es decir, el proceso que est haciendo uso del procesador puede ser temporalmente
suspendido y permitir que otro proceso se apropie del procesador. Se utilizan en sistemas operativos con tiempo
compartido y tiempo real.
 Polticas no expropiativa o apropiativas o no expulsora.- Son aquellas en las que un proceso no
abandona nunca el procesador desde su comienzo hasta su fin. Se utilizan en sistemas de proceso por lotes.
8.1.- Planificacin por prioridades.Esta poltica asocia a cada proceso una prioridad.

Las prioridades puede ser definidas interna o externamente. En el primer caso, el sistema operativo se
basa en una serie de informaciones medibles para el clculo y asignacin de dichas prioridades (tiempo
necesitado de procesador, necesidad de memoria, etc.)

El principal problema de esta poltica es el bloqueo o postergacin indefinida, ya que un proceso de baja
prioridad puede estar esperando su turno indefinidamente.

Para evitar lo anterior, se suele emplear lo que se denomina envejecimiento de las prioridades, que
aumenta gradualmente las prioridades de los procesos que estn a la espera de utilizar el procesador.

El valor inicial puede ser asignado por el usuario o por el sistema. La asignacin puede se de dos tipos:
a) Esttica.- en cuyo caso no cambia durante el tiempo en que el proceso existe.
b) Dinmica.- cuando la prioridad puede ser modificada por el propio usuario o sistema. La
modificacin se suele realizar en funcin de ciertos parmetros como la cantidad de memoria que utiliza,
el nmero de acciones de E/S que lleva realizado, el tiempo medio de utilizacin del procesador hasta ese
momento, el nmero de ficheros abiertos, etc.

Las caractersticas de la poltica de prioridad son:


o

Puede ser apropiativo o no apropiativo. En el primer caso, un proceso puede ser retirado del
procesador si aparece otro de mayor prioridad en la cola de procesos preparados.

Puede ser injusto.

8.2.- Planificacin Primero en llegar, primero en ser servido (FCFS).


En esta poltica de planificacin FCFS (First Come, First Served), el procesador ejecuta cada proceso hasta
que termina: por tanto, los procesos que entren en cola de procesos preparados permanecern
encolocados en el orden en que lleguen hasta que les toque su ejecucin. Este mtodo se conoce tambin
como primero en entrar, primero en salir (First Input, First Output-FIFO).

Las caractersticas de esta poltica son:

No es apropiativa

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Es justa, aunque los procesos largos hacen esperar mucho a los cortos.

Es una poltica predecible

El tiempo medio de servicio es muy variable en funcin del nmero de procesos y su


duracin.

No se utiliza mucho solo, aunque si en combinacin con otros algoritmos.

8.3- Planificacin Primera tarea ms corta (Planificacin SJF).(SJN)


El mtodo SJN (Shortest Job Next) o SJF (Shortest Job First) es una poltica de planificacin que tata de
cubrir los mismos objetivos que la RR.

Esta poltica toma de la cola de procesos preparados el que necesite menos tiempo de ejecucin para
realizar su trabajo.

Para lo anterior, debe saber el tiempo de procesador que necesita cada proceso mediante mtodo como
pueden ser la informacin suministrada por el propio usuario, por el propio programa, basndose en la
historia anterior (heurstica), etc.

Las caractersticas de la poltica SJN o SJF son:

No es apropiativa

El tiempo de espera aumenta de acuerdo con la longitud de los procesos, pero el


tiempo medio de espera con respecto a otras polticas es ptimo.

Es poco predecible

No es justa con los procesos largos

Buen tiempo de servicio

Resulta difcil de poner en prctica por los datos que necesita para realizarse la
planificacin.

8.4.- Planificacin Round-Robin (RR).


Su traduccin podra ser asignacin cclica o planificacin en rueda, es una mejora de FCFS. Trata de ser
ms justa en cuanto a la respuesta tanto de los procesos cortos como de los largos.

Consiste en conceder a cada proceso en ejecucin un determinado perodo de tiempo q (quantum),


transcurrido el cual, si el proceso no ha terminado, se le devuelve al final de la cola de procesos
preparados, concedindose el procesador al siguiente proceso por su correspondiente quantum.

Esta interrupcin peridica contina hasta que el proceso termine su ejecucin, formando una rueda de
procesos que sern ejecutados, cclicamente hasta que terminen.

La gestin de la cola de procesos preparados se puede realizar de muy diversas maneras, siendo las ms
comunes la FIFO o por prioridades, donde los procesos se ordenan segn su prioridad.

10

Las caractersticas de la poltica R-R son:

Baja sobrecarga si el cambio de contexto es eficiente y los procesos siempre estn en


la memoria principal

El tamao ptimo del quantum depende de:

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Es una poltica apropiativa

El tipo de sistema

Las cargas que vaya a soportar el sistema

El nmero de procesos en el sistema y su tipo

Es la poltica ms utilizada para tiempo compartido

Ofrece un ndice de servicio uniforme para todos los procesos.

8.5.- Planificacin El siguiente proceso, el restante ms corto (SRT).


La poltica SRT (Shortest Remainining Time) es una mezcla de los dos mtodos anteriores (RR y SJN).

Trata de obtener las ventajas de ambos

Esta tcnica cambia el proceso que est en ejecucin cuando se ejecuta un proceso (paso del planificador
de largo plazo al de corto plazo), con una exigencia de tiempo de ejecucin total menor que el que se est
ejecutando en el procesador.

El valor del tiempo de respuesta medio de los procesos largos mejora con respecto a SJN.

Las caractersticas de la poltica SRT son:

Es una variante de SJN, para hacerla apropiativa

Puede ser injusta, ya que un proceso corto puede echar a uno largo que est haciendo
uso del procesador y que adems est terminando

Presenta una mayor sobrecarga

Excelente tiempo medio de servicio

Es muy eficiente.

8.6.- Planificacin Prximo el de ms corto ndice de respuesta (HRN)


HRN (High Response Next) es una poltica que trata de corregir las posibles injusticias de la poltica SJN con
los procesos largos y las de la poltica FCFS con los procesos cortos.

11

Presenta los siguientes inconvenientes:

Si un usuario ejecuta un proceso corto inmediatamente despus de que un proceso


largo hay comenzado a utilizar el procesador, deber sufrir una larga espera.

Es muy costosa de llevar a la prctica, ua que la prioridad de be calcularse para todos


los procesos en espera, cada vez que termine el proceso que est haciendo uso del
procesador

Sobrecarga mucho el sitema debido a los clculos que debe realizar.

Las caractersticas de la poltica HRN son:

No es apropiativa

Es justa

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Es costosa de poner en prctica

Produce una gran sobrecarga en el sistema.

8.7.- Planificacin Colas mltiples


Cuando los procesos que van a ser ejecutados en una computadora se pueden agrupar en distintos
grupos, podemos asignarlos a diferentes colas, cada una con distinta planificacin, para darle a cada una de
ellas la que realmente necesite.

Esta poltica divide la cola de procesos preparados en varias colas separadas, de manera que los
procesos se asignan a una determinada cola segn sus necesidades y tipo.

Para determinar en cada caso qu cola es la que suministrar un proceso para que acceda al
procesador cuando ste deje a otro anterior, ser controlada por un algoritmo de planificacin
entre las colas, que normalmente es apropiativo de prioridad fija.

Un algoritmo de planificacin con una variante al de planificacin por prioridad.

Este algoritmo consiste en dar distinto quantum a cada una de las distintas colas que agrupan los procesos
de una misma prioridad. De esta manera se intenta beneficiar ciertos procesos cuyo tiempo de ejecucin
mayor, mejora ostensiblemente la eficiencia del trabajo con procesos con prioridad.

En este algoritmo los procesos de mayor prioridad se ejecutan en un quantum. Los procesos de la
siguiente clase se ejecutan en dos quantum, los de la siguiente clase en 4 quantum, y as sucesivamente.
Cuando un proceso consume todos los quantum asignados a l, se le mueve a la siguiente clase.

8.8.- Planificacin Colas mltiples con realimentacin (FB)


La poltica FB (Feedback Multiple Queues) intenta dar un trato justo a los procesos por medio de
separacin de los mismo en categoras, para as darles el servicio que necesitan.

Para dar un trato justo a los procesos, es necesario conocer previamente todos sus parmetros
caractersticos: la longitud, si estn limitados por entrada/salida o por procesador, la memoria que van a
necesitar, etc. Como estos datos no suelen ser conocidos, es difcil determinar el trato que debe recibir
cada proceso.

Este mtodo divide los procesos en varias colas de procesos preparados: cola 0, cola 1.., de manera que
las de numeracin ms baja tendrn asignadas mayor prioridad.

Los procesos limitados por procesador irn a las colas de menor prioridad (nivel ms alto), mientras los de
mayor prioridad sern aquellos procesos muy interactivos.

Cuando el proceso que est haciendo uso del procesador finaliza su quantum, se selecciona un nuevo
proceso del principio de la cola del nivel ms bajo que tenga algn proceso.

Una vez que un proceso haya consumido el quantum de su cola un determinado nmero de veces, sin
haber finalizado su ejecucin, ser colocado al final de la de nivel inmediatamente superior al anterior.

12

Las caractersticas de la poltica FB son:

Es apropiativa

Soporta bien la sobrecarga

Es muy adaptable a las necesidades del sistema, ya que cada cola puede ser
gestionada de forma diferente.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

8.9.- Planificacin garantizada


Es una tcnica en la que se establecen verdades compromisos de desempeo con el usuario y se debe de
sujetar a ellos.

Para mantener esa promesa, el sistema debe de tener un registro del tiempo de CPU que cada usuario ha
tenido desde su entrada al sistema, as como del tiempo transcurrido desde esa entrada. Posteriormente,
calcula entonces la cantidad de tiempo en CPU prometida al usuario, es decir, el tiempo transcurrido
desde la entrada, dividido entre n (n de procesos). Puesto que tambin se conoce la cantidad de tiempo
en CPU realmente utilizada por el usuario, mediante un clculo directo se obtiene la proporcin del
tiempo de CPU real entre el tiempo de CPU prometido.

Una proporcin de 0,5 indica que un proceso slo ha dispuesto de la mitad del tiempo debido, mientras
que una proporcin de 2 indica que un proceso ha usado el doble de lo que debera.

El algoritmo ejecuta entonces el proceso con la menor proporcin, hasta que sta se acerque a la de su
competidor ms cercano.

 Qu algoritmo de planificacin se debe elegir para un sistema determinado?. Ser misin del diseador
del sistema operativo la eleccin de los mecanismos apropiados para que la poltica elegida partiendo de los
criterios anteriores sea satisfactoria y ofrezca un alto rendimiento global.


A veces ocurre que un proceso tiene muchos hijos ejecutndose bajo su control. Por desgracia, ninguno
de los planificadores analizados anteriormente acepta datos de los procesos del usuario relativos a
decisiones de planificacin. Como resultado, el planificador pocas veces hace la mejor eleccin.

La solucin a este problema es separar el mecanismo de planificacin de la poltica de planificacin. Es


decir, el algoritmo de planificacin deber quedar parametrizado y los parmetros debern de ser
determinados por medio de procesos del usuario.

9.-CUESTIONES
a) Representacin grfica de la planificacin de procesos.
A los grficos que se utilizan para ver el funcionamiento de los algoritmos de planificacin o cronogramas
tambin se les denominan diagramas de Gantt, que son unos grficos ideados por H. L. Gantt en la segunda dcada
de siglo XX para organizar actividades, mostrando las fechas o tiempos de inicio de cada actividad y su durancin
estimada.
En stos se representa el eje de abcisas el tiempo y en el eje de coordenadas los procesos que se
planifican para su ejecucin por la CPU. Para cada proceso, una lnea o un rectngulo muestra el tiempo en que
dicho proceso dispone de la CPU. A continuacin se muestra el diagrama de Gantt de tres procesos; P1, P2, P3, que
se ejecutan en este orden, con tiempos de ejecucin t1, t2 y t3 y de conmutacin de tareas, c.
c)

13

Durante la ejecucin de un programa, ste transcurre entre fases de clculo y fases de e/s. Estos
dispositivos son ms lentos comparados con el procesador, ello hace que el procesador est desocupado a
menudo, durante bastante tiempo, esperando que termine la operacin de e/s antes de seguir con la
ejecucin de dicho programa. Si dos programas tienen un comportamiento idntico con el procesador y
con las operaciones de e/s, podramos decir que el procesador pasa parte del tiempo ejecutando el
programa hasta que encuentra una instruccin de e/s, con lo que esperar hasta que sta termine para
continuar. Podemos verlo en el siguiente dibujo de dos programas en serie:

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

P1

e/s

P1

e/s

P1

P2

e/s

P2

e/s

P2

+c

+t

+c

+t

+t

+c

+t

+c

+t

El tiempo total que ha necesitado los dos procesos para terminar su ejecucin ha sido el tiempo necesario
del proceso P1 (3t), del proceso P2 (3t) y el tiempo que han tenido que estar en espera por las cuatro operaciones
de e/s que se han realizado y en las que el procesador ha estado desocupado (4c).
Este desaprovechamiento del procesador puede solucionarse si se dispone de suficiente memoria para
alojar a los dos programas, cuando un proceso en ejecucin necesite esperar por una operacin de e/s, el
procesador puede pasar a ejecutar el otro trabajo, que probablemente no estar esperando por una e/s. Quedara
as:

P1

P2

P1

P2

P1

P2

t1

+c

+ t1

+c

+ t1

+ t2

c) Transiciones que se producen entre los diferentes estados de un proceso por actuacin del planificador
a corto plazo (PCP), el planificador a medio plazo (PMP) y el planificador a largo plazo (PLP).
El planificador a corto plazo selecciona, en base a un determinado algoritmo, el proceso que pasar al estado activo
de entre todos los procesos que estn en el estado de preparado.

Lista de estados

PCP

Activo

preparados
Transicin entre estados a que da lugar la accin del planificador a corto plazo
El planificador a medio plazo selecciona el proceso que pasar al estado preparado de entre todos los procesos que
estn en el estado bloqueado pero que adems se encuentran en memoria secundaria. La caracterstica de este
planificador es que forma parte de la funcin de intercambio o swapping relativa a la gestin de memoria.

Lista de estados

Lista de estados
PMP
Bloqueados en memoria
secundaria

preparados

Transicin entre estados a que da lugar la accin del planificador a medio plazo
El planificador a largo plazo determina que procesos se admiten en el sistema es por ello que el proceso pasar del
estado nonato al estado de preparado.

nonato

PLP

Lista de estados
preparados

Transicin entre estados a que da lugar la accin del planificador a largo plazo

14

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

a)

Los criterios de planificacin ms utilizados son el tiempo de retorno o regreso, el tiempo de espera, el
rendimiento y la eficacia. Explicar dichos conceptos de manera sencilla y breve.
Entre las medidas de rendimiento y los criterios de optimizacin ms habituales que los planificadores
pueden utilizar en su intento de maximizar el rendimiento del sistema se incluyen:

b)

El tiempo de retorno o regreso es el tiempo que transcurre desde que un proceso se crea hasta
su finalizacin.

El tiempo de espera es el tiempo que un proceso o trabajo consume esperando la asignacin de


recursos debido a la competencia con otros en un sistema multiprogramacin. En otras
palabras, el tiempo de espera es la penalidad impuesta por compartir recursos con otros
procesos.

El rendimiento o productividad es el nmero de procesos terminados por unidad de tiempo.


Esta medida indica la cantidad de trabajo que se est llevando a cabo.

La eficacia o utilizacin es el porcentaje de tiempo en el que el procesador est ocupado.

Ecuacin que relaciona los siguientes perodos de tiempo de un trabajo: tiempo de retorno, tiempo de
ocupacin de la CPU y tiempo de espera.
El tiempo de retorno R, es la suma del tiempo de ejecucin real o de ocupacin del procesador, U, y el
tiempo consumido en la espera por los recursos, E, incluido el procesador. Expresado matemticamente:
R= E+U

c)

Expresin matemtica que expresa los conceptos de eficacia y rendimiento:


Dentro del conjunto de criterios con los que se evala las diversas estrategias de planificacin se
encuentra la eficiencia (Ef) que corresponde al tiempo medio de utilizacin del procesador.
Matemticamente se puede expresar como la fraccin entre el tiempo de ejecucin til o real., U, y el
tiempo de uso de la CPU total, T, de ese proceso (expresado en tanto por ciento):
Ef= U/T * 100%
El rendimiento o productividad P, es una medida del nmero de trabajos completados por unidad de
tiempo. De esta forma, si es N, el nmero de procesos completados en S segundos, su expresin sera:
P=N/S

d)

15

Se tienen 3 procesos P1, P2 y P3, con tiempos de ejecucin, 85,45 y 118 ms, respectivamente. Si acta el
planificador a corto plazo segn el algoritmo SJF determinar el orden en que se encuentran en la lista de
preparados. En qu se diferencia si el planificador fuera a largo plazo?.
a)

El proceso seleccionado ser aqul que posea menor tiempo de ejecucin. De esta forma el primer
proceso que pasar al estado activo de entre estos tres procesos ser P2, pues 45 ms es el menor
tiempo de ejecucin. Cuando este proceso finaliza su ejecucin ser de nuevo llamado el algoritmo
de planificacin que en este caso seleccionar al proceso P1 para su ejecucin, cuando ste muera se
pasar a ejecutar el P3.

b)

La estrategia no vara, el orden de seleccin ser el mismo. Pero esta seleccin no sera para pasar a
ejecucin, sino a la lista de procesos en estado de preparados.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

e)

Para los tres procesos anteriores calcular sus tiempos de retorno, de espera, rendimiento y eficacia del
sistema. Dibujar el diagrama de Gantt o diagrama temporal de la posesin del procesador.

P2

P1

P3

45

130

248

Proceso P1:

Tiempo de retorno: R1: 130 ms

Tiempo de espera: E1:R1-U1=130-85=45 ms

Eficacia Ef1: Ef1=U1/T1 *100=85/130 *100= 65,38%

Proceso P2:

Tiempo de retorno: R2: 45 ms

Tiempo de espera: E2:R2-U2=45-45=0 ms

Eficacia Ef2: Ef2=U2/T2 *100=45/45 *100= 100%

Proceso P3:

Tiempo de retorno: R3: 248 ms

Tiempo de espera: E3:R3-U3=248-118=30 ms

Eficacia Ef3: Ef3=U3/T3 *100=118/248 *100= 47,58%

El rendimiento del sistema es:


P= N/S= 3/248=0,012

f)

Si el tiempo de retorno o regreso de un proceso, P1, es de 30 ms y el de ejecucin real de 10 ms, cul ser
el tiempo de retorno o regreso de P1 y P2?.
La expresin que relaciona el tiempo de retorno con el tiempo de espera es:
R= E+U
Por lo tanto:
E=R-U = 30-10 =20 ms
La eficacia ser:
Ef=U/T *100=10/30*100=33,33 %
El rendimiento ser:
P=N/S=1/30=0,033

16

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

g)

Se tienen dos procesos, P1 y P2, de tiempos de ejecucin 25 y 30 ms, respectivamente. El planificador a


corto plazo acta segn el algoritmo RR o de prioridad circular con quantum de 10 ms. Cul ser el
tiempo de retorno o regreso de P1 y P2?
De acuerdo con este algoritmo los procesos en la lista de preparados irn pasando a ejecucin de manera
secuencial durante un tiempo definido igual a 10 ms. Cuando terminan de tomar el procesador todos los
procesos de la lista durante el tiempo establecido vuelven a comenzar, de ah el nombre de prioridad
circular. Si el orden en la lista de preparados es primero P! y despus P2, entonces pasar a ejecutarse P1
durante 10 ms y despus P2 durante otros 10 s. De nuevo comienza el ciclo con P1 durante 10ms, y a
continuacin P2 con el mismo quantum. Finalmente comienza su ejecucin P1 pero no necesita todo el
quantum asignado para terminar, solamente 5 ms. Al terminar este proceso, es estado global del sistema
vara por lo que de nuevo se vuelve a llamar al planificador, como slo el proceso P2 est en la lista de
preparados pasar a ejecucin requiriendo todo el quantum asignado para terminar su ejecucin por
completo. De esta forma el tiempo de retorno para el proceso P1 es el tiempo que transcurre desde que
se crea (se supone que ambos procesos se crean al tiempo 0 ms) hasta que finaliza su ejecucin. Por lo
tanto, se debe contabilizar el tiempo en el que finalizan su ejecucin ambos procesos. Para P1
corresponde a dos ciclos totales ms 5 ms, en total 45 ms y para P2 sern 10 ms ms, es decir 55 ms. Si se
representa el diagrama de Gantt se pueden observar de forma ms clara los tiempos de retorno:

h)

P1

P2

P1

P2

P1

P2

2510=15

3010=20

15-10=5

2010=10

5-5=0

10-10=0

10

20

30

40

45

55ms

Sean dos procesos: P1 con tiempo de ejecucin de 20 ms y P2 con 15 ms. El planificador a corto plazo
acta segn el algoritmo de prioridad circular con quantum de 10 ms y tiempo de conmutacin de tarea
de 5 ms. Marcar el tiempo de retorno (regreso) de P1 y P2.
El proceso P1 comienza su ejecucin, transcurrido el quantum de 10 ms tiene lugar el cambio de contexto
que tarda 5 ms y cambia a la ejecucin del proceso P2 durante otros 10 ms. A continuacin tiene lugar
otro ciclo, pasa a ejecutarse el proceso P1 que finaliza su ejecucin con el cuanto, por lo que su tiempo de
retorno es de 40 ms. Transcurrido el tiempo de conmutacin de tarea necesario para que el proceso P2
sea planificado, comienza ste a ejecutarse, pero no necesitar todo el cuanto sino que transcurridos 5 ms
finaliza su ejecucin, por lo que el tiempo de retorno es de 50 ms. Con el diagrama de Gantt observamos
que el tiempo de retorno para el proceso p1 es de 40 ms y para el proceso P2 es de 50 ms.

17

P1

P2

P1

P2

20-10

15-10

10-10

10

15

25

30

40

45

50

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

10.-PROBLEMAS
1) Supngase que se tienen que realizar cinco trabajos cuyas caractersticas se muestran en la tabla siguiente,
llegando en el mismo orden en el que se muestran:
Trabajo

Tiempo de ejecucin

Prioridad

10

Tabla 1.1
Se pide:
A)

Realizar los diagramas de Gantt que ilustren la ejecucin de estos trabajos utilizando los algoritmos
siguientes: FCFS (primero en llegar primero en ser servido), SJFS (primera tarea ms corta), SRT (tiempo
que queda ms corto), RR (prioridad circular) con un quantum de 1 ms y, finalmente una planificacin por
prioridades no expropiativa.

B)

Determinar para cada uno de los procesos con cada uno de los algoritmos de planificacin anteriores el
tiempo de retorno. Calcular la media resultante para cada algoritmo.

C)

Lo mismo que el anterior para la eficiencia.

D)

Lo mismo que el anterior para el tiempo de espera.

E)

Lo mismo que el anterior para el tiempo de respuesta.

F)

Analizar los resultados anteriores y extraer consecuencias.

18

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

2) Supngase que se tienen que realizar cinco trabajos cuyas caractersticas se muestran en la siguiente tabla:

Trabajo

Tiempo de uso de CPU

Prioridad

10

Se pide:
a)

Realizar un diagrama de Gantt que ilustre la ejecucin de estos trabajos para los algoritmos: FCFS (primero
en llegar primero en ser servido), RR (prioridad circular) con quantum de 1 ms, SJF (primera tarea ms
corta), prioridades no expropiativo.

b)

Cul es el tiempo de retorno de cada trabajo para cada uno de los algoritmos anteriores de
planificacin?, Cul es el tiempo de de espera de cada trabajo para cada uno de los algoritmos anteriores
de planificacin?. Razonar sobre el tiempo de espera medio de cada algoritmo.

1) Se deben ejecutar cinco trabajos: P1, P2, P3, P4 y P5. Sus tiempos de ejecucin (en ms) previstos son: 9, 6, 3, 5 y X.
En qu orden se deberan de ejecutar aplicando el algoritmo SJF?. Calcular el tiempo de espera medio para cada
uno de los casos. (Obviamente la solucin propuesta depender de X).
2) Se tiene un SO de tiempo real con tres tareas crticas (tienen que terminar en un tiempo mximo llamado tiempo
crtico). Estos tiempos junto con los tiempos de ejecucin por tarea se definen en la siguiente tabla:
Trabajo

Tiempo crtico

Tiempo de ejecucin

200 ms

80 ms

100 ms

40 ms

250 ms

120 ms

Se pide:
a)

Representar el orden de las tareas despus de la actuacin del planificador a largo plazo

b)

Representar el orden de ejecucin de las tareas en un diagrama de Gantt.

19

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

c)

Calcular el tiempo de retorno de las tareas, su tiempo de espera y decir si todas las tareas se ejecutan antes
de finalizar su tiempo crtico.
Para ello se debe conocer que:
-

Las tareas han llegado a la vez y el planificador a largo plazo acta segn el
algoritmo SJF.

La planificacin a corto plazo es por prioridad circular con quantum de 25 ms,


utilizando el algoritmo FSFC para determinar cual es el siguiente proceso que
pasa al estado activo.

El tiempo de conmutacin de proceso es de 0,5 ms.

Si una tarea no ha terminado al finalizar su tiempo crtico, contina hasta


completar la ejecucin.

Las tareas no realizan peticiones de e/s.

3) La siguiente tabla recoge la informacin de cinco procesos que se van a ejecutar en un sistema.
Trabajo

Tiempo de llegada (ms)

Tiempo de ejecucin (ms)

10

Calcular el tiempo de retorno de cada uno de los trabajos y representar la ejecucin en diagramas de Gantt para los
siguientes algoritmos:
a)
b)
c)

FCFS
SRT
RR, con quantum de 2 ms. Si el quantum de un proceso en ejecucin expira a la vez que la llegada de un
nuevo proceso, entonces ste se aade a la cola de procesos preparados antes que el proceso termina.
Despreciar el tiempo necesario para el cambio de contexto.

4) En la tabla siguiente se muestra el orden en el que estn las tareas en la lista de preparados (todas tienen la
misma prioridad), los cuantos que se conceden a cada tarea cada vez que obtiene la CPU (un valor fijo para cada
tarea), los tiempos que tardarn las tareas en completarse si fueran las nicas del sistema, y los tiempos mximos
permitidos (tiempo mximo entre el comienzo de la tarea hasta su finalizacin)
Suponiendo que ninguna tarea realiza ninguna operacin de e/s, decir si todas las tareas se realizarn sin
problemas (es decir, se realizan antes de su tiempo mximo permitido, no dando un error denominado time_out),
Se pide:
Dibujar un diagrama de Gantt de las tareas

20

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Calcular los tiempos de retorno de cada una de ellas.


Explicar brevemente las diferencias del algoritmo prioridad cirucular (RR) y el algoritmo aplicado.
Nota: Tener en cuenta que el quantum es de 40 ms y el tiempo de conmutacin de tarea es de 10 ms.
Trabajo

Orden en la cola

Cuantos asignados

Tiempo de ejecucin (ms)

Tiempo mximo permitido


(ms)

160

540

280

1000

200

800

200

900

400

Infinito

5) La siguiente tabla muestra informacin de cinco procesos. Calcular el tiempo de retorno de cada uno (despreciar el
tiempo de cambio de contexto) y representar la ejecucin en diagramas de Gantt para los algoritmos:

6)

a)

SJF

b)

RR, con quantum de 4 ms. Si el quantum de un proceso en ejecucin exprira a la vez que la llegada de un
nuevo proceso, entonces el nuevo proceso se aade a la cola de procesos en espera de ejecutarse antes
que el proceso que termina.

Trabajo

Tiempo de llegada (ms)

Tiempo de ejecucin (ms)

14

12

19

La siguiente tabla recoge la informacin de cinco procesos que se van a ejecutar en un sistema. Calcular el tiempo de
retorno de cada uno de los trabajos y representar la ejecucin en diagrama de Gantt para los siguientes
algoritmos:

21

a)

FCFS

b)

SJF

c)

RR, con quantum de 2 ms. Si el quantum de un proceso en ejecucin expira a la vez que la llegada de
un nuevo proceso, entonces el nuevo proceso se aade a la cola de procesos en espera de ejecutarse
antes que el proceso que termina.

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

d)

Lo mismo pero con RR con prioridades, teniendo en cuenta que la mxima prioridad corresponde a 4 y
la mnima a 1.
Despreciar el tiempo necesario para el cambio de contexto.

22

Trabajo

Tiempo de llegada ms

Tiempo de ejecucin
ms

Prioridad

TEMA 3. GESTIN DE PROCESOS. (Ampliacin).

Das könnte Ihnen auch gefallen