Baixe o app para aproveitar ainda mais
Prévia do material em texto
SO_Lista de atividades ___________________________________________________________________________________________________ Processo gravador Processo leitor dado Sincronização lei tu ra gravação Buffer Grupo 01 Sincronização e Comunicação Entre Processos 1- Defina sistemas multi programáveis? R: São sistemas computacionais onde os recursos são compartilhados entre os diversos usuários e aplicações 2- Defina aplicações concorrentes? R: execução cooperativa de múl tiplos processos ou threads, que trabalham em uma mesma tarefa na busca de um resul tado comum. 3- O que é paralelismo? R:É a alternância dos processos em execução segundo critérios de escalonamento dentro de um SO com uma única UCP 4- Analise a figura abaixo e explique R: Dois processos concorrentes compartilham um buffer para trocar informações através de operações de gravação e leitura. Neste exemplo um processo só poderá gravar dados no buffer caso este não esteja cheio. Da mesma forma, um processo só poderá ler dados armazenados no buffer caso haja algum dado a ser lido. Em ambas as situações, os processos deverão aguardar até que o buffer esteja pronto (para ser l ido ou para ser gravado). 5- O compartilhamento de recursos entre processos pode acarretar situações indesejáveis capazes ate de comprometer a execução das aplicações, para que isto não ocorra o que pode ser feito? R: Sincronização dos recursos do processo. 6- Os mecanismos que garantem a comunicação entre processos concorrentes e o acesso a recursos compartilhados são chamados de Mecanismos de Sincronização. A afirmativa é : ( X ) Verdadeira ( ) Falsa 7- No projeto de SO multi programável não é necessário a implementação do mecanismo de sincronização na execução das aplicações concorrentes. A afirmativa é: ( ) Verdadeira ( X) Falsa Segundo o exercício quatro, complete: 8- Dois processos concorrentes compartilham um________ para trocar informações através de operações de ___________ e __________. Neste exemplo um processo só poderá gravar dados no _________ caso este não esteja cheio. ( X ) Buffer – Leitura – Escrita- Buffer ( ) Processador – Leitura – Escrita - Buffer ( ) Buffer- Escrita – Leitura- HD 9- Da mesma forma, um processo só poderá ________ dados armazenados no ______ caso haja algum dado a ser lido. Em ambas as situações, os __________ deverão aguardar até que o buffer esteja pronto (para ser lido ou para ser gravado). ( ) Ler – Leitor – Dados SO_Lista de atividades ___________________________________________________________________________________________________ ( X ) Ler – Buffer – Processos ( ) Escrever - Escrita – Leitura 10- O que melhor define uma aplicação concorrente é: ( ) Uma situação onde o acesso ao recurso compartilhado exige a sincronização de processos vinculada a uma condição de acesso. ( ) Situação onde um processo nunca consegue executar sua região crítica e, consequentemente, acessar o recurso compartilhado. ( X ) Uma aplicação estruturada de maneira que partes diferentes do código do programa possam executar concorrentemente 11- A primeira notação para especificação da concorrência em um programa foram os comandos? R: Fork e Join 12- Qual a segunda notação de especificação de concorrência? R: Parbegin e Parend 13- Quando pode haver problemas no compartilhamento de recursos? Quando dois processos tentam gravar informações ao mesmo tempo em um mesmo dado no disco. 14- O que é concorrência em programas? São as partes são as partes de um programa que devem executar concorrentemente. 15- Explique o processo abaixo: O programa A começa a ser executado e ao encontrar o comando FORK, faz com que seja criado um outro processo para a execução do programa B concorrentemente ao programa A. O comando JOIN permite que o programa A sincronize-se com B, ou seja, quando o programa A encontrar o comando JOIN só continuará a ser processado após o término da execução do programa B. 16- A primeira notação para a especificação da concorrência em um programa foram os comandos FORK e JOIN, introduzidos por Conway (1963) e Dennis e Van Horn(1966). ( X )Verdadeiro ( )Falso 17- Como processos executando concorrentemente ou em paralelo compartilham recursos do sistema, isso pode ocasionar alguns problemas. A primeira situação envolve o compartilhamento de um arquivo em disco; a segunda apresenta uma variável na memória cache sendo compartilhada por um processo. ( )Verdadeiro ( X )Falso 18- Aplicações concorrentes são: Execução cooperativa de múltiplos processos ou threads, que trabalham em uma mesma tarefa na busca de um resultado comum. ( X ) Verdadeiro ( ) Falso 19- Para evitar problemas de compartilhamento de recursos, os processos concorrentes devem ter suas execuções sincronizadas, a partir de SO_Lista de atividades ___________________________________________________________________________________________________ mecanismos oferecidos pelo Hardware com o objetivo de garantir o processamento correto dos programas. ( ) Verdadeiro ( X ) Falso 20- Como processos executando concorrentemente ou em paralelo compartilham recursos do sistema, isso pode ocasionar alguns problemas. Que podem ser resolvidos melhorando os componentes de Hardware e Software. ( ) Verdadeiro (X ) Falso 21- Oque é a exclusão múltipla? R:É uma técnica usada em programação, para otimizar a execução de recursos 22- Oque acontece com as interrupções desabilitadas? R: Todas as interrupções externas são desabilitadas antes de entrar nas regiões críticas e a reabilitadas após deixar a região critica. 23- Como funciona a prioridade dos processos? R: Quem determina as prioridades dos processos é o sistema operacional, caso cada processo que requisita o recurso deve recebe- lo em algum momento. 24- Oque é a RC(Região Crítica)? R:É uma área de código de um algoritmo que acede um recurso compartilhado que não pode ser acedido concorrentemente por mais de uma linha de execução. 25- Oque é um semáforo relacionado a sistemas operacionais? R:O semáforo é uma variável que fica associada a um recurso compartilhado, indicando quando este está sendo acessado por um outro processo Sobre a exclusão mútua coloque V para verdade e F para Falso. 26- Exclusão mútua é também conhecida pelo acrônimo mutex. ( V ) Verdadeiro ( ) Falso 27- A mudança de contexto de processos só pode ser realizada através de interrupções. ( V ) Verdadeiro ( ) Falso 28- Evita que dois processos ou threads tenham acessos assíncronos separados a um recurso compartilhado. ( ) Verdadeiro ( F ) Falso 29- A primeira situação indesejada é conhecida como starvation (ou espera indefinida). ( F ) Verdadeiro ( ) Falso 30- A exclusão mútua deverá agir apenas sobre os processos que estão concorrendo em um determinado recurso. ( F ) Verdadeiro ( ) Falso 31- Descreva Algoritmo de Peterson. R: Inicialmente aplicado a dois processos, evoluído para N processos Problema da solução por software: Espera ocupada! (busy wait) Resolvido c/ Semáforos e Monitores 32- Descreva o primeiro algoritmo . R: Usa variável global para sincronizar processos Só funciona para dois processos Processos são sempre alternados Um processo fica bloqueado se o outro não entrar na RC Se um processo travar, o outro fica bloqueado aguardando entrar na RC 33- Descreva o segundo algoritmo.R: Funciona somente com dois processos Usa variável de condição para cada processo, informando se processo está ou não na RC Processos não necessitam ser alternados Se um processo travar antes de alterar variável, o outro fica bloqueado aguardando entrar na RC Não garante exclusão mútua! 34- Descreva o terceiro algoritmo. R: Funciona somente com dois processos Atribuição da variável de condição é feita antes do loop de teste Processos não necessitam ser alternados Se um processo travar antes de alterar variável, o outro fica bloqueado Garante exclusão mútua, mas ambos processos podem ficar bloqueados SO_Lista de atividades ___________________________________________________________________________________________________ 35- Descreva o quarto algorito. R: Funciona somente com dois processos Como o terceiro, mas introduz tempo aleatório para setar váriável de condição Processos não necessitam ser alternados Se um processo travar antes de alterar variável, o outro fica bloqueado Garante exclusão mútua, mas ambos processos podem ficar bloqueados durante algum tempo 36- No algoritmo de Peterson álém das variáveis de condição, usa variável “--------- ” para resolver conflitos ( )vez (X )Global 37- Faz parte do terceiro algoritmo exceto ( )Funciona somente com dois processos ( )Atribuição da variável de condição é feita antes do loop de teste ( ) Processos não necessitam ser alternados ( )Se um processo travar antes de alterar variável, o outro fica bloqueado ( X ) Usa variável global para sincronizar processos 38- Faz parte do segundo algoritmo exceto ( )Funciona somente com dois processos (X ) Só funciona para dois processos ( ) Processos não necessitam ser alternados ( )Se um processo travar antes de alterar variável, o outro fica bloqueado aguardando entrar na RC ( ) Não garante exclusão mútua! 39- Representa o 4 algoritmo. ( )Usa variável global para sincronizar processos ( ) Só funciona para dois processos ( ) Processos são sempre alternados ( X )Se um processo travar antes de alterar variável, o outro fica bloqueado 40- Marque V ou F sobre soluções de software ( V )Diversos algoritmos para implementar exclusão mútua através de software ( V )Primeiras soluções abrangiam apenas dois processos e apresentavam problemas, posteriormente sanados (V ) Garante exclusão mútua, mas ambos processos podem ficar bloqueados durante algum tempo (F ) Não há mudança de contexto enquanto na RC
Compartilhar