Este documento describe conceptos clave de sistemas distribuidos como concurrencia, falta de reloj global, y fallos independientes de componentes. También explica la evolución de sistemas centralizados a grupos de servidores y luego a computación cliente-servidor. Define términos como síncrono, asincrónico, intranet y dispositivos handheld.
1. “AÑO DE LA DIVERSIFICACIÓN PRODUCTIVA Y EL
FORTALECIMIENTO DE LA EDUCACIÓN”
INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO
“ENRIQUE LÓPEZ ALBÚJAR”
FERREÑAFE
Carrera Profesional:
Computación e Informática
Módulo Profesional:
Desarrollo de Software y Gestión de Base de Datos
Unidad Didáctica:
Taller de Programación Distribuida
Semestre:
IV
Profesor:
Ing. Carlos A. Ríos Campos
Alumnos:
Manayay Chávez, Rommel
Piscoya Olazabal, Gaby
2. Sistemas Distribuidos
Definición:
"Sistemas cuyos componentes hardware y software,
que están en ordenadores conectados en red, se
comunican y coordinan sus acciones mediante el
paso de mensajes, para el logro de un objetivo. Se
establece la comunicación mediante
un protocolo prefijado por un esquema cliente-
servidor“.
3. Sistemas Distribuidos
Características:
Concurrencia.- Esta característica de los sistemas distribuidos
permite que los recursos disponibles en la red puedan ser
utilizados simultáneamente por los usuarios y/o agentes que
interactúan en la red.
Carencia de reloj global.- Las coordinaciones para la
transferencia de mensajes entre los diferentes componentes
para la realización de una tarea, no tienen una temporización
general, esta más bien distribuida a los componentes.
Fallos independientes de los componentes.- Cada
componente del sistema puede fallar independientemente,
con lo cual los demás pueden continuar ejecutando sus
acciones. Esto permite el logro de las tareas con mayor
efectividad, pues el sistema en su conjunto continua
trabajando.
4. Sistemas Distribuidos
Evolución:
Procesamiento central (Host).- Uno de los
primeros modelos de ordenadores interconectados,
llamados centralizados, donde todo el procesamiento
de la organización se llevaba a cabo en una
sola computadora, normalmente un Mainframe, y los
usuarios empleaban sencillos ordenadores personales.
Los problemas de este modelo son:
Cuando la carga de procesamiento aumentaba se
tenía que cambiar el hardware del Mainframe, lo cual
es más costoso que añadir más computadores
personales clientes o servidores que aumenten las
capacidades.
5. Sistemas Distribuidos
El otro problema que surgió son las modernas interfases gráficas de usuario, las cuales
podían conllevar a un gran aumento de tráfico en los medios de comunicación y por
consiguiente podían colapsar.
Grupo de Servidores.- Otro modelo que entró a competir con el anterior, también un
tanto centralizado, son un grupo de ordenadores actuando como servidores,
normalmente de archivos o de impresión, poco inteligentes para un número de
Minicomputadores que hacen el procesamiento conectados a una red de área
local.
Los problemas de este modelo son:
Podría generarse una saturación de los medios de comunicación entre los servidores
poco inteligentes y los minicomputadores, por ejemplo cuando se solicitan archivos
grades por varios clientes a la vez, podían disminuir en gran medida la velocidad de
transmisión de información.
La Computación Cliente Servidor.- Este modelo, que predomina en la actualidad,
permite descentralizar el procesamiento y recursos, sobre todo, de cada uno de
los servicios y de la visualización de la Interfaz Gráfica de Usuario. Esto hace que
ciertos servidores estén dedicados solo a una aplicación determinada y por lo tanto
ejecutarla en forma eficiente.
6. Sistema Centralizados
La computación centralizadaes cuando el proceso
de cómputo es realizado en una localización
central, usando terminales conectados a una
computadora central. La computadora en sí misma
puede controlar todos los periféricos directamente
(si están físicamente conectados con la
computadora central), o conectados a través de
un servidor de terminal.
Alternativamente, si los terminales tienen la
capacidad, pueden ser conectados con la
computadora central sobre la red. Los terminales
pueden ser terminales de texto o clientes ligeros por
ejemplo.
7. Sistema Centralizados
Ofrece mayor seguridad sobre los sistemas
descentralizados porque todo el procesamiento es
controlado en una localización central. Además, si
un terminal se daña, el usuario simplemente puede
ir a otro terminal y logearse de nuevo, y todos sus
archivos seguirán siendo accesibles. Dependiendo
del sistema, puede incluso reanudar su sesión desde
el punto en que estaba antes como si no hubiera
sucedido nada.” (Wikipedia Centralizado, 2011).
8. Sistemas centralizados:
Ventajas:
- Un punto de control. Mayor control de seguridad y protección
de la información en un solo punto.
- Fácil de mantener. Empresa con muchos cambios de
requerimientos. Fácil despliegue de los cambios. Soporte en un
solo punto.
- Tomas de decisiones. Esta arquitectura es primordial en las tomas
de decisiones centralizadas, en otro punto llamado de lógica de
negocio de la empresa centralizada.
Desventajas:
- Interfaz de usuario poco llamativo. Por el uso de la red amplia, se
evita tener pantalla con imágenes. Debe controlar el uso de
ancho de banda de la red.
- Velocidad de repuestas lenta, dependiendo la conexión de la
red a la central.
9. Concurrencia (informática)
Los "Filósofos comiendo", problema clásico que implica
el uso de concurrencia
En ciencias de la computación, concurrencia es una
propiedad de los sistemas en la cual los procesos de
un cómputo se hacen simultáneamente, y pueden
interactuar entre ellos. Los cálculos (operaciones)
pueden ser ejecutados en múltiples procesadores, o
ejecutados en procesadores separados físicamente o
virtualmente en distintos hilos de ejecución. Un sin
número de modelos matemáticos han sido
desarrollados para cálculos la concurrencia en
general incluyendo redes de Petri, procesos Calculi, el
modelo máquina de accesos random en paralelo, el
Modelo Actor y el Lenguaje Reo.
10. Computación concurrente
La computación concurrente es la simultaneidad en la ejecución de
múltiples tareas interactivas. Estas tareas pueden ser un conjunto de
procesos o hilos de ejecución creados por un único programa. Las
tareas se pueden ejecutar en una sola unidad central de proceso
(multiprogramación), en varios procesadores o en una red de
computadores distribuidos. La programación concurrente está
relacionada con la programación paralela, pero enfatiza más la
interacción entre tareas. Así, la correcta secuencia de interacciones o
comunicaciones entre los procesos y el acceso coordinado de recursos
que se comparten por todos los procesos o tareas son las claves de esta
disciplina.
Los pioneros en este campo fueron Edsger Dijkstra, Per Brinch Hansen, y
C. A. R. Hoare.
Edición concurrente
La edición concurrente consiste en que dos o más usuarios distintos
editan un mismo campo de datos o un mismo documento. Algunos
programas abiertos han creado módulos para evitar este problema,
como sucede con Drupal.1
11. Síncrono
En general, síncrono (del griego syn, “con”, y chronos, “tiempo”) es un
adjetivo que describe objetos o eventos que están coordinados en el
tiempo. En la informática, el término tiene muchas acepciones
diferentes.
1) En las señales de telecomunicaciones dentro de una red o entre
redes, las señales síncronas son las que ocurren a la misma frecuencia
de reloj cuando todos los relojes están basados en un único reloj de
referencia. (Las señales pleisócronas están casi pero no totalmente
sincronizadas y las señales asincrónicas son las que vienen de diferentes
relojes o a una frecuencia de transición diferente).
2) En la comunicación de programa a programa, la comunicación
síncrona requiere que cada extremo en un intercambio de
comunicación responda a su vez sin iniciar una nueva comunicación.
Una actividad típica que podría usar un protocolo sincrónico sería una
transmisión de archivos de un punto al otro. A medida se recibe cada
trasmisión, se devuelve una respuesta que indica éxito o la necesidad
de reenviar. Cada transmisión de datos sucesiva requiere una respuesta
a la transmisión previa, antes de que pueda iniciarse una nueva.
12. Asincronía
Asincronía hace referencia al suceso que no tiene lugar en
total correspondencia temporal con otro suceso.
Por ejemplo, podemos hablar de motor asíncrono a aquél
cuya velocidad de rotación no corresponde con la
frecuencia de corriente alterna que lo hace funcionar.
Dos señales son asíncronas o no están sincronizadas,
cuando sus correspondientes instantes significativos no
coinciden. De esta manera, podremos saber una
asincronidad basándonos en la ley de ohm.
13. Asincronía
Modo de transmisión de datos en el que el instante
de emisión de cada carácter o bloque de
caracteres se fija arbitrariamente, sincronizando
con Start-Stop.
En educación a distancia (EaD), la asincronía se
refiere a actividades que no requieren la conexión
simultánea del facilitador y los participantes, sino
que cada quien participa en su propio tiempo. Un
ejemplo son los foros asíncronos, en los cuales todos
participan en la conversación, pero en diferentes
momentos
14. ¿Que es una Intranet?
Específicamente, ¿qué es una intranet?
Considérela como un sitio web interno, diseñado para ser
utilizado dentro de los límites de la compañía. Lo que
distingue una Intranet de un sitio de Internet, es que las
intranets son privadas y la información que en ella reside
tiene como objetivo asistir a los trabajadores en la
generación de valor para la empresa.
¿Por qué una intranet?
Esquema de una intranet, circulo central representa la red
y distintos dispositivos y personas en torno a él representan
los diversos usos de una intranet.El 80% de la información
que se utiliza diariamente para realizar el trabajo no está
en los sistemas transaccionales de las empresas.
15. Intranet
Se estima que un empleado promedio consume entre
un 25% y 30% de su tiempo buscando información. Esto
significa que las empresas pierden mensualmente un
30% del dinero correspondiente al costo de sus
empleados, sumado al lucro cesante derivado de este
tiempo improductivo en los que los empleados no
generan valor para la empresa.
Las organizaciones insumen gran cantidad de
información para dar soporte a su operativa diaria;
información generada internamente como proveniente
de fuentes externas. Viven de esta información,
memorandos, reportes, información de productos,
análisis de mercados, contratos, artículos de interés,
minutas de reunión, información interna, manuales y
procedimientos, etc.
16. Handheld
El término handheld, hand-held computer o hand-held
device, es un anglicismo que traducido al español significa
“de mano” (computadora o dispositivo de mano) y
describe al tipo de computadora portátil que se puede
llevar en una mano mientras se utiliza.
Las computadoras de mano, o también se conoce como
PDA (asistente digital personal) —llamados así porque
caben en la palma de una mano—, fueron diseñados
originalmente como organizadores personales, lo que
hacen de forma muy eficiente. Las características básicas
de un PDA son una agenda, libreta de direcciones, lista de
tareas y bloc de notas; aunque con el auge de los nuevos
procesadores y disponibilidad de software ya se han
potenciado las aplicaciones web, juegos y casi cualquier
otra aplicación propia de una computadora de escritorio.
Aunque estas primeras características son muy
provechosas para ayudar a cualquier persona.
17. Handheld
a mantenerse ordenada, la característica que difundió
su uso para cualquier persona ocupada que utilice
una computadora de escritorio es la de la
sincronización fácil de la información con esa
computadora.
También entran en esta categoria los equipos de
interface entre usuario e instrumento de medición de
variables de proceso (tal como transmisores de presión
diferencial, transmisores de presión absoluta,
transmisores de temperatura y electroposisionadores
de varias marcas), utilizados en la industria para lograr
una automatización de los procesos.
Existen varias marcas tales como FIELDBUS, HART,
FOXBORO, etc.
18. Computación móvil
La computación móvil es un término utilizado para describir el
uso de computadoras sin la necesidad de estar conectadas a
una red, ya sea por radio, satélite, etc.
Redes móviles
Las redes móviles sin hilos utilizan servicios telefónicos y servicios
públicos para recibir y transmitir señales.
Para ello utilizan:
Comunicación de paquetes vía radio.
Redes celulares.
Estaciones de satélite.
Las personas que se encuentran de viaje pueden utilizar
esta tecnología con equipos portátiles o PDA para
intercambiar mensajes de correo electrónico, archivos u otra
información. Este tipo de comunicación es lenta, la velocidad
de transmisión oscila entre los 8kbps y los 19.2 kbps.
19. Computación ubicua
Computación ubicua (ubicomp) es entendida
como la integración de la informática en el entorno
de la persona, de forma que los ordenadores no se
perciban como objetos diferenciados. Esta
disciplina se conoce en inglés por otros términos
como Pervasive computing, Calm
technology, Things That Think y Everyware. Desde
hace unos años también se denomina inteligencia
ambiental.