Prévia do material em texto
Prova final: SISTEMAS OPERACIONAIS Acertos: 9 de 10 Nota: 45 pontos Faculdade: Anhanguera - Ampli Questão #01 Um processo pode ser definido como um programa em execução incluindo os valores do contador de programa atual, registradores e variáveis. A CPU alterna de um processo para outro a cada momento. A diferença entre processos e programa é importante para que seja entendido o modelo de processos. De acordo com a alternância de um processo para outro. Avalie as afirmativas a seguir. I. Essa alternância é conhecida como processo finalizado e/ou bloqueado. II. Essa alternância é conhecida como desenvolvimento de um algoritmo de escalonamento de processos. III. Essa alternância é conhecida como multiprogramação. IV. Essa alternância é conhecida como dar lugar ao processamento de outro processo e assim sucessivamente Considerando o contexto apresentado, assinale a alternativa correta: A. Apenas as afirmativas I e IV estão corretas. B. Apenas a afirmativa II está correta. C. Apenas as afirmativas III e IV estão corretas. D. Apenas as afirmativas I, III e IV estão corretas. E. As afirmativas I, II, III e IV estão corretas. Questão #02 Os threads apresentam uma série de vantagens em relação aos processos tornando-os mais simples e rápidos, por isso são chamados de processos leves. Estes benefícios fazem com que sua existência seja importante para um bom desempenho do sistema operacional. Para que isso ocorra, o pacote thread como é chamado, refere-se ao conjunto necessário de atributos para a implementação dos threads. A implementação de threads pode ocorrer no espaço do usuário, no núcleo do sistema operacional e uma implementação híbrida. Levando em consideração o contexto apresentado, assinale a alternativa que indica a melhor definição para uma implementação de threads híbridas: A. São implementadas pela aplicação do usuário e o sistema operacional não sabe de sua existência. A vantagem é que não é necessária nenhuma mudança entre os modos de usuário e núcleo, se tornando rápido e eficiente. B. São implementadas e gerenciadas pelo núcleo do sistema operacional. A desvantagem desta implementação é que todo o gerenciamento dos threads é feito através de chamadas ao sistema, o que compromete a performance do sistema. C. São implementadas tanto no espaço do usuário, quanto no núcleo do sistema operacional. O sistema operacional sabe dos threads do usuário e faz o seu gerenciamento. A vantagem desta implementação é a flexibilidade em função das duas implementações. D. São implementadas tanto no espaço do usuário, quanto no núcleo do sistema operacional. Sua vantagem está na utilização da comunicação entre as bibliotecas de threads, evitando mudanças no modo de acesso, com isto o ganho de velocidade é alto. E. São implementadas pelo usuário e o sistema operacional sabe da sua existência, porém não faz sua gerência. Sua vantagem está na flexibilidade para o usuário executar os threads independentemente da plataforma do sistema operacional utilizado. Questão #03 Atualmente existem vários servidores de multimídia disponibilizados de forma gratuita na internet e a preocupação com a performance, não se limita somente quanto a largura de banda relacionado com a quantidade de acessos via link de dados. Imagine um único servidor de vídeos com um único disco rígido armazenando todos os vídeos. Imagine também que as pessoas acessam um site e após pesquisas as pessoas assistem o conteúdo desejado. Provavelmente, alguns vídeos serão mais requisitados que outros, com isto podemos tirar proveito desta situação. Mediante a coleta de dados estatísticos é possível saber quais são vídeos são mais assistidos e assim, podemos adotar a abordagem de armazenar os vídeos mais assistidos um próximo do outro, visando diminuir o movimento do cabeçote de leitura sobre o disco rígido. Assinale a alternativa que corresponde ao algoritmo utilizado na escolha de qual processo deve ser executado. A. Algoritmo de tubo de buffer. B. Algoritmo de tubo de órgão. C. Algoritmo de Escalonamento. D. Algoritmo de First In First Out. E. Algoritmo de tarefa mais curta primeiro Questão #04 Ao longo da execução de um processo ele pode assumir diferentes estados, sendo eles: execução, pronto, espera ou bloqueio. Para que uma mudança de estado ocorra, um evento precisa acontecer podendo ser o simples encerramento da execução do processo ou até mesmo um erro de execução. Levando em consideração o contexto apresentado e a imagem a seguir, analise as seguintes sentenças levando em consideração as informações apresentadas na figura: I. Em execução: O processo está em execução na CPU. II. Bloqueado: neste estado o processo é descartado, devendo ser executado novamente III. Pronto: o processo está na fila pronto para ser executado. IV. Em execução pronto: nos dois estados os processos são executados, entretanto no último eles são executados e finalizados Quais estão corretas? A. As alternativas I e II estão corretas. B. As alternativas I e III estão corretas. C. As alternativas II e III estão corretas. D. As alternativas III e IV estão corretas. E. As alternativas II e IV estão corretas. Questão #05 Um dos principais conceitos em sistemas operacionais está relacionado à multiprogramação que trata da alternância dos processos na CPU. Esta característica é extremamente importante para os usuários permitindo assim a sensação de que todos eles são executados ao mesmo tempo. Considerando o contexto, avalie as seguintes asserções e a relação proposta entre elas I. O pseudo paralelismo é uma falsa sensação de que todos os processos são executados ao mesmo tempo PORQUE II. Na verdade o que acontece é a suspensão temporária do processo que está executando para dar lugar ao processamento de outro processo e assim sucessivamente. A respeito dessas asserções, assinale a alternativa correta: A. As asserções são proposições verdadeiras, mas a asserção II não é uma justificativa da asserção I. B. As asserções I e II são verdadeiras, e a asserção II é uma justificativa correta da asserção I. C. A asserção I é uma proposição verdadeira e a asserção II é uma proposição falsa. D. A asserção I é uma proposição falsa e a asserção II é uma proposição verdadeira. E. As asserções I e II são proposições falsas. Questão #06 O processador é considerado por Tanembaum o dispositivo central de sistemas computacionais e é nele que ocorre a execução de processos e threads quando diversos processos competem pela utilização do processador, entra em cena a figura do escalonador. considerando as situações em que o escalonador é acionado avalie as afirmativas: I. Quando o “quantum” do processo expira. II. Quando um processo entra em execução. III. Quando um laço de repetição entra em Loop Infinito. IV. Quando o tempo restante para finalizar o processo é igual ao valor máximo. É correto o que se afirma em: A. Somente a afirmativa I está correta. B. Somente a afirmativa II está correta. C. Somente as afirmativas I e II estão corretas. D. Somente as afirmativas II e III estão corretas. E. Somente as afirmativas I, II, III e IV estão corretas. Questão #07 O processador é o dispositivo central de sistemas computacionais e é nele que ocorre a execução de processos e threads. A possibilidade da existência de vários processos em memória faz com que a atuação do escalonador seja requisitada. Assim, com base nesta informação analise as asserções a seguir: I. A função do escalonador de processos é controlar o uso do processador pelos diversos programas de maneira a garantir que nenhum processo monopolize o processamento. PORQUE II. Em um sistema preemptivo, o processador é um recurso, cujo acesso não pode ser realizado de maneira compartilhada, pois todo processo que se inicia deve ser executado sem interrupções A respeito dessas asserções, assinale a alternativa correta: A. As asserções I e Il são proposições verdadeiras, e a II é uma justificativa correta da I. B. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa corretada I. C. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. D. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. E. As asserções I e II são proposições falsas. Questão #08 A CPU é responsável por alternar os programas, executando-o por dezenas ou centenas de milissegundos para que cada um tenha acesso ao processamento dando a ilusão ao usuário de paralelismo ou pseudo paralelismo. Em relação a pseudo paralelismo é CORRETO afirmar que: A. O pseudo paralelismo é a verdadeira impressão que todos os programas estão executando ao mesmo tempo, mas que na verdade o que acontece é que um processo que está executando é suspenso temporariamente. B. O pseudo paralelismo é a falsa impressão que todos os programas estão executando ao mesmo tempo, mas que na verdade o que acontece é que um processo que está executando é suspenso temporariamente. C. O pseudo paralelismo é a verdadeira impressão que todos os programas não estão executando ao mesmo tempo, mas que na verdade o que acontece é que um processo que está executando é suspenso temporariamente. D. O pseudo paralelismo é a falsa impressão que todos os programas não estão executando ao mesmo tempo, mas que na verdade o que acontece é que um processo que está executando é suspenso temporariamente. E. O pseudo paralelismo é a falsa impressão que todos os programas estão executando ao mesmo tempo, mas que na verdade o que acontece é que um processo que não está executando é suspenso temporariamente. Questão #09 O conceito de thread foi introduzido para reduzir o tempo gasto na criação, eliminação e troca de contexto de processos nas aplicações concorrentes, e assim economizando recursos do sistema como um todo. Em relação ao desempenho, quando uma aplicação processa muitas informações de entrada/saída, o uso de threads acelera a execução da aplicação. Considerando o contexto, avalie as afirmativas a seguir: I. Thread é um fluxo de controle (execução) dentro do processo, chamadas também de processos leves. II. Um processo pode conter um ou vários threads que compartilham os recursos do processo. III. A principal razão para o uso de thread é que as aplicações da atualidade rodam muitas atividades ao mesmo tempo e quando são compostas por threads, podem ser executadas em paralelo. IV. Outro motivo para criação de thread é que são mais fáceis de criar e destruir, em função de não terem recursos vinculados a eles. Considerando os conceitos e as características do Thread, assinale a alternativa correta: A. Apenas as afirmativas I e II estão corretas B. Apenas as afirmativas I, II e IV estão corretas C. Apenas as afirmativas II e IV estão corretas D. Apenas as afirmativas II, III e IV estão corretas E. As afirmativas I, II, III e IV estão corretas. Questão #10 Thread é uma forma do processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas simultaneamente. Permite que o usuário do programa, utilize uma funcionalidade do ambiente enquanto outros threads realizam outros cálculos e operações. O benefício do uso de threads advém do fato do processo poder ser dividido em mais de uma linha de tarefas, enquanto uma linha está esperando determinado dispositivo de I/O ou qualquer outro recurso do sistema, o processo como um todo não fica parado, pois quando um thread entra no estado de espera, outro thread aguarda na fila de aptos para executar. O conceito de thread foi introduzido principalmente para: A. Que as aplicações da atualidade executem menos atividades ao mesmo tempo, evitando o processamento paralelo das aplicações. B. Reduzir o tempo gasto na criação, eliminação e troca de contexto de processos nas aplicações concorrentes, e assim economizando recursos do sistema como um todo. C. Melhorar a execução dos processos já que os threads são totalmente independentes e possuem recursos exclusivos para cada um deles. D. Acelerar os dispositivos de I/O já que todas as tarefas que requerem o uso deles são realizadas pelos threads. E. Acelerar o fluxo de execução dos processos já que todos eles são executados de forma independente no sistema, podendo continuar sua execução mesmo após o encerramento dos processos.