Está en la página 1de 23

Procesos y

procesadores en
sistemas
distribuidos
Integrantes:
Gastn Surez Rivera
Joselyn Mariduea

- Son como pequeos mini procesos

Hilos

- Cada hilo se ejecuta en forma


secuencial y tiene su contador de
programa y una pila para llevar un
registro de su posicin
- Los hilos comparten el CPU; primero
se ejecuta un hilo y despus
otro(tiempo compartido).
- En un multiprocesador se pueden
ejecutar en paralelo.

Como los procesos tradicionales los


hilos pueden tener uno de los
siguientes estados:
En ejecucin.- posee CPU y est activo

Hilos

Bloqueado.- espera a que otro hilo


elimine el bloqueo.
Listo.- est programado para su
ejecucin, la cual se llevara a cabo tan
pronto le llegue su turno
Terminado.- es aquel que ha hecho su
salida.

Uso
de los
hilos

Los hilos se inventaron para permitir la


combinacin del paralelismo con la
ejecucin secuencial y el bloqueo de
las llamadas al sistema.

Organizacin de
hilos en un proceso

Modelo del
servidor/trabaja
dor

Despus de examinar la
solicitud elige a un hilo
trabajador
inactivo
(bloqueado) y le enva la
solicitud, lo cual se puede
realizar
al
escribir
un
apuntador al mensaje en una
palabra especial asociada a
cada
hilo.
El
servidor
despierta
entonces
al
trabajador dormido, verifica si
puede satisfacer la solicitud
por medio del bloque cach
compartido, al que tienen
acceso todos los hilos. Si no
puede, enva un mensaje al
disco para obtener el bloque
necesario (READ) y se duerme
en espera de la conclusin de
la operacin del disco. Se
llama entonces al planificador
y se inicia otro hilo, que tal

Modelo de
equipo

Aqu todos los hilos son iguales y


cada uno obtiene y procesa sus
propias solicitudes. No hay
servidor. A veces llega trabajo
que un hilo no puede manejar,
en particular si cada hilo se
especializa en manejar cierto
tipo de trabajo. En este caso, se
puede utilizar una cola de
trabajo, la cual contiene todos
los trabajos pendientes. Con este
tipo de organizacin, un hilo
debe verificar primero la cola de
trabajo antes de buscar en el
buzn del sistema.

Modelo de
entubamien
to

En este modelo, el primer hilo


genera ciertos datos y los
transfiere al siguiente para su
procesamiento. Los datos pasan
de hilo en hilo y en cada etapa
se
lleva
a
cabo
cierto
procesamiento.
Los entubamientos se utilizan
con amplitud en muchas reas
de los sistemas de cmputo.
desde la estructura interna de
los CPU RlSC hasta las lneas de
comandos de UNIX.

Implantacin de
un paquete de
hilos

Consiste en colocar todo el paquete de hilos en el


espacio del usuario.
Ventajas:
Se puede implantar en un S.O. que no tiene que
soportar dichos hilos.

En el
espacio
del usuario

permiten que cada proceso tenga su algoritmo


de planificacin adaptado.
Desventajas:
Problema de la implementacin de las llamadas
al sistema con bloqueo.
Si un hilo comienza su ejecucin, ninguno de los
dems hilos de ese proceso puede ejecutarse, a
menos que el primer hilo entregue de forma
voluntaria al CPU.
Los programadores desean los hilos
aplicaciones donde aquellos a menudo.

en

En el ncleo

Cuando un hilo desea crear un nuevo hilo o


destruir uno existente, hace una llamada al
ncleo, el que realiza entonces la creacin o
eliminacin.
Para controlar los hilos el ncleo tiene una
tabla con una entrada por cada hilo y dems
informacin relativa al hilo.

Hilos y RPC

Al llegar un mensaje nuevo a la mquina servidora, el


ncleo crea en ese momento un nuevo hilo para darle
servicio a la solicitud. Adems, asocia el mensaje con
el espacio de direcciones del servidor y configura la
pila del nuevo hilo para tener acceso al mensaje. Este
esquema se llama de recepcin implcita y contrasta
con el hilo convencional que realiza una llamada al
sistema para recibir un mensaje. El hilo que se crea de
manera espontnea para el manejo de la RPC recibida
se conoce a menudo como hilo de aparicin
instantnea (pop-up thread).

Modelos de
sistema

Modelos
del
sistema

En un sistema tradicional, slo existe


un
procesador.
En
un
sistema
distribuido, con varios procesadores,
ste es un aspecto fundamental del
diseo. Los procesa- dores de un
sistema
distribuido
se
pueden
organizar de varias formas.

Modelo
de
estacin
de
trabajo

El sistema consta de estaciones de trabajo


(computadoras personales para usuarios finales)
dispersas en un edificio o campus y conectadas.
En ciertos sistemas, las estaciones de trabajo
pueden tener discos locales (estaciones de
trabajo con disco) o en otros no (estaciones de
trabajo sin disco).
Si las estaciones de trabajo carecen de disco, el
sistema de archivos debe ser implantado
mediante uno o varios servidores de archivos en
la red. Las solicitudes de lectura o escritura se
envan a un servidor de archivos, el cual realiza
el trabajo y enva de regreso las respuestas.
entre s por medio de una LAN de alta velocidad.

Son populares en las universidad y empresas.

Estacion
es de
trabajo
sin disco

Las estaciones de trabajo equipadas con pequeos y


lentos discos son generalmente ms caras que si se
tienen uno o dos servidores de archivos equipados
con discos enormes y rpidos a los cuales se tiene
acceso mediante la LAN.
Fcil mantenimiento.
Respaldo y mantenimiento del hardware.
Simetra y flexibilidad (el usuario puede ir a cualquier
estacin de trabajo y entrar al sistema).

El modelo
de la pila
de
procesador
es

En vez de darle a los usuarios estaciones de trabajo personales, en


este modelo se les dan terminales grficas de alto rendimiento,
como las terminales X (aunque tambin las pequeas estaciones
de trabajo se pueden utilizar como terminales).

Teora
de
colas

El principal argumento para la centralizacin del poder de


cmputo como pila de procesadores proviene de la teora de
colas. Un sistema de colas es una situacin donde los
usuarios generan en forma aleatoria solicitudes de trabajo a
un servidor. Cuando el servidor est ocupado, los usuarios se
forman para el servicio y se procesan segn su turno.

Modelo
hbrido

Esta solucin es ms cara que cualquiera de los dos


modelos puros, combina las ventajas de ambos.
El trabajo interactivo se puede llevar a cabo en las
estaciones de trabajo, con una respuesta garantizada.
Todos los procesos no interactivos se ejecutan en la
pila de procesadores, as como todo el cmputo
pesado en general. Este modelo proporciona una
respuesta interactiva ms rpida, un uso eficiente de
los recursos y un diseo sencillo.

Asignacin de
procesadores

Estrategias
de
asignacin
de
procesadore
s

Las estrategias de asignacin de procesadores se


pueden dividir en dos categoras amplias. En la
primera, que llamaremos no migratoria, al crearse
un proceso, se toma una decisin acerca de dnde
colocarlo. Una vez colocado en una mquina, el
proceso permanece ah hasta que termina. No se
puede mover, no importa lo sobrecargada que
est la mquina ni que existan muchas otras
mquinas inactivas. Por el contrario, con los
algoritmos migratorios, un proceso se puede
trasladar aunque haya iniciado su ejecucin.
Mientras que las estrategias migratorias permiten
un mejor balance de la carga, son ms complejas
y tienen un efecto fundamental en el diseo del
sistema.

Objetiv
os

Maximizar el uso del CPU, es


decir evitar el tiempo inactivo del
cpu.
Minimizar el tiempo promedio de
respuesta.
Minimizar la tasa de respuesta,
es decir reducir la cantidad de
tiempo necesario para ejecutar
un proceso.

Aspectos
del
diseo
de
algoritm
os de
asignaci
n de
procesos

Algoritmos deterministas.- son adecuados cuando se


sabe todo acerca del comportamiento de los procesos
Algoritmos heursticos.- sistemas donde la carga es
impredecible de manera drstica cada hora o minuto.
Algoritmos ptimos.- se pueden obtener en sistemas
centralizados y descentralizados. Son ms caros,
recolecta mas informacin y la procesa un poco ms.
Algoritmos
sub-optimos.distribuidos reales

estn

en

sistemas

Algoritmos locales.- son sencillos y estn muy lejos de


ser ptimos
Algoritmos globales.- de un resultado poco mejor a un
costo mayor
Algoritmo iniciado por el emisor.- busca una maquina
inactiva
Algoritmo iniciado por el receptor.- busca un trabajo
por realizar