Baixe o app para aproveitar ainda mais
Prévia do material em texto
• • Pergunta 1 1 em 1 pontos Considerando a afirmação de Tanenbaum e Steen (2008): “As aplicações concorrentes podem usar diversos métodos de comunicação. Um dos exemplos é o uso de memória compartilhada entre os processos ou através da troca de mensagens entre processos em execução”. Com base nessa contextualização, escolha a alternativa que define corretamente memória compartilhada e sincronização. Resposta Selecionada: e. No compartilhamento de memória, uma parte da memória é mapeada no espaço de endereço de um ou mais processos. Nenhum método de coordenação de acesso é fornecido automaticamente, então, nada impede que dois processos gravem na memória compartilhada ao mesmo tempo e no mesmo lugar. Portanto, para evitar esse problema, são utilizados semáforos ou outros mecanismos para sincronizar processos. Respostas: a. No compartilhamento de memória, o controle é automático para que nenhum processo grave ocorre na memória compartilhada. O sincronismo somente é necessário para que o processador saiba quem está em execução. b. Memória compartilha e sincronização estão relacionadas com a gravação em disco dos dados em memória. c. No compartilhamento de memória, toda a parte da memória é mapeada no espaço de endereço de um ou mais processos. Um método de coordenação de acesso é fornecido automaticamente, impedindo que dois processos gravem na memória compartilhada ao mesmo tempo e no mesmo lugar. d. A memória compartilhada é o mecanismo de comunicação mais lento entre processos. O sistema operacional mapeia um segmento de memória no espaço de endereço de vários processos, de modo que vários processos possam ler e gravar naquele segmento de memória. No entanto, precisamos de algum tipo de sincronização entre os processos que leem e gravam na memória compartilhada. e. No compartilhamento de memória, uma parte da memória é mapeada no espaço de endereço de um ou mais processos. Nenhum método de coordenação de acesso é fornecido automaticamente, então, nada impede que dois processos gravem na memória compartilhada ao mesmo tempo e no mesmo lugar. Portanto, para evitar esse problema, são utilizados semáforos ou outros mecanismos para sincronizar processos. Comentário da resposta: A resposta correta é a alternativa E. A memória compartilhada é um mecanismo de comunicação utilizada através de um buffer, que é compartilhado entre os processos para as operações de escrita e leitura. A sincronização é o mecanismo que coloca os processos para aguardar a sua execução, evitando conflitos. • Pergunta 2 1 em 1 pontos As empresas precisam conhecer e entender o avanço na área de TI para poder oferecer novos serviços e aumentar a sua produtividade e competividade. A computação em nuvem vem como uma alternativa viável para alcançar esses objetivos. Escolha a alternativa correta em relação à computação em nuvem. Resposta Selecionada: c. Os equipamentos físicos e sistemas de informação são contratados como serviço junto à provedora de serviços, sendo a provedora a responsável por toda a infraestrutura, manutenção, melhorias e provisionamento de novos servidores. Respostas: a. Baseia-se em equipamentos físicos que ficam armazenados em um determinado local da empresa, geralmente denominado data center, e em alguns casos é comum que este data center seja terceirizado. b. Baseia-se no aluguel de equipamentos físicos, e estes, quando se tornam obsoletos, são substituídos por novos equipamentos sem custo para o cliente final. c. Os equipamentos físicos e sistemas de informação são contratados como serviço junto à provedora de serviços, sendo a provedora a responsável por toda a infraestrutura, manutenção, melhorias e provisionamento de novos servidores. d. Trata-se de uma forma de oferecimento de serviços em que todos os equipamentos físicos são compartilhados por empresas do mesmo ramo, obtendo assim redução de custo. e. Baseia-se na arquitetura cliente-servidor para oferecimento de serviços de alta qualidade e de baixo custo. Comentário da resposta: A resposta correta é a alternativa C. Na computação em nuvem, os equipamentos físicos e sistemas de informação são contratados como serviço junto à provedora de computação em nuvem, sendo a provedora do serviço responsável por toda a infraestrutura, manutenção, melhorias e provisionamento de novos servidores. • Pergunta 3 1 em 1 pontos O RPC (Remote Procedure Call) é um middleware que fornece uma camada de abstração para facilitar a comunicação entre processos. Para isso, parte do princípio da existência de um protocolo de transporte (TCP). Uma aplicação prática desse modelo é a solicitação, através de uma central de processamento meteorológico, para todas as cidades que fazem parte do seu campo de atuação, para que assim possa ter a visão do todo. Escolha a alternativa que caracteriza a implementação do RPC. Resposta Selecionada: b. É uma forma na qual um programa pode solicitar um serviço de um outro programa localizado em um computador remoto, sem tem que conhecer os detalhes da rede. Respostas: a. É um serviço implementado, no qual a sua estrutura é executada em um cliente e a chamada realizada por um servidor. b. É uma forma na qual um programa pode solicitar um serviço de um outro programa localizado em um computador remoto, sem tem que conhecer os detalhes da rede. c. É um serviço implementado, no qual a sua estrutura é executada tanto em um cliente como em um servidor. d. É um serviço implementado, no qual a sua estrutura e chamadas são executadas localmente. e. É uma forma na qual um programa pode solicitar um serviço de um outro programa localizado na mesma rede, sendo mandatório que o cliente e o servidor conheçam os detalhes da rede. Comentário da resposta: A resposta correta é a alternativa B. A caracterização de um RPC é ser um serviço implementado por meio de um procedimento cujo corpo é executado em um servidor e o cliente recebe apenas a assinatura do procedimento. • Pergunta 4 1 em 1 pontos As aplicações têm papel fundamental em sistemas distribuídos e dentro do protocolo TCP/IP são representadas como a camada superior (camada de aplicação), pelo fato de estar mais próxima dos usuários. A camada de aplicação tornou-se um repositório para todas as aplicações que não se ajustam às camadas inferiores, um dos exemplos clássicos são o correio eletrônico e a transferência de arquivos. Assinale a alternativa que contextualiza a camada de aplicação em relação as camadas inferiores do modelo TCP/IP. Resposta Selecionada: d. As camadas inferiores transmitem os dados enviados pela camada de aplicação, garantindo a transmissão com sucesso, enquanto a camada de aplicação fornece os serviços. Respostas: a. As camadas inferiores fornecem os serviços, enquanto a camada de aplicação é responsável pela transmissão dos dados, garantindo a transmissão com sucesso. b. As camadas inferiores e de aplicação são consideradas uma abstração teórica e na prática não oferecem nenhuma relação, pois o objetivo é a transmissão dos dados com sucesso. c. A camada de aplicação refere-se à padronização de interfaces elétricas, mecânica e de sinalização. Enquanto as camadas inferiores são responsáveis pela semântica, compressão/descompressão, criptografia, tradução dos dados, além de realizar a interface com o usuário. d. As camadas inferiores transmitem os dados enviados pela camada de aplicação, garantindo a transmissão com sucesso, enquanto a camada de aplicação fornece os serviços. e. A camada de aplicação está relacionada com a arquitetura cliente/servidor, enquanto as camadas inferiores estão associadasa objetos em sistemas distribuídos. Comentário da resposta: A resposta correta é a alternativa D. Os protocolos de aplicação gerenciam o diálogo entre as portas lógicas e mantêm a separação dos dados de diferentes aplicações. Trata da semântica, compressão/descompressão, criptografia, tradução dos dados, além de realizar a interface com o usuário.No modelo TCP/IP, o protocolo de camada física refere-se à padronização das interfaces elétricas, mecânica e de sinalização. O protocolo de camada de rede, IP (Internet Protocol), define e gerencia o endereçamento lógico da rede. O protocolo de transporte provê a comunicação confiável (Transmission Control Protocol – TCP), ou não confiável (User Datagram Protocol – UDP), e executa a checagem de erros antes da transmissão. • Pergunta 5 1 em 1 pontos Sincronização significa fazer a mesma coisa ao mesmo tempo, e esse processo é um dos maiores problemas em sistemas distribuídos. Com base nessa afirmação, escolha a alternativa correta em relação à sincronização em sistemas distribuídos. Resposta Selecionada: a. A sincronização é realizada através de troca de mensagens, considerando o tempo que se leva para enviar e receber as mensagens. Respostas: a. A sincronização é realizada através de troca de mensagens, considerando o tempo que se leva para enviar e receber as mensagens. b. A sincronização é realizada através de troca de mensagens, independentemente do tempo que se leva para enviar e receber as mensagens. c. A sincronização é realizada a partir do primeiro servidor que recebe a mensagem, e, portanto, todos os outros devem respeitar o seu relógio para realizar a transação. d. A sincronização não é considerada importante, pois em sistemas distribuídos não ocorre a execução de processos em diferentes máquinas. e. A sincronização pode ser facilmente substituída pelo uso de banco de dados transacionais. Comentário da resposta: A resposta correta é a alternativa A. Há vários modos de sincronizar relógios em um sistema distribuído, mas, em essência, todos os métodos são baseados em troca de valores de relógio, considerando simultaneamente o tempo que se leva para enviar e receber mensagens. Variações em atrasos de comunicação e o modo como essas variações são tratadas determinam, em grande parte, a precisão de algoritmos de sincronização de relógios (TANENBAUM; STEEN, 2008, p. 163). • Pergunta 6 1 em 1 pontos Uma aplicação baseada em objetos distribuídos é conceitualmente muito parecida com uma aplicação orientada a objeto, pois baseia-se em uma coleção de objetos que se comunicam por meio de interfaces. Desde que foi proposta, tornou-se fundamental e utilizada em sistemas distribuídos pela sua capacidade de embutir os programas em componentes. Escolha a alternativa que exemplifica os objetos distribuídos. Resposta Selecionada: c. CORBA, Java RMI e JAVA IDL. Respostas: a. RPC e TCP/IP. b. Processo e threads. c. CORBA, Java RMI e JAVA IDL. d. Modelo OSI e TCP/IP. e. Mutex e semáforos. Comentário da resposta: A resposta correta é a alternativa C. O conceito de desenvolvimento de objetos distribuídos na plataforma Java é oferecido por dois mecanismos: Java RMI e Java IDL. O RMI (Remote Method Invocation – invocação remota de método) é um mecanismo de desenvolvimento de aplicações com sistemas distribuídos que trabalha exclusivamente com objetos Java. Já o Java IDL (Interface Definition Language – interface de definição de linguagem) utiliza a arquitetura CORBA para integrar aplicações Java com aplicações desenvolvidas em outras linguagens. • Pergunta 7 1 em 1 pontos Analisando a linha de código a seguir, podemos observar a utilização de threads e semáforos. from threading import * import time s=Semaphore(2) def example(nome,idade): for i in range(3): s.acquire() print("Olá",nome, idade) time.sleep(2) s.release() threadA=Thread(target=example, args=("João",15)) threadB=Thread(target=example, args=("José",20)) threadC=Thread(target=example, args=("Maria",26)) threadD=Thread(target=example, args=("Ana",29)) threadA.start() threadB.start() threadC.start() threadD.start() Considerando a execução de semáforos com 6 CPUS do programa apresentado, assinale a alternativa correta. Resposta Selecionada: c. 6 CPUs – Threads 1, 2, 3, 4, 5 e 6 executadas 2 vezes. Respostas: a. 6 CPUs – Threads 1, 2 e 3 executadas 4 vezes. b. 6 CPUs – Threads 1 a 12 executadas uma única vez. c. 6 CPUs – Threads 1, 2, 3, 4, 5 e 6 executadas 2 vezes. d. 6 CPUs – Threads 1, 2, 3, 4, 5 e 6 executadas 4 vezes. e. 6 CPUs – Threads 1 e 2 executadas 3 vezes. Comentário da resposta: A resposta correta é a alternativa C. Como temos 12 saídas (4 nomes executados 3 vezes), teremos 12 interações. Com 6 processadores conseguimos executar 6 threads 2 vezes, e, portanto, alcançando o número de 12 interações. • Pergunta 8 1 em 1 pontos Em computação em nuvem, temos três tipos de serviços: • Software como serviço (SaaS) • Plataforma como serviço (PaaS) • Infraestrutura como serviço (IaaS) Em relação ao SaaS, escolha a alternativa correta. Resposta Selecionada: b. O consumidor não tem controle sobre os recursos computacionais, e as aplicações são acessíveis através de diversas plataformas. Um exemplo clássico é o Microsoft Office 365. Respostas: a. O consumidor tem controle sobre a implementação e as configurações do ambiente. Um exemplo clássico é o Heroku. b. O consumidor não tem controle sobre os recursos computacionais, e as aplicações são acessíveis através de diversas plataformas. Um exemplo clássico é o Microsoft Office 365. c. O consumidor possui capacidade de gerenciar os recursos computacionais e implementar as suas aplicações. Um exemplo clássico é a Amazon Web Services. d. O consumidor tem controle sobre a implementação e as configurações do ambiente. Um exemplo clássico é o Google Apps. e. O consumidor tem controle sobre os recursos computacionais, e as aplicações são acessíveis através de diversas plataformas. Um exemplo clássico é o Microsoft Azure. Comentário da resposta: A resposta correta é a alternativa B. Software como serviço (SaaS): utilização de aplicações de modo acessível por diversas plataformas, sendo que o consumidor não tem controle gerencial algum sobre os recursos computacionais. Exemplos desse tipo de serviço são o Microsoft Office 365, SalesForce.com e Google Apps. • Pergunta 9 1 em 1 pontos Segundo o NIST (2011), na computação em nuvem existem quatros modelos de implementação, que são: • Nuvem privada • Nuvem comunitária • Nuvem pública • Nuvem híbrida Em relação à nuvem pública, escolha a alternativa correta. Resposta Selecionada: d. A infraestrutura da nuvem é provisionada para uso aberto e para um público geral. Respostas: a. A infraestrutura da nuvem é provisionada para uso exclusivo de uma única organização, compreendendo vários consumidores. b. A infraestrutura da nuvem é composta de duas ou mais infraestruturas de nuvem que permanecem entidades únicas, mas estão vinculadas em conformidade com a padronização. c. A infraestrutura da nuvem é provisionada para uso fechado e para um público específico. d. A infraestrutura da nuvem é provisionada para uso aberto e para um público geral. e. A infraestrutura da nuvem é provisionada para uso comunitário e específico de certos usuários que possuem interesses compartilhados. Comentário da resposta: A resposta correta é a alternativa D. • Nuvem privada: a infraestrutura da nuvem é provisionada para uso exclusivo de uma únicaorganização, compreendendo vários consumidores. • Nuvem comunitária: a infraestrutura da nuvem é provisionada para uso comunitário e específico de certos usuários que possuem interesses compartilhados. • Nuvem pública: a infraestrutura da nuvem é provisionada para uso aberto e para um público geral. • Nuvem híbrida: a infraestrutura da nuvem é composta de duas ou mais infraestruturas de nuvem (exemplos: privada, pública ou comunitária), que permanecem entidades únicas, mas estão vinculadas em conformidade com a padronização. • Pergunta 10 1 em 1 pontos Na comparação do uso de um data center local em relação à computação em nuvem, podem-se identificar diversas vantagens na implementação da computação em nuvem. Escolha a alternativa correta em relação às vantagens do uso da computação em nuvem. Resposta Selecionada: c. Capacidade de expansão (vertical ou horizontal) e preço baseado na utilização com pagamento conforme o uso. Respostas: a. Risco de paralisação próximo de zero e data center único. b. Infraestrutura exige altos investimentos e capacidade de expansão (vertical ou horizontal). c. Capacidade de expansão (vertical ou horizontal) e preço baseado na utilização com pagamento conforme o uso. d. Hardware personalizável, sistemas desenvolvidos para propósito específico e risco de paralisação quase zero. e. Data center único e hardware personalizável, sistemas desenvolvidos para propósito específico. Comentário da resposta: A resposta correta é a alternativa C. A capacidade de expansão vertical ou horizontal não é possível de ser realizada em um data center local, bem como o preço baseado na utilização. Ambas são possíveis somente na computação em nuvem. Isso acontece pelo fato de a escalabilidade ser um dos pontos fundamentais na computação em nuvem, podendo ser vertical ou horizontal. A expansão vertical é uma arquitetura dimensionada para possibilitar de maneira econômica e simples a adição de recursos do sistema nele próprio. Ou seja, adicionar mais recursos conforme a demanda de uso. Já a expansão horizontal está relacionada com a capacidade de adicionar mais processamento ou máquinas físicas ao seu ambiente. Ambas são muito utilizadas na computação em nuvem. De forma que o preço baseado em uso é quando a precificação pode variar levando em consideração diversos aspectos, tais como: uso de processador, memória, quantidade de equipamentos, velocidade do link, etc.
Compartilhar