Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS OPERACIONAIS – AV1 – 2082.2 GABARITO 0,6 pts 1. Processadores possuem diversos dispositivos para tornar possível sua tarefa de interpretar operações e comandar sua execução. Assinale a opção correta, para identificar os dispositivos com as seguintes funções, respectivamente: - - dispositivo responsável pelo sincronização de eventos e que controla a cadência de execução das microoperações - dispositivo importante de um Sistema de Computação, pelo qual os SOs atuam para trocar os programas em execução? A) interpretador de instruções e decodificador de operações B) relógio (“clock”) e Contador de Instrução-CI C) sincronizador – multiplexador de instruções D) Contador de Instrução -CI e Relógio (“clock”) E) relógio (“clock”) e multiplexador de instruções Resp: dispositivo de sincronização e cadência é o relógio (“clock”) Dispositivo de auxílio para trocar programas – registrador chamado CI- contador de instrução OPÇÃO B 0,6 pts 2. Considere um sistema de computação com processador, memória cache e memória principal. O tempo de acesso entre processador e cache é de 5 ns e entre cache e memória principal é de 50 ns. Qual deverá ser a eficiência de transferências do sistema com o emprego dessa estrutura, para que o tempo médio de acesso entre os 3 dispositivos seja de 8 ns? A) 87% B) 92% C) 94% D) 95% E) 90% Resp: O tempo médio (TM) é calculado pela soma das parcelas de cada transferência baseados na eficiência (E). No caso, ter-se-ia E para os 5 ns do processador-cache; 100 – E dos 52 ns da MP -Cache e TM deve ser 8 ns 8 = ((E x 5) + (100 – E) * 55)) / 100 800 = 5E + 5500 – 55E 50E = 4700 e E = 94% OPÇÃO C 0,6 pts 3. Um programa sendo executado pelo processador contém uma instrução inválida, ou seja, que não faz parte do conjunto de instruções daquela arquitetura. No momento em que o processador tenta executar essa instrução, ele irá disparar uma exceção e, então: A) O ciclo de execução será interrompido, exigindo reinício do sistema operacional (reset). B) O processador não irá progredir na execução do programa, repetindo a execução dessa instrução até que seja possível. C) O processador colocará em execução uma rotina do sistema operacional, específica para o tratamento dessa condição. Essa rotina decidirá, conforme os critérios da sua programação, a ação que será tomada sobre o programa “defeituoso”. D) O processador ignora a instrução desconhecida e prossegue para a instrução seguinte. E) O processador substituiu o valor no registrador de programa pelo endereço da primeira instrução do programa, recomeçando sua execução. Resp: Trata-se da rotina de tratamento de interrupção (ou exceção). OPÇÃO C, 0,6 pts 4. Ao longo do tempo foram desenvolvidos diversos tipos de sistemas operacionais (monousuário, de tempo real, etc). Identifique abaixo um tipo de sistema operacional cuja característica seja realizar tarefas que não exigem interação com o usuário. A) SO de tempo real ou “real time” (modalidade hard) B) SO monoprogramado com emprego de tempo compartilhado C) SO monoprocessado D) SO de tempo compartilhado ou “time sharing”. E) SO em lotes ou “batch” Resposta: Afirmação A ) – FALSA; Afirmação B ) – FALSA; Afirmação C ) – FALSA; Afirmação D ) – FALSA - Afirmação E ) – VERDADEIRA OPÇÃO E 0,6 pts 5 -O conceito de máquina virtual (MV) foi usado na década de 70 do século passado no sistema operacional IBM System 370. Atualmente, centros de dados (datacenters) usam MVs para migrar tarefas entre servidores conectados em rede e, assim, equilibrar carga de processamento. Além disso, plataformas atuais de desenvolvimento de software empregam MVs (Java, .NET). Uma MV pode ser construída para emular um processador ou um computador completo. Um código desenvolvido para uma máquina real pode ser executado de forma transparente em uma MV. Com relação a essas informações, assinale a opção correta. A) O conceito de transparência mencionado indica que a MV permite que um aplicativo acesse diretamente o hardware da máquina. FALSA: uma grande vantagem da MV é justamente impedir o usuário de usar diretamente o HW B) Uma das vantagens mais significativas de uma MV é a economia de carga de CPU e de memória RAM na execução de um aplicativo. FALSA – contrário. Apesar de muito vantajoso o uso de MV, ela tem desvanatagens e uma delas é mais consumo de processador C ) Uma MV oferece maior controle de segurança, uma vez que aplicativos são executados em um ambiente controlado. VERDADE D)Para emular uma CPU dual-core, uma MV deve ser instalada e executada em um computador com CPU dual-core. FALSA – sem sentido E) Como uma MV não é uma máquina real, um sistema operacional nela executado fica automaticamente imune a vírus. FALSA – sem sentido Resp: Opção correta é C 0,6 pts 6. Com o propósito de facilitar o emprego da concorrência em sistemas multiprogramados foram desenvolvidos diversos mecanismos de computação. Um deles é muito usado no processo de múltiplas impressões e consiste na utilização de uma área em disco (HD) para armazenar dados que serão impressos, liberando o processador para outras atividades. Qual é este mecanismo? A) Reentrância B) Buffering C) Spolling D) DMA E) Interpretação Resposta: Afirmação A ) – FALSA - uso de apenas uma cópia de programa para múltiplos usuários, economizando espaço de memória e facilitando a concorrência. Afirmação B ) – FALSA – também economiza espaço de memória em uma operação com HD Afirmação C ) – VERDADEIRA Afirmação D ) – FALSA – ocorre em tarnsferências de dados da MS para MP e vice-versa Afirmação E ) – FALSA – é um método de converter programas fonte em executáveis. OPÇÃO C 0,6 pts 7. Um sistema operacional atende simultaneamente a 26 usuários de três programas distintos (A, B e C), como indicado abaixo: Programa Quantidade de usuários A 10 B 11 C 5 Características dos programas (ocupação de memória) Programa Área de código Área de dados A 20 15 B 30 10 C 50 20 Todos os valores em KB Sabendo que cada usuário só executa um programa por vez, assinale a opção correta para, respectivamente: (a) SEM o uso da técnica de reentrância pelo sistema operacional, qual a quantidade de memória ocupada pelos programas em execução? (b) COM o uso da técnica de reentrância pelo sistema operacional, qual a quantidade de memória ocupada pelos programas em execução? (c) Ainda supondo o uso de reentrância, se todos os usuários do programa C encerrarem sua execução, qual será a quantidade de memória liberada? A) a) 2180, b) 560, c) 100 B) 1380, b) 620, c) 250 C) a)2340, b) 520, c) 350 D) a) 1140, b) 460, c) 150 E) a) 1760, b) 420, c) 100 Resp: Efetuando os cálculos, primeiro para a ocupação de memória SEM reentrância, tem-se: 10 usuários x 20KB (prog A) + 11 x 30 (Prog B) + 5 x 50 (prog C) = 780 mais a área ocupada pelos dados (10 x 15) + (11 x 10) + 5 x 20) = 360 KB. Item a) Total: 780 + 360 = 1140 KB COM reentrância: Uma cópia apenas dos programas para todos os usuários: 20 + 30 + 50 = 100KB mais toda a área dos dados de todos: 360KB (cálculo acima) b) Total: 100 + 360 = 460KB Ainda COM reentrância, a economia com término do programa C de todos seus usuários: 50 + (5 x 20) = 150KB c) 150KB OPÇÃO D 0,6 pts 8. O núcleo é responsável pela realização de diversas operações críticas do sistema operacional. Indique a opção que NÃO representa uma função típica do núcleo: A) Criação de processos B) Gerência de memória C) Compilação D) Escalonamento de processos E) Tratamento de interrupções Resposta: Afirmação A ) – Correta Afirmação B ) – Correta Afirmação C )– FALSA – o compilador não faz parte do Núcleo, sendo um programa auxiliar Afirmação D ) – correto Afirmação A ) – correto OPÇÃO C 0,6 pts 9. Ao receber uma chamada de sistema (system call) o sistema operacional, antes de alternar o processador para o modo kernel, salva o contexto atual dos registradores objetivando que o programa possa ser posteriormente retomado do ponto onde parou, como se não tivesse sido interrompido. Diante dessa característica de operação, indique qual das alternativas abaixo está correta: A) No caso de desvio para executar uma chamada de sistema (system call) apenas os registradores de uso específico são restaurados, pois como não há alternância do programa em execução, os registradores de dados, obrigatoriamente, permanecem intactos durante a execução da chamada. B) Ao realizar uma chamada de sistema todos os registradores são salvos, exceto o Contador de Programa (PC), que não é alterado quando não há alternância do programa em execução. C) Os registradores não precisam ser preservados, pois seu conteúdo é irrelevante para a execução do programa interrompido. D) Os registradores que estiverem em modo residente, ou seja, armazenados na memória principal, não precisam ter seu conteúdo salvo, mas somente os ponteiros para os blocos de memória corretos. E) Todos os registradores são importantes, e a não preservação de qualquer um deles poderá acarretar falha de execução. Resposta: Afirmação A ) – FALSA todos os registradores são salvos senão o programa interrompido não conseguirá funcionar corretamente quando retornar a execução.- Afirmação B ) – FALSA – o PC (ou CI-contador de instrução) é o principal salvo, pois senão o programa não retorna e ele irá ter que retornar, pois foi apenas interrompido e não terminado. Afirmação C ) – FALSA – eveidentemente que os registradores são importantíssimos. Afirmação D ) – FALSA – não existe registrador em modo residente, muito menos “armazenados na memória prinicpal”, já que eles são memória também. Afirmação E ) – VERDADEIRA OPÇÃO E 0,6 pts 10. Há diversas formas pelas quais um sistema computacional pode tratar os eventos de entrada e saída (E/S). O esquema no qual a Unidade Central de Processamento (UCP) fica ocupada em um laço de repetição (loop) à espera do término de uma operação de E/S é conhecido como esquema de A) Interrupção B) Prioridades C) E/S Programada D) E/S Mapeada em memória E) DMA Resp: OPÇÃO C 0,6 pts 11. A figura abaixo representa a memória principal de um sistema computacional, dividida em duas partes: X e Y. A área X é ocupada pelo sistema operacional permanentemente, desde o momento em que o sistema é carregado (boot). A área Y é usada para a execução de programas. Quando um programa é executado o seu código é copiado para a área Y. O código não pode ser maior que a área Y, mas pode ocupá-la por completo. O código do programa só será retirado da memória após o seu encerramento. O mecanismo (simplificadamente) descrito acima indica que esse sistema operacional é do tipo: A) Multitarefa de tempo compartilhado – sistemas multitarefa podem ter programas maiores qua a MP toda B) Monotarefa C) Multitarefa BATCH – de novo multitarefa D) Multitarefa multiprocessado – implica em MP distintas oara cada núcleo E) Tempo real – o código pode sair da MP diversas vzs Resp: OPÇÃO B 0,6 pts 12. Sobre a estrutura de Sistemas Operacionais (SO) analise as afirmações a seguir, indicando a única opção correta: A. uma instrução que gere uma situação de overflow (estouro da capacidade de armazenamento de um registrador) ou uma divisão por zero, são eventos associados ao mecanismo de overlay. FALSA – overlay é técnica de gerência de memória. B. entre os módulos básicos de um SO, constam: gerenciador de arquivos; escalonador e gerenciador de registradores. FALSO – sabe-se de Arquitetura de Computadores que não há módulo gerenciador de registradores C. instruções do tipo: passar do modo privilegiado para modo usuário, inibir interrupção e abrir arquivo, precisam ser protegidas e, por isso, fazem parte de rotinas do núcleo de um SO; VERDADEIRA D. o núcleo dos sistemas operacionais modernos possui rotinas que executam detecção e tratamento de erros dos dados quando são armazenados. E recuperados da memória principal. FALSA – detecção de erros é assunto de redes e não de SO. E. buffering, reentrância e escalonamento são mecanismos associados à chamadas de sistema. – FALSO: são mecanismos de E/S para auxiliar a implementação de concorrência. OPÇÃO C 0,6 pts 13 os sistemas operacionais possuem objetivos gerais e específicos, conforme sua destinação. Um dos aspectos mais importantes dos sistemas operacionais é a capacidade de realizar multiprogramação. Sobre este assunto, é INCORRETO afirmar: A) A multiprogramação aumenta a utilização da CPU organizando os programas em execução (código e dados) prontos para serem executados, de modo que o processador tenha sempre um deles para executar, não ficando ocioso;. B) O SO mantém vários jobs na memória simultaneamente; como a memória costuma ser pequena para acomodar todos os jobs, estes são mantidos inicialmente em disco na fila de jobs, que é composta por jobs que aguardam alocação na memória principal. C) Sistemas operacionais de tempo compartilhado e sistemas operacionais de tempo real tem diversas diferenças, mas uma igualdade: ambos são iguais na sua dependência de tempo; D) A multiprogramação pode ser comparada ao trabalho de um mecânico em oficina de automóveis: ele trabalha em diversos carros; enquanto um carro está aguardando chegada de peça adquirida fora, ele pode trabalhar em outro carro;. E) O tempo compartilhado (ou multitarefa) é uma extensão lógica da multiprogramação. Apenas um pequeno tempo do processador é dado a cada usuário, de forma que ele tem a impressão de que todo o sistema de computação está dedicado exclusivamente ao seu programa. Resp: Sistemas de tempo compartilhado usam a distribuição de tempo entre os processos MAS NÃO SÃO dependentes d etempo como acontece com os sistemas de tempo real. Esta é a única afirmação Incorreta. OPÇÃO C 0,7 pts 14. Para permitir a concorrência de processos, garantindo a segurança e confiabilidade do sistema, são usados distintos modos de acesso ao processador dependendo do código em execução; além disso, a estrutura dos SOs pode variar, especificamente no que se refere a arquitetura das suas rotinas principais, conhecidas em conjunto como Núcleo ou Kernel. . Sobre este assunto, assinale a opção correta: A) Apenas as rotinas do núcleo do sistema operacional podem ser executadas em modo usuário; B) Os programas executando em modo kernel têm acesso somente a operações não-privilegiadas C) Sob o modo usuário, o processador limita o conjunto de operações permitidas; D) SOs com arquitetura micro-kernel apresentam diversos módulos que são compilados separadamente e podem interagir livremente. E) Os compiladores constituem-se em uma das principais rotinas no núcleo dos SOs, já que são chamados em primeiro lugar para execução de um código fonte. Resposta: Afirmação A ) – FALSA – as rotinas do núcleo são executadas em modo kernel Afirmação B ) – FALSA – pelo contrário. E em modo kernel podem usar TODAS as instruções do processador, não só as privilegiadas Afirmação C ) – VERDADEIRA – no modo usuário o programa tema acesso apenas à instruções não privilegiadas, restringindo, assim, o conjunto de operações permitidas Afirmação D ) – FALSA – esta é a definição da arquitetura monolítica. Afirmação E ) – FALSA – compiladores são programas auxiliares dos SO e não fazem parte do núcleo/kernel. OPÇÃO C
Compartilhar