Prévia do material em texto
Questão 1/10 - Sistemas Distribuídos A definição de computação em nuvem apresenta que a mesma disponibiliza um repositório compartilhado de recursos. Esses repositórios são recursos computacionais como memória, processamento, armazenamento, rede, etc. E estão agrupados visando servir múltiplos consumidores (organizações). Avalie as afirmativas a seguir sobre estes recursos: I. Cada consumidor de serviços tem reservado para si um ou mais processadores para fazer frente às suas demandas de processamento. II. Em um ambiente de cloud computing um consumidor pode executar sua aplicação sobre o mesmo hardware de outro sem que ambos tenham o conhecimento deste fato. III. Em ambientes virtualizados, típicos da computação em nuvem, existe uma grande dependência entre o sistema operacional e o hardware. IV. No ambiente virtualizado o Hipervisor garante o isolamento entre as máquinas virtuais de modo que uma máquina virtual não pode acessar aplicações ou arquivos de outra. Assinale a única alternativa que apresenta apenas as afirmativas corretas: Nota: 0.0 A I e II. B I e III. C II e III. D II e IV. Aula 5, Tema 3, Pg. 8 da rota impressa. E III e IV. Questão 2/10 - Sistemas Distribuídos O algoritmo de Bully, também chamado de Bullyng, é um dos algoritmos pioneiros para resolver o desafio da eleição. Como seu nome sugere, o algoritmo define que o processo mais forte deve ser o coordenador. Sobre este algoritmo podemos afirmar que: Nota: 0.0 A Esse algoritmo tem como pré-requisito que, mesmo que todos processos sejam iguais, é preciso ter algo que os diferencie (IP, Porta, ID do processo, etc). B Quando um processo percebe que o coordenador atual não está mais respondendo as requisições, o processo inicia a eleição. C Existem três tipos de mensagens utilizadas no algoritmo de Bully: ELECTION, OK e COORDINATOR. D A implementação desse algoritmo deve verificar constantemente se o coordenador está vivo, e caso não esteja inicia o processo de eleição. E Todas as alternativas apresentadas estão corretas. Aula 4, Tema 5, Pgs. 16-19 da rota impressa. Questão 3/10 - Sistemas Distribuídos O NTP (Network Time Protocol) define uma arquitetura para atender os requisitos da internet, onde existem diversos servidores de tempo para sincronizar a hora. Sobre as principais características desse protocolo podemos afirmar que: I. O ajuste de horário é baseado no servidor mais próximo. II. É um protocolo resiliente a conexões de baixa qualidade. III. Permite sincronizações frequentes. IV. Utiliza técnicas estatísticas para filtrar a latência. Assinale a única alternativa que apresenta apenas as afirmativas corretas: Nota: 10.0 A I e II. B I e III. C II e III. D II e IV. E Todas as afirmativas apresentadas estão corretas. Você acertou! Aula 4, Tema 3, Pg. 13 da rota impressa. Questão 4/10 - Sistemas Distribuídos Em sistemas distribuídos construídos no modelo cliente/servidor o acoplamento pode se tornar um problema para o sistema em produção. Quando existe uma alteração no sistema acoplado, essa frequentemente afeta todos os outros sistemas. Analise as afirmativas a seguir classificando-as como (F) Falsas ou (V) Verdadeiras: ( ) Geralmente o desenvolvedor deve modificar o servidor para adequá-lo à uma mudança nos negócios, e o cliente também deve ser modificado para adequar-se a essa mudança. ( ) O alto acoplamento dos sistemas e a falta de interoperabilidade são motivos para um dos maiores problemas da TI: a falta de alinhamento dos negócios com a TI. ( ) A falta de alinhamento pode ocorrer por que as mudanças nos processos de negócios são mais velozes que as mudanças de TI. ( ) A Arquitetura Orientada a Serviços visa dar maior agilidade às mudanças, reduzindo o acoplamento e a interoperabilidade. Assinale a alternativa que apresenta a sequência correta da classificação das afirmativas apresentadas: Nota: 10.0 A V – V – V – F. Você acertou! Aula 3, Tema 1, Pgs. 4 e 5 da rota impressa. B F - V – F – V. C V – V – F - F. D F – F – V – V. E F – F - F – V. Questão 5/10 - Sistemas Distribuídos Com base no algoritmo de Christian, avalie e resolva a seguinte situação: uma máquina M envia uma mensagem r ao servidor de tempo solicitando a hora correta. O servidor responde com uma mensagem s, contendo a informação solicitada. Quando r é enviada, o relógio de M marca 3004, e quando s é recebida o relógio de M marca 3050. Considerando que o servidor consome um tempo de 8 entre o recebimento da mensagem e o envio da resposta para M, para qual valor M deve ajustar o seu relógio, se o servidor respondeu como hora atual o valor 3035? Nota: 0.0 A 3031. B 3054. Aula 4, Tema 3, Pg. 6 da rota impressa. C 3035. D 3058. E 3043. Questão 6/10 - Sistemas Distribuídos A implementação do Algoritmo de Christian requer, além da compreensão do algoritmo e da aplicação das técnicas de comunicação entre processos, o entendimento dos processos cliente e servidor que utilizam essa estratégia. Sobre essa implementação, avalie as afirmativas a seguir como (F) Falsas ou (V) Verdadeiras: ( ) Para implementar esse algoritmo é possível utilizar sockets baseados em UDP ou TCP. ( ) Como o propósito desse algoritmo é que o servidor atenda diversos clientes em paralelo, a abordagem baseada em TCP é mais interessante por simplificar a troca de mensagens entre os pares. ( ) Um aspecto positivo desse algoritmo é considerar que o tempo de envio e de recebimento de mensagens são iguais. ( ) Como não há a necessidade de uma autoridade que possui o horário oficial, mesmo que essa autoridade não exista ou fique indisponível, o algoritmo pode ser executado. Assinale a alternativa que apresenta a sequência correta da classificação das afirmativas apresentadas: Nota: 0.0 A V – V – V – F. B F - V – F – V. C V – V – F - F. Aula 4, Tema 2, Pgs. 6-8 da rota impressa. D F – F – V – V. E F – F - F – V. Questão 7/10 - Sistemas Distribuídos A sincronização de relógios é um desafio interessante em sistemas distribuídos. Em inúmeras aplicações é preciso saber em que determinado horário um evento ocorreu. Em um sistema distribuído não é possível simplesmente considerar o horário da máquina em que o sistema está hospedado como verdade absoluta, pois: Nota: 0.0 A Devemos considerar que as oscilações de cada cristal dos relógios locais das máquinas estão exatamente na mesma frequência. B O registro do tempo depende da velocidade de processamento e da capacidade de cada máquina, que pode ser diferente. C O relógio de cada máquina é atualizado por meio de uma rede de comunicação, o que assegura um horário sincronizado e único para todas. D O relógio local pode ser alterado pelo sistema e assim ocasionar erros ou medidas diferentes de tempo. E Cada máquina possui um relógio próprio baseado em um circuito (cristal) responsável por determinar o horário através de tickets (oscilações), que podem sofrer variações de frequência. Aula 4, Tema 1 – Pgs. 3 e 4 da rota impressa. Questão 8/10 - Sistemas Distribuídos Uma das opções para resolver a questão da sincronização dos relógios é a utilização de referências e o uso da rede para a obtenção do horário correto. Sobre estas opções avalie as afirmativas a seguir como (F) Falsas ou (V) Verdadeiras: ( ) A sincronização externa exige um relógio oficial provido por uma autoridade, que passa a ser a referência de tempo para o sistema. ( ) A sincronização interna pode dispensar a existência de uma fonte externa para a sincronização dos relógios das máquinas do sistema, porém requer o conhecimento da precisão dos relógios locais. ( ) Na sincronização externa basta apenas que a aplicação solicite o horário atual para a autoridade que provê o relógio oficial. ( ) Os sistemas distribuídos, que se comunicam por meio de mensagens que trafegamna rede, necessitam prever a latência desta rede. Assinale a alternativa que apresenta a sequência correta da classificação das afirmativas apresentadas: Nota: 10.0 A V – V – F - F. Você acertou! Aula 4, Tema 1, Pgs. 3 e 4 da rota impressa. B V – V – V – F. C F - V – F – V. D F – F – V – V. E F – F - F – V. Questão 9/10 - Sistemas Distribuídos A comunicação entre processos baseadas em sockets, tema já abordado, normalmente é utilizada na implementação do modelo cliente/servidor. Nesse modelo, o cliente solicita funcionalidades que estão implementadas no servidor, informando os parâmetros necessários. Com base nessas informações e no conteúdo correlato, podemos afirmar que: Nota: 0.0 A Essa abordagem é amigável para o programador especialmente quando este necessita requisitar um método remotamente. B Esse modelo tem baixo nível de acoplamento e sincronização, pois a ordem que o cliente fornece os parâmetros é independente da ordem que o servidor os recebe e inicializa. C Estabelecer a sincronização entre cliente e servidor em aplicações complexas é algo simples, já corriqueiro em ambientes de desenvolvimento orientados a objetos. D Em linguagens voltadas para a programação orientada a objetos, como Java, por exemplo, essa abordagem de sincronização é natural e facilmente implementada. E A chamada remota de procedimentos (Remote Procedure Call, RPC) permite que procedimentos/métodos remotos sejam invocados de maneira transparente. Aula 5, Tema 1 – Pgs. 2 e 3 da rota impressa. Questão 10/10 - Sistemas Distribuídos A Invocação Remota de Métodos (Remote Method Invocation - RMI) é utilizada em linguagens de programação orientada a objeto, tais como Java, C++ e C#, e algumas boas práticas são recomendadas para quando estamos trabalhando com o RMI. Analise as afirmativas a seguir sobre estas boas práticas: I - Para o servidor associar um objeto a um nome é recomendável utilizar o método rebind ao invés do método bind. II - O método rebind associa o nome a um objeto e, caso esse nome já esteja registrado, ele o atualiza. III - O método rebind também lança uma exceção caso o nome do objeto já esteja registrado. IV - O Remote Method Invocation - RMI também permite que os objetos sejam serializados e desserializados por meio da rede. Assinale a única alternativa que apresenta apenas as afirmativas corretas: Nota: 0.0 A I e II. B I, III e IV. C I, II e III. D I, II e IV. Aula 5, Tema 1 – Pgs. 6 e 7 da rota impressa. E II, III e IV.