Vous êtes sur la page 1sur 2

Algoritmo de planificación

Definición
Los sistemas operativos multitarea y los multiprogramados, poseen un módulo que
se encarga de la planificación de los procesos, la cual no es más que la selección
del orden en que cada uno se ejecuta efectivamente o dicho con mas precisión tiene
el control de la CPU. Para tomar esa decisión se usan diferentes algoritmos.

Categorías de Algoritmos de Planificación

De forma dada sorprendente sucede que en entornos diferentes se necesitan


algoritmos de planificación diferentes. Esto se debe a que cada aplicación (y cada
tipo de sistema operativo) tiene objetivos diferentes. En otras palabras, lo que el
planificador debe optimizar no es lo mismo en todos los sistemas. Es necesario
distinguir aquí tres entornos:

 Batch: En estos sistemas, no existen usuarios que están esperando


impacientemente por una rápida respuesta ante sus terminales. En
consecuencia, son aceptables los algoritmos sin desalojo, o los algoritmos
con desalojo con largos periodos de tiempo para cada proceso. Con este
enfoque se reduce la cantidad de cambios de proceso, mejorando por tanto
el rendimiento.

 Interactivo: Con usuarios interactivos es indispensable que haya


expulsiones para impedir que un proceso acapare la CPU, negando cualquier
servicio de la CPU a los demás. Incluso aunque ningún proceso tenga
intención de ejecutarse eternamente, es posible que debido a un error en el
programa un proceso mantenga parados a todos los demás indefinidamente.
La expulsión es necesaria para impedir ese comportamiento

 Tiempo Real: En los sistemas con restricciones de tiempo real, la expulsión


es algunas veces innecesaria debido a que los procesos saben que no
pueden ejecutarse durante largos periodos de tiempo y usualmente hacen su
trabajo y rápidamente se bloquean. La diferencia con los sistemas
interactivos es que los sistemas en tiempo real solo ejecutan programas
pensados como parte de una misma aplicación. Los sistemas interactivos por
el contrario son sistemas de propósito general y pueden ejecutar programas
arbitrarios no cooperantes o incluso maliciosos
En cuanto al Algoritmo de Planificación se debe garantizar que estos sean:

 Equitativos o Imparciales. Cada proceso recibe una parte justa de tiempo.


 Eficientes. Se mantiene la CPU ocupada el mayor tiempo posible.
 Dar un buen tiempo de respuesta. Minimizarlo para usuarios interactivos.
 Dar un buen tiempo de retorno. Minimizar el tiempo de espera por salida de
los trabajos por lotes.
 Productivos. Maximizar la cantidad de trabajos por hora.