Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sistemas Distribuidos Unidade 1 Um cluster é composto por várias máquinas conectadas em uma rede de alta velocidade. Qual é o tipo de sistema distribuído a que ele pertence? D. Sistemas de computação Uma equipe de engenheiros de software está criando um aplicativo para monitorar os sinais vitais de uma pessoa, usando uma rede de sensores. Qual das seguintes opções são preocupações que fazem parte desse projeto de sistema distribuído? C. Privacidade, perda de dados, segurança e envio de alertas. Computação em nuvem é um exemplo real de sistemas distribuídos. Qual das seguintes alternativas contempla os modelos de implantação de nuvens computacionais? A. Nuvem privada, nuvem pública, nuvem híbrida e nuvem comunitária. Em resumo, sistemas pervasivos distribuídos são constituídos por vários dispositivos com capacidade menor de processamento e pouca capacidade de armazenamento de energia. Qual das seguintes alternativas é uma característica incomum nesse tipo de sistema distribuído? D. Abstração. A heterogeneidade está presente nas redes, hardwares, sistemas operacionais, linguagens de programação e códigos dos desenvolvedores. Qual das seguintes tecnologias é usada para abstrair a heterogeneidade no hardware em sistemas distribuídos? B. JVM (Java Virtual Machine). Unidade 2 Os dois principais modelos arquiteturais de sistemas distribuídos são: cliente/servidor e peer-to-peer. Uma das principais diferenças entre eles é que o modelo cliente/servidor é o compartilhamento de recursos entre processos clientes e servidores distintos. Por outro lado, o modelo peer-to-peer não considera distinção entre processos servidores e clientes, em que todos os processos envolvidos na execução de uma tarefa desempenham papeis semelhantes. Sobre as vantagens e desvantagens desses modelos arquiteturais, analise as alternativas abaixo e considere [V] para verdadeiro e [F] para falso. [ ] Em termos de implementação, a implementação do modelo cliente/sevidor é mais fácil quando comparada com a implementação do modelo peer-to-peer. [ ] Em termos de custos de implantação, a implantação do modelo cliente/servidor é mais barato que o modelo peer-to-peer. [ ] Em termos de segurança, o modelo cliente/servidor é considerado mais seguro que o modelo peer-to-peer. [ ] Em termos de disponibilidade, o modelo cliente/servidor apresenta desvantagens quando comparado ao modelo peer-to-peer. B. V – V – F – V. A comunicação em sistemas distribuídos é realizada por meio de troca de mensagens devido à carência diretamente relacionada a uma das principais dificuldades enfrentadas por todo e qualquer projetista de um modelo arquitetural de um sistema distribuído. Qual é o nome dessa carência? E. Ausência de memória global compartilhada entre os componentes. RPC (Chamada de Procedimento Remota) e RMI (Invocação de Método Remota) são os mecanismos que permitem ao cliente invocar um procedimento ou método do servidor remotamente por meio do estabelecimento de comunicação entre cliente e servidor. Sobre as diferenças entre eles, assinale a alternativa correta. D. A diferença comum entre RPC e RMI é que o RPC suporta apenas programação procedural, enquanto o RMI suporta programação orientada a objetos. Sabendo que sistemas distribuídos são constituídos de diferentes hardware e software, um dos propósitos de um middleware é mascarar a heterogeneidade. O modelo peer-to-peer é um dos principais modelos arquiteturais em sistemas distribuídos. Visando à comunicação nesses sistemas, o RPC (Chamada de Procedimento Remota) é dos paradigmas de comunicação. Ademais, a ausência de relógio global é uma das principais dificuldades enfrentas nesse contexto. Sobre modelos arquiteturais, estilos arquitetônicos e paradigmas de comunicação, analise as alternativas abaixo e considere [V] para Verdadeiro e [F] para Falso. [ ] Considerando uma aplicação que fornece o serviço de troca de e-mails, o modelo arquitetural peer-to-peer é sempre mais eficiente que uma arquitetura centralizada quando considerada uma aplicação. [ ] O paradigma de comunicação RPC (Chamada de Procedimento Remota) é necessariamente síncrono. [ ] Relógios lógicos também podem ser usados para sincronização de informações. [ ] Middleware é uma camada de software logicamente localizada entre aplicativos de alto nível, sistema operacional de baixo nível e recursos básicos de comunicação. Assinale a allternativa correta. A. V – F – V – F. Um dos modelos de comunicação inerente aos modelos arquiteturais é o modelo requisição/resposta, que se adequa à arquitetura cliente/servidor. O estilo arquitetônico em camadas se ajusta a esse modelo de comunicação especialmente quando consideramos uma arquitetura cliente/servidor de três camadas, a qual consiste em três camadas lógicas, as quais podem, em princípio, ser implementadas em máquinas separadas. A camada mais alta consiste em uma interface de usuário (cliente), a camada intermediária contém a implementação real e a camada mais baixa oferece suporte aos dados utilizados. Diante desse contexto, sabe-se que o mecanismo de implementação RMI se adequa ao modelo arquitetural cliente/servidor de acordo com o modelo de comunicação requisição/resposta e ao estilo arquitetônico em camadas. O principal objetivo do RMI é viabilizar a comunicação por meio de objetos remotos e, para tanto, utiliza dois elementos essenciais que ocultam os detalhes de comunicação do programador: o Stub e o Skeleton. Sobre o funcionamento do RMI focando nas características e nos objetivos do Stub e do Skeleton, assinale a alternativa correta. B. O Stub fica no lado do cliente e o Skeleton no lado do servidor. Os dois se comunicam por meio da rede de computadores. O objetivo do Stub é implementar a interface remota e serve como um espaço reservado no cliente para o objeto remoto. O Skeleton, por sua vez, é responsável por realizar a chamada para a implementação real do objeto remoto. Unidade 3 Quando se trabalha com sistemas distribuídos, é preciso prestar uma atenção especial em alguns pontos chave do projeto, como transparência, abertura e escalabilidade. Qual é o objetivo da escalabilidade em um sistema distribuído? C. Que seja possível aumentar a capacidade computacional. Sistemas distribuídos apresentam algumas características que os tornam mais complexos, se comparados com sistemas centralizados. Qual das alternativas abaixo corresponde a características de sistemas distribuídos que aumentam sua complexidade? B. A interação entre os componentes e suas estruturas não é uma tarefa trivial. Os processos podem ser gerenciados de diversas formas em sistemas distribuídos, de acordo com suas finalidades. Um sistema que utiliza a arquitetura mestre-escravo é muito utilizado em sistemas de tempo real, por exemplo. Em relação ao gerenciamento dos processos em arquitetura mestre-escravo, pode-se afirmar que usualmente: C. Pode ter apenas um processo mestre e diversos escravos. Em arquiteturas cliente-servidor em duas camadas, a base de dados fica no servidor, enquanto as regras e a lógica da aplicação ficam no cliente. Quanto ao processamento, existem basicamente dois modelos: cliente gordo e cliente magro. Em uma abordagem cliente gordo: D. Todo o processamento, ou parte dele, é feita no cliente. Uma empresa trabalha com venda online de ingressos para eventos, e quando tem shows internacionais, por exemplo, a empresa já chegou a esgotar em menos de três horas os ingressos para lotar um estádio de futebol. Qual seria a a arquitetura mais apropriada para esta empresa? C. Cliente servidor multi-camadas. Unidade 4 As threads podem ter seu estado de execução alterado entre pronto, bloqueado, em execução e finalizado, em decorrência de diversos eventos. Considerando que uma thread foi implementada utilizando a linguagem de programação Java, quando uma thread chama o método yield(),qual transição de estado acontece? D. O estado passa de “em execução” para “pronto”. 2.Uma ferramenta de edição de texto provê algumas funcionalidades para auxiliar no trabalho dos seus usuários. Após a inicialização da ferramenta, esta inicia a: 1. ler a entrada do teclado e representar o texto em tela; 2. verificar a ortografia do texto conforme um conjunto de normas; 3. verificar e atualizar a estilização do texto; 4. executar salvamentos periódicos como backup. Considerando que cada funcionalidade descrita acima é executa por uma thread exclusiva, quantas threads são necessárias para a execução descrita da ferramenta? 5 threads. 3.João e Matheus estão desenvolvendo uma ferramenta para um trabalho de faculdade. Ambos concordam que o desempenho é um fator muito importante e, para isso, pretendem adotar alguma estratégia que permita executar tarefas simultaneamente. Existem duas propostas atualmente: 1. Implementar a ferramenta utilizando três processos separados com uma thread cada. 2. Implementar a ferramenta utilizando um processo com três threads. A dupla está dividida nas opiniões, Matheus é favorável à segunda proposta, contudo, João ainda não concorda. Qual argumento Matheus poderia apresentar para tornar a segunda proposta vencedora? A aplicação tem muitas operações de entrada/saída de dados. 4.A implementação de threads no espaço do usuário é uma das estratégias de implementação existentes para utilização de threads em sistemas operacionais. Como qualquer estratégia, pode ter pontos positivos e negativos. Assinale uma vantagem dessa estratégia. Permite a implementação de threads no espaço do usuário (de modo interno ao processo), mesmo em sistemas monoprogramados cujo núcleo não tem suporte a threads. 5.Uma das principais vantagens do uso threads em relação aos processos consiste na possibilidade de compartilhamento de recursos entre diferentes linhas de execução. Contudo, as threads devem armazenar informações que sejam somente suas. Assinale a alternativa na qual as informações listadas somente pertençam às threads. Contador de programa e estado de execução. Unidade 5 O Shell é um programa responsável pela interpretação dos comandos. Ele também é conhecido como modo texto. Esse programa é responsável por interpretar as instruções enviadas pelo usuário, por meio da linha de comandos, para o kernel. Como se pode ter acesso a esse programa na distribuição Ubuntu? C. Por meio do terminal pela interface gráfica, que pode ser acionado pelo atalho CTRL+ALT+T, e pelo console por meio do atalho de teclado CTL+ALT+F1. Uma das facilidades do trabalho no Shell é que se pode realizar o redirecionamento de saídas e entradas de comandos para arquivos. Qual será o resultado da execução do seguinte redirecionamento? $mkdir Linux 2> resultadoexe Marque a alternativa correta. D. O sistema criará uma pasta e um arquivo em branco. Durante a execução de comandos no Shell, é possível verificar a rotina de fluxos do sistema operacional Linux, o qual apresenta três fluxos padrões, sendo eles de entrada, de saída e de erros. Com base na imagem, identifique o tipo de fluxos que está sendo apresentado. E. STDOUT e STDOUT O pipe é um caractere representado por uma barra vertical |. O seu nome vem do inglês e significa tubo, que tem por finalidade canalizar a saída de um comando para a entrada de outro. Qual é o resultado da execução do seguinte comando? $cat group | grep aluno Marque a alternativa correta. A. Apresenta como saída as informações do usuário aluno do arquivo group. As saídas de comando padrão e de erro representadas por STDOUT e STDERR são apresentadas na tela do terminal. Uma das possibilidades do Shell é o redirecionamento dessas saídas de execução de comandos para arquivo. Observe a estrutura dos comandos de redirecionamento de saída e identifique qual é a principal diferença entre elas durante a execução dos comandos: $history > comandos . txt $history >> comandos . txt Marque a alternativa correta. A. O primeiro comando sobrescreve o arquivo existente e o segundo insere as informações no final do arquivo, não sobrescrevendo o arquivo existente. Unidade 6 Qual o nome da relação pai-filho, em que é criada uma nova classe usando o código de classe existente? C. Herança. Como podemos codificar a representação onde temos uma classe Peixe que herda os membros da classe Animal? A. class Peixe: Animal {...} Supondo que temos um array chamado "numeros" com os seguintes valores: 2, 4, 6, 10, 15, 20, 3. Qual das queries LINQ a seguir irão produzir a seguinte saída: 2, 3, 4, 6? D. from n in numeros where n < 10 select n Quais dos tipos de collection que é basicamente uma alternativa para uma matriz, e que permite também adicionar e remover itens de uma lista em uma posição especificada usando um índice, e a matriz se redimensiona automaticamente? C. ArrayList. Qual é o estado de uma thread em que a instância da thread é criada, mas o método Start ainda não foi chamado? C. O estado não iniciado. Unidade 7 Diversos dispositivos que utilizam tecnologias embarcadas necessitam de recursos de aplicações middlewares para se comunicar com outros objetos em uma mesma rede. Esses objetos apresentam recursos e estruturas diferentes que precisam ser compreendidos por todos os dispositivos da rede de comunicação. Para ser possível essa interpretação simultânea de dados, os sistemas middlewares utilizam diversos tipos de serviços que são classificados de acordo com sua especificidade. Em relação ao middleware do tipo transacional, assinale a alternativa correta: E. O middleware transacional (MT) tem como desvantagem o não suporte a diferentes tipos de dados em um Sistema Gerenciador de Banco de Dados, porém tem como vantagens recursos de ACID (Atomicidade, Consistência, Isolamento e Durabilidade). Recursos middleware servem como uma camada intermediária entre diversas tecnologias de software para permitir que as informações vindas de fontes diferentes possam ser interpretadas independentemente de recursos de hardware e software. Em relação às categorias middleware, associe as informações apresentadas a seguir com seus respectivos tipos: I. Orientado a mensagens. II. Orientado a objetos. III. Procedural. ( ) Possibilita a troca de mensagens entre dois processos remotos ou locais e suporta mensagens síncronas, porém não suporta chamadas assíncronas. ( ) No momento da troca de mensagens, bloqueia o cliente e espera uma resposta do servidor por meio do protocolo request/reply ou request/wait for replay. ( ) Organiza as mensagens vindas dos clientes em forma de filas para posterior envio aos seus respectivos destinatários utilizando o princípio de FIFO (First-In, First-Out). ( ) Categoria middleware que apresenta recursos de marshalling (serialização) e unmarshalling (desserialização). Também é capaz de suportar solicitações de cliente a objetos de um host em um servidor pertencente a outro host. Assinale alternativa que contém a ordem correta de preenchimento das lacunas de cima para baixo: B. III – III – I – II. O middleware orientado a objetos é uma classificação da plataforma middleware que apresenta recursos que melhoram a arquitetura procedural, principalmente pela comunicação realizada entre os objetos que estão distribuídos em uma rede. Em relação à arquitetura middleware orientado a objetos representada a seguir, assinale a alternativa correta: D. A letra A da imagem representa o recurso de stubs, encontrado em middleware orientado a objetos para serialização de parâmetros de forma automática no servidor e no cliente. Sistemas middlewares podem ser utilizados para diversos fins. Entre os tipos de serviços existentes, é possível citar aplicações para monitorar recursos de TI, aplicações para segurança e autenticação, aplicações em BI, aplicações Java Enterprise Edition e bancode dados. Em relação às aplicações em BI, analise as afirmações a seguir, classificando- as como verdadeiras (V) ou falsas (F): ( ) Consultas que utilizam recursos OLAP (On-line Analytical Processing) podem ser gerenciadas por middleware em aplicações de BI. ( ) O OpenNI, framework para mineração de dados, é utilizado em recursos de BI para desenvolver relatórios gerenciais. ( ) Alguns frameworks, como Kantara, e aplicações, como AL-WASSIT, podem ser utilizados para a solução de problemas relacionados em BI de processos em tempo real. ( ) Recursos middleware são utilizados na área de BI para solucionar processos de consultas e atualizações que são realizadas de forma paralela em bases de dados distribuídas a partir de particionamento e identificação por índices. Assinale alternativa que contém a ordem correta de preenchimento das lacunas de cima para baixo: E. V – F – V – V. Existem diversas soluções middleware no mercado, sendo que a maior parte delas usa recursos integrados a produtos e a ferramentas proprietárias, enquanto algumas são disponibilizadas a partir de um código aberto. Em relação às características do uso do middleware para aplicações de IoT, assinale a alternativa correta: C. As plataformas middlewares conseguem prover soluções para a interoperabilidade em aplicações IoT, pois permitem o uso de diferentes dispositivos em diferentes aplicações com maior valor agregado e maior rapidez para os usuários. Unidade 8 O projeto de serviços web envolve duas camadas fundamentais: a camada web e a camada de negócio, que, em conjunto, implementam as requisições de consumo aos serviços web. Todavia, é preciso de interfaces de comunicação em mais duas camadas – uma que se comunica diretamente com a camada web e outra que se comunica diretamente com a camada de negócio. Quais são essas camadas e qual a sua função? B. Camada cliente: cria uma interface para interação com o consumidor do serviço (front-end). Camada EIS: cria uma interface com serviços corporativos. O UDDI apresenta as especificações técnicas para a descoberta dos serviços disponíveis e se subdivide em páginas brancas, verdes e amarelas, que representam, respectivamente: D. informações gerais sobre os serviços, informações técnicas e informações sobre a categorização e a classificação de serviços por taxonomia. Um pacote encapsulado em SOAP é constituído por três elementos: envelope, header e body, que servem para, respectivamente: C. definir a representação dos dados em XML, o cabeçalho que inicializa as informações contidas no envelope e os dados que estão encapsulados. Ao enviar uma requisição a um serviço via mensagem, o cliente deve buscar a descrição que está armazenada em um repositório em determinado formato. Em qual repositório a descrição dos serviços é armazenada e em que formato ela está? A. UDDI e WSDL. As chamada RPCs são utilizadas na comunicação entre web services por sua flexibilidade, exatamente por encapsular: E. XML sob HTTP.
Compartilhar