Académique Documents
Professionnel Documents
Culture Documents
Los middleware se caracterizan por implementar la interacción entre las aplicaciones de diferentes formas:
Interacción sincrónica: Cuando una aplicación es “invocada” por otra, se ejecuta inmediatamente.
Interacción (sincrónica) bloqueante: Cuando una aplicación invoca a otra, la primera queda esperando
la respuesta de la segunda.
Interacción (sincrónica) no-bloqueante
Interacción asíncrona:
Una aplicación invoca otra pero no espera su ejecución inmediata.
Se implementa en base a mensajes.
Ventajas
Aportan interoperabilidad entre aplicaciones de software independientemente de sus propiedades o de las plataformas sobre las que se instalen.
Los servicios Web fomentan los estándares y protocolos basados en texto, que hacen más fácil acceder a su contenido y entender su funcionamiento.
Permiten que servicios y software de diferentes compañías ubicadas en diferentes lugares geográficos puedan ser combinados fácilmente para
proveer servicios integrados.
Desventajas
No siempre es aplicable.
Alto consumo de recursos (CPU y RAM).
Debe desarrollarse en forma específica.
Costo de desarrollo, implementación, etc.
No es solución válida para el largo plazo, es de corto plazo.
Complejidad logística (instalar en cada equipo).
Es de capacidad limitada.
No entrega todas las soluciones.
REPORTE DE LA INVESTIGACIÓN
La diferencia entre estos dos tipos de sistemas operativos está en base a los recursos que maneja cada
uno. Los sistemas operativos centralizados utilizan los recursos de una sóla computadora, mientras que
los sistemas operativos distribuidos gestionan los recursos de múltiples computadoras.
Los sistemas operativos centralizados aparecieron primero y los distribuidos están unos escalones
adelante en la evolución de los sistemas operativos. Hay mucha experiencia en los sistemas
centralizados pero en los distribuidos hay aún temas que requieren más investigación.
Los sistemas operativos que usamos normalmente en nuestras casas o en la universidad son
centralizados, con capacidad para conectarse en red, pues en estos ambientes sólo nos interesa usar
la máquina que ocupamos, pero en otros lugares, ya sea empresas u otras universidades puede
interesarles tener las computadoras bajo un sistema distribuido y proporcionar por ejemplo un uso
transparente de una gran capacidad de disco o capacidad de procesamiento.
Es mucho más compleja la implementación de un sistema operativo distribuido pues al tener que
gestionarse varias máquinas cambian los algoritmos, la forma de planificación, la manera en la que se
comunican los procesos, la sincronización, ya que en este nuevo entorno no se puede tener toda la
información sobre todos los nodos así que hay que buscar la manera posible de sobrellevar esta
situación.
El verdadero paralelismo se alcanza con los sistemas operativos distribuidos, pues tienen la
característica de poder ejecutar varios procesos en diferentes nodos al mismo tiempo, con loque se
mejora el performance del sistema en general. Con un sistema con un sólo procesador el paralelismo
era falso, ya que la técnica de la multiprogramación brinda sólo la ilusión de que varios procesos se
ejecutan a la vez, claro que también se puede lograr paralelismo con los nuevos procesadores de
varios núcleo.
Mientras que el objetivo del sistema operativo centralizado radica en llevar una buena gestión de los
recursos con los que cuenta la máquina, el objetivo del sistema distribuido es crear una transparencia
para el usuario, de forma que vea al conjunto de computadoras como una sola y no se dé cuenta donde
está el límite entre su máquina y cualquier otro nodo.
Los sistemas distribuidos tienen varias ventajas frente a los centralizados como la economía, la
velocidad, la confiabilidad, la flexibilidad, la comunicación y el crecimiento por incrementos
En conclusión, este Middleware permite colocar datos en una cola de mensajes que pueden ser
accedida a lo largo de la red.
La mayoría de los productos MOMs ofrecen colas con persistencia, replicación, o performance en
tiempo real. Algunos ejemplos son IBM-MQ y Microsoft-MSMQ.