ALGORITMOS DE PLANIFICACIÓN EN LA CPU

Planificación FCFS

El algoritmo FCFS(first come – first-served), conocido como primero en llegar, primero en  ser atendido.

Dentro de este campo de planificación es el más sencillo, pues es similar a una cola de estructura (FIFO)

Este algoritmo trabaja de la siguiente manera, al entrar un proceso al estado de “listo”,  el bloque de control de proceso se ubica en el final de la cola, entonces el cpu al estar libre retirará de esta cola el primer elemento(cabeza).

Es decir, en este algoritmo el tiempo de espera par que un proceso se ejecute es incierto y no mínimo. Pudiendo así ejecutarse dentro de la cpu un proceso que consuma demasiado tiempo, atrasando a otros procesos y dejando la cpu sin trabajo por lapsos de tiempo.

En definitiva este algoritmo hace que los procesos pequeños esperen a que un grande abandone la cpu. Una gran desventaja.

Planificación en SJF

El algoritmo “primero el trabajo más corto” (shortest – job – first). Establece para la planificación una relación entre proceso y ráfaga de la CPU. Es decir, al liberarse la cpu ingresará el proceso con la menor ráfaga de tiempo, el más pequeño primero, y si existiera más de un proceso con igual valor, pues se aplicaría dentro de este el algoritmo anterior(FCFS)

Este algoritmo presenta una gran ventaja, pues el tiempo de espera será mucho menor, pues mientras los procesos de tiempo inferior terminan y ocupan tiempo en operaciones de E/S, el cpu se ocupa de resolver el proceso con mayor tiempo, un algoritmo muy óptimo.

Pero, el mayor problema radica en como saber el tiempo de ráfaga para cada proceso???? Pues no existe manera de saber cual será la siguiente. Pero podemos aproximarnos, diciendo que será similar a las anteriores, que mediante una fórmula matemática podríamos decir que:

Tn +1  = a Tn + (1 – a)Tn

De donde Tn es la ráfaga anterior y a es el peso relativo de la historia reciente. Lo que garantiza una aproximación mas considerable.

 

Planificación por Prioridad

Esta clase de algoritmo utiliza como relación entre proceso, tiempo de la cpu y prioridad. De donde el proceso con mayor ráfaga tendrá la menor prioridad y viceversa.

Y donde la cpu podrá ser utilizada por el proceso con mayor prioridad.

Dentro de este algoritmo la prioridad es asignada ya sea interna o externamente. Pero, uno de los problemas que puede presentar esta planificación es la de un bloqueo indefinido. Es decir, pudiera darse el caso que existan procesos de prioridad alta que harían que los procesos de prioridad baja queden bloqueados hasta que logren colocarse en la cpu o perderse cuando nuestro sistema se caiga, es decir una espera indefinida.

Es aquí donde se puede aplicar una técnica conocida como envejecimiento, que ira incrementando la prioridad de los procesos en espera cada determinado tiempo hasta que estos se ejecuten. Y a mi parecer este es una de las mejores soluciones.

 

Planificación con RR

La planificación por turnos o Round Robin, se basa en una estructura FIFO de forma circular, en donde se asigna a los procesos un intervalo de tiempo para la cpu, conocido como quantum. En donde se establece la regla de que un proceso no podrá estar dos veces seguidas en la cpu a menos que sea el único en el estado de listo.

Este algoritmo trabaja de la siguiente manera, al ingresar el proceso a utilizar la cpu, este estará dentro del tiempo(quantum), si al terminar este tiempo el proceso no ha terminado es colocado al final y se ingresará otro proceso. Pero si el proceso pasa ha estado terminado antes de terminar su quantum, también será extraído de la cpu.

En cambio este algoritmo presenta complicaciones pues el tiempo de entrega de un proceso dependerá mucho más del tiempo(quantum) que de la magnitud del proceso.

 

Saludos,

Anuncios

10 comentarios to “ALGORITMOS DE PLANIFICACIÓN EN LA CPU”

  1. Asley Lizano Mederos Says:

    Estudio en la Universidad Central de la Villas en Cuba.
    Me parece muy interezante el tema ya que estoy estudiando
    en estos momentos Sistemas Operativos.
    Necesito ayuda sobre el algoritmo de planificacion de la CPU
    basado en creditos ya que estoy haciendo un trabajo sobre el pero no encuentro lo necesario.
    Por favor me harian un gran favor ayudandome.
    Gracias de antemano.

  2. qmarqeva Says:

    Que tal @Asley Lizano Mederos,

    Si pudieras especificar algo de información sobre el algoritmo(como trabaja, etc), posiblemente pueda ayudarte.

    Saludos.

  3. Rodrigo Says:

    Puff me encanto tu blog ^^!!!

  4. Bugner Says:

    algo sobre algoritmos de planificacion de colas multiples ???

  5. itzamary Says:

    me ayufdarian con nucleo del sistema operativo el procesador, y los pocesos.

  6. Isabell@ Says:

    Hola,
    Estoy trabajando en el algoritmo de orden de llegada (FCFS), necesito realizar una simulacion alguien puede colaborarme

  7. Deyvid Fifa Che Says:

    hola me puedes pasar los algoritmos de planificacion de la cpu el F.C.F.S. TAMBIEN EL S.J.F Y EL R.R A MI CORREO DAVINSON_FIFA2014@HOTMAIL.COM ME PUEDES ENCONTRAR EN EL FACEBOOK enviame los algoritmos para programas

  8. Lemsito Says:

    necesito ayuda sobre la elaboracion de un proyecto de sistemas operativos en c++ que contenga el funcionamiento de los bloques nuevo, listo, ejecucion, bloqueo, terminado, ambien una reprecentacion grafica, saludos….gracias

  9. asparin281 Says:

    Se pueden extraer estos algoritmas desde mi maquina?
    Como puedo hacer eso?


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: