Está en la página 1de 16

Administracin de tareas

3.1. Conceptos bsicos.


3.2. Administracin de procesos.
3.3. Administracin de hilos.
3.4. Ejecutivos cclicos

3.1. Conceptos bsicos.


Las actividades de un sistema de tiempo real se llaman tareas
El comportamiento temporal de las tareas se especifica
mediante sus atributos temporales

Un sistema ejecuta una variedad de programas, un proceso es un


programa en ejecucin; la ejecucin del mismo debe progresar de
manera secuencial.

Un hilo, denominado tambin proceso


ligero es una unidad bsica de utilizacin
de la CPU. El hilo comparte con otros hilos
que pertenecen al mismo proceso su
seccin de cdigo, su seccin de datos y
otros recursos del sistema

3.2 Administracin de procesos.

El acceso concurrente a datos compartidos puede llevar a


inconsistencias en los datos.
El mantenimiento de la consistencia en los datos requiere
mecanismos para asegurar la ejecucin ordenada de
procesos cooperativos.
Los mecanismos de consistencia deben permitir la aplicacin
correcta de los algoritmos de planificacin sin perjudicar a la
predictibilidad.

3.2.1 Interaccin entre tareas

Raras veces las tareas de un sistema son independientes


unos de otros.
Frecuentemente, los procesos cooperan entre si, o compiten por
algn recurso. Para esto es necesario realizar operaciones de comunicacin y
sincronizacin.
-Dos procesos se comunican cuando hay una transferencia de
informacin de uno a otro.
-Dos procesos estn sincronizados cuando hay restricciones
en el orden en que ejecutan algunas de sus acciones.
En la mayora de los sistemas de tiempo real, las
tareas interaccionan mediante
datos comunes (protegidos)
mensajes

En todos estos casos puede ocurrir que una tarea


tenga que esperar un suceso de otra menos
prioritaria.
Esta situacin se denomina bloqueo, y produce una
inversin de prioridad indeseable.
La inversin de prioridad no se puede eliminar
completamente, pero es posible limitar su duracin

3.3. Administracin de hilos.


Libreras de Hilos
Las libreras de hilos proveen a los programadores
con APIs para crear y administrar hilos
Dos formas primarias de implementarlas
Libreras enteramente en espacio de usuario
Librera a nivel de Kernel soportada por el SO

Pthreads
Pueden ser provistas sea a nivel de usuario como
a nivel de kernel
Es un standard POSIX (IEEE 1003.1c) API para
creacin y sincronizacin de hilos
Las API especifican el comportamiento de la
librera de hilos
Comn en SOs UNIX (Solaris, Linux, Mac OS X)

Cancelacin de Hilos
Terminar un hilo antes que finalice
Dos propuestas generales:
Cancelacin asincrnica termina el hilo
sealado inmediatamente
Cancelacin Diferida permite al hilo sealado
verificar peridicamente si debera ser
cancelado

Manejo de Signal
Los Signals son usados en UNIX para notificar a un
proceso que un particular evento ha ocurrido
Un signal handler es usado para signals a procesos
1. El Signal es generado por un particular evento
2. El Signal es enviado a un proceso
3. El Signal es manejado
Opciones:
Enviar el signal al hilo sobre el cual el signal se aplica
Enviar el signal a cada hilo en el proceso
Enviar el signal a ciertos hilos en el proceso
Asignar un hilo especfico para recibir todos los signals al
proceso

Pools de Hilos
Crea un nmero de hilos en un pool donde
esperan por trabajo
Ventajas:
Usualmente es ligeramente mas rpido servir
un requerimiento con un hilo existente que
crear uno nuevo
Permite que el nmero de hilos de la
aplicacin sea limitado al tamao del pool

Datos Especficos del Hilo


Permite que cada hilo tenga su propia copia de
datos

Util cuando no se tiene control sobre el


proceso de creacin de hilos (p.e., cuando se
usa un pool de hilos)

3.4. Ejecutivos cclicos


La misin de la aplicacin es proveer una respuesta adecuada, a travs de sus
salidas, a cada una de las entradas, todas al mismo tiempo

Cmo debe entonces estructurarse la


aplicacin para cumplir con dichos
requerimientos?
-Gran loop: maneja todos los eventos secuencialmente, en un
orden predeterminado, dentro de una tarea nica que se repite
cclicamente
-Estructura multitareas: Cada tarea dispone de un cierto tiempo
de acceso a los recursos, administrado por el sistema operativo.

Caractersticas
generales:

Parmetros de
Planificacin:

Existe un ciclo principal, el cual esta dividido en ciclos secundarios


En cada ciclo secundario se ejecutan un conjunto de tareas
Al conjunto de tareas que se ejecutan en un ciclo secundario se le llama
trama
En el tiempo ocioso el procesador, ejecuta una tarea en segundo plano
para actividades no criticas

Ventajas

Desventajas

También podría gustarte