0% encontró este documento útil (0 votos)
52 vistas53 páginas

Procesos

El documento describe los conceptos básicos de procesos en sistemas operativos, incluyendo definiciones, estados, bloques de control de procesos y manejo de interrupciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
52 vistas53 páginas

Procesos

El documento describe los conceptos básicos de procesos en sistemas operativos, incluyendo definiciones, estados, bloques de control de procesos y manejo de interrupciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

procesos

Introducción y Definiciones Sobre Procesos


• El concepto central de cualquier Sistema Operativo es el de proceso:
una abstracción de un programa en ejecución también llamada tarea.
• No hay un acuerdo universal sobre una definición de proceso, pero sí
algunas definiciones aceptadas

• Un programa que se está ejecutando.


• Una actividad asincrónica.
• El emplazamiento del control de un procedimiento que está siendo
ejecutado.
• Aquello que se manifiesta por la existencia en el Sistema Operativo
de un bloque de control de proceso.
• Aquella entidad a la cual son asignados los procesadores.
• La unidad despachable.

Concepto de proceso
• En sistemas de multiprogramación la cpu alterna de programa
en programa, en un esquema de seudo paralelismo , es decir
que la cpu ejecuta en cierto instante un solo programa,
intercambiando muy rápidamente entre uno y otro.
• El paralelismo real de hardware se da en las siguientes
situaciones:

• En ejecución de instrucciones de programa con más de un


procesador de instrucciones en uso simultáneamente.
• Con la superposición de ejecución de instrucciones de programa
con la ejecución de una o más operaciones de entrada / salida.
• El objetivo es aumentar el paralelismo en la ejecución.
• El modelo de procesos posee las siguientes características:

• Todo el software ejecutable, inclusive el Sistema Operativo, se organiza en varios


procesos secuenciales o procesos.
• Un proceso incluye al programa en ejecución y a los valores activos del contador,
registros y variables del mismo.
• Conceptualmente cada proceso tiene su propia cpu virtual.
• Si la cpu alterna entre los procesos, la velocidad a la que ejecuta un proceso no
será uniforme, por lo que es necesario aclarar lo siguiente:
• Que los procesos no deben programarse con hipótesis implícitas acerca del
tiempo.
• Que normalmente la mayoría de los procesos no son afectados por la
multiprogramación subyacente de la cpu o las velocidades relativas de
procesos distintos.
• Un proceso es una actividad de un cierto tipo, que tiene
un programa, entrada, salida y estado.
• Un solo procesador puede ser compartido entre varios
procesos con cierto “algoritmo de planificación” , el cual
determina cuándo detener el trabajo en un proceso y dar
servicio a otro distinto (ver Figura 2.1 [23, Tanenbaum]).
• En cuanto a las jerarquías de procesos es necesario
señalar que los Sistemas Operativos deben disponer de
una forma de crear y destruir procesos cuando se requiera
durante la operación, teniendo además presente que los
procesos pueden generar procesos hijos mediante
llamadas al Sistema Operativo, pudiendo darse ejecución
en paralelo.
• Respecto de los estados del proceso deben efectuarse las
siguientes consideraciones:
• Cada proceso es una entidad independiente pero frecuentemente debe
interactuar con otros procesos (ver Figura 2.2 [23, Tanenbaum]).
• Los procesos pueden bloquearse en su ejecución porque:
• Desde el punto de vista lógico no puede continuar porque espera
datos que aún no están disponibles.
• El Sistema Operativo asignó la cpu a otro proceso.
• Los estados [23, Tanenbaum] que puede tener un proceso son (ver Figura
2.3 [23, Tanenbaum]):
• En ejecución: utiliza la cpu en el instante dado.
• Listo: ejecutable, se detiene en forma temporal para que se ejecute
otro proceso.
• Bloqueado: no se puede ejecutar debido a la ocurrencia de algún
evento externo.
• Son posibles cuatro transiciones entre estos estados.
• Durante su existencia un proceso pasa por una serie de estados discretos, siendo
varias las circunstancias que pueden hacer que el mismo cambie de estado.
• Debido a ello se puede establecer una “Lista de Listos” para los procesos “listos”
y una “Lista de Bloqueados” para los “bloqueados”.
• La “Lista de Listos” se mantiene en orden prioritario y la “Lista de Bloqueados”
está desordenada, ya que los procesos se desbloquean en el orden en que tienen
lugar los eventos que están esperando.
• Al admitirse un trabajo en el sistema se crea un proceso equivalente y es
insertado en la última parte de la “Lista de Listos”.
• La asignación de la cpu al primer proceso de la “Lista de Listos” se denomina
“Despacho”, que es ejecutado por una entidad del Sistema Operativo llamada
“Despachador”.
• El “Bloqueo” es la única transición de estado iniciada por el propio proceso del
usuario, puesto que las otras transiciones son iniciadas por entidades ajenas al
proceso.

Estados de Procesos
• La manifestación de un proceso en un Sistema Operativo
es un “Bloque de Control de Proceso” (PCB) con
información que incluye [7, Deitel]:

• Estado actual del proceso.


• Identificación única del proceso.
• Prioridad del proceso.
• Apuntadores para localizar la memoria del proceso.
• Apuntadores para asignar recursos.
• Área para preservar registros.
• Cuando el Sistema Operativo cambia la atención de la
cpu entre los procesos, utiliza las áreas de preservación
del PCB para mantener la información que necesita para
reiniciar el proceso cuando consiga de nuevo la cpu.
• Los sistemas que administran los procesos deben poder
crear, destruir, suspender, reanudar, cambiar la prioridad,
bloquear, despertar y despachar un proceso.
• La “creación” de un proceso significa:

• Dar nombre al proceso.


• Insertar un proceso en la lista del sistema de procesos
conocidos.
• Determinar la prioridad inicial del proceso.
• Crear el bloque de control del proceso.
• Asignar los recursos iniciales del proceso.
• Un proceso puede “crear un nuevo proceso”, en cuyo
caso el proceso creador se denomina “proceso padre” y
el proceso creado “proceso hijo” y se obtiene una
“estructura jerárquica de procesos”.
• La “destrucción” de un proceso implica:

• Borrarlo del sistema.


• Devolver sus recursos al sistema.
• Purgarlo de todas las listas o tablas del sistema.
• Borrar su bloque de control de procesos.
• Un proceso “suspendido” no puede proseguir hasta que
otro proceso lo reanude.
• Reanudar (reactivar) un proceso implica reiniciarlo en el
punto donde fue suspendido.
• La “destrucción” de un proceso puede o no significar la
destrucción de los procesos hijos, según el Sistema
Operativo.
• Generalmente se denomina “Tabla de Procesos” al
conjunto de información de control sobre los distintos
procesos.
• Una “interrupción” es un evento que altera la secuencia en que
el procesador ejecuta las instrucciones; es un hecho generado
por el hardware del computador
• Cuando ocurre una interrupción, el Sistema Operativo:

• Obtiene el control.
• Salva el estado del proceso interrumpido, generalmente en su
bloque de control de procesos.
• Analiza la interrupción.
• Transfiere el control a la rutina apropiada para la manipulación
de la interrupción.

Procesamiento de
Interrupciones
• Una interrupción puede ser iniciada por un proceso en
estado de ejecución o por un evento que puede o no estar
relacionado con un proceso en ejecución.
• Generalmente las interrupciones se pueden clasificar por
tipos según el siguiente detalle (ver Tabla 2.1
• “SVC (llamada al supervisor)”: es una petición generada por el usuario para un servicio
particular del sistema, por ejemplo, realización de Entrada / Salida u obtención de más
memoria.
• “Entrada / Salida”: son iniciadas por el hardware de Entrada / Salida, indicando a la cpu
que ha cambiado el estado de un canal o dispositivo, por ejemplo, finalización de Entrada /
Salida u ocurrencia de un error.
• “Externas”: son causadas por distintos eventos, por ejemplo, expiración de un cuanto en un
reloj de interrupción o recepción de una señal de otro procesador en un sistema
multiprocesador.
• “De reinicio”: ocurren al presionar la “tecla de reinicio” o cuando llega una instrucción de
reinicio de otro procesador en un sistema multiprocesador.
• “De verificación de programa”: son causadas por errores producidos durante la ejecución
de procesos, por ejemplo:
• Un intento de dividir por cero.
• Un intento de un proceso de usuario de ejecutar una instrucción privilegiada.
• Un intento de ejecutar un código de operación inválido.
• “De verificación de máquina”: son ocasionadas por un mal funcionamiento del hardware.
Tipo de Interrupción Descripción

SVC Llamada al Sistema Operativo

Entrada / Salida Cambio de estado de un canal o dispositivo

Externa Evento externo al sistema

De Reinicio Reinicio del procesamiento

De Verificación de Programa Errores de procesos

De Verificación de Máquina Errores de hardware

Tabla 2.1: Tipos de interrupciones.


• El Sistema Operativo incluye rutinas llamadas
“Manipuladores de Interrupciones (IH)” para procesar
cada tipo diferente de interrupción.
Cuando se produce una interrupción el Sistema Operativo
efectúa las siguientes acciones:

• Salva el estado del proceso interrumpido.


• Dirige el control al manipulador de interrupciones
adecuado.
• Se aplica la técnica de “Cambio de Contexto” .
• Los Sistemas Operativos instrumentan información de
control que puede aparecer como las “Palabras de Estado
de Programa (PSW)”, las cuales controlan el orden de
ejecución de las instrucciones y contienen información
sobre el estado del proceso.
• Existen tres tipos de PSW, que son la “actual”, la “nueva”
y la “vieja”.
• La “PSW Actual” almacena la dirección de la próxima
instrucción que será ejecutada e indica los tipos de
instrucciones actualmente “habilitadas” e inhabilitadas”.
• En un sistema uniprocesador existe:

• Solo una PSW actual.


• Seis PSW nuevas (una para cada tipo de interrupción).
• Seis PSW viejas (una para cada tipo de interrupción).

La PSW nueva para un tipo de interrupción dado contiene
la dirección en el hardware donde reside el manipulador
de interrupciones para este tipo específico.
• El hardware cambia las PSW en los casos siguientes:
• Al almacenar la PSW actual en la PSW vieja, para este tipo de
interrupción.
• Al almacenar la PSW nueva en la PSW actual, para este tipo de
interrupción.
• Luego de este “intercambio de PSW”:
• La PSW actual contiene la dirección del manipulador de interrupción
adecuado.
• El manipulador de interrupciones procesa la interrupción.
• Luego de procesar la interrupción, la cpu es enviada al:
• Proceso que estaba en ejecución en el momento de la interrupción, o al
• Proceso de listo de más alta prioridad.
• La acción precedente depende de si el proceso de interrupción es:
• “Apropiativo”: obtiene la cpu solo si no hay procesos de listos.
• “No apropiativo”: obtiene de nuevo la cpu.

Cuando ocurre una interrupción para la cual el procesador no


está inhabilitado, ocurren las siguientes acciones:
• El “núcleo” del Sistema Operativo controla todas las
operaciones que implican procesos y representa solo una
pequeña porción del código de todo el Sistema Operativo
pero es de amplio uso [7, Deitel].
• Generalmente permanece en el almacenamiento primario.
• El proceso de interrupciones se incluye en el núcleo ya
que debe ser rápido (especialmente en sistemas
multiusuario), para optimizar el uso de los recursos del
sistema y proveer tiempos de respuesta aceptables a los
usuarios interactivos.

El Núcleo del Sistema


Operativo
• El núcleo inhabilita las interrupciones
mientras responde a una interrupción.
Las interrupciones son habilitadas de
nuevo después de completar el
proceso de una interrupción.
• Manipulación de interrupciones.
• Creación y destrucción de procesos.
• Cambio de estados de procesos.
• Despacho.
• Suspensión y reanudación de procesos.
• Sincronización de procesos.
• Comunicación entre procesos.
• Manipulación de bloques de control de proceso.
• Soporte de las actividades de Entrada / Salida.
• Soporte de la asignación y desasignación de almacenamiento.
• Soporte del sistema de archivos.
• Soporte de un mecanismo de llamada / regreso al procedimiento.
• Soporte de ciertas funciones contables (estadísticas) del sistema.

El núcleo del Sistema Operativo


generalmente realiza las
siguientes funciones:
• Cuando más de un proceso es ejecutable desde el punto
de vista lógico, el Sistema Operativo debe decidir cuál de
ellos debe ejecutarse en primer término.
• El Planificador es la porción del Sistema Operativo que
decide y el Algoritmo de Planificación es el utilizado.
• Los principales “criterios” respecto de un buen algoritmo
de planificación [23, Tanenbaum] son la equidad, la
eficacia, el tiempo de respuesta, el tiempo de regreso y el
rendimiento (ver Tabla 2.2 [23, Tanenbaum]).

Planificación de
Procesos.
Criterio Descripción
Equidad Garantizar que cada proceso obtiene su proporción justa de la cpu
Eficacia Mantener ocupada la cpu el ciento por ciento del tiempo

Tiempo de
Minimizar el tiempo de respuesta para los usuarios interactivos
respuesta

Tiempo de Minimizar el tiempo que deben esperar los usuarios por lotes (batch) para obtener
regreso sus resultados

Rendimiento Maximizar el número de tareas procesadas por hora

Tabla 2.2: Criterios de un buen algoritmo de planificación.


• Algunas de estas metas son contradictorias, por ejemplo,
minimizar el tiempo de respuesta para los usuarios
interactivos significaría no ejecutar las tareas batch.
• Cada proceso es único e impredecible, es decir que
pueden requerir intensivamente operaciones de Entrada /
Salida o intensivamente cpu; el planificador del Sistema
Operativo no tiene la certeza de cuánto tiempo
transcurrirá hasta que un proceso se bloquee, ya sea por
una operación de Entrada / Salida o por otra razón.
• Para evitar que un proceso se apropie de la cpu un tiempo
excesivo, los equipos poseen un dispositivo que provoca
una interrupción en forma periódica, por ejemplo 60 hz, o
sea sesenta veces por segundo.
• En cada interrupción del reloj el Sistema Operativo
decide si el proceso que se está ejecutando continúa o si
el proceso agotó su tiempo de cpu y debe suspenderse y
ceder la cpu a otro proceso.
• Los principales conceptos relacionados con Planificación del
Procesador son los siguientes:

• Planificación apropiativa: es la estrategia de permitir que


procesos ejecutables (desde el punto de vista lógico) sean
suspendidos temporalmente.
• Planificación no apropiativa: es la estrategia de permitir la
ejecución de un proceso hasta terminar.
• Planificación del procesador: determinar cuándo deben
asignarse los procesadores y a qué procesos, lo cual es
responsabilidad del Sistema Operativo.
• Se consideran tres niveles importantes de planificación, los que se detallan a continuación
(ver Figura 2.4 [7, Deitel]):

• Planificación de alto nivel:


• También se denomina Planificación de trabajos.
• Determina a qué trabajos se les va a permitir competir activamente por los recursos del
sistema, lo cual se denomina Planificación de admisión.
• Planificación de nivel intermedio:
• Determina a qué procesos se les puede permitir competir por la cpu.
• Responde a fluctuaciones a corto plazo en la carga del sistema y efectúa “suspensiones”
y “activaciones” (“reanudaciones”) de procesos.
• Debe ayudar a alcanzar ciertas metas en el rendimiento total del sistema.
• Planificación de bajo nivel:
• Determina a qué proceso listo se le asigna la cpu cuando esta queda disponible y asigna
la cpu al mismo, es decir que “despacha” la cpu al proceso.
• La efectúa el Despachador del Sistema Operativo, el que opera muchas veces por segundo y
reside siempre en el almacenamiento primario.

Niveles de Planificación
del Procesador.
• Los distintos Sistemas Operativos utilizan varias Políticas
de Planificación, que se instrumentan mediante
Mecanismos de Planificación.
• Los objetivos de la planificación del procesador son los siguientes e involucran
a los conceptos detallados seguidamente [7, Deitel]:
• Ser justa:
• Todos los procesos son tratados de igual manera.
• Ningún proceso es postergado indefinidamente.
• Maximizar la capacidad de ejecución:
• Maximizar el número de procesos servidos por unidad de tiempo.
• Maximizar el número de usuarios interactivos que reciban unos tiempos de
respuesta aceptables:
• En un máximo de unos segundos.
• Ser predecible:
• Un trabajo dado debe ejecutarse aproximadamente en la misma cantidad de
tiempo independientemente de la carga del sistema.
• Minimizar la sobrecarga:
• No suele considerarse un objetivo muy importante.

Objetivos de la
Planificación
• Equilibrar el uso de recursos:
• Favorecer a los procesos que utilizarán recursos infrautilizados.
• Equilibrar respuesta y utilización:
• La mejor manera de garantizar buenos tiempos de respuesta es
disponer de los recursos suficientes cuando se necesitan, pero la
utilización total de recursos podrá ser pobre.
• Evitar la postergación indefinida:
• Se utiliza la estrategia del “envejecimiento” .
• Mientras un proceso espera por un recurso su prioridad debe
aumentar, así la prioridad llegará a ser tan alta que el proceso recibirá
el recurso esperado.
• Asegurar la prioridad:
• Los mecanismos de planificación deben favorecer a los procesos con
prioridades más altas.
• Dar preferencia a los procesos que mantienen recursos claves:
• Un proceso de baja prioridad podría mantener un recurso clave, que puede ser
requerido por un proceso de más alta prioridad.
• Si el recurso es no apropiativo, el mecanismo de planificación debe otorgar al
proceso un tratamiento mejor del que le correspondería normalmente, puesto
que es necesario liberar rápidamente el recurso clave.
• Dar mejor tratamiento a los procesos que muestren un “comportamiento
deseable”:
• Un ejemplo de comportamiento deseable es una tasa baja de paginación.
• Degradarse suavemente con cargas pesadas:
• Un mecanismo de planificación no debe colapsar con el peso de una exigente
carga del sistema.
• Se debe evitar una carga excesiva mediante las siguientes acciones:
• No permitiendo que se creen nuevos procesos cuando la carga ya es pesada.
• Dando servicio a la carga más pesada al proporcionar un nivel moderadamente reducido de
servicio a todos los procesos.
• Muchas de estas metas se encuentran
en conflicto entre sí, por lo que la
planificación se convierte en un
problema complejo.
• Para realizar los objetivos de la planificación, un mecanismo
de planificación debe considerar lo siguiente [7, Deitel]:
• La limitación de un proceso a las operaciones de Entrada /
Salida: cuando un proceso consigue la cpu, ¿la utiliza solo
brevemente antes de generar una petición de Entrada / Salida?.
• La limitación de un proceso a la cpu: cuando un proceso
obtiene la cpu, ¿tiende a usarla hasta que expira su tiempo?.
• Si un proceso es por lote (batch) o interactivo: los usuarios
interactivos deben recibir inmediato servicio para garantizar
buenos tiempos de respuesta.

Criterios de Planificación
• ¿Qué urgencia tiene una respuesta rápida?: por ejemplo, un proceso de tiempo
real de un sistema de control que supervise una refinería de combustible requiere
una respuesta rápida, más rápida que la respuesta requerida por un proceso en
lotes (batch) que deberá entregarse al día siguiente.
• La prioridad de un proceso: a mayor prioridad mejor tratamiento.
• Frecuentemente un proceso genera fallos (carencias) de página:
• Probablemente los procesos que generan pocos fallos de página hayan
acumulado sus “conjuntos de trabajo” en el almacenamiento principal.
• Los procesos que experimentan gran cantidad de fallos de página aún no han
establecido sus conjuntos de trabajo.
• Un criterio indica favorecer a los procesos que han establecido sus conjuntos
de trabajo.
• Otro criterio indica favorecer a los procesos con una tasa alta de fallos de
página ya que rápidamente generarán una petición de Entrada / Salida.
• Frecuentemente un proceso ha sido apropiado por otro de más alta prioridad, lo
cual significa lo siguiente:
• A menudo los procesos apropiados deben recibir un tratamiento menos
favorable.
• Cada vez que el Sistema Operativo asume la sobrecarga para hacer ejecutar
este proceso, el corto tiempo de ejecución antes de la apropiación no justifica
la sobrecarga de hacer ejecutar al proceso en primer lugar.
• ¿Cuánto tiempo de ejecución real ha recibido el proceso?: un criterio considera
que debe ser favorecido un proceso que ha recibido muy poco tiempo de cpu.
• ¿Cuánto tiempo adicional va a necesitar el proceso para terminar?: los tiempos
promedio de espera pueden reducirse priorizando los procesos que requieren de
un tiempo de ejecución mínimo para su terminación, pero pocas veces es posible
conocer la cantidad de tiempo adicional que cada proceso necesita para terminar.
Las Disciplinas de Planificación pueden ser Apropiativas o No Apropiativas
(ver Tabla 2.3 [23, Tanenbaum]).

Disciplina Descripción

“Apropiativa” Una vez que se le ha otorgado la cpu a un proceso, le puede ser retirada

“No
Una vez que se le ha otorgado la cpu a un proceso, no le puede ser retirada
Apropiativa”

Tabla 2.3: Disciplinas de planificación del procesador.

Planificación Apropiativa
Versus No Apropiativa
• Es útil cuando los procesos de alta prioridad requieren
atención rápida.
• Es importante para garantizar buenos tiempos de
respuesta en sistemas interactivos de tiempo compartido.
• Tiene su costo en recursos, ya que el intercambio de
contexto implica sobrecarga y además requiere mantener
muchos procesos en el almacenamiento principal, en
espera de la cpu, lo que también implica sobrecarga.

Las principales características de


la planificación apropiativa son las
siguientes:
• Significa que los trabajos “largos” hacen esperar a los
trabajos “cortos”.
• Logra más equidad en el tratamiento de los procesos.
• Logra hacer más predecibles los tiempos de respuesta
puesto que los trabajos nuevos de prioridad alta no
pueden desplazar a los trabajos en espera.

Las principales características


de la planificación no
apropiativa son las siguientes:
• El diseño de un mecanismo apropiativo hace necesario
considerar las arbitrariedades de casi cualquier esquema
de prioridades, en razón de que muchas veces las propias
prioridades no son asignadas de forma significativa [25,
Tanenbaum].
• El mecanismo debería ser sencillo pero efectivo y
significativo.
• El proceso al cual está asignada la cpu se dice que está en
ejecución y puede ser un proceso de Sistema Operativo o de
usuario.
• El Sistema Operativo dispone de mecanismos para quitarle la
cpu a un proceso de usuario para evitar que monopolice el
sistema.
• El Sistema Operativo posee un “reloj de interrupción” o
“temporizador de intervalos” para generar una interrupción,
en algún tiempo futuro específico o después de un transcurso
de tiempo en el futuro; la cpu es entonces despachada hacia el
siguiente proceso [7, Deitel].

Temporizador de Intervalos
o Reloj de Interrupción
• La libera voluntariamente.
• El reloj la interrumpe.
• Alguna otra interrupción atrae la atención de la cpu.
• Si el reloj interrumpe un proceso de usuario, la interrupción causa la
ejecución del Sistema Operativo, el que decide cuál será el proceso
que obtendrá la cpu.
• El reloj de interrupción ayuda a garantizar tiempos de respuesta
razonables a usuarios interactivos, ya que evita que el sistema se
“cuelgue” a un solo usuario en un ciclo infinito y permite que los
procesos respondan a “eventos dependientes del tiempo”.
• Asimismo, los procesos que necesitan una ejecución periódica
dependen del reloj de interrupción [22, Tanenbaum].

Un proceso retiene el control de la cpu


hasta que ocurra alguna de las
siguientes situaciones:
Las prioridades pueden ser de distinto tipo (ver Tabla 2.4 [7, Deitel]).

Tipos de prioridades

Asignadas automáticamente por el sistema

Asignadas desde el exterior


Dinámicas
Estáticas
Asignadas racionalmente
Asignadas arbitrariamente
Tabla 2.4: Tipos de prioridades.

Prioridades
• En el caso de prioridades asignadas arbitrariamente, un
mecanismo del sistema necesita distinguir entre procesos
sin importarle cuál es el más importante.
• Las principales características de las prioridades estáticas
son las siguientes:
• No cambian.
• Los mecanismos de implementación son sencillos.
• Implican una sobrecarga relativamente baja.
• No responden a cambios en el ambiente (contexto) que
harían deseable ajustar alguna prioridad.
• Las principales características de las prioridades dinámicas son
las siguientes:
• Responden al cambio.
• La prioridad inicial asignada a un proceso puede durar poco
tiempo, luego se la reajusta a un mejor valor.
• Los mecanismos de implementación son más complicados que
para prioridades estáticas.
• Implican una sobrecarga mayor que para esquemas estáticos.
• Respecto de las prioridades adquiridas, se hace referencia al
tratamiento especial que en situaciones excepcionales requiere
un cierto proceso, lo que puede significar restar recursos a los
demás procesos.
• Planificación a Plazo Fijo
• Ciertos trabajos se planifican para ser terminados en un tiempo específico o plazo
fijo. Es una planificación compleja debido a los siguientes factores:
• El usuario debe suministrar anticipadamente una lista precisa de recursos
necesarios para el proceso, pero generalmente no se dispone de dicha
información.
• La ejecución del trabajo de plazo fijo no debe producir una grave degradación del
servicio a otros usuarios.
• El sistema debe planificar cuidadosamente sus necesidades de recursos hasta el
plazo fijo, lo que se puede complicar con las demandas de recursos de nuevos
procesos que ingresen al sistema.
• La concurrencia de varios procesos de plazo fijo (activos a la vez) puede requerir
métodos sofisticados de optimización.
• La administración intensiva de recursos puede generar una considerable
sobrecarga adicional.

Tipos de Planificación

También podría gustarte