Prévia do material em texto
Verifique o seu desempenho e continue treinando! Você pode refazer o exercício quantas vezes quiser. A B C 1 Uma aplicação de computação paralela está enfrentando problemas de deadlock. Os desenvolvedores estão buscando métodos para detectar e resolver esses deadlocks em um ambiente que utiliza múltiplas threads. Qual abordagem é mais eficaz para detectar e resolver deadlocks em um ambiente multithread? Limitar o número de threads em execução. Utilizar um algoritmo de detecção de deadlock. Implementar uma política de não preempção. Questão de 10 Corretas Incorretas Em branco 1 2 3 4 5 6 7 8 9 10 Fundamentos De Computação Paralela Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 1 of 14 09/05/2024, 14:55 D E Aumentar a prioridade de todas as threads. Reduzir o uso de memória compartilhada. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Utilizar um algoritmo de detecção de deadlock é uma abordagem eficaz para identificar e resolver deadlocks em ambientes de computação paralela. Esses algoritmos permitem reconhecer situações onde múltiplas threads estão esperando indefinidamente por recursos, possibilitando a intervenção para desfazer o impasse. 2 Um sistema de computação paralela está sendo projetado para otimizar operações em um ambiente de banco de dados. A coordenação eficaz de transações concorrentes é crucial para a integridade dos dados. Qual método é mais eficiente para gerenciar transações concorrentes em um sistema de banco de dados paralelo? Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 2 of 14 09/05/2024, 14:55 A B C D E Uso de variáveis voláteis para todas as transações. Implementação de um esquema de bloqueio otimista. Alocação estática de recursos para cada transação. Priorização de transações baseada em tamanho de dados. Redução do número de transações simultâneas. Opa! A alternativa correta é a letra B. Confira o gabarito comentado! A implementação de um esquema de bloqueio otimista é eficaz para gerenciar transações concorrentes em sistemas de banco de dados paralelos. Este método permite que transações ocorram simultaneamente sem bloqueios iniciais, verificando conflitos apenas no momento do commit, reduzindo assim o overhead de sincronização. 3 Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 3 of 14 09/05/2024, 14:55 A B C D E Ao desenvolver um software de processamento de imagens utilizando computação paralela, a equipe se depara com o desafio de equilibrar carga entre as threads para maximizar a eficiência. Qual técnica é mais adequada para balanceamento de carga em um ambiente de processamento de imagens paralelo? Atribuição estática de tarefas a cada thread. Uso de um algoritmo de escalonamento dinâmico. Priorização de threads baseada em complexidade de tarefas. Redução do número de threads ativas. Implementação de um sistema de cache único para todas as threads. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! O uso de um algoritmo de escalonamento dinâmico é ideal para o balanceamento de carga em ambientes de processamento de imagens paralelos. Este método permite a adaptação à carga de trabalho variável de cada thread, distribuindo as tarefas de Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 4 of 14 09/05/2024, 14:55 A B C D maneira mais eficiente e melhorando o desempenho geral do sistema. 4 Deadlocks (impasses) podem ocorrer em sistemas operacionais, bancos de dados e outros sistemas concorrentes. Leia as assertivas a seguir e marque a alternativa correta. I. Um conjunto de processos estão em condição de deadlock se cada processo no conjunto estiver aguardando um evento que apenas outro processo no conjunto cause. II. Um deadlock ocorre se e somente se as quatro condições de Coffman forem satisfeitas. III. Um deadlock pode ocorrer ao utilizar somente recursos não-preemptivos. IV. Uma forma de evitar deadlocks é garantir que a condição de posse e espera não ocorra. V. Uma forma de evitar deadlocks é garantir que a condição de preempção não ocorra. Somente a afirmativa I está correta. As afirmativas I e II estão corretas. As afirmativas I e III estão corretas. As afirmativas I, II e IV estão corretas. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 5 of 14 09/05/2024, 14:55 E Todas as afirmativas estão corretas. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! As afirmativas I, II e IV estão corretas. A afirmativa I está correta porque um deadlock ocorre quando dois ou mais processos estão esperando por um recurso que o outro processo possui. A afirmativa II também está correta, pois um deadlock ocorre quando as quatro condições de Coffman (exclusão mútua, posse e espera, não preempção e espera circular) são satisfeitas. A afirmativa IV está correta, pois uma maneira de evitar deadlocks é garantir que a condição de posse e espera não ocorra, ou seja, um processo não pode segurar um recurso e esperar por outro ao mesmo tempo. As afirmativas III e V estão incorretas. Deadlocks podem ocorrer mesmo com recursos preemptivos e a preempção não é uma condição que, se evitada, impede a ocorrência de deadlocks. 5 Em relação aos conceitos de sincronização de processos, selecione a alternativa correta. I. Deadlock (ou impasse) ocorre quando muitos processos estão esperando por um Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 6 of 14 09/05/2024, 14:55 A B C D E recurso compartilhado (seção crítica), que está sendo mantido por algum outro processo. II. Espera ocupada ocorre quando um processo está esperando para entrar na seção crítica, mas outros processos a monopolizam, e o primeiro processo é forçado a esperar indefinidamente. III. Inversão de prioridade ocorre quando um processo de alta prioridade está na seção crítica e é interrompido por um processo de média prioridade. Apenas a afirmação I está correta. Apenas a afirmação II está correta. As afirmações I e II estão corretas. As afirmações II e III estão corretas. As afirmações I e III estão corretas. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! As afirmações I e III estão corretas. A afirmação I descreve corretamente o conceito de deadlock, que é uma situação em que dois ou mais processos estão incapazes de prosseguir porque cada um está esperando que o outro Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 7 of 14 09/05/2024, 14:55 A B C libere um recurso. A afirmação III descreve corretamente a inversão de prioridade, que é uma situação em que um processo de alta prioridade é interrompido por um processo de média prioridade. No entanto, a afirmação II não está correta, pois a espera ocupada ocorre quando um processo está constantemente verificando a condição que o impede de prosseguir, consumindo recursos desnecessariamente. 6 Em relação aos conceitos de exclusão mútua, selecione a alternativa correta. I. A exclusão mútua objetiva evitar que dois processos ou threads tenham acesso simultaneamente a um recurso compartilhado, acesso esse denominado por seção crítica. II. A seção crítica não pode ser executada por mais de um processo/thread ao mesmo tempo. III. A condição de exclusão mútua, em que um recurso ou está associado a um único processo ou está disponível, é suficiente para a ocorrência de bloqueios fatais (deadlocks). Apenas a afirmação I está correta. Apenas a afirmação II está correta. As afirmações I e II estão corretas. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 8 of 14 09/05/2024, 14:55 D E As afirmações II e III estão corretas. Todas as afirmações estão corretas. Opa! A alternativa correta é a letra E. Confira o gabarito comentado! Todas as afirmações estão corretas. A exclusão mútua é um conceito fundamental na programaçãoconcorrente, onde se busca evitar que dois processos ou threads acessem simultaneamente um recurso compartilhado, denominado seção crítica. A seção crítica, por sua vez, não pode ser executada por mais de um processo/thread ao mesmo tempo, garantindo a integridade dos dados. Por fim, a condição de exclusão mútua, onde um recurso ou está associado a um único processo ou está disponível, pode levar à ocorrência de bloqueios fatais, também conhecidos como deadlocks. 7 Considere a seguinte afirmação: Ocorre quando um processo está esperando para entrar na seção crítica, mas outros processos a monopolizam, e o primeiro processo é forçado a esperar indefinidamente. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 9 of 14 09/05/2024, 14:55 A B C D E Essa afirmação caracteriza uma situação de: Impasse ou deadlock. Inanição ou starvation. Interrupção ou system interrupt. Exclusão mútua ou mutual exclusion. Espera ocupada. Opa! A alternativa correta é a letra B. Confira o gabarito comentado! A situação descrita no enunciado é caracterizada como "Inanição ou starvation". Isso ocorre quando um processo está constantemente à espera para executar, mas nunca consegue porque outros processos estão sempre na frente dele, monopolizando a seção crítica. Isso pode levar a um atraso indefinido na execução do processo, o que é conhecido como inanição ou starvation. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 10 of 14 09/05/2024, 14:55 A B C D E 8 Assim como nos sistemas operacionais, os sistemas distribuídos também têm deadlock. Um deadlock distribuído ocorre quando os processos espalhados por diferentes computadores em uma rede aguardam eventos que não ocorrerão. Existem três tipos de deadlock distribuído: Deadlock fantasma, deadlock de recurso, deadlock de comunicação. Deadlock de espera, deadlock de recurso, deadlock de comunicação. Deadlock de recurso, deadlock fantasma, deadlock de espera. Deadlock de comunicação, deadlock fantasma, deadlock de espera. Deadlock fantasma, deadlock de espera, deadlock de comunicação. Parabéns, você selecionou a alternativa correta. Confira o gabarito comentado! Os três tipos de deadlock distribuído são: deadlock fantasma, deadlock de recurso e deadlock de comunicação. O Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 11 of 14 09/05/2024, 14:55 A B C D E deadlock fantasma ocorre quando um processo aguarda um recurso que não existe ou foi removido. O deadlock de recurso acontece quando dois ou mais processos estão em um impasse, pois cada um está segurando um recurso que o outro precisa. Por fim, o deadlock de comunicação ocorre quando dois ou mais processos estão esperando um ao outro para enviar ou receber mensagens ou informações. Portanto, a alternativa correta é a A� "Deadlock fantasma, deadlock de recurso, deadlock de comunicação". 9 Qual era a técnica que permitia alternar tarefas nos primeiros sistemas operacionais não preemptivos? Semáforos Mutex Threads Deadlocks Corrotinas Parabéns, você selecionou a Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 12 of 14 09/05/2024, 14:55 A B alternativa correta. Confira o gabarito comentado! As corrotinas eram a técnica utilizada para alternar tarefas nos primeiros sistemas operacionais não preemptivos. Diferentemente das threads, que são gerenciadas pelo sistema operacional, as corrotinas são gerenciadas pelo próprio programa, permitindo que a execução seja alternada entre diferentes tarefas de maneira cooperativa. Isso era especialmente útil em sistemas operacionais não preemptivos, onde o sistema operacional não interrompe a execução de uma tarefa para iniciar outra. 10 Em um sistema de computação paralela, um problema comum é o acesso simultâneo a uma variável compartilhada, que pode levar a inconsistências nos dados. Qual é a melhor estratégia para gerenciar o acesso a uma variável compartilhada em um ambiente de computação paralela? Dividir a variável em várias partes menores. Utilizar uma política de escalonamento round-robin. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 13 of 14 09/05/2024, 14:55 C D E Empregar mecanismos de bloqueio ou lock. Aumentar a frequência de atualização da variável. Implementar um sistema de cache distribuído. Opa! A alternativa correta é a letra C. Confira o gabarito comentado! O uso de mecanismos de bloqueio ou lock é uma estratégia eficiente para gerenciar o acesso a variáveis compartilhadas em computação paralela. Estes mecanismos garantem que apenas uma thread por vez possa modificar a variável, prevenindo inconsistências nos dados causadas por acessos simultâneos. Firefox https://estacio.saladeavaliacoes.com.br/exercicio/663952b9257ea9c0... 14 of 14 09/05/2024, 14:55