ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Planificacion De Proceso


Enviado por   •  16 de Mayo de 2014  •  3.559 Palabras (15 Páginas)  •  152 Visitas

Página 1 de 15

Introducción

Vamos a ver a detalla la planificación de procesos que maneja los sistemas operativos abiertos desde, algoritmos que se están ejecutando y que asignan prioridades a los procesos para hacerlos más eficientes y obtener mejor rendimiento.

Planificación

Definición

Podemos definir a la planificación como un conjunto de políticas y mecanismos incorporados al sistema operativo, a través de un módulo denominado planificador, que debe decidir cuál de los procesos en condiciones de ser ejecutado conviene ser despachado primero y qué orden de ejecución debe seguirse. Esto debe realizarse sin perder de vista su principal objetivo que consiste en el máximo aprovechamiento del sistema, lo que implica proveer un buen servicio a los procesos existentes en un momento dado. Un "buen" servicio podría traducirse en tiempo de respuesta aceptable, productividad eficiencia del procesador.

Planificación por reparto Justo o Equitativo

Se usa en los sistemas multiusuario.

Cada usuario tiene asignado algún tipo de ponderación, que indica la parte de los recursos del sistema para el usuario como una fracción de la utilización total de dichos recursos. En particular, cada usuario dispone de una parte del procesador. Este esquema debe funcionar de una forma más o menos lineal, por lo que si un usuario A tiene un peso dos veces mayor que el de un usuario B, entonces, a la larga, el usuario A debe poder hacer el doble de trabajo que B. El objetivo de un planificador por reparto equitativo es supervisar el uso, de forma que se asignen menos recursos a los usuarios que han consumido más de lo que les corresponde y más recursos a los que han consumido menos de lo que le corresponde.

En un sistema multiusuario, si las aplicaciones o los trabajos de los usuarios pueden organizarse en forma de varios procesos (o hilos), se dispone de una estructura para el conjunto de procesos que no se identifica con ningún planificador tradicional. Desde el punto de vista del usuario, el interés no está en cómo se comporta un proceso en particular, sino en cómo se comporta el conjunto de procesos de usuario que constituyen una aplicación. Así pues, sería interesante poder tomar decisiones de planificación en función de estos grupos de procesos. Este enfoque se conoce generalmente como planificación por reparto equitativo.

Se usa en los sistemas multiusuario. Cada usuario tiene asignado algún tipo de ponderación, que indica la parte de los recursos del sistema para el usuario como una fracción de la utilización total de dichos recursos. En particular, cada usuario dispone de una parte del procesador. Este esquema debe funcionar de una forma más o menos lineal, por lo que si un usuario A tiene un peso dos veces mayor que el de un usuario B, entonces, a la larga, el usuario A debe poder hacer el doble de trabajo que B. El objetivo de un planificador por reparto equitativo es supervisar el uso, de forma que se asignen menos recursos a los usuarios que han consumido más de lo que les corresponde y más recursos a los que han consumido menos de lo que le corresponde.

Hasta ahora hemos asumido que cada proceso se planifica por su cuenta, sin importar quien sea su propietario. Como resultad, si el usuario 1 inicio 9 procesos y el usuario 2 inicio 1 proceso, con la planificación por turno circular o por prioridades iguales, el usuario 1 obtendra90 por ciento del tiempo de la cpu y el usuario 2 recibirán 10 por ciento.

Para evitar esta situación algunos sistemas toman en consideración quien es el propietario de un proceso antes de planificarlo. En este modelo a cada usuario se le asigna cierta fracción de la CPU y el planificador selección proceso de tal forma que se cumplan con este modelo, por ende si a dos usuarios se les prometió 50 por ciento del tiempo de la CPU para cada uno. Eso es lo que obtendrán sin importar cuantos procesos tengan en existencia.

Metió 50% del tiempo a la cpu para cada uno eso es lo que obtendrá in importar cuantos procesos tenga en existencia.

Como ejemplo considere un sistema con dos usuarios y a cada uno de los cuales les prometió 50% de la CPU el usuario 1 tiene cuatro procesos (A,B,C,D ) y el usuario 2 solo tiene 1 proceso (E) si se utiliza la planificación por turno circular, una posible secuencia de planificación que cumple con todas las restricciones

Po otro lado si el usuario tiene 1 derecho al doble tiempo de la CPU que el usuario 2 podríamos obtener la siguiente secuencia.

Desde luego que existen muchas otras posibilidades y se pueden explotar dependiendo de cuál sea la noción de equidad.

Planificación de procesos en Linux (CentoOS)

Desde la versión 2.5 del kernel de Linux ha utilizado una cola de varios comentarios con niveles de prioridad que van de 0-140. 0-99 están reservados para las tareas de tiempo real y 100-140 agradable tarea se consideran los niveles. Para tareas de tiempo real, el tiempo para cambiar los procesos cuánticos es aproximadamente de 200 ms y 10 ms para el bonito (Unix) tareas. El planificador se ejecutará a través de la cola de todos los procesos listos, dejar que los más altos primero y ejecución de su tiempo el tramo, y después serán colocados

Se ejecutará a través de la cola de todos los procesos listos, dejar que los más altos primero y ejecuta su tiempo el tramo, y después serán colocados en una cola de vencimiento. Luego, cuando el activo está vacío la cola de la cola de vencimiento será el activo y viceversa.

Puede haber a la vez en el sistema procesos con distinta política de planificación establecida. En realidad cada proceso se puede planificar de varias maneras, las políticas de planificación de un proceso se pueden cambiar en tiempo de ejecución.

Linux está basado en la planificación tradicional de Unix añadiendo 2 clases de prioridad para procesos de tiempo real flexibles. Las clases de planificación de Linux son las siguientes:

SCHED_OTHER : Es la planificación clásica de UNIX. No es aplicable a tiempo real. Examina las prioridades dinámicas (calculadas como combinación de las especificadas por el usuario y las calculadas por el sistema). Los procesos que llevan más tiempo en el sistema van perdiendo prioridad.

SCHED_FIFO : El sistema FIFO o FCFS (First to Come is First Served).Los procesos esperan en cola y se ejecutan

...

Descargar como (para miembros actualizados)  txt (21.9 Kb)  
Leer 14 páginas más »
Disponible sólo en Clubensayos.com