Você está na página 1de 8

Cuadro comparativo entre sistemas operativos

de tiempo real y distribuido


Sistemas en tiempo real

Sistemas operativos
distribuidos

Un sistema de tiempo real es un


sistema informtico que interacciona
con su entorno fsico y responde a los
estmulos del entorno dentro de un
plazo de tiempo determinado. No
basta con que las acciones del
sistema sean correctas, sino que,
adems, tienen que ejecutarse dentro
de un intervalo de tiempo
determinado.

Los sistemas operativos distribuidos


desempean las mismas funciones
que un sistema operativo normal,
pero con la diferencia de trabajar en
un entorno distribuido. Su Misin
principal consiste en facilitar el acceso
y la gestin de los recursos
distribuidos en la red.

Caractersticas:
Determinismo
Responsividad
Usuarios controladores
Confiabilidad
Operacin a prueba de fallas
duras (fail hard operation)

Caractersticas bsicas
Los sistemas operativos distribuidos
estn basados en las ideas bsicas:
Transparencia
Eficiencia
Flexibilidad
Escalabilidad

Determinismo
El determinismo es una cualidad clave en los sistemas de tiempo real. Es la
capacidad de determinar con una alta probabilidad, cuanto es el tiempo que se
toma una tarea en iniciarse. Esto es importante porque los sistemas de tiempo
real necesitan que ciertas tareas se ejecuten antes de que otras puedan iniciar.

Esta caracterstica se refiere al tiempo que tarda el sistema antes de responder


a una interrupcin. Este dato es importante saberlo porque casi todas las
peticiones de interrupcin se generan por eventos externos al sistema (i.e. por
una peticin de servicio), as que es importante determinar el tiempo que
tardara el sistema en aceptar esta peticin de servicio.

Responsividad
La responsividad se enfoca en el tiempo que tarda una tarea en ejecutarse una
vez que la interrupcin ha sido atendida. Los aspectos a los que se enfoca son:

La cantidad de tiempo que se lleva el iniciar la ejecucin de una interrupcin


La cantidad de tiempo que se necesita para realizar la tarea que pidi la
interrupcin.
Los efectos de interrupciones anidadas.
Una vez que el resultado del clculo de determinismo y responsividad es
obtenido, se convierte en una caracterstica del sistema y un requerimiento
para las aplicaciones que corrern en l,(por ejemplo, si diseamos una
aplicacin en un sistema en el cual el 95 % de las tareas deben terminar en
cierto perodo entonces es recomendable asegurarse que las tareas ejecutadas
de nuestra aplicacin no caigan en el 5 % de bajo desempeo).

Usuarios controladores
En estos sistemas, el usuario (por ejemplo, los procesos que corren en el
sistema) tienen un control mucho ms amplio del sistema.

El proceso es capaz de especificar su prioridad

El proceso es capaz de especificar el manejo de memoria que requiere (que


parte estar en cach y que parte en memoria swap y que algoritmos de
memoria swap usar)
El proceso especifica qu derechos tiene sobre el sistema.
Esto aunque parece anrquico no lo es, debido a que los sistemas de tiempo
real usan tipos de procesos que ya incluyen estas caractersticas, y usualmente
estos TIPOS de procesos son mencionados como requerimientos. Un ejemplo es
el siguiente:

Los procesos de mantenimiento no debern exceder el 3 % de la capacidad


del procesador, a menos que en el momento que sean ejecutados el sistema se
encuentre en la ventana de tiempo de menor uso.

Confiabilidad
La confiabilidad en un sistema de tiempo real es otra caracterstica clave. El
sistema no debe solamente estar libre de fallas pero ms an, la calidad del
servicio que presta no debe degradarse ms all de un lmite determinado.
El sistema debe de seguir en funcionamiento a pesar de catstrofes, o fallas
mecnicas. Usualmente una degradacin en el servicio en un sistema de
tiempo real lleva consecuencias catastrficas.

Operacin a prueba de fallas duras (fail hard operation)


El sistema debe de fallar de manera que cuando ocurra una falla, el sistema
preserve la mayor parte de los datos y capacidades del sistema en la mayor
medida posible.
Que el sistema sea estable, es decir, que si para el sistema es imposible
cumplir con todas las tareas sin exceder sus restricciones de tiempo, entonces
el sistema cumplir con las tareas ms crticas y de ms alta prioridad.

Sistemas distribuidos

Existen dos esquemas bsicos: Los Fuertemente Acoplados y los dbiles. Un sistema fuertemente
acoplado es aquel que comparte la memoria y un reloj global, cuyos tiempos de acceso son similares
para todos los procesadores. En un sistema dbilmente acoplado los procesadores no comparten ni
memoria ni reloj, ya que cada uno cuenta con su memoria local.
Transparencia
El concepto de transparencia de un Sistema operativo distribuido va ligado a la idea de que todo el
sistema funcione de forma similar en todos los puntos de la red, debido a esto queda como labor del
sistema operativo coordinar el mecanismo que logre la unificacin de todos los sistemas y recursos
totalmente transparente para el usuario o aplicacin.
El que el sistema disponga de varios procesadores debe lograr un mayor rendimiento del sistema, pero
el sistema operativo debe controlar que tanto los usuarios como los programadores vean el ncleo del
sistema distribuido como un nico procesador, Es decir que la programacin y la ejecucin de los
programas y tareas sean exactamente iguales que las de los sistemas operativos normales en aspectos
visuales y de programacin, pero mas rpidos y eficientes por la distribucin de la tareas.
Eficiencia
La idea base de los sistemas operativos distribuido es la de obtener sistemas mucho mas rpidos que
los utilizados de procesador nico, Y para lograr esto tenemos que olvidar la idea antigua de ejecutar los
programas en estos procesadores y pensar en distribuir las tareas a los procesadores libres mas rpidos
en cada momento.
El concepto global de que un procesador haga todas las tareas y la desarrolle rpido depende de
muchos factores concretos: Velocidad, Memoria y tipo de procesamiento, Pero para un sistema
operativo distribuido esto es mucho mas fcil y eficiente, solo buscara un procesador mas rpido y mas
libre para que desarrolle las tareas y har un display de los resultados obtenidos.
Flexibilidad
La Flexibilidad dentro de sistema operativo distribuido, describe su capacidad para soportar cambios,
actualizaciones y mejoras que le permitan irse desarrollando al mismo ritmo de la evolucin tecnolgica.
Dicha capacidad es una virtud y un conflicto. Una Virtud debido a las grandes necesidades de los
sistemas operativos de mejorar despus de las primeras versiones y un conflicto que surge entre los
sistemas de con Ncleo Monoltico y los sistemas con Micro ncleo las cuales son dos arquitecturas
distintas del ncleo del sistema operativo.
Ncleo Monoltico
Como ejemplo de sistema operativo de ncleo monoltico esta UNIX, estos sistemas tienen en ncleo
grande y complejo, que engloba todos los servicios del sistema. Esta programado de forma no modular,
y tiene un rendimiento mayor que un micro ncleo. Sin embargo, cualquier cambio a realzar en
cualquiera de los servicios, requiere de hacer un STOP a todos los servicios y la recopilacin del ncleo.

Micro Ncleo.
La arquitectura ofrece la alternativa al ncleo monoltico, se basa en una programacin altamente
modular y tiene un tamao mucho menor que el ncleo monoltico. Como consecuencia, el refinamiento
y el control de errores son mas rpidos y sencillos. Adems, la actualizacin de los servicios es ms
sencilla y gil. Ya que solo es necesario la recopilacin del servicio y no de todo el ncleo. Como
desventaja, El rendimiento se ve afectado negativamente.
En la actualidad la mayora de los sistemas operativos distribuidos en desarrollo tienden a un diseo de
micro ncleo el cual aun siendo un poco mas lento, garantiza una estabilidad mayor y un aumento de la
flexibilidad del sistema.
Escalabilidad
Un sistema operativo distribuido debera funcionar tanto para una docena de computadoras como para
mil en una sola red, el tipo de red utilizada no debe de ser un problema ni su topologa (LAN o WAN)
(TOKEN RING o ETHERNET) y mucho menos la distancia entre los equipos. Sin embargo todo esto
influye, Aunque estos puntos serian muy deseables, pude que la solucin valida para unas cuantas
computadoras no sean aplicables como para mil. Del mismo modo el tipo de red condiciona
grandemente el rendimiento del sistema y puede que lo funcione para un tipo de red requiera
modificaciones para otro.
Los sistemas operativos distribuidos necesitan de grandes estndares para trabajar y sobre todo de
ajustes a las necesidades principales de cada red y sus usuarios. Este concepto propone que cualquier
computador debe funcionar perfectamente como un sistema operativo distribuido, pero de la misma
forma debe de formar parte y trabajar como ms equipos no importan la cantidad o los recursos que
estos le puedan proporcionar.
Sincronizacin
La sincronizacin es un punto clave para los sistemas operativos distribuidos. Para computadores
nicos no es nada importante, pero en el caso de los recursos compartidos de la red, la sincronizacin
es sumamente importante.
Los sistemas operativos distribuidos tienen un reloj por cada ordenador del sistema, con lo que es
fundamental una coordinacin entre todos los relojes para mostrar una hora nica. Los osciladores de
cada ordenador son ligeramente diferentes, y como consecuencia todo los relojes sufren un desfase y
deben ser sincronizados continuamente. La sincronizacin no es trivial, porque se realiza a travs de
mensajes por la red. Cuyo tiempo de envi pude ser variable y depender de muchos factores como la
distancia, la velocidad de transmisin y la propia estructura de la red.
El Reloj.
La sincronizacin del reloj no tiene que ser exacta y bastara con que sea aproximadamente igual en
todos los ordenadores. Hay que tener en cuenta eso si. El modo de actualizar la hora de un reloj es
particular. Es fundamenta no retrasar nunca la hora, aunque el reloj adelante. En vez de eso, hay que
atrasar la actualizaron del reloj. Frenarlo. Hasta que alcance la hora aproximada. Existen diferentes
algoritmos de actualizan de la hora.
El Reloj es nicamente uno de los tantos problemas de sincronizacin que existen en los sistemas
operativos distribuidos.

Funcionamiento Lgico del Sistema


A medida en la que hemos ido desarrollando el tema, hemos declarado que un sistema operativo
distribuido dentro de sus funciones bsicas, es capaz de encontrar mecanismos para la asignacin de
tareas a procesadores que pueden estar dentro o fuera del equipo que esta ejecutando el programa.
Aadido a esto los sistemas operativos distribuidos brindan mas servicios de distribucin como son los
siguientes:
Servicios de Comunicacin
Sistemas de Ficheros (File Sharing)
Servicios de Nombres
Servicios de Sincronizacin y Coordinacin
Memoria Compartida Distribuida
Gestin de Procesos
Servicio de Seguridad
Servicios de Comunicacin
Los servicios de comunicacin son los tpicos servicios de red, pero en el caso de los sistemas
operativos distribuidos son mas especializados en ciertas reas.
Los sistemas operativos distribuidos utilizan un concepto de interconexin llamado Multicast
(Comunicacin en Grupo) que le permite a todos los computadores del sistema trabajar como un solo
elemento de la red.
Toda la coordinacin de los SOD son sincronizados por medio de SOCKETS lo cuales son paso de
mensajes por la red que le permiten a los sistemas verificar cual es el equipo que esta disponible o
simplemente el estado de un equipo actual. Los SOCKETS tambin son utilizados para la actualizacin
del reloj.
Sistemas de Ficheros (File Sharing)
El concepto del sistema de ficheros esta basado en la gestin de distintos dispositivos en diferentes
nodos ofreciendo a usuarios la misma visin que un Sistema Centralizado.
Dicho sistema permite que los usuarios compartan informacin de forma transparente. Un buen ejemplo
de esto es los contactos compartidos de cada terminal los cuales se reflejan en un solo modulo de
contactos cada vez que una persona abre sus contactos.
Servicios de Nombres
Estos servicios identifican y localizan los recursos en el entorno distribuido. Existen dos: Pginas
Blancas y Paginas Amarillas. El servicio de pginas blancas es el propiamente dicho de nombres y el de
pginas amarillas es el de directorios.

Servicios de Sincronizacin
Los servicios de Sincronizacin son los que nos permiten mantener el los relojes de las computadoras
individuales en un tiempo aproximado y apropiado.
La sincronizacin puede ser de relojes Fsicos, los cuales sincronizan los relojes de hardware y de
Relojes Lgicos, los cuales ordenan la entrada, ejecucin y salida de los eventos.
Memoria Compartida Distribuida (DSM)
En un sistema operativo distribuido, la memoria pasa a ser fsicamente privada pero lgicamente
compartida. Es decir, un computador ejecuta los programas en su memoria propia, pero en caso de
necesitar mas memoria utilizara los recursos disponibles de otra computadora que este capacitada y
preparada dentro de la red para compartir su memoria.
La Memoria compartida distribuida ayuda a que no se formen los famosos cuellos de botella, debido que
busca los recursos necesarios para lograr cumplir todas las tareas asignadas.
Servicios de Seguridad
Los servicios de seguridad de un SOD van ligados a permisos de acceso tanto a los datos compartidos
como a los recursos. Los recursos de memoria por ejemplo, son asignados permisos a la cantidad de
memoria compartida siguiendo las necesidades fsicas de cada computadora.
Ejemplo: Una computadora de 128 MB RAM, la cual trabaja mucho es muy probable que en vez de
poder compartir memoria requiera de memoria compartida de otras computadoras. Debido a esto, el
DSM (Distribuid Shared Memory o Memoria Distribuida Compartida) es Deshabilitado para que no se
disponga de recursos libres de este computador.
Sistema Operativo Distribuido vs Sistema Distribuido
Existe una diferencia vital entre los sistemas operativos distribuidos y los sistemas distribuidos.
Podramos llamar a un Sistema Distribuido una capacidad del Sistema operativo Distribuido, es decir:
Un sistema distribuido es la relacin que existe entre una computadora independiente y un servidor de
archivos o dispositivos compartidos. Cada computadora ejecuta sus programas en su memoria propia
haciendo uso de su nico microprocesador y memoria, este no comparte memoria ni asigna tareas a
otros procesadores de la red.
Sin embargo, un Sistema operativo distribuido tiene acceso a todos los dispositivos compartidos de la
red incluyendo procesadores y memoria RAM.
Desventajas de los SOD
Por muy maravillosos que nos puedan pareces los sistemas operativos distribuidos, tambin tienen sus
desventajas. La sincronizacin del sistema es una tarea rdea de la cual nunca se descansa y la
estandarizacin del sistema es un tanto complicada y limitante.
Debido a que no todos los sistemas operativos son de de carcter distribuido enlazar los distintos tipos
de sistemas operativos es un poco complicado.

El inters de hacer el SOD lo mas transparente posible lo hace muy complicado en su programacin y el
lograr que el sistema operativo no tenga problemas para que no cause problemas a otros equipos que le
asignaron tareas es un poco dificultoso.
Conclusin
El futuro de los sistemas operativos Distribuidos esta en la formacin de un nuevo kernel universal que
soporte distribucin para que este pueda ser aplicado a todos los sistemas operativos sin importar su
plataforma. O por lo menos que los sistemas puedan ser distribuidos entre las computadoras que corran
este mismo sistema dentro de la misma red y unificado por un servidor de sistemas operativos
distribuidos.
El sistema operativo distribuido es usado a menudo como sub sistemas operativos utilizando sus
ventajas como por ejemplo el sistema de clusters para almacenamiento. Creemos que si podemos
encontrar sub soluciones a la distribucin que sean ventajosas, deberamos de incursionar el futuro de
la informtica a la distribucin total.

Você também pode gostar