Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS DISTRIBUIDOS E COMPUTAÇÃO PARALELA Considerando os conceitos de variáveis compartilhadas apresentados, em relação às afirmações a seguir, marque a alternativa correta. I. O paradigma de thread estático possibilita que parte da memória que é usada para um tipo de sistema seja preservada para outro. II. No paradigma de thread dinâmico, todos os threads são bifurcados/iniciados após qualquer configuração necessária pelo thread mestre, e os threads são executados até que todo o trabalho seja concluído. III. Se os recursos necessários já estiverem disponíveis, é mais adequado o uso do paradigma de thread estático, em vez do thread dinâmico. As afirmações I e III estão corretas. Considerando os conceitos de variáveis compartilhadas apresentados, em relação às afirmações a seguir, marque a alternativa correta. I. O mecanismo mais comumente utilizado para garantir a exclusão mútua é o semáforo. II. A espera ocupada se caracteriza pelo loop infinito, ocasionando desperdícios de recursos do sistema, não executando nenhum trabalho útil nesse intervalo, simplesmente ocupando a CPU. III. Mesmo que o uso de um mutex seja adotado, isso não necessariamente impõe a serialização da seção crítica. Apenas a afirmação II está correta. A condição de corrida ocorre quando dois ou mais threads acessam uma variável compartilhada ao mesmo tempo. Se não for tratada, pode causar comportamentos indesejados na aplicação. Considerando os conceitos de exclusão mútua, deadlock e condições de corrida, em relação às afirmações a seguir, marque a alternativa correta. I. Uma condição de corrida − ou risco de corrida − é a condição em que o comportamento do sistema depende da sequência ou do tempo de outros eventos incontroláveis. II. Exclusão mútua é o requisito de que um thread de execução nunca entre em uma seção crítica enquanto um thread simultâneo de execução já a está acessando. III. Uma situação de deadlock em um recurso pode surgir se e somente se as cinco condições de Coffman ocorrerem. As afirmações I e II estão corretas. Deadlocks é uma situação indesejável, mas que pode ocorrer quando as condições de Coffman ocorrem em uma determinada aplicação. Considerando os conceitos de deadlock, em relação às afirmações a seguir, marque a alternativa correta. I. Deadlocks fantasmas são deadlocks que são falsamente detectados em um sistema distribuído devido a atrasos internos do sistema, existindo de fato. II. Deadlocks (ou impasse) relaciona-se a uma situação em que ocorre um impasse, e dois ou mais processos ficam impedidos de continuar suas execuções − ou seja, ficam bloqueados, esperando uns pelos outros. III. Uma forma de detectar deadlocks distribuídos é pela construção de um gráfico de espera global, construído a partir de gráficos de espera locais. As afirmações II e III estão corretas. Em relação às afirmações a seguir, marque a alternativa correta. I. Um semáforo é um tipo de dado variável ou abstrato usado para controlar o acesso a um recurso comum por vários processos e evitar problemas de seção crítica em um sistema simultâneo, como um sistema operacional multitarefa. II. Um semáforo trivial se assemelha a uma variável simples, que é alterada (incrementada, decrementada ou alternada) de acordo com a operação definida pelo programador. III. Os semáforos são ferramentas utilizadas na prevenção de condições de corrida, e seu uso garante que um programa esteja livre desses problemas. As afirmações I e II estão corretas. Em relação às afirmações a seguir, marque a alternativa correta. I. Uma das diferenças entre o tipo de semáforo e o tipo de monitor é que o primeiro possui variáveis de condição, já o segundo não as possui. II. A operação signal() é a única maneira pela qual o valor do semáforo pode ser modificado. III. O semáforo é uma variável inteira S que indica a quantidade de recursos disponíveis no sistema, enquanto o monitor é o tipo de dado abstrato que permite que apenas um processo seja executado na seção crítica por vez. Apenas a afirmação III está correta. Em relação às afirmações a seguir, marque a alternativa correta. I. Corrotinas são componentes de programas de computador que permitem que a execução desse programa seja suspensa e reiniciada. II. O uso de corrotinas permite, por exemplo, a não utilização de mecanismos de primitivas de sincronização, como semáforos e mutex. III. As corrotinas são úteis para implementar máquinas de estado. Todas as afirmações estão corretas. Para que seja desenvolvida uma aplicação que empregue computação paralela, podem ser utilizados diversos ambientes de programação, como OpenMP, Phtreads, entre outros. Considerando apenas o ambiente Phtreads, em relação às afirmações a seguir, marque a alternativa correta. I. O processo é um grupo de recursos (código e dados), e possui uma identidade própria, enquanto os threads são criados no contexto de um processo e compartilham o mesmo espaço de endereçamento. II. Threads ocupam a CPU do mesmo modo que o processo criador, mas não são escalonadas por esse mesmo processo. III. A biblioteca pthreads.h, definida no padrão POSIX threads (IEEE 1003.1c) ou Pthreads, possui apenas funções para criar e gerenciar threads. Apenas a afirmação I está correta. Considerando os conceitos de variáveis compartilhadas apresentados, em relação às afirmações a seguir, marque a alternativa correta. I. O paradigma de thread estático possibilita que parte da memória que é usada para um tipo de sistema seja preservad... Considerando os conceitos de variáveis compartilhadas apresentados, em relação às afirmações a seguir, marque a alternativa correta. I. O mecanismo mais comumente utilizado para garantir a exclusão mútua é o semáforo. II. A espera ocupada se caracter... A condição de corrida ocorre quando dois ou mais threads acessam uma variável compartilhada ao mesmo tempo. Se não for tratada, pode causar comportamentos indesejados na aplicação. Considerando os conceitos de exclusão mútua, deadlock e condições de c... Deadlocks é uma situação indesejável, mas que pode ocorrer quando as condições de Coffman ocorrem em uma determinada aplicação. Considerando os conceitos de deadlock, em relação às afirmações a seguir, marque a alternativa correta. I. Deadlocks fanta... Em relação às afirmações a seguir, marque a alternativa correta. I. Um semáforo é um tipo de dado variável ou abstrato usado para controlar o acesso a um recurso comum por vários processos e evitar problemas de seção crítica em um sistema simultâneo,... Em relação às afirmações a seguir, marque a alternativa correta. I. Uma das diferenças entre o tipo de semáforo e o tipo de monitor é que o primeiro possui variáveis de condição, já o segundo não as possui. II. A operação signal() é a única maneira p... Em relação às afirmações a seguir, marque a alternativa correta. I. Corrotinas são componentes de programas de computador que permitem que a execução desse programa seja suspensa e reiniciada. II. O uso de corrotinas permite, por exemplo, a não utili... Para que seja desenvolvida uma aplicação que empregue computação paralela, podem ser utilizados diversos ambientes de programação, como OpenMP, Phtreads, entre outros. Considerando apenas o ambiente Phtreads, em relação às afirmações a seguir, marque ...
Compartilhar