Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201301218715 V.3 Fechar Aluno(a): CHEILA SOUZA GOMES Matrícula: 201301218715 Desempenho: 7,0 de 8,0 Data: 09/10/2014 10:08:32 (Finalizada) 1a Questão (Ref.: 201301251381) Pontos: 1,0 / 1,0 Suponha que um usuário acionou um programa que, ao ser carregado, solicitou a digitação de uma senha. Quando o programa foi acionado, o processo passou pelos estados "pronto" e "execução". Em seguida o programa ficou no estado "espera", pois dependia de uma operação de E/S (leitura do teclado) para prosseguir. Quando o usuário informar a senha o processo passará para qual estado? PRONTO TERMINADO CRIADO EXECUÇÃO ESPERA 2a Questão (Ref.: 201301252616) Pontos: 1,0 / 1,0 Processos podem ser classificados como CPU-bound ou I/O bound, de acordo com a utilização elevada do processador(UCP) e dos dispositivos de entrada/saída(E/S), respectivamente. Analisando os gráficos abaixo podemos afirmar que : o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU-bound. ao longo do tempo o gráfico 1 representa um processo de I/O bound, já no gráfico 2 não é possível verificar o tipo de processo que representa. o gráfico 1 representa um processo de I/O bound e o gráfico 2 representra um processo de CPU-bound. tanto o gráfico 1 quanto o gráfico 2 representam processos de CPU-bound. tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound. 3a Questão (Ref.: 201301252333) Pontos: 1,0 / 1,0 A arquitetura microkernel caracteriza-se por conter um núcleo simples e enxuto que gerencia a troca de mensagens entre os serviços do sistema operacional. Assinale a opção que representa um exemplo de sistema operacional que adota esta arquitetura: Windows Vista Linux MINIX Windows XP Windows 7 Gabarito Comentado. 4a Questão (Ref.: 201301252249) Pontos: 1,0 / 1,0 Em relação ao conceito de processos, marque a assertiva CORRETA: Sistemas multitarefa não suportam mais de uma instância do mesmo programa em execução. Quando há duas instâncias de um mesmo programa em execução, pode-se dizer que há dois processos iguais. Apenas sistemas operacionais monotarefa suportam mais de uma instância de um programa em execução. Quando há duas instâncias de um mesmo programa em execução, pode-se dizer que há dois processos diferentes (um para cada instância). Quando há duas instâncias de um mesmo programa em execução, pode-se dizer que há um único processo responsável pelas duas instâncias. 5a Questão (Ref.: 201301252238) Pontos: 0,0 / 1,0 Suponha que um usuário esteja utilizando um editor de texto em um terminal Windows. Em um dado momento ele nota que o computador ficou lento. O usuário confirma que aparentemente não há nenhum programa sendo executado além do Windows e do Word. Ao conferir no gerenciador de tarefas, ele observa que existe um novo processo chamado "backup". Entretanto, não há nenhuma interface para lidar com esse processo. Neste caso, podemos dizer que o processo "backup" é um processo do tipo: background. monotarefa. I/O-bound. CPU-bound. foreground. 6a Questão (Ref.: 201301252722) Pontos: 1,0 / 1,0 Threads são definidos como fluxos de execução de um mesmo processo. Sobre as thraeds, considere as afirmativas a seguir: I- Dentro de um mesmo processo, threads compartilham o mesmo contexto de hardware e espaço de endereçamento com os demais threads. II - A grande diferença entre aplicações monothreads e multithreads está no uso do espaço de endereçamento. III- A grande vantagem no uso de threads é a possibilidade de minimizar a alocação de recursos do sistema, além de diminuir o overhead na criação, troca e eliminação de processos. IV- Em um ambiente multithread, ou seja, com múltiplos threads, não existe a idéia de programas associados a processos, mas, sim, a threads. V - De forma simplificada, um thread pode ser definido como uma sub-rotina de um programa que pode ser executada de forma assíncrona, ou seja, executada concorrentemente ao programa chamador. Está(ão) correta(s) a(s) afirmativa(s) I e III, apenas II, III e IV, apenas I e II, apenas II, III, IV e V apenas II e III, apenas Gabarito Comentado. 7a Questão (Ref.: 201301251441) Pontos: 1,0 / 1,0 Os sistemas operacionais podem ser classificados quanto às atribuições do kernel, dividindo-se em: arquitetura monolítica, arquitetura em camadas e arquitetura microkernel. Marque a alternativa CORRETA: A arquitetura em camadas tem como vantagem o alto desempenho. Na arquitetura monolítica, caso um serviço pare, o kernel não é comprometido, já que a principal função do núcleo é gerenciar a comunicação (troca de mensagens) entre as aplicações e os serviços. A arquitetura monolítica é a que tem a implementação mais complexa. A maioria dos sistemas operacionais atuais é desenvolvida usando a arquitetura em camadas, já que há pelo menos a camada "usuário" e a camada "kernel". A arquitetura microkernel caracteriza-se por se tratar de um conjunto de módulos que funcionam como se fosse um único programa. 8a Questão (Ref.: 201301252303) Pontos: 1,0 / 1,0 Para evitar os problemas causados pelo compartilhamento de recursos entre processos executados de forma concorrente foram propostos mecanismos de exclusão mútua. Os mecanismos de exclusão mútua são classificados entre soluções de hardware e soluções de software. Das alternativas abaixo, marque a unica que apresenta uma solução de HARDWARE para o problema da exclusão mútua. Algoritmo de Dekker. Algoritmo de Peterson. Segundo algoritmo Instrução test-and-set. Primeiro algoritmo 9a Questão (Ref.: 201301252364) Suponha que um programador precisou desenvolver um programa para solucionar a seguinte equação: X = (100 x 3) + (2 x (A + 30)) + (20 - 2) + (3 x B) Para otimizar o processamento, este programador optou por dividir a equação em partes menores e distribuí-las em diferentes threads. O resultado foi: PROGRAM EQUACAO; VAR X, A, B, C, D: integer; BEGIN A := (100*3); B := 2 * (A + 30); C := (20-2); D := (3 * B); X := A + B + C + D; END. O algoritmo acima contém um erro, que ilustra a complexidade do uso de threads. Descreva o erro do algoritmo acima e apresente uma solução para este problema. Sua Resposta: SS Compare com a sua resposta: Haverá um problema de sincronização entre os threads. Uma das soluções para este problema seria executar criar threads apenas para as instruções que atribuem valores as variáveis "A" e "C". A atribuição de valores às variáveis "B", "C" e "X" devem ficar fora dos trheads. 10a Questão (Ref.: 201301251324) Suponha um posto de abastecimento que venda apenas gasolina. Este posto tem 5 (cinco) caixas para que os clientes façam o pagamento. Cada caixa executa uma instância de um programa que atualiza o estoque (em litros) de gasolina. O arquivo que contém o estoque fica em um servidor, sendo compartilhado entre os cinco caixas. Sempre que um cliente faz o pagamento, o sistema do caixa faz, basicamente, três operações: 1. Lê o arquivo de estoque para saber a quantidade de litros que há em estoque. 2. Subtrai do estoque a quantidade de litros comprada pelo cliente. 3. Grava o arquivo de estoque com a quantidade de litros calculada no passo "2". Considerando a situação exposta, descreva que problemas podem decorrer do compartilhamento do recurso "arquivo de estoque" pelos cinco processos executados de forma concorrente. Sua Resposta: SS Compare com a sua resposta: O arquivo de estoque pode ser gravado de forma inconsistente. Se um caixa já tiver executado o passo 1 ou 2 e ainda não tiver executado o passo 3 (ou seja, a gravação do arquivo) e outro caixa executar o passo 1, esse segundo caixa irá fazer uma leitura do arquivo de estoque desatualizado, desconsiderando a operaçãorealizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada. Voltar
Compartilhar