SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
PNF INFORMATICA –Sistemas Operativos
Planificación de los procesos
Según Deitel (1993), la planificación de la CPU, en el sentido de conmutarla entre
los distintos procesos, es una de las funciones del sistema operativo. Este
despacho es llevado a cabo por un pequeño programa llamado planificador a
corto plazo o dispatcher (despachador). La misión del dispatcher consiste en
asignar la CPU a uno de los procesos ejecutables del sistema, para ello sigue un
determinado algoritmo. En secciones posteriores estudiaremos algunos algoritmos
posibles. Para que el dispatcher conmute el procesador entre dos procesos es
necesario realizar un cambio de proceso.
Según Milenkovic (1994) los acontecimientos que pueden provocar la llamada al
dispatcher dependen del sistema (son un subconjunto de las interrupciones), pero
son alguno de estos:
 El proceso en ejecución acaba su ejecución o no puede seguir
ejecutándose (por una E/S, operación WAIT, etc).
 Un elemento del sistema operativo ordena el bloqueo del proceso en
ejecución (ver Fig 1).
 El proceso en ejecución agota su cuantum o cuanto de estancia en la
CPU.
 Un proceso pasa a estado listo.
PNF INFORMATICA –Sistemas Operativos
Hay que destacar el hecho de que cuanto menos se llame al dispatcher menos
tiempo ocupa la CPU un programa del sistema operativo, y, por tanto, se dedica
más tiempo a los procesos del usuario (un cambio de proceso lleva bastante
tiempo).
Así, si sólo se activa el dispatcher como consecuencia de los 2 primeros
acontecimientos se estará haciendo un buen uso del procesador. Este criterio es
acertado en sistemas por lotes en los que los programas no son interactivos. Sin
embargo, en un sistema de tiempo compartido no es adecuado, pues un
proceso que se dedicara a realizar cálculos, y no realizara E/S, monopolizaría el
uso de la CPU. En estos sistemas hay que tener en cuenta el conjunto de todos los
procesos, activándose el dispatcher con la circunstancia tercera y, posiblemente,
la cuarta. Los sistema operativos en que las dos siguientes circunstancias no
provocan la activación del dispatcher muestran preferencia por el proceso en
ejecución, si no ocurre esto se tiene más en cuenta el conjunto de todos los
procesos.
Fig 1. Niveles de la Planificación
Fuente: Deitel (1993)
PNF INFORMATICA –Sistemas Operativos
Se puede definir el scheduling, algunas veces traducido como planificación
como el conjunto de políticas y mecanismos construidos dentro del sistema
operativo que gobiernan la forma de conseguir que los procesos a ejecutar
lleguen a ejecutarse.
El scheduling está asociado a las cuestiones de:
 Cuándo introducir un nuevo proceso en el Sistema.
 Determinar el orden de ejecución de los procesos del sistema.
El scheduling está muy relacionado con la gestión de los recursos. Existen tres
niveles de scheduling, como se ilustra en la figura 1.1, estos niveles son:
 Planificador de la CPU o a corto plazo.
 Planificador a medio plazo.
 Planificador a largo plazo.
Planificación a largo plazo
Este planificador está presente en algunos sistemas que admiten además de
procesos interactivos trabajos por lotes. Usualmente, se les asigna una prioridad
baja a los trabajos por lotes, utilizándose estos para mantener ocupados a los
recursos del sistema durante períodos de baja actividad de los procesos
interactivos. Normalmente, los trabajos por lotes realizan tareas rutinarias como el
cálculo de nóminas; en este tipo de tareas el programador puede estimar su
gasto en recursos, indicándoselo al sistema. Esto facilita el funcionamiento del
planificador a largo plazo.
El objetivo primordial del planificador a largo plazo es el de dar al planificador de
la CPU una mezcla equilibrada de trabajos, tales como los limitados por la CPU
(utilizan mucho la CPU) o la E/S. Así, por ejemplo, cuando la utilización de la CPU
es baja, el planificador puede admitir más trabajos para aumentar el número de
PNF INFORMATICA –Sistemas Operativos
procesos listos y, con ello, la probabilidad de tener algún trabajo útil en espera de
que se le asigne la CPU. A la inversa, cuando la utilización de la CPU llega a ser
alta, y el tiempo de respuesta comienza a reflejarlo, el planificador a largo plazo
puede optar por reducir la frecuencia de admisión de trabajos.
Normalmente, se invoca al planificador a largo plazo siempre que un proceso
termina. La frecuencia de invocación depende, pues, de la carga del sistema,
pero generalmente es mucho menor que la de los otros dos planificadores. Esta
baja frecuencia de uso hace que este planificador pueda permitirse utilizar
algoritmos complejos, basados en las estimaciones de los nuevos trabajos.
Planificación a Medio Plazo
En los sistemas de multiprogramación y tiempo compartido varios procesos
residen en la memoria principal. El tamaño limitado de ésta hace que el número
de procesos que residen en ella sea finito. Puede ocurrir que todos los procesos en
memoria estén bloqueados, desperdiciándose así la CPU. En algunos sistemas se
intercambian procesos enteros (swap) entre memoria principal y memoria
secundaria (normalmente discos), con esto se aumenta el número de procesos, y,
por tanto, la probabilidad de una mayor utilización de la CPU.
El planificador a medio plazo es el encargado de regir las transiciones de
procesos entre memoria principal y secundaria, actúa intentando maximizar la
utilización de los recursos. Por ejemplo, transfiriendo siempre a memoria
secundaria procesos bloqueados, o transfiriendo a memoria principal procesos
bloqueados únicamente por no tener memoria.
Operaciones con procesos Procesos Ligeros Hilos o hebras
Un proceso ligero, o thread, es un programa en ejecución (flujo de ejecución) que
comparte la imagen de memoria y otras informaciones con otros procesos ligeros.
Como muestra la Figura 2 , un proceso puede contener un solo flujo de ejecución,
como ocurre en los procesos clásicos, o más de un flujo de ejecución (procesos
ligeros).
PNF INFORMATICA –Sistemas Operativos
Desde el punto de vista de la programación, un proceso ligero se define como
una función cuya ejecución se puede lanzar en paralelo con otras. El hilo de
ejecución primario, o proceso ligero primario, corresponde a la función main.
Cada proceso ligero tiene informaciones que le son propias y que no comparte
con otros procesos ligeros. Las informaciones propias se refieren
fundamentalmente al contexto de ejecución, pudiéndose destacar las siguientes:
 Contador de programa.
 Pila.
 Registros.
 Estado del proceso ligero (ejecutando, listo o bloqueado).
Todos los procesos ligeros de un mismo proceso comparten la información del
mismo. En concreto, comparten:
 Espacio de memoria.
 Variables globales.
 Archivos abiertos.
 Procesos hijos.
 Temporizadores.
 Senales y semaforos.
 Contabilidad.
Es importante destacar que todos los procesos ligeros de un mismo proceso
comparten el mismo espacio de direcciones de memoria, que incluye el código,
los datos y las pilas de los diferentes procesos ligeros. Esto hace que no exista
protección de memoria entre los procesos ligeros de un mismo proceso, algo que
si ocurre con los procesos convencionales.
El proceso ligero constituye la unidad ejecutable en Windows NT. La Figura
representa de forma esquemática la estructura de un proceso de Windows NT
con sus procesos ligeros.
PNF INFORMATICA –Sistemas Operativos
Fig. 2 Procesos Ligeros Hilos o Hebras
Fuente: Deitel (1193)
Referencias
Deitel, H. M. Sistemas Operativos, 2ª Edición, Addison-Wesley, 1993.
Milenkovic M.( 1994) Sistemas Operativos. Conceptos y Diseño, 2ª Edición,
McGraw-Hill
Stallings, W.Operating Systems, 2ª Edición, Prentice Hall, 1995.
Documento en línea. Disponible en:
http://sistemasoperativos.angelfire.com/html/2.3.html Consultado: (2013, Marzo,
13)

Más contenido relacionado

La actualidad más candente

evolucion de los sistemas operativos
evolucion de los sistemas operativosevolucion de los sistemas operativos
evolucion de los sistemas operativosAlexander Daniel
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesadorManuel Ceron
 
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)Videoconferencias UTPL
 
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)Videoconferencias UTPL
 
Sistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosSistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosChiNo Sosa Erazo
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas OperativosG Hoyos A
 
Administración de procesos en el S.O.
Administración de procesos en el S.O.Administración de procesos en el S.O.
Administración de procesos en el S.O.Carlos Solano
 
Vision general de los sistemas operativos
Vision general de los sistemas operativosVision general de los sistemas operativos
Vision general de los sistemas operativossuperone314
 
Planificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPlanificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPkacho
 

La actualidad más candente (20)

evolucion de los sistemas operativos
evolucion de los sistemas operativosevolucion de los sistemas operativos
evolucion de los sistemas operativos
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesador
 
Unidad4
Unidad4Unidad4
Unidad4
 
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS (I Bimestre Abril Agosto 2011)
 
Procesos i 2017
Procesos i  2017Procesos i  2017
Procesos i 2017
 
Actividad colaborativa 301402 7
Actividad colaborativa  301402 7Actividad colaborativa  301402 7
Actividad colaborativa 301402 7
 
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)
SISTEMAS OPERATIVOS ( II Bimestre Abril Agosto 2011)
 
Sistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosSistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesos
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas Operativos
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOS
 
Presentacion so
Presentacion soPresentacion so
Presentacion so
 
Administración de procesos en el S.O.
Administración de procesos en el S.O.Administración de procesos en el S.O.
Administración de procesos en el S.O.
 
Vision general de los sistemas operativos
Vision general de los sistemas operativosVision general de los sistemas operativos
Vision general de los sistemas operativos
 
Nucleo kernel
Nucleo kernelNucleo kernel
Nucleo kernel
 
Planificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPlanificacion De Procesos y Procesadores
Planificacion De Procesos y Procesadores
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Proceso
ProcesoProceso
Proceso
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Unidad2
Unidad2Unidad2
Unidad2
 
Unidad3
Unidad3Unidad3
Unidad3
 

Similar a Planificación de un_proceso

Revista Adm dl Procesador
Revista Adm dl ProcesadorRevista Adm dl Procesador
Revista Adm dl ProcesadorGene Beiia
 
PLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOPLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOgladysmamani
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSgladysmamani
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesosYoselvi
 
Planificacion de Porcesos
Planificacion de PorcesosPlanificacion de Porcesos
Planificacion de Porcesosguest18b3b79
 
planificacion de los procesos
planificacion de los procesosplanificacion de los procesos
planificacion de los procesosvianycari
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesoslaunica
 
Planificaion de Procesos
Planificaion de ProcesosPlanificaion de Procesos
Planificaion de ProcesosFiorelaLV
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSgladysmamani
 
expoci
expociexpoci
expociamluap
 
PLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSPLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSmerycondori
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesoslaunica
 
Prueba
PruebaPrueba
Pruebaemnero
 
Recurrencia en procesos
Recurrencia en procesosRecurrencia en procesos
Recurrencia en procesosrcarrerah
 
Introducción a los procesos alfa ii
Introducción a los procesos alfa iiIntroducción a los procesos alfa ii
Introducción a los procesos alfa iiAlejandro Ordoñez
 

Similar a Planificación de un_proceso (20)

Grupo1
Grupo1Grupo1
Grupo1
 
Trabajode Sisope
Trabajode SisopeTrabajode Sisope
Trabajode Sisope
 
Revista Adm dl Procesador
Revista Adm dl ProcesadorRevista Adm dl Procesador
Revista Adm dl Procesador
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
PLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOPLANIFICACION DE PROCESO
PLANIFICACION DE PROCESO
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOS
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Planificacion de Porcesos
Planificacion de PorcesosPlanificacion de Porcesos
Planificacion de Porcesos
 
planificacion de los procesos
planificacion de los procesosplanificacion de los procesos
planificacion de los procesos
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesos
 
Planificaion de Procesos
Planificaion de ProcesosPlanificaion de Procesos
Planificaion de Procesos
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
 
expoci
expociexpoci
expoci
 
PLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSPLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOS
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesos
 
Prueba
PruebaPrueba
Prueba
 
Introduccion a los procesos
Introduccion a los  procesosIntroduccion a los  procesos
Introduccion a los procesos
 
Recurrencia en procesos
Recurrencia en procesosRecurrencia en procesos
Recurrencia en procesos
 
Introducción a los procesos alfa ii
Introducción a los procesos alfa iiIntroducción a los procesos alfa ii
Introducción a los procesos alfa ii
 
Sistemas operativos - 6to SSI
Sistemas operativos - 6to SSISistemas operativos - 6to SSI
Sistemas operativos - 6to SSI
 

Más de siamu_evap

Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesossiamu_evap
 
Material 2 unidad_1
Material 2 unidad_1Material 2 unidad_1
Material 2 unidad_1siamu_evap
 
Material 1 unidad_1
Material 1 unidad_1Material 1 unidad_1
Material 1 unidad_1siamu_evap
 
Hl2_UT5_SaneamientoAmbiental
Hl2_UT5_SaneamientoAmbientalHl2_UT5_SaneamientoAmbiental
Hl2_UT5_SaneamientoAmbientalsiamu_evap
 
Hl2_UT5_Polvos
Hl2_UT5_PolvosHl2_UT5_Polvos
Hl2_UT5_Polvossiamu_evap
 
Hl2_UT4_Gases_y_Vapores
Hl2_UT4_Gases_y_VaporesHl2_UT4_Gases_y_Vapores
Hl2_UT4_Gases_y_Vaporessiamu_evap
 
Hl2_UT4_Plaguicidas
Hl2_UT4_PlaguicidasHl2_UT4_Plaguicidas
Hl2_UT4_Plaguicidassiamu_evap
 
Hl2_ut3_RiesgoQuimico
Hl2_ut3_RiesgoQuimicoHl2_ut3_RiesgoQuimico
Hl2_ut3_RiesgoQuimicosiamu_evap
 
Hl2 ut2 temperaturas_extremas
Hl2 ut2 temperaturas_extremasHl2 ut2 temperaturas_extremas
Hl2 ut2 temperaturas_extremassiamu_evap
 
Hlii ut2 vibracion_ocupacional.pptx
Hlii ut2 vibracion_ocupacional.pptxHlii ut2 vibracion_ocupacional.pptx
Hlii ut2 vibracion_ocupacional.pptxsiamu_evap
 
Radiaciones ionizantes y no ionizantes
Radiaciones ionizantes y no ionizantesRadiaciones ionizantes y no ionizantes
Radiaciones ionizantes y no ionizantessiamu_evap
 

Más de siamu_evap (11)

Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
 
Material 2 unidad_1
Material 2 unidad_1Material 2 unidad_1
Material 2 unidad_1
 
Material 1 unidad_1
Material 1 unidad_1Material 1 unidad_1
Material 1 unidad_1
 
Hl2_UT5_SaneamientoAmbiental
Hl2_UT5_SaneamientoAmbientalHl2_UT5_SaneamientoAmbiental
Hl2_UT5_SaneamientoAmbiental
 
Hl2_UT5_Polvos
Hl2_UT5_PolvosHl2_UT5_Polvos
Hl2_UT5_Polvos
 
Hl2_UT4_Gases_y_Vapores
Hl2_UT4_Gases_y_VaporesHl2_UT4_Gases_y_Vapores
Hl2_UT4_Gases_y_Vapores
 
Hl2_UT4_Plaguicidas
Hl2_UT4_PlaguicidasHl2_UT4_Plaguicidas
Hl2_UT4_Plaguicidas
 
Hl2_ut3_RiesgoQuimico
Hl2_ut3_RiesgoQuimicoHl2_ut3_RiesgoQuimico
Hl2_ut3_RiesgoQuimico
 
Hl2 ut2 temperaturas_extremas
Hl2 ut2 temperaturas_extremasHl2 ut2 temperaturas_extremas
Hl2 ut2 temperaturas_extremas
 
Hlii ut2 vibracion_ocupacional.pptx
Hlii ut2 vibracion_ocupacional.pptxHlii ut2 vibracion_ocupacional.pptx
Hlii ut2 vibracion_ocupacional.pptx
 
Radiaciones ionizantes y no ionizantes
Radiaciones ionizantes y no ionizantesRadiaciones ionizantes y no ionizantes
Radiaciones ionizantes y no ionizantes
 

Planificación de un_proceso

  • 1. PNF INFORMATICA –Sistemas Operativos Planificación de los procesos Según Deitel (1993), la planificación de la CPU, en el sentido de conmutarla entre los distintos procesos, es una de las funciones del sistema operativo. Este despacho es llevado a cabo por un pequeño programa llamado planificador a corto plazo o dispatcher (despachador). La misión del dispatcher consiste en asignar la CPU a uno de los procesos ejecutables del sistema, para ello sigue un determinado algoritmo. En secciones posteriores estudiaremos algunos algoritmos posibles. Para que el dispatcher conmute el procesador entre dos procesos es necesario realizar un cambio de proceso. Según Milenkovic (1994) los acontecimientos que pueden provocar la llamada al dispatcher dependen del sistema (son un subconjunto de las interrupciones), pero son alguno de estos:  El proceso en ejecución acaba su ejecución o no puede seguir ejecutándose (por una E/S, operación WAIT, etc).  Un elemento del sistema operativo ordena el bloqueo del proceso en ejecución (ver Fig 1).  El proceso en ejecución agota su cuantum o cuanto de estancia en la CPU.  Un proceso pasa a estado listo.
  • 2. PNF INFORMATICA –Sistemas Operativos Hay que destacar el hecho de que cuanto menos se llame al dispatcher menos tiempo ocupa la CPU un programa del sistema operativo, y, por tanto, se dedica más tiempo a los procesos del usuario (un cambio de proceso lleva bastante tiempo). Así, si sólo se activa el dispatcher como consecuencia de los 2 primeros acontecimientos se estará haciendo un buen uso del procesador. Este criterio es acertado en sistemas por lotes en los que los programas no son interactivos. Sin embargo, en un sistema de tiempo compartido no es adecuado, pues un proceso que se dedicara a realizar cálculos, y no realizara E/S, monopolizaría el uso de la CPU. En estos sistemas hay que tener en cuenta el conjunto de todos los procesos, activándose el dispatcher con la circunstancia tercera y, posiblemente, la cuarta. Los sistema operativos en que las dos siguientes circunstancias no provocan la activación del dispatcher muestran preferencia por el proceso en ejecución, si no ocurre esto se tiene más en cuenta el conjunto de todos los procesos. Fig 1. Niveles de la Planificación Fuente: Deitel (1993)
  • 3. PNF INFORMATICA –Sistemas Operativos Se puede definir el scheduling, algunas veces traducido como planificación como el conjunto de políticas y mecanismos construidos dentro del sistema operativo que gobiernan la forma de conseguir que los procesos a ejecutar lleguen a ejecutarse. El scheduling está asociado a las cuestiones de:  Cuándo introducir un nuevo proceso en el Sistema.  Determinar el orden de ejecución de los procesos del sistema. El scheduling está muy relacionado con la gestión de los recursos. Existen tres niveles de scheduling, como se ilustra en la figura 1.1, estos niveles son:  Planificador de la CPU o a corto plazo.  Planificador a medio plazo.  Planificador a largo plazo. Planificación a largo plazo Este planificador está presente en algunos sistemas que admiten además de procesos interactivos trabajos por lotes. Usualmente, se les asigna una prioridad baja a los trabajos por lotes, utilizándose estos para mantener ocupados a los recursos del sistema durante períodos de baja actividad de los procesos interactivos. Normalmente, los trabajos por lotes realizan tareas rutinarias como el cálculo de nóminas; en este tipo de tareas el programador puede estimar su gasto en recursos, indicándoselo al sistema. Esto facilita el funcionamiento del planificador a largo plazo. El objetivo primordial del planificador a largo plazo es el de dar al planificador de la CPU una mezcla equilibrada de trabajos, tales como los limitados por la CPU (utilizan mucho la CPU) o la E/S. Así, por ejemplo, cuando la utilización de la CPU es baja, el planificador puede admitir más trabajos para aumentar el número de
  • 4. PNF INFORMATICA –Sistemas Operativos procesos listos y, con ello, la probabilidad de tener algún trabajo útil en espera de que se le asigne la CPU. A la inversa, cuando la utilización de la CPU llega a ser alta, y el tiempo de respuesta comienza a reflejarlo, el planificador a largo plazo puede optar por reducir la frecuencia de admisión de trabajos. Normalmente, se invoca al planificador a largo plazo siempre que un proceso termina. La frecuencia de invocación depende, pues, de la carga del sistema, pero generalmente es mucho menor que la de los otros dos planificadores. Esta baja frecuencia de uso hace que este planificador pueda permitirse utilizar algoritmos complejos, basados en las estimaciones de los nuevos trabajos. Planificación a Medio Plazo En los sistemas de multiprogramación y tiempo compartido varios procesos residen en la memoria principal. El tamaño limitado de ésta hace que el número de procesos que residen en ella sea finito. Puede ocurrir que todos los procesos en memoria estén bloqueados, desperdiciándose así la CPU. En algunos sistemas se intercambian procesos enteros (swap) entre memoria principal y memoria secundaria (normalmente discos), con esto se aumenta el número de procesos, y, por tanto, la probabilidad de una mayor utilización de la CPU. El planificador a medio plazo es el encargado de regir las transiciones de procesos entre memoria principal y secundaria, actúa intentando maximizar la utilización de los recursos. Por ejemplo, transfiriendo siempre a memoria secundaria procesos bloqueados, o transfiriendo a memoria principal procesos bloqueados únicamente por no tener memoria. Operaciones con procesos Procesos Ligeros Hilos o hebras Un proceso ligero, o thread, es un programa en ejecución (flujo de ejecución) que comparte la imagen de memoria y otras informaciones con otros procesos ligeros. Como muestra la Figura 2 , un proceso puede contener un solo flujo de ejecución, como ocurre en los procesos clásicos, o más de un flujo de ejecución (procesos ligeros).
  • 5. PNF INFORMATICA –Sistemas Operativos Desde el punto de vista de la programación, un proceso ligero se define como una función cuya ejecución se puede lanzar en paralelo con otras. El hilo de ejecución primario, o proceso ligero primario, corresponde a la función main. Cada proceso ligero tiene informaciones que le son propias y que no comparte con otros procesos ligeros. Las informaciones propias se refieren fundamentalmente al contexto de ejecución, pudiéndose destacar las siguientes:  Contador de programa.  Pila.  Registros.  Estado del proceso ligero (ejecutando, listo o bloqueado). Todos los procesos ligeros de un mismo proceso comparten la información del mismo. En concreto, comparten:  Espacio de memoria.  Variables globales.  Archivos abiertos.  Procesos hijos.  Temporizadores.  Senales y semaforos.  Contabilidad. Es importante destacar que todos los procesos ligeros de un mismo proceso comparten el mismo espacio de direcciones de memoria, que incluye el código, los datos y las pilas de los diferentes procesos ligeros. Esto hace que no exista protección de memoria entre los procesos ligeros de un mismo proceso, algo que si ocurre con los procesos convencionales. El proceso ligero constituye la unidad ejecutable en Windows NT. La Figura representa de forma esquemática la estructura de un proceso de Windows NT con sus procesos ligeros.
  • 6. PNF INFORMATICA –Sistemas Operativos Fig. 2 Procesos Ligeros Hilos o Hebras Fuente: Deitel (1193) Referencias Deitel, H. M. Sistemas Operativos, 2ª Edición, Addison-Wesley, 1993. Milenkovic M.( 1994) Sistemas Operativos. Conceptos y Diseño, 2ª Edición, McGraw-Hill Stallings, W.Operating Systems, 2ª Edición, Prentice Hall, 1995. Documento en línea. Disponible en: http://sistemasoperativos.angelfire.com/html/2.3.html Consultado: (2013, Marzo, 13)