Você está na página 1de 2

Aluno= João Vitor do Nascimento

EXERCÍCIO

1. O que é um sistema distribuído? Dê exemplos SDs.

Pode ser definido como uma coleção de computadores autônomos e interligados


através de uma rede de computadores e equipados com software que permita o
compartilhamento dos recursos do sistema, como por exemplo: hardware, software e dados.
Um grande exemplo de sistema distribuído é a Internet, mas podemos citar também as
Intranets, sistemas móveis entre outros.

2. Como seria possível sincronizar dois relógios de computadores interligados por uma
rede, sem uma ajuda externa? Como você faria para sincronizar muitos
computadores interligados pela internet?

Existem vários protocolos que podem ser usados para sincronizar dois relógios de
computadores interligados por uma rede, sem ajuda externa. Um dos protocolos mais comuns
é o Protocolo de Tempo de Rede (NTP - Network Time Protocol), que é projetado para
sincronizar relógios em uma rede de computadores.

O NTP funciona usando um algoritmo de ajuste de fase, que compara o tempo de relógio do
servidor de tempo com o tempo do relógio do cliente e, em seguida, ajusta o relógio do cliente
para sincronizá-lo com o servidor. O NTP usa uma rede de servidores de tempo para garantir
que o tempo do relógio seja confiável e preciso.

Para sincronizar muitos computadores interligados pela internet, pode ser necessário usar um
serviço de sincronização de tempo externo, como um servidor de tempo baseado em GPS ou
um servidor de tempo baseado em radiofrequência (RF). Esses serviços de sincronização de
tempo podem ser usados como referências precisas para sincronizar o tempo de relógio de
muitos computadores em uma rede.

Uma alternativa ao uso de um serviço de sincronização de tempo externo é usar um protocolo


de sincronização de tempo peer-to-peer, como o Protocolo de Sincronização de Tempo do
Interconectado de Redes (ITSP - Interconnected Time-Sync Protocol), que permite que os nós
da rede se sincronizem uns com os outros, em vez de dependerem de um servidor externo. No
entanto, é importante garantir que a precisão do tempo seja mantida em um nível aceitável
em toda a rede para evitar problemas de sincronização e confiabilidade.

3. Em que casos devemos fazer um SD?

Um sistema distribuído é necessário em situações onde se precisa lidar com um grande


volume de dados e processamento, que não podem ser realizados por um único computador.
Também é útil em cenários onde é necessário ter alta disponibilidade e tolerância a falhas,
onde os dados e processamento são distribuídos em diferentes nós da rede.

4. Quais as principais características de um SD?

As principais características de um sistema distribuído são:

• Descentralização: um SD é composto por múltiplos nós da rede que trabalham juntos


sem a necessidade de um servidor central.
• Autonomia: cada nó do SD é autônomo, possuindo seus próprios recursos e tomando
decisões de forma independente.

• Confiabilidade: o SD é projetado para garantir a integridade dos dados e a


continuidade da operação mesmo em casos de falhas em um ou mais nós.

• Escalabilidade: o SD deve ser capaz de aumentar sua capacidade de processamento e


armazenamento à medida que a demanda cresce.

• Comunicação assíncrona: os nós do SD se comunicam de forma assíncrona, permitindo


que os nós possam trabalhar independentemente e responder em seu próprio tempo.

5. Descreva cada um dos principais desafios existentes para se construir um SD?

Os principais desafios na construção de um sistema distribuído incluem:

• Coordenação: a coordenação entre os diferentes nós pode ser complexa e exigir


protocolos e algoritmos sofisticados.

• Consistência de dados: garantir a consistência dos dados entre os diferentes nós pode
ser um desafio, especialmente em ambientes com múltiplos usuários modificando os
dados simultaneamente.

• Concorrência: a concorrência pode levar a problemas como a condição de corrida,


onde vários nós tentam acessar o mesmo recurso ao mesmo tempo.

• Tolerância a falhas: garantir que o sistema continue a operar mesmo em caso de falhas
de um ou mais nós pode ser um desafio.

• Segurança: proteger os dados e garantir que os nós da rede estejam seguros contra
acessos não autorizados é uma preocupação importante.

• Gerenciamento de recursos: o gerenciamento dos recursos compartilhados entre os


nós pode ser desafiador, especialmente quando se trata de equilibrar a carga de
processamento e armazenamento.

Você também pode gostar