Académique Documents
Professionnel Documents
Culture Documents
PROCESOS
PROCESOS
Se define como un programa en ejecucin.
Desde la perspectiva de un sistema operativo:
La administracin y la calendarizacin de los procesos
son quiz los asuntos ms importantes.
Hilos
Virtualizacin
Clientes
Servidores
Migracin de procesos entre diferentes mquinas
(sistemas distribuidos de rea amplia).
Hilos
Igual que un proceso, un hilo ejecuta su
propio segmento de cdigo,
independientemente de otros hilos
No se hace ningn intento por lograr un alto
grado de transparencia de concurrencia
Un sistema de hilos mantiene generalmente
slo un mnimo de informacin para permitir
que la CPU sea compartida por varios hilos
Mg. Vanessa Jurado Vite Sistemas Distribuidos
Carrera: Ingeniera de Sistemas
Hilos
La informacin que no es estrictamente
necesaria para manipular mltiples hilos es
ignorada
Se deja por completo a los desarrolladores la
proteccin de los datos en contra de los
accesos inapropiados dentro de un proceso
nico
Hilos en Sistemas
Distribuidos
Proporcionan un medio conveniente para
permitir llamadas de bloqueo de sistema sin
bloquear todo el proceso en que se ejecuta
el hilo
Clientes Multihilos
En redes de rea amplia, los ciclos tienen
retrasos de cientos de milisegundos, o
incluso segundos.
La manera ms comn de ocultar las
latencias de comunicacin es iniciar la
comunicacin y proceder de inmediato con
alguna otra cosa
Servidores Multihilos
El principal uso de la tecnologa multihilos
est del lado del servidor
Consideremos la organizacin de un servidor
de archivos que ocasionalmente se tiene que
bloquear en espera del disco
Hilos
Hacen posible retener la idea de procesos secuenciales que
emiten llamadas de bloqueo de sistema (por ejemplo, un RPC
para comunicarse con el disco) y an as lograr el paralelismo.
Las llamadas de bloqueo del sistema vuelven ms fcil la
programacin, y el paralelismo mejora el rendimiento.
El servidor de un solo hilo mantiene la facilidad y la
simplicidad de las llamadas de bloqueo del sistema, pero
cede algo del rendimiento
El mtodo de la mquina de estado finito logra un alto
rendimiento a travs del paralelismo, pero utiliza llamadas sin
bloqueo, por tanto es ms difcil de programar
VIRTUALIZACIN
La separacin entre tener una
sola CPU y ser capaz de pretender
que existen ms unidades de
procesamiento se puede extender
tambin a otros recursos, ello
origina lo que conocemos como
virtualizacin de recursos
La virtualizacin trata con la
extensin o el reemplazo de una
interfaz existente de modo que
imite el comportamiento de otro
sistema
Mg. Vanessa Jurado Vite Sistemas Distribuidos
Carrera: Ingeniera de Sistemas
Importancia Virtualizacin
Software heredado puede ejecutarse sobre el costoso
hardware de una mainframe.
La virtualizacin puede aportar las interfaces heredadas
hacia nuevas plataformas, y de esta manera dar paso
inmediato a lo ms reciente en cuanto a grandes clases de
programas existentes
La diversidad de plataformas y mquinas se puede reducir si,
en esencia, dejamos que cada aplicacin se ejecute en su
propia mquina virtual, posiblemente incluyendo las
bibliotecas relacionadas y el sistema operativo, el cual, a su
vez, se ejecute en una plataforma comn proporcionando un
alto grado de portabilidad y flexibilidad
Mg. Vanessa Jurado Vite Sistemas Distribuidos
Carrera: Ingeniera de Sistemas
Arquitecturas de mquinas
virtuales
Los sistemas de cmputo ofrecen cuatro tipos de interfaz distintos, y en cuatro
niveles diferentes:
1. Una interfaz entre el hardware y el software, constituida por instrucciones
mquina que se pueden invocar desde cualquier programa.
2. Una interfaz entre el hardware y el software, constituida por instrucciones
mquina que se pueden invocar solamente desde programas privilegiados, tales
como los sistemas operativos.
3. Una interfaz que consta de llamadas de sistema como las que ofrece un sistema
operativo.
4. Una interfaz que consta de llamadas a bibliotecas, las cuales forman, por lo
general, lo que conocemos como interfaz de programacin de aplicaciones
(API, por sus siglas en ingls). En muchos casos, las llamadas de sistema ya
mencionadas estn ocultas por una API
Arquitecturas de mquinas
virtuales
La virtualizacin puede tener lugar en dos formas diferentes:
1. mquina virtual de proceso, lo cual enfatiza que la virtualizacin se
implementa esencialmente solamente para un proceso, el emulador
tendr que imitar el comportamiento de las llamadas de sistema
2. monitor de la mquina virtual, proporciona un sistema que
bsicamente se implementa como una capa que cubre por completo al
hardware original, pero que ofrece todo un conjunto de instrucciones
del mismo (o de otro hardware) como una interfaz. Resulta crucial el
hecho de que se puede ofrecer esta interfaz de manera simultnea a
diferentes programas. Como resultado, ahora es posible tener
mltiples y diferentes sistemas operativos que se ejecutan de distinto
modo y concurrentemente sobre la misma plataforma.
SERVIDORES
Proceso que
implementa un
servicio
especifico en
representacin
de clientes
Se
organiz
a
Tipos de servidores
Existen distintas maneras de organizar servidores:
Servidor iterativo:
Manipula la peticin, la resuelve y si es necesario devuelve la respuesta a dicha
peticin del cliente.
Servidor concurrente:
No manipula, est basado en hilos, lo transmite al hilo y cambia su estado en espera
de otra instruccin.
El hilo manipula la peticin y es el responsable de enviar la respuesta de esa peticin.
Cuando un cliente realiza un a peticin este es enviado a un puerto o punto final,
muchos servicios no requieren de dicho puerto. Aquellos que no utilizan dichos
puertos son considerados dinmicos para aquello debe de usarse un demonio donde
el cliente contacta al demonio, solicita el puerto y contacta al servidor especificado.
Super-servidor:
Es implementado debido a que un solo servidor no puede atender a tantas peticiones
y eso significara una gran prdida de recursos.
Servidores de clsteres
Es una coleccin de maquinas conectadas a
travs de una red, donde cada maquina
ejecuta uno o mas servidores estas ofrecen
un gran acho de banda y latencia muy
pequea.
Servidores Distribuidos
Estados en servidores
Servidor sin estado:
No almacena de los datos con respecto al estado del cliente pero puede
modificar su estado sin necesidad de informar a los clientes. Aunque de
manera momentnea almacena dicha informacin que considera
relevante para decidir si un documento debe ser replicado y hacia
donde si se llegase a perder esta informacin no afecta en nada su
funcionamiento a esto tambin es considerado como un Estado suave.
Servidor con estados: