You are on page 1of 6

Universidad Jos Cecilio del Valle

Sistemas Operativos I
Lic. Karen Euceda
Procesos e hilos
Wilman Josu Moncada Lpez
2013130088











1. Definicin de proceso.
Espritu animado de un programa
Es una ejecucin concreta de un programa, con un camino determinado y
un valor de sus variables determinados.
La unidad mnima de expedicin y de asignacin de recursos es el proceso.
2. Estados en los que puede estar un proceso.
Listo. Tiene todo lo necesario para ejecutarse excepto el procesador.
Suspendido. No est en memoria principal.
Bloqueado. Est esperando un evento.
Bloqueado y suspendido.
Listo y suspendido.

3. Tareas e hilos.
Unidad mnima de asignacin: tarea.
Unidad mnima de expedicin: hilo.
Dos hilos de una misma tarea (denominados hilos pares) comparten el
segmento de cdigo, el segmento de datos y un espacio de pila, es decir,
los recursos asignados a la tarea.
Podemos captar la funcionalidad de los hilos si comparamos el control de
mltiples hilos con el control de mltiples procesos. En el caso de los
procesos, cada uno opera independientemente de los otros; cada proceso
tiene su propio contador de programa, registro de pila, y espacio de
direcciones. Este tipo de organizacin es muy til cuando los trabajos que
los procesos efectan no tienen ninguna relacin entre si.
Pero cuando los trabajos a realizar van a necesitar, por ejemplo, la
llamada a una misma funcin o bien, la comparticin de una variable en
memoria, nos interesar englobarlos en una tarea. Ej: Avion-Torre.
Cuando un hilo est en ejecucin, posee el acceso a todos los recursos que
tiene asignados la tarea.
Un hilo tendr lo siguiente:
Estado.
Contexto del procesador. Punto en el que estamos ejecutando, la
instruccin concretamente en la que nos hallamos. Es til a la hora
de reanudar un hilo que fue interrumpido con anterioridad, puesto
que al guardar el contexto, guardamos la ultima instruccin que
ejecutamos, y as podemos conocer por donde tenemos que
continuar la ejecucin del hilo.
Pila de ejecucin donde se ir metiendo y sacando instrucciones.
(Lugar donde almacenaremos las instrucciones que van a ser
ejecutadas).
Espacio de almacenamiento esttico donde almacenar las
variables.
Acceso a los recursos de la tarea, que son compartidos por todos los
hilos de la tarea.
Ventajas del uso de hilos.

Se tarda menos tiempo en crear un hilo de una tarea existente que
en crear un nuevo proceso.
Se tarda menos tiempo en terminar un hilo que en terminar un
proceso.
Se tarda menos tiempo en cambiar entre dos hilos de una misma
tarea que en cambiar entre dos procesos (porque los recursos no
cambian, por ejemplo)
Es mas sencillo la comunicacin (paso de mensajes por ejemplo)
entre hilos de una misma tarea que entre diferentes procesos.
Cuando se cambia de un proceso a otro, tiene que intervenir el
ncleo del sistema operativo para que haya proteccin. Cuando se
cambia de un hilo a otro, puesto que la asignacin de recursos es la
misma, no hace falta que intervenga el sistema operativo.


Planificacin de procesos en Sistemas Operativos.
Conjunto de polticas y mecanismos incorporados al sistema operativo, a
travs de un mdulo denominado planificador, que debe decidir cul de
los procesos en condiciones de ser ejecutado conviene ser despachado
primero y qu orden de ejecucin debe seguirse. Esto debe realizarse sin
perder de vista su principal objetivo que consiste en el mximo
aprovechamiento del sistema, lo que implica proveer un buen servicio a
los procesos existentes en un momento dado.
Objetivos de la Planificacin de procesos
La Planificacin de procesos tiene como principales objetivos la equidad,
la eficacia, el tiempo de respuesta, el tiempo de regreso y el rendimiento.
Equidad: Todos los procesos deben ser atendidos.
Eficacia: El procesador debe estar ocupado el 100% del tiempo.
Tiempo de respuesta: El tiempo empleado en dar respuesta a las
solicitudes del usuario debe ser el menor posible.
Tiempo de regreso: Reducir al mnimo el tiempo de espera de los
resultados esperados por los usuarios por lotes.
Rendimiento: Maximizar el nmero de tareas que se procesan por cada
hora.
Algoritmos de Planificacin
Primero en llegar primero en ser servido
Conocido como FCFS (First Come First Served). Este algoritmo emplea
una cola de procesos, asignando un lugar a cada proceso por el orden de
llegada. Cuando el proceso llega es puesto en su lugar en la cola despus
del que lleg antes que l y se pone en estado de listo. Cuando un proceso
comienza a ejecutarse no se interrumpe su ejecucin hasta que termina
de hacerlo.


Prioridad al ms corto
Su nombre es SJF (Shortest Job First). El proceso que se encuentra en
ejecucin cambiar de estado voluntariamente, o sea, no tendr un
tiempo de ejecucin determinado para el proceso. A cada proceso se le
asigna el tiempo que usar cuando vuelva a estar en ejecucin, y se ir
ejecutando el que tenga un menor tiempo asignado. Si se da el caso de
que dos procesos tengan igual valor en ese aspecto emplea el algoritmo
FCFS.
Round Robin
A cada proceso se le asigna un tiempo determinado para su ejecucin, el
mismo tiempo para todos. En caso de que un proceso no pueda ser
ejecutado completamente en ese tiempo se continuar su ejecucin
despus de que todos los procesos restantes sean ejecutados durante el
tiempo establecido. Este es un algoritmo basado en FCFS que trata la cola
de procesos que se encuentran en estado de listos como una cola circular.
Planificacin por prioridad
En este tipo de planificacin a cada proceso se le asigna una prioridad
siguiendo un criterio determinado, y de acuerdo con esa prioridad ser el
orden en que se atienda cada proceso.
Planificacin garantizada
Para realizar esta planificacin el sistema tiene en cuenta el nmero de
usuarios que deben ser atendidos. Para un nmero "n" de usuarios se
asignar a cada uno un tiempo de ejecucin igual a 1/n.
Planificacin de Colas Mltiples
El nombre se deriva de MQS (Multilevel Queue Schedulling). En este
algoritmo la cola de procesos que se encuentran en estado de listos es
dividida en un nmero determinado de colas ms pequeas. Los procesos
son clasificados mediante un criterio para determinar en qu cola ser
colocado cada uno cuando quede en estado de listo. Cada cola puede
manejar un algoritmo de planificacin diferente a las dems.


Tiempos
En la Planificacin de procesos se tiene en cuenta diferentes tiempos que
pueden ser calculados, como son el "Tiempo de espera medio", el
"Tiempo de retorno del proceso" y el "Tiempo de retorno medio".
Tiempo de espera medio
Es el promedio de tiempos en que los procesos estn en estado de listos.
En algoritmos FCFS este tiempo suele ser bastante largo. En algoritmos SJF
para los procesos largos este tiempo suele ser muy grande, pues se
estarn ejecutando constantemente los procesos ms cortos y los ms
largos se encontrarn constantemente en espera, por lo que pueden
entrar en inanicin. En Planificacin por prioridad los procesos de
prioridad baja podran no ejecutarse nunca. Para dar solucin a este
problema el envejecimiento de un programa eleva su prioridad.
Tiempo de retorno del proceso
Es el tiempo que transcurre desde la creacin de un proceso hasta que
termina la ejecucin del programa que le dio lugar.
Tiempo de retorno medio
Es la suma de los tiempos de retorno de cada uno de los procesos dividida
entre la cantidad de procesos.

You might also like