¿Qué es un sistema distribuido según Tanenbaum y Van Steen?
Click to see answer
Un sistema distribuido es una colección de computadoras independientes que dan al usuario la impresión de constituir un único sistema coherente.
Click to see question
¿Qué es un sistema distribuido según Tanenbaum y Van Steen?
Un sistema distribuido es una colección de computadoras independientes que dan al usuario la impresión de constituir un único sistema coherente.
¿Qué NO es un sistema distribuido?
Un sistema que opera en un solo lugar y no tiene componentes distribuidos en diferentes ubicaciones.
¿Cuáles son las características que debe tener un sistema distribuido según Tanenbaum y Van Steen?
Un sistema distribuido debe hacer que los recursos sean fácilmente accesibles, ocultar razonablemente el hecho de que los recursos están distribuidos, ser abierto y ser escalable.
¿En qué se basa la comunicación en los sistemas distribuidos?
La comunicación en los sistemas distribuidos se basa en el paso de mensajes de bajo nivel, tal como lo ofrece la red subyacente.
¿Para qué replicar datos o servicios?
Disponibilidad o tolerancia a fallos. Si los datos se replican en dos o más servidores, el software del cliente puede acceder a los datos en un servidor alternativo si el servidor por defecto falla o no está accesible.
¿Qué se entiende por un sistema distribuido transparente?
Un sistema distribuido es transparente si puede presentarse ante los usuarios y las aplicaciones como si fuera una sola computadora.
¿Cuáles son los tipos de comunicación mencionados?
Broadcast y Anycast.
¿Cuál es la clave para lograr la heterogeneidad en los sistemas distribuidos?
El uso de estándares bien documentados y accesibles.
¿Cuál es uno de los objetivos de los sistemas distribuidos?
Facilitar a los usuarios (y aplicaciones) el acceso a los recursos remotos y compartirlos de manera controlada y eficiente.
¿Para qué replicar datos o servicios?
Replicando los servidores se puede incrementar el rendimiento en las respuesta de un servicio, especialmente si estas réplicas se ubican estratégicamente cerca de los clientes potenciales.
¿Cuál es uno de los objetivos de los sistemas distribuidos?
Facilitar a los usuarios (y aplicaciones) el acceso a los recursos remotos y compartirlos de manera controlada y eficiente.
¿Qué aspectos son importantes en los sistemas distribuidos según el texto?
Concurrencia, sincronización y seguridad.
¿Cuál es uno de los objetivos de los sistemas distribuidos?
Facilitar a los usuarios (y aplicaciones) el acceso a los recursos remotos y compartirlos de manera controlada y eficiente.
¿Qué organizaciones son mencionadas como estándares para sistemas distribuidos?
IETF RFC, IEEE SA, W3C, IMS Global Learning Consortium / 1EdTech.
¿Qué es el reloj de un computador?
Es un contador o un cronómetro, más que un reloj como lo conocemos.
¿Cómo se define un sistema distribuido?
Un sistema distribuido es aquel en el que los componentes hardware o software, localizados en computadores unidos mediante red, comunican y coordinan sus acciones sólo mediante paso de mensajes.
¿Qué son los sockets en el contexto de la comunicación en sistemas distribuidos?
Los sockets son puntos finales de comunicación que permiten la transmisión de datos entre procesos a través de una red, utilizando protocolos como TCP y UDP.
¿Qué recurso se menciona como ejemplo de acceso compartido en una red?
Una impresora.
¿De qué material está hecho el reloj de un computador?
Es un cristal de cuarzo mecanizado.
¿Qué es una transacción en el contexto de sistemas distribuidos?
Una secuencia de operaciones que forman un único paso que transforma los datos de un sistema de un estado consistente a otro.
¿Qué es un modelo de cola de mensajes?
Es un sistema que permite la comunicación entre diferentes componentes de un sistema distribuido mediante el envío y recepción de mensajes a través de colas.
¿Cuáles son algunas implementaciones modernas de RPC?
gRPC, SOAP, CORBA, Java RMI, Go RPC, RPyC.
¿Cuál es uno de los principales problemas en la replicación de sistemas distribuidos?
Hacer que las réplicas se mantengan consistentes.
¿Qué protocolo se utiliza para la sincronización de relojes en redes informáticas?
El Protocolo de Tiempo de Red (NTP).
¿Cuál es la diferencia principal entre TCP y UDP?
TCP es un protocolo orientado a la conexión que garantiza la entrega de datos, mientras que UDP es un protocolo sin conexión que no garantiza la entrega, pero es más rápido.
¿Qué se entiende por consistencia en el contexto de la replicación de objetos?
La consistencia se refiere a si las operaciones efectuadas sobre una colección de objetos replicados producen resultados que cumplan las especificaciones de corrección para esos objetos.
¿Qué se entiende por extensibilidad en sistemas distribuidos?
La extensibilidad se determina por el grado en el cual se pueden añadir nuevos servicios de compartición de recursos y ponerlos a disposición para el uso por una variedad de programas clientes.
¿Cuál es una de las contribuciones más importantes de los hilos a los sistemas distribuidos?
Permiten la construcción de clientes y servidores de un modo en que la comunicación y el procesamiento local se pueden traslapar.
¿Cuáles son los tipos de comunicación en sistemas distribuidos?
Unicast y Multicast.
¿Qué factores afectan la frecuencia de oscilación del cristal de cuarzo?
Depende del tipo de cristal, de la forma de su corte, y de la cantidad de tensión.
¿Qué es la comunicación transitoria en sistemas distribuidos?
Es una comunicación orientada a conexión, donde hay comunicación directa entre remitente y destino mientras ambos estén en ejecución.
¿Qué es la exclusión mutua en sistemas operativos?
La exclusión mutua es un principio que asegura que solo un proceso puede acceder a un recurso compartido en un momento dado.
¿Cuáles son algunos modelos de programación asíncrona?
Callbacks, Eventos, Corutinas / Generadores, Promesas.
¿Qué se entiende por heterogeneidad en sistemas distribuidos?
Mezcla de partes de diversa naturaleza en un todo, incluyendo hardware, software y conexiones.
¿Cuáles son algunos ejemplos de brokers de mensajes?
Algunos ejemplos son Apache ActiveMQ, RabbitMQ, Amazon MQ, Azure Service Bus y Google Cloud Pub/Sub.
¿Cuál es el problema principal en la coordinación y sincronización en sistemas distribuidos?
La existencia de más de un computador, cada uno con su propio reloj físico que no es perfecto y tiende a desfasarse frente a una referencia.
¿Qué es un socket UDP multicast?
Un socket UDP multicast es un tipo de socket que permite enviar y recibir datagramas a un grupo de direcciones IP, facilitando la comunicación entre múltiples destinatarios a la vez.
¿Para qué replicar datos o servicios?
Para incrementar el rendimiento en las respuestas de un servicio, reduciendo los requerimientos realizados a los servidores y el tiempo de respuesta a los clientes.
¿Qué es una transacción distribuida?
Es una transacción plana o anidada que accede a objetos gestionados por múltiples procesos que se comunican a través del paso de mensajes por una red de computadores.
¿Cuál es la limitación de la exactitud del reloj de un computador?
La exactitud depende del cristal y nunca será perfecta.
¿Qué se espera de la transparencia en la replicación de datos?
Los clientes normalmente no deberían advertir que existen múltiples copias físicas de los datos.
¿Qué son los algoritmos basados en permisos en la coordinación y sincronización de sistemas distribuidos?
Son algoritmos que requieren que un proceso obtenga el permiso de otro proceso para acceder a un recurso.
¿Cómo se define la comunicación persistente en sistemas distribuidos?
Es una comunicación indirecta entre remitente y destino a través de un tercero (Agente), donde el mensaje se almacena y se entrega cuando el destino está en ejecución.
¿Cuáles son algunos mecanismos para implementar la exclusión mutua?
Algunos mecanismos incluyen señales, memoria compartida, mutex y semáforos.
¿Qué se entiende por un sistema escalable?
Un sistema es escalable si conserva su efectividad cuando ocurre un incremento significativo en el número de recursos y el número de usuarios.
¿Qué es un modelo de cola de mensajes?
Un modelo de cola de mensajes es un patrón de comunicación en sistemas distribuidos donde los mensajes se envían a una cola y son procesados por los receptores en el orden en que fueron recibidos.
¿Qué se requiere para que un proceso acceda a un recurso en un sistema distribuido basado en tokens?
Requiere la posición de un token único que se pasa constantemente entre los procesos.
¿Qué es la replicación de datos en sistemas distribuidos?
La replicación de datos es el mantenimiento de copias de datos en múltiples computadores.
¿Qué afecta la sincronización en sistemas distribuidos?
El desfase de los relojes físicos de cada computador frente a una referencia.
¿Qué es el método de Critian?
Es un método utilizado para la sincronización de relojes en sistemas distribuidos.
¿Cuáles son algunos de los retos referentes al RPC?
La llamada y la ejecución son realizadas por distintos procesos probablemente en máquinas distintas, transmisión de datos, traducción entre distintas arquitecturas, es de naturaleza síncrona y control de errores.
¿Qué es la exclusión mutua en sistemas operativos?
Es un mecanismo que asegura que solo un proceso acceda a un recurso compartido en un momento dado.
¿Qué es un socket UDP Broadcast?
Un socket UDP Broadcast es un tipo de socket que permite enviar datos a todos los dispositivos en una red local utilizando el protocolo UDP.
¿Qué significa la 'A' en el nemotécnico ACID relacionado con las propiedades de las transacciones?
Atomicidad
¿Cuál es el propósito del algoritmo de servidor central en sistemas distribuidos?
El algoritmo de servidor central permite la coordinación de acceso a recursos mediante un servidor que otorga permisos a los procesos.
¿Cuál es un tipo de algoritmo utilizado para la exclusión mutua distribuida?
Algoritmos basados en tokens y el algoritmo basado en un anillo.
¿Qué se entiende por tolerancia a fallos en sistemas distribuidos?
Es la capacidad de un sistema para continuar operando correctamente en caso de la falla de uno o más de sus componentes.
¿Qué es la comunicación síncrona en sistemas distribuidos?
Es cuando el remitente se bloquea en espera de una respuesta, que puede ser aceptación de transición, confirmación de recepción o respuesta del destino.
¿Qué algoritmo se utiliza para la sincronización de relojes lógicos en sistemas distribuidos?
El algoritmo de Lamport.
¿Cómo se determina el tiempo en un sistema centralizado?
En un sistema centralizado, el tiempo no es ambiguo; un proceso realiza una llamada de sistema al núcleo para obtener la hora.
¿Por qué es importante la replicación en sistemas distribuidos?
La replicación es clave para la eficiencia de los sistemas distribuidos ya que proporciona mayor rendimiento, alta disponibilidad y tolerancia a fallas.
¿Qué es un proceso en el contexto de sistemas distribuidos?
Es una abstracción de un programa en ejecución que existe durante la ejecución de un programa y está asociado al uso de los recursos.
¿Qué es un hilo en el contexto de un proceso?
Un hilo es una unidad de ejecución dentro de un proceso, y un proceso puede constar de uno o más hilos.
¿Qué se menciona sobre los relojes en sistemas distribuidos?
Existen protocolos y estándares que dependen de los relojes locales.
¿Cuál es el propósito del algoritmo de Berkeley?
El algoritmo de Berkeley se utiliza para sincronizar relojes en un sistema distribuido, ajustando los relojes de los nodos a un tiempo común.
¿Cuáles son algunos métodos para implementar la exclusión mutua?
Señales, memoria compartida, mutex y semáforos.
¿Qué es la escalabilidad en sistemas distribuidos?
La escalabilidad se refiere a la capacidad de un sistema para manejar un aumento en la carga de trabajo o en el número de usuarios sin degradar su rendimiento.
¿Qué propiedad del nemotécnico ACID se refiere a la capacidad de mantener la integridad de los datos?
Consistencia
¿Qué es el algoritmo de Ricart y Agrawala?
Es un algoritmo utilizado para la exclusión mutua distribuida que permite a los procesos solicitar acceso a un recurso de manera coordinada.
¿Qué es JMS?
Java Message Service, un API que permite la comunicación entre aplicaciones a través de mensajes.
¿Qué es un ejemplo de una base de datos distribuida y replicada?
DNS (Sistema de Nombres de Dominio)
¿Qué tipo de relojes se utilizan en la sincronización lógica en sistemas distribuidos?
Relojes Vectoriales.
¿Cómo se define la comunicación asíncrona en sistemas distribuidos?
Es cuando el remitente no se bloquea al enviar un mensaje y puede o no esperar una respuesta.
¿Qué relación hay entre los tiempos obtenidos por dos procesos que consultan la hora en un sistema centralizado?
Si un proceso A pregunta la hora y luego un proceso B lo hace, el valor que obtiene B será mayor o probablemente igual que el de A; no será menor.
¿Qué se entiende por 'archivo ejecutable' en el desarrollo de software?
Es un artefacto que contiene todos los recursos necesarios y se desarrolla a partir de un lenguaje de programación, requiriendo compilación o interpretación.
¿Cuál es una ventaja de utilizar hilos en lugar de procesos?
Los hilos tienen un menor costo de creación y mantenimiento para el sistema operativo.
¿Cómo se controla las fallas desde el desarrollo en sistemas distribuidos?
A través del control de excepciones, que permite manejar errores y fallas de manera efectiva.
¿Qué son los algoritmos de exclusión mutua distribuida?
Son algoritmos que garantizan la exclusión mutua en un sistema distribuido utilizando exclusivamente el paso de mensajes.
¿Cuáles son algunas técnicas para el escalamiento de un sistema?
Algunas técnicas incluyen la replicación de datos, el uso de cachés y la redundancia.
¿Qué representa la 'I' en el nemotécnico ACID?
Aislamiento
¿Qué es la extensibilidad en sistemas distribuidos?
La extensibilidad se refiere a la capacidad de un sistema para ser ampliado o mejorado mediante la adición de nuevas funcionalidades, como en el caso de aplicaciones que extienden Google Workspace con complementos.
¿Qué significa MQTT?
MQ Telemetry Transport, un protocolo ligero de mensajería diseñado para dispositivos con recursos limitados.
¿Qué comparten los hilos dentro de un proceso?
Los hilos comparten los recursos de su proceso.
¿Qué caracteriza a un sistema distribuido en términos de fallas?
Normalmente, un sistema distribuido falla parcialmente, lo que significa que no todos los componentes fallan a la vez.
¿Qué implica la replicación de servicios en sistemas distribuidos?
La replicación de servicios implica tener múltiples servidores y el uso de proxies para distribuir la carga y mejorar la disponibilidad.
¿Qué significa la 'D' en el nemotécnico ACID?
Durabilidad
¿Qué herramientas se mencionan para la extensibilidad en sistemas distribuidos?
Se mencionan Apps Script y la API de Docs como herramientas para extender Google Workspace.
¿Qué es AMQP?
Advanced Message Queuing Protocol, un protocolo de mensajería que permite la comunicación entre diferentes sistemas de mensajería.
¿Qué es un sistema distribuido?
Un sistema distribuido es un conjunto de computadores independientes, interconectados a través de una red y que son capaces de colaborar con el fin de realizar una tarea.
¿Qué ocurre cuando un proceso de la máquina A llama a un procedimiento de la máquina B?
El proceso que llama desde A se suspende, y la ejecución del procedimiento llamado ocurre en B.
¿Cómo se transporta la información en una llamada a un procedimiento remoto?
La información puede transportarse en los parámetros desde quien llama hasta el que es llamado, y puede regresar en el procedimiento resultante.
¿Qué es un llamado a procedimientos remotos (RPC)?
Es un mecanismo que permite que un proceso en una máquina llame a un procedimiento en otra máquina, suspendiendo el proceso que llama.
¿Qué visibilidad tienen los mensajes de paso para el programador en un RPC?
Ningún mensaje de paso es visible para el programador.
¿Qué son los sistemas distribuidos?
Los sistemas distribuidos son un conjunto de computadoras que se presentan al usuario como un único sistema coherente.
¿Cuáles son algunos objetivos de los sistemas distribuidos?
Los objetivos incluyen la escalabilidad, la tolerancia a fallos y la transparencia para el usuario.
¿Qué desafíos enfrentan los sistemas distribuidos?
Los desafíos incluyen la comunicación entre nodos, la sincronización de procesos y la gestión de fallos.
¿Qué son procesos e hilos en sistemas distribuidos?
Los procesos son instancias de programas en ejecución, mientras que los hilos son las unidades más pequeñas de procesamiento dentro de un proceso.
¿Cómo se lleva a cabo la comunicación en sistemas distribuidos?
La comunicación se realiza a través de redes utilizando protocolos específicos para el intercambio de mensajes.
¿Qué implica la coordinación y sincronización en sistemas distribuidos?
Implica asegurar que los procesos se ejecuten en un orden específico y que compartan recursos de manera eficiente.
¿Qué es la consistencia y replicación en sistemas distribuidos?
La consistencia se refiere a la uniformidad de los datos en todos los nodos, mientras que la replicación implica mantener copias de los datos en múltiples ubicaciones.