Sie sind auf Seite 1von 8

Disciplinas Programacin

Programacin de disciplinas son algoritmos utilizados para la distribucin de recursos entre las partes que a la vez y de forma asncrona soliciten. Programacin de disciplinas se utilizan en routers (para manejar el trfico de paquetes), as como en los sistemas operativos (para compartir tiempo de CPU entre los dos hilos y procesos ), unidades de disco ( programacin de E / S ), impresoras ( cola de impresin ), sistemas ms integrados, etc . Los objetivos principales de algoritmos de planificacin son minimizar agotamiento de recursos y para garantizar la equidad entre las partes que utilizan los recursos. Programacin de ofertas con el problema de decidir cul de las solicitudes pendientes es ser los recursos asignados. Existen muchos tipos de algoritmos de programacin. En esta seccin, presentamos algunas de ellas. En conmutacin de paquetes de redes informticas y otros multiplexacin estadstica , la nocin de un algoritmo de planificacin se utiliza como una alternativa a la orden de llegada hasta completar aforo cola de paquetes de datos. Los ms simples algoritmos de planificacin de mejor esfuerzo son por turnos , justo cola (un justo max-min algoritmo de planificacin), proporcionalmente justa programacin y el mximo rendimiento . Si diferenciado o garantizada calidad de servicio se ofrece, en oposicin a la comunicacin de mejor esfuerzo, espera equitativa ponderada se puede utilizar. En redes inalmbricas de radio de paquetes avanzados tales como HSDPA (High-Speed Downlink Packet Access) 3.5G sistema celular, la programacin del canal dependiente se puede utilizar para tomar ventaja de la informacin del estado del canal . Si las condiciones del canal son favorables, el rendimiento y la eficiencia espectral del sistema se pueden aumentar. En los sistemas ms avanzados tales como LTE , la programacin es combinada por paquete por paquete canal dependiente de la asignacin dinmica de canales , o asignando OFDMA mltiples transportistas u otros ecualizacin dominio de la frecuencia componentes a los usuarios que mejor puedan utilizarlos.

First In First Out


Artculo principal: First In First Out Tambin conocido como P rimer C ome, P rimero S erved (FCFS), es el algoritmo de programacin simple, FIFO simplemente procesos colas en el orden en que llegan a la cola de listos.

Desde cambios de contexto slo se producen despus de la terminacin de procesos, y no se requiere la reorganizacin de la cola de procesos, los gastos generales de programacin es mnimo. El rendimiento puede ser bajo, ya que los procesos largos pueden mantener la CPU

El tiempo de vuelta, tiempo de espera y tiempo de respuesta puede ser alta por las mismas razones expuestas No se da prioridad, por lo que este sistema tiene problemas plazos del proceso de reuniones. La falta de priorizacin significa que mientras cada proceso se completa, finalmente, no hay hambre. En un entorno donde algunos procesos podran no terminar, no puede haber hambre. Se basa en cola Aqu est el cdigo C para FCFS

Ms corto tiempo restante


Artculo principal: corta el tiempo restante Al igual que S hortest-J ob-P rimero (SJF). Con esta estrategia, el planificador de procesos organiza con el tiempo de procesamiento estimado menos queda para ser el siguiente en la cola. Esto requiere un conocimiento avanzado o estimaciones sobre el tiempo requerido para que un proceso para completar.

Si un proceso ms corto que llegue durante la ejecucin de otro proceso ", el proceso en ejecucin se puede interrumpir (conocido como derecho de prioridad), dividiendo el proceso en dos bloques separados de computacin. Esto crea el exceso de gastos por el cambio de contexto adicional. El planificador tambin debe colocar cada proceso entrante en un lugar especfico en la cola, la creacin de una sobrecarga adicional. Este algoritmo est diseado para un mximo rendimiento en la mayora de los escenarios. Tiempo y aumentar el tiempo de respuesta a medida que aumentan las necesidades de cmputo del proceso de espera. Dado que el tiempo de respuesta se basa en el tiempo de espera ms el tiempo de procesamiento, los procesos ms largos se ven significativamente afectados por esto. En general el tiempo de espera es menor que FIFO, sin embargo, ya que ningn proceso tiene que esperar a la terminacin del proceso ms largo. No se presta atencin especial a los plazos, el programador slo puede tratar de hacer los procesos con plazos tan cortos como sea posible. La inanicin es posible, especialmente en un sistema ocupado con muchos pequeos procesos se ejecutan. Esta poltica ya no est en uso. Para utilizar esta poltica debemos tener por lo menos dos procesos de diferente prioridad

Prioridad fija planificacin preventiva


Artculo principal: prioridad fija planificacin preventiva

El sistema operativo asigna un rango de prioridad fija a cada proceso y el planificador se encarga de los procesos en la cola de lista en orden de prioridad. Procesos de baja prioridad quedan interrumpidos por entrantes procesos de prioridad superior.

Arriba no es mnimo, ni tampoco es significativo. FPPS no tiene ninguna ventaja especial en trminos de rendimiento a lo largo FIFO programacin. El tiempo de espera y tiempo de respuesta depender de la prioridad del proceso. Los procesos de prioridad superior tienen menor espera y tiempos de respuesta. Fechas lmite pueden ser satisfechas por dando procesos con plazos una prioridad ms alta. El hambre de los procesos de baja prioridad es posible con una gran cantidad de procesos de alta cola de prioridad para el tiempo de CPU.

Round-robin
Artculo principal: planificacin Round-robin El planificador asigna una unidad de tiempo determinada por procesos y ciclos a travs de ellos.

Programacin RR implica extensa sobrecarga, especialmente con una pequea unidad de tiempo. Rendimiento equilibrado entre FCFS y SJF, los trabajos ms cortos se completan ms rpido que en FCFS y procesos ms largos se complet ms rpido que en SJF. Malo tiempo medio de respuesta, el tiempo de espera es dependiente en el nmero de procesos, y no la longitud promedio del proceso. Debido a los altos tiempos de espera, plazos rara vez se reunieron en un sistema RR puro. El hambre puede no ocurrir nunca, ya que no se concede prioridad. Orden de asignacin de unidad de tiempo se basa en la hora de llegada de procesos, similar a la FCFS.

Multinivel programacin de colas


Artculo principal: cola de retroalimentacin Multinivel Esto se utiliza para situaciones en las que los procesos son fcilmente divididos en diferentes grupos. Por ejemplo, una divisin comn se hace entre procesos en primer plano (interactivo) y los procesos de fondo (por lotes). Estos dos tipos de procesos tienen diferentes requisitos de tiempo de respuesta y por lo tanto pueden tener diferentes necesidades de programacin. Es muy til para los problemas de memoria compartida.

Manual de programacin
Artculo principal: programacin manual

Un mtodo muy comn en los sistemas embebidos es programar manualmente empleos. Esto puede hacerse, por ejemplo de una manera multiplexada en el tiempo. A veces, el ncleo se divide en tres o ms partes: Manual de programacin, nivel preventivo y de interrupcin. Mtodos exactos para la programacin de tareas le pertenecen.

No hay problemas de hambre de recursos. Muy alta previsibilidad, permite la implementacin de sistemas de tiempo real estricto. Casi ninguna sobrecarga. Puede no ser ptima para todas las aplicaciones. La eficacia es completamente dependiente de la implementacin.

First Come First Serve (FCFS)


Jobs are executed on first come, first serve basis. Easy to understand and implement. Poor in performance as average wait time is high.

Wait time of each process is following Process P0 0-0=0 P1 5-1=4 P2 8-2=6 P3 16 - 3 = 13 Wait Time : Service Time - Arrival Time

Average Wait Time: (0+4+6+13) / 4 = 5.55

Shortest Job First (SJF)


Best approach to minimize waiting time. Impossible to implement Processer should know in advance how much time process will take.

Wait time of each process is following Process P0 3-0=3 P1 0-0=0 P2 16 - 2 = 14 P3 8-3=5 Wait Time : Service Time - Arrival Time

Average Wait Time: (3+0+14+5) / 4 = 5.50

Priority Based Scheduling


Each process is assigned a priority. Process with highest priority is to be executed first and so on. Processes with same priority are executed on first come first serve basis. Priority can be decided based on memory requirements, time requirements or any other resource requirement.

Wait time of each process is following Process P0 0-0=0 P1 3-1=2 P2 8-2=6 P3 16 - 3 = 13 Wait Time : Service Time - Arrival Time

Average Wait Time: (0+2+6+13) / 4 = 5.25

Round Robin Scheduling


Each process is provided a fix time to execute called quantum. Once a process is executed for given time period. Process is preempted and other process executes for given time period. Context switching is used to save states of preempted processes.

Wait time of each process is following Process Wait Time : Service Time - Arrival Time P0 (0-0) + (12-3) = 9 P1 (3-1) = 2 P2 6-2) + (15-9) = 10 P3 (9-3) + (18-12) = 12 Average Wait Time: (9+2+10+12) / 4 = 8.25

Multi Queue Scheduling


Multiple queues are maintained for processes. Each queue can have its own scheduling algorithms. Priorities are assigned to each queue.

Das könnte Ihnen auch gefallen