TEMA UNO: LA CPU CAMBIA DE PROCESO A PROCESO-Cuando la cpu cambia a otro proceso, el sistema debe guardar el estado del proceso anterior y cargar el estado guardado del nuevo proceso
- la conmutacion de contexto es trabajar extra, el sistema realiza trabajo util mientras conmuta, depende en gran medida del apoyo del hardware
- cuando un proceso esta ejecuntadose su estado reside en los registros del computador
TEMA DOS: PLANIFICADORES- el planificador de corto plazo de cpu selecciona que proceso debe ser ejecutado enseguida y se le asigna la cpu. bajo nivel, despachador es solicitado muy frecuentemente.
- planificador del mediano plazo: intermedio
- el planificador de largo plazo: selecciona que proceso debe ser traido a la cola de listos, es solicitado con poca frecuencia.
- el planificador de largo plazo controla el grado de mutiprogramacion
- los procesos pueden ser descritos como:
* procesos limitados por E/S - consumen mas tiempo realizadno operaciones de E/S que calculo, causan mucas rafagas cortas de la cpu
* procesos limitados por cpu - consumen mas tiempo realizando calculos; emplean refagas fuertes a la cpu
Representacion de la planificacion de procesos:

Representacion de la planificacion de procesos a mediano plazo:
TEMA TRES: CREACION DE PROCESOS- los procesos padres crean procesos hijos, los cuales, a su vez crean otros procesos, conformando un arbol de procesos
- recursos compartidos:
* los procesos padres e hijos comparten los recursos
* los hios comparten un subconjunto de los recursos del padre
* el padre y el hijo no comparten recursos
- ejecucion:
* el padre y el hijo se ejecutan concurrentemente
* el padre espera a que termine el hijo
- espacio de direcciones:
* el hijo duplica el del padre.
TEMA CUATRO: JERARQUI DE PROCESOS-grupos de procesos dependientes de cada shell
- familia de procesos
* hijo
* padre
* hermano
* abuelo
- vida de un procesos
* crea
* ejecuta
* muere o termina
- ejecucion del proceso
* batch
* interactivo
- grupo de procesos
TEMA CINCO: ARBOL DE PROCESOS DE UN SISTEMA UNIX TIPICO Y SOLARIS-solaris-

-unix-
TEMA SEIS: PROCESOS COOPERATIVOSPROVLEMA DE PRODUCTORES Y CONSUMIDORES- el problema de productores y consumidores es un paradigma de los procesos cooperativos, los productores producen informacion que es consumida por los procesos consumidores
* buffer ilimitado no estavlece un limite practico para el tamaño del buffer

* buffer limitado asume que hay un tamaño fijo de buffer
(imagen)
TEMA SIETE: HILOS- beneficios
- hilos de ussuarios
- modelos mutihilos
es la capacidad de un so para soportar multiples trayectorias concurrentes de ejecucion dentro de un mismo proceso
- hilos solaris 2
- hilos java
* ms-dos usa un solo hilo por procesos
* unix V soporta mutiples procesos por usuario pero solo soporta un hilo por proceso
* windows nt, 2000, xp, mach, Os2, solaris, linux
TEMA OCHO: HILOS- en una tarea multihilo, mientras un hilo servidor esta bloqueado y esperando, un segundo hilo en la misma tarea puede estar corriendo
* la cooperacion de multiples hilos en el mismotrabajo le proporciona un alto rendimiento y mejora la eficiencia.
* las aplicaciones que requieren compartir un buffer comun
-los hilos proporcionan un mecanismo que permite a los procesos secuenciales hacer llamadas al sistema bloqueadoras y al mismo tiempo lograr paralelismo
- el nucleo puede apoyar los hilos como en mach y os/2
- los hilos a nivel de usuario; soportando arriba por el kernel, a traves de una serie de llamadas de bibliotecas en el nivel de usuario (como en el proyecto cmu de andrew)
- un enfoque hibrido implementa tanto los hilos a nivel de usuario como hilos apoyados pore l kernel (solaris 2)
(mayor informacion sobre
hilos de ejecucion)
TEMA NUEVE: RELACION ENTRE HILOS Y PROCESOSSi bien los hilos son generados a partir de la creación de un proceso, podemos decir que un proceso es un hilo de ejecución, conocido como Monohilo. Pero las ventajas de los hilos se dan cuando hablamos de Multihilos, que es cuando un proceso tiene múltiples hilos de ejecución los cuales realizan actividades distintas, que pueden o no ser cooperativas entre sí. Los beneficios de los hilos se derivan de las implicaciones de rendimiento.
1. Se tarda mucho menos tiempo en crear un hilo nuevo en un proceso existente que en crear un proceso. Algunas investigaciones llevan al resultado que esto es así en un factor de 10.
2. Se tarda mucho menos en terminar un hilo que un proceso, ya que cuando se elimina un proceso se debe eliminar el BCP del mismo, mientras que un hilo se elimina su contexto y pila.
3. Se tarda mucho menos tiempo en cambiar entre dos hilos de un mismo proceso
4. Los hilos aumentan la eficiencia de la comunicación entre programas en ejecución. En la mayoría de los sistemas en la comunicación entre procesos debe intervenir el núcleo para ofrecer protección de los recursos y realizar la comunicación misma. En cambio, entre hilos pueden comunicarse entre sí sin la invocación al núcleo. Por lo tanto, si hay una aplicación que debe implementarse como un conjunto de unidades de ejecución relacionadas, es más eficiente hacerlo con una colección de hilos que con una colección de procesos separados.