Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Avaliação On-Line Avaliação: AV1-2011.4S-SISTEMAS OPERACIONAIS-CCT0245 Disciplina: CCT0245 - SISTEMAS OPERACIONAIS Tipo de Avaliação: AV1 Aluno: 201102137715 - SUMMERSON DE SOUZA GONCALVES Nota da Prova: 7.5 Nota do Trabalho: Nota da Participação: 2 Total: 9,5 Prova On-Line Questão: 1 (209081) Um processo do tipo CPU-bound é aquele que faz poucas operações de entrada e saída. Por outro lado, processos do tipo I/O-bound são aqueles que fazem muita leitura de disco ou requerem muita interação com o usuário. Desta forma, conclui-se que os processos que ficam a maior parte do tempo nos estados "pronto" e "executando" são os processos do tipo: Pontos da Questão: 1 CPU-bound e I/O-bound ao mesmo tempo. O processo em questão não é CPU-bound nem I/O-bound. CPU-bound. I/O-bound. Não é possível classificar o processo com as informações fornecidas. Questão: 2 (209073) 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 "executando". 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á do estado "espera" diretamente para o estado "executando"? Pontos da Questão: 1 Sim. Mas somente se o computador tiver mais de uma CPU. Não. O processo ficará em estado de "espera" e aguarda até que o sistema operacional o selecione para execução. Não. O processo passa para o estado "pronto" e aguarda até que o sistema operacional o selecione para execução. Sim. Assim que liberar o processador ele será executado. Sim. Pois independente da quantidade de CPU´s ele será executado. Questão: 3 (209079) Quais são técnicas de sincronização entre processos? I. Semáforos II. Habilitar/Desabilitar interrupções III. Condição de Corrida IV. Algoritmo de Peterson Pontos da Questão: 0,5 Somente I, II e IV Somente I e II Somente II e IV Somente I Somente IV Questão: 4 (203903) Os Sistemas Operacionais são divididos em grupos relacionados com o tipo de computador que controlam e o tipo de aplicativos que suportam. Um sistema operacional permite que diversos usuários utilizem simultaneamente os recursos do computador é chamado de: Pontos da Questão: 1 Visualização de Prova https://sia.estacio.br/portal/prt0010a.asp?p1=3082474&p2=8498&p3... 1 de 3 12/6/2012 17:01 multitarefa multprocessado multiusuário multiexecutado Questão: 5 (209057) Um sistema informatizado opera 24 horas por dia, por meio de uma conexão direta ao computador central, realizando todas as solicitações no momento em que as transações ocorrem, com destaque pelo menor tempo de resposta, requisito de suma importância para a sua eficiência e performance. Duas aplicações para emprego desse sistema são exemplificadas pelo controle de passagens de grandes companhias aéreas ou rodoviárias e pela monitoração do lançamento de um foguete. Por suas características, esse sistema opera na modalidade de processamento conhecida como: Pontos da Questão: 1 on-line e real time. batch e real time. off-line e time sharing. on-line e time sharing. off-line e real time. Questão: 6 (209036) Os sistemas operacionais podem ser classificados em relação a possibilidade de concorrência entre processos e a possibilidade de uso concorrente por mais de um usuário. Neste contexto podemos afirmar que: Pontos da Questão: 1 Sistemas monotarefa podem ser multiusuário. Sistemas monousuário são obrigatoriamente monotarefa. Todo sistema multitarefa é também multiusuário. Alguns sistemas multiusuário são também multitarefa. Todo sistema multiusuário é também multitarefa. Questão: 7 (207350) Qual a grande diferença entre sistemas monoprogramáveis e sistemas multiprogramáveis? Pontos da Questão: 0,5 Enquanto em sistemas monoprogramáveis existe apenas um programa utilizando os recursos disponíveis, nos multiprogramáveis vários hardwares e softwares compartilham esses mesmos recursos Os sistemas monoprogramáveis se caracterizam por permitir que o processador, a memória e os periféricos permaneçam dedicados à execução de um único programa. Nos sistemas multiprogramáveis ou multitarefa, os recursos computacionais são compartilhados entre os diversos softwares e aplicações Os sistemas monoprogramáveis se caracterizam por permitir que o processador, a memória e os periféricos permaneçam exclusivamente dedicados à execução de um único programa. Nos sistemas multiprogramáveis ou multitarefa, os recursos computacionais são compartilhados entre os diversos usuários e aplicações Enquanto em sistemas monoprogramáveis pode existir um ou mais programas utilizando os recursos disponíveis, nos multiprogramáveis várias aplicações compartilham esses mesmos recursos Questão: 8 (209067) Durante a execução de um programa podem ocorrer eventos inesperados, que causam um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção. É correto afirmar que: Pontos da Questão: 0,5 As interrupções são eventos sincronos ou assincronos gerados por um dispositivo de hardware Visualização de Prova https://sia.estacio.br/portal/prt0010a.asp?p1=3082474&p2=8498&p3... 2 de 3 12/6/2012 17:01 As interrupções são eventos sincronos ou assincronos gerados pelo sistema operacional ou por outro processo de maior prioridde As interrupções são somente os eventos assíncronos gerados por um dispositivo de hardware ou pelo sistema operacional As interrupções são somente os eventos síncronos gerados por um dispositivo de hardware ou pelo sistema operacional As interrupções são eventos sincronos ou assincronos gerados somente pelo sistema operacional Questão: 9 (209062) Para que uma aplicação execute instruções privilegiadas deverá efetuar: Pontos da Questão: 0,5 a execução de um programa específico uma interrupção uma solicitação ao administrador do sistema o acesso com uma conta privilegiada uma chamada ao sistema Questão: 10 (203932) Você e seu amigo sentaram na sua sala de estar e começaram a brincar com o Playstation 3 que você acabou de ganhar de Natal. Cada um com um controle brigando pela disputa da bola no jogo. Traduzindo para o contexto, vocês dois estavam executando uma tarefa (chutar a bola) de forma: Pontos da Questão: 1 síncrona concorrente assíncrona serial Fechar Server IP : 192.168.10.139 Client IP: 200.149.135.250 Tempo de execução da página : 35,953 Visualização de Prova https://sia.estacio.br/portal/prt0010a.asp?p1=3082474&p2=8498&p3... 3 de 3 12/6/2012 17:01 Avaliação: CCT0245_AV_201407352415 » SISTEMAS OPERACIONAIS Tipo de Avaliação: AV Aluno: 201407352415 - JUAREZ DA CONCEIÇÃO SOARES Professor: MARCELO RIBEIRO DE OLIVEIRA Turma: 9002/AB Nota da Prova: 5,0 Nota de Partic.: 2 Av. Parcial 2 Data: 14/11/2015 18:00:37 1a Questão (Ref.: 201407449838) Pontos: 0,5 / 1,5 Existem diferentes maneiras de implementar a concorrência dentro de uma aplicação. São exemplos desta implementação os processos independentes, subprocessos e threads. Quais as diferenças entre estas implementações? Resposta: Theads: são independentes e podem ser executadas em paralelo, a não ser que exista um processo que dependa de outro. processos: São escalonados pelo kernel do sistema operacional subprocessos: são gerados por processos em execução, que foram colocados em modo de espera pelo escalonador, para executar uma operação, que resultará em um evento ou ação que está sendo aguarda pelo processo, que gerou este subprocesso. Gabarito: Nos processos independentes não existe vínculo entre o processo criado e o seu criador. Cada processo possui seu próprio contexto de hardware, contexto de software e espaço de nedereçamento. Já os subprocessos são criados dentro de uma hierarquia, onde existe uma dependência entre o processo criador e o o subprocesso. Caso o processo pai deixe de existir o processo filho deixará também, apesar de cada processo possuir sua própria PCB. Diferentemente dos dois exemplos anteriores, os threads compartilham o espaço de endereçamento e o contexto de software, porém cada thread possui seu próprio contexto de hardware. 2 a Questão (Ref.: 201408065646) Pontos: 0,0 / 1,5 No Linux existem 3 grupos de permissões e cada grupo é formado por 3 letras. Defina os grupos e as 3 letras, na sequência, bem como qual a permissão de cada letra? Resposta: ff Gabarito: Os 3 grupos de permissões são: dono, grupo e demais usuários. Que são formados por 3 letras r, w, x, que servem para definir o direito de R leitura, W escrita e X execução. 3 a Questão (Ref.: 201407419436) Pontos: 0,5 / 0,5 (badesc 2010) Um sistema informatizado opera 24 horas por dia, por meio de uma conexão direta ao computador central, realizando todas as solicitações no momento em que as transações ocorrem, com destaque pelo menor tempo de resposta, requisito de suma importância para a sua eficiência e performance. Duas aplicações para emprego desse sistema são exemplificadas pelo controle de passagens de grandes companhias aéreas ou Página 1 de 4BDQ Prova 28/11/2015http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp Priscilla Realce rodoviárias e pela monitoração do lançamento de um foguete. Por suas características, esse sistema opera na modalidade de processamento conhecida como: on-line e time sharing. off-line e time sharing. off-line e real time. batch e real time. on-line e real time. 4a Questão (Ref.: 201407617926) Pontos: 0,5 / 0,5 Processadores atuais incluem mecanismos para o tratamento de situações especiais, conhecidas como interrupções. Em uma interrupção, o fluxo normal de instruções é interrompido para que a causa da interrupção seja tratada. Com relação a esse assunto, assinale a opção CORRETA. O processador pode auto interromper-se para tratar exceções de execução, tais como um erro em uma operação aritmética, uma tentativa de execução de instrução ilegal ou uma falha de página em memória virtual. Rotinas de tratamento de interrupção devem ser executadas com o mecanismo de interrupção inibido, pois esse tipo de rotina não permite aninhamento. As operações de entrada e saída geram interrupções de forma síncrona à execução do processador, para que nenhuma instrução fique incompleta devido à ocorrência da interrupção. Quando uma interrupção ocorre, o próprio processador salva todo o seu contexto atual, tais como registradores de dados e endereço e códigos de condição, para que esse mesmo contexto possa ser restaurado pela rotina de atendimento da interrupção. O uso de interrupção para realizar entrada ou saída de dados somente é eficiente quando o periférico trata grandes quantidades de dados, como é o caso de discos magnéticos e discos ópticos. Para periféricos com pouco volume de dados, como teclados e mouses, o uso de interrupção é ineficiente. 5 a Questão (Ref.: 201407626085) Pontos: 0,5 / 0,5 Um thread é Fluxo de execução e parte integrante de um processo e o multithreading é a associação de vários fluxos de execução a um único processo. Julgue as sentenças em verdadeiras (V) ou falsas (F). 1. Thread é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente. 2. Cada thread tem o mesmo contexto de hardware e compartilha o mesmo o espaço de memória (endereçado a um mesmo processo-pai), porém o contexto de software é diferente. 3.Um dos benefícios do uso das threads é que quando um thread espera por um recurso um outro do mesmo grupo pode estar sendo executado. Marque a opção correta. 1.V -2.V - 3.V 1.F - 2.V - 3.F 1.F - 2.F - 3.V 1.V - 2.F - 3.V 1.V -2.F - 3.F Página 2 de 4BDQ Prova 28/11/2015http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp 6a Questão (Ref.: 201407999210) Pontos: 0,0 / 0,5 Embora ambos tenham seu escalonamento feito pelo gerenciamento de processos, threads e processos são estruturalmente distintos. Qual é a principal diferença entre eles? Escolha a alternativa correta. Apenas threads podem ser executados em paralelo. Processos apenas podem ocorrer em sistemas de grande porte. Processos executam mais rapidamente. Threads apenas podem ocorrer em processadores multicore. Threads possuem o mesmo contexto de software 7a Questão (Ref.: 201407994975) Pontos: 0,5 / 0,5 A exclusão mútua deve afetar apenas os processos concorrentes somente quando um deles estiver fazendo acesso ao recurso compartilhado. A parte do código do programa onde é feito o acesso ao recurso compartilhado é denominada de: Condição de Corrida Espera Ocupada Região Crítica Exclusão Mútua de Execução Aplicação Concorrente 8 a Questão (Ref.: 201407419643) Pontos: 0,5 / 0,5 Na gerência do processar vários critérios de seleção são utilizados para determinar qual processo irá executar. Na política de escalonamento First-In-First-Out (FIFO), é selecionado para execução o processo que: Chegar primeiro ao estado de espera. Chegar primeiro ao estado de pronto. Tiver maior prioridade. Tver o menor tempo de processador ainda por executar. Tiver o maior tempo de procesador ainda por executar. 9 a Questão (Ref.: 201407998491) Pontos: 1,0 / 1,0 Várias foram as técnicas propostas para otimizar a alocação de memória. Entretanto, independentemente da técnica utilizada, pode acontecer de não haver memória principal disponível para todos os processos. Para solucionar este problema foi proposta uma técnica que é implementada em praticamente todos os sistemas operacionais atuais. Esta técnica consiste em selecionar um processo residente da memória que é transferido da memória principal para a memória secundária. Desta forma, libera-se memória principal para execução de novos processos. Para que o processo que está em memória secundária retorne à memória principal, o procedimento inicial é repetido, sendo outro processo transferido para a memória secundária. Selecione a assertiva que descreve o nome desta técnica: Swapping Dinamic memory acess (DMA) Página 3 de 4BDQ Prova 28/11/2015http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp Memória virtual Page faults Trashing 10 a Questão (Ref.: 201407654504) Pontos: 1,0 / 1,0 O gerenciamento dos sistemas de entrada/saída de dados é normalmente implementado em duas camadas: uma responsável pelo controle do dispositivo e outra, pelo gerenciamento de entrada/saída. Por que isso representa um projeto eficiente? Escolha a alternativa correta. Porque permite o compartilhamento dos dispositivos de entrada/saída através do gerenciamento de entrada/saída. Porque permite o uso de duas linguagens de programação na sua implementação, pois o controle do dispositivo exige a programação em linguagem de máquina. Porque permite separar as operações de entrada das operações de saída de dados. Porque permite evitar o uso de DMA para a operação de entrada/saída. Porque permite separar características de hardware de características funcionais do dispositivo de entrada/saída. Período de não visualização da prova: desde 12/11/2015 até 24/11/2015. Página 4 de 4BDQ Prova 28/11/2015http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201301492711 V.1 VOLTAR Aluno(a): SIDINEI DA SILVA NASCIMENTO Matrícula: 201301492711 Desempenho: 2,0 de 8,0 Data: 28/04/2014 21:45:33 (Finalizada) 1a Questão (Ref.: 201301552851) Pontos: 0,0 / 1,0 Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que: Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado. Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa. O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa. É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos. Exceções partem de eventos síncronos e previsíveis. 2a Questão (Ref.: 201301552820) Pontos: 0,0 / 1,0 A maioria dos autores classifica os sistemas operacionais entre os seguintes tipos: sistemas monotarefa ou multitarefa, sistemas monousuário ou multiusuário, sistemas monoprocessados ou multiprocessados. Em relação a essas classificações, marque a alternativa correta: Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea. Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. 3a Questão (Ref.: 201301554012) Pontos: 0,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 : tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound. o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU-bound. o gráfico 1 representa um processo de I/O bound e o gráfico 2 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. tanto o gráfico 1 quanto o gráfico 2 representam processos de CPU-bound. 4a Questão (Ref.: 201301556456) Pontos: 0,0 / 1,0 Podemos verificar informações sobre os processos em execução utilizando o gerenciador de tarefas do sistema operacional Windows e no Linux com o comando PS. Dentre as informações fornecidas podemos destacar o PID (process identification ou identificador do processo), que faz parte do controle de memória do processo. do contexto de software do processo. do contexto de hardware do processo. do gerenciamento de arquivo. do espaço de endereçamento do processo. 5a Questão (Ref.: 201301553645) Pontos: 0,0 / 1,0 Em relação ao conceito de processos, marque a assertiva CORRETA: 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 iguais. 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. 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 diferentes (um para cada instância). 6a Questão (Ref.: 201301553634) Pontos: 1,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: I/O-bound. monotarefa. background. foreground. CPU-bound. 7a Questão (Ref.: 201301554118) 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) II, III e IV, apenas I e II, apenas I e III, apenas II, III, IV e V apenas II e III, apenas 8a Questão (Ref.: 201301555508) Pontos: 0,0 / 1,0 Para interromper a execução de um programa no sistema Linux utilizamos a combinação das teclas Ctrl + C. Nese caso, podemos afirmar que: o sistema operacional trata este evento com a utilização da estrutura de sincronização - monitor, que sinaliza ao processo a ocorrência do evento. a combinação das teclas gera automaticamente um sinal ao processo, sem passar pelo sistema operacional, garantindo um melhor desempenho. o sistema operacional trata este evento com a utilização da estrutura de sincronização - semáforo, que sinaliza ao processo a ocorrência do evento. a combinação das teclas gera um sinal para o processo, que por sua vez, gera uma interrupção para o sistema operacional, sinalizando assim a ocorrência do evento. o sistema operacional, a partir da rotina de tratamento da interrupção, gera um sinal sinalizando ao processo a ocorrência do evento. 9a Questão (Ref.: 201301553760) 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: 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.: 201301552720) 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: 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ção realizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada. SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201301492711 V.2 VOLTAR Aluno(a): SIDINEI DA SILVA NASCIMENTO Matrícula: 201301492711 Desempenho: 1,0 de 8,0 Data: 28/04/2014 22:02:07 (Finalizada) 1a Questão (Ref.: 201301552851) Pontos: 0,0 / 1,0 Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que: O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa. É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos. Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado. Exceções partem de eventos síncronos e previsíveis. Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa. 2a Questão (Ref.: 201301552820) Pontos: 0,0 / 1,0 A maioria dos autores classifica os sistemas operacionais entre os seguintes tipos: sistemas monotarefa ou multitarefa, sistemas monousuário ou multiusuário, sistemas monoprocessados ou multiprocessados. Em relação a essas classificações, marque a alternativa correta: Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea. Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. 3a Questão (Ref.: 201301554012) Pontos: 0,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 : 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. tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound. 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. o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU- bound. 4a Questão (Ref.: 201301556456) Pontos: 0,0 / 1,0 Podemos verificar informações sobre os processos em execução utilizando o gerenciador de tarefas do sistema operacional Windows e no Linux com o comando PS. Dentre as informações fornecidas podemos destacar o PID (process identification ou identificador do processo), que faz parte do contexto de hardware do processo. do gerenciamento de arquivo. do espaço de endereçamento do processo. do contexto de software do processo. do controle de memória do processo. 5a Questão (Ref.: 201301553645) Pontos: 1,0 / 1,0 Em relação ao conceito de processos, marque a assertiva CORRETA: 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. 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á dois processos iguais. Sistemas multitarefa não suportam mais de uma instância do mesmo programa em execução. 6a Questão (Ref.: 201301553634) 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: I/O-bound. background. CPU-bound. foreground. monotarefa. 7a Questão (Ref.: 201301554118) Pontos: 0,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) II, III e IV, apenas I e II, apenas II, III, IV e V apenas I e III, apenas II e III, apenas 8a Questão (Ref.: 201301555508) Pontos: 0,0 / 1,0 Para interromper a execução de um programa no sistema Linux utilizamos a combinação das teclas Ctrl + C. Nese caso, podemos afirmar que: o sistema operacional trata este evento com a utilização da estrutura de sincronização - semáforo, que sinaliza ao processo a ocorrência do evento. a combinação das teclas gera automaticamente um sinal ao processo, sem passar pelo sistema operacional, garantindo um melhor desempenho. a combinação das teclas gera um sinal para o processo, que por sua vez, gera uma interrupção para o sistema operacional, sinalizando assim a ocorrência do evento. o sistema operacional, a partir da rotina de tratamento da interrupção, gera um sinal sinalizando ao processo a ocorrência do evento. o sistema operacional trata este evento com a utilização da estrutura de sincronização - monitor, que sinaliza ao processo a ocorrência do evento. 9a Questão (Ref.: 201301553760) 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: 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.: 201301552720) 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: 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ção realizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada. VOLTAR SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201301492711 V.3 VOLTAR Aluno(a): SIDINEI DA SILVA NASCIMENTO Matrícula: 201301492711 Desempenho: 3,0 de 8,0 Data: 28/04/2014 22:27:25 (Finalizada) 1a Questão (Ref.: 201301552851) Pontos: 0,0 / 1,0 Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que: Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa. O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa. É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos. Exceções partem de eventos síncronos e previsíveis. Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado. 2a Questão (Ref.: 201301552820) Pontos: 0,0 / 1,0 A maioria dos autores classifica os sistemas operacionais entre os seguintes tipos: sistemas monotarefa ou multitarefa, sistemas monousuário ou multiusuário, sistemas monoprocessados ou multiprocessados. Em relação a essas classificações, marque a alternativa correta: Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea. Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. 3a Questão (Ref.: 201301554012) Pontos: 0,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 : tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound. o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU-bound. tanto o gráfico 1 quanto o gráfico 2 representam processos de CPU-bound. o gráfico 1 representa um processo de I/O bound e o gráfico 2 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. 4a Questão (Ref.: 201301556456) Pontos: 1,0 / 1,0 Podemos verificar informações sobre os processos em execução utilizando o gerenciador de tarefas do sistema operacional Windows e no Linux com o comando PS. Dentre as informações fornecidas podemos destacar o PID (process identification ou identificador do processo), que faz parte do contexto de software do processo. do espaço de endereçamento do processo. do gerenciamento de arquivo. do contexto de hardware do processo. do controle de memória do processo. 5a Questão (Ref.: 201301553645) Pontos: 1,0 / 1,0 Em relação ao conceito de processos, marque a assertiva CORRETA: 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 iguais. 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. 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 diferentes (um para cada instância). 6a Questão (Ref.: 201301553634) 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. CPU-bound. monotarefa. foreground. I/O-bound. 7a Questão (Ref.: 201301554118) 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 II, apenas I e III, apenas II e III, apenas II, III e IV, apenas II, III, IV e V apenas 8a Questão (Ref.: 201301555508) Pontos: 0,0 / 1,0 Para interromper a execução de um programa no sistema Linux utilizamos a combinação das teclas Ctrl + C. Nese caso, podemos afirmar que: a combinação das teclas gera um sinal para o processo, que por sua vez, gera uma interrupção para o sistema operacional, sinalizando assim a ocorrência do evento. o sistema operacional trata este evento com a utilização da estrutura de sincronização - semáforo, que sinaliza ao processo a ocorrência do evento. o sistema operacional, a partir da rotina de tratamento da interrupção, gera um sinal sinalizando ao processo a ocorrência do evento. o sistema operacional trata este evento com a utilização da estrutura de sincronização - monitor, que sinaliza ao processo a ocorrência do evento. a combinação das teclas gera automaticamente um sinal ao processo, sem passar pelo sistema operacional, garantindo um melhor desempenho. 9a Questão (Ref.: 201301553760) 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: 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.: 201301552720) 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: 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ção realizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada. VOLTAR SISTEMAS OPERACIONAIS Simulado: CCT0245_SM_201409316041 V.1 Fechar Aluno(a): Matrícula: Desempenho: 7,0 de 8,0 Data: (Finalizada) 1a Questão (Ref.: 201409579160) Nos sistemas com paginação a rotina para tratamento de page faults está residente na memória principal. Esta rotina pode ser removida da memória em algum momento? O que aconteceria se esta rotina não estivesse na MP durante a ocorrência de um page fault? Sua Resposta: Não preemptivo, Long−term Scheduling, Medium−term Scheduling e Short−term Scheduling. Compare com a sua resposta: Não. Qualquer tratamento sobre page fault não seria realizado pelo sistema operacional. 2a Questão (Ref.: 201409587327) Sabemos que o sistema operacional é a mais importante plataforma lógica de um sistema computacional e que, através de suas gerências, controlam todas as operações e funcionalidades. Um dos grandes desafios é estabelecer uma política de escalonamento eficiente que proporcione à CPU um fluxo de processos considerável, minimizado o tempo de resposta e, consequentemente, maximizando a vazão de tarefas. Diante desta consideração responda as perguntas a seguir: a) Como se classificam os tipos de escalonamento? b) Descreva as políticas de escalonamento: Por prioridades e Shortest-Job-First (SJF) Sua Resposta: O menor processo ganhará a CPU e atrás do mesmo formar uma fila de processos por ordem crescente de tempo de execução; Compare com a sua resposta: a)Preemptivo e Não-preemptivo. b)Por prioridade A cada processo que alcança o estado de pronto é associada uma prioridade de execução. Os processos de maior prioridade são escalonados preferencialmente. Este tipo de preempção é implementado através de um clock, que interrompe o processador em determinados intervalos de tempo, para que a rotina de escalonamento reavalie prioridades e, se necessário, escalone outro processo. O processo interrompido volta para a fila de prontos. Shortest-Job-First (SJF) cada processo é associado ao seu tempo de execução. Dessa forma, quando o processador está livre, o processo em estado de pronto que precisar de menos tempo de UCP para terminar seu processamento é selecionado para execução (shortest-job-first). 3a Questão (Ref.: 201409379632) Pontos: 1,0 / 1,0 Na gerência do processar vários critérios de seleção são utilizados para determinar qual processo irá executar. Na política de escalonamento First-In-First-Out (FIFO), é selecionado para execução o processo que: Chegar primeiro ao estado de pronto. Tver o menor tempo de processador ainda por executar. Tiver o maior tempo de procesador ainda por executar. Chegar primeiro ao estado de espera. Tiver maior prioridade. 4a Questão (Ref.: 201409951521) Pontos: 1,0 / 1,0 Indique se será gerada uma interrupção de hardware ou uma exceção em cada situação abaixo: - Erro de divisão por zero. - Violação de acesso a uma área de memória não permitida. - Controladora de HD indica o término de uma operação de E/S - Um click no mouse. - Disparo do alarme do temporizador. exceção - exceção - interrupção - interrupção - interrupção. interrupção - interrupção - exceção - exceção - interrupção. interrupção - interrupção - interrupção - exceção - interrupção. interrupção - interrupção - interrupção - exceção - exceção. exceção - interrupção - interrupção - interrupção - exceção. Gabarito Comentado. 5a Questão (Ref.: 201409958522) Pontos: 1,0 / 1,0 Suponha o seguinte cenário: você é um engenheiro de sistemas e está projetando um sistema operacional. No seu projeto você contemplou uma arquitetura de sistema operacional multiprogramado no qual vários processos serão executados de forma concorrente. Imagine que, neste contexto, seja importante que o sistema operacional adote como critério de escalonamento a escolha dos processos que tiverem o menor tempo de processador ainda por executar. Neste caso optaria por adotar qual critério de escalonamento? Não preemptivo Por Prioridade Circular Shortest-Job-First (SJF) First-In-First-Out (FIFO) 6a Questão (Ref.: 201409364513) Pontos: 0,0 / 1,0 São algortimos de escalonamento de acesso ao disco: FCFS e round robin Scan e gang scheduling Scan e FCFS C-Scan e round robin C-scan e prioridade Gabarito Comentado. 7a Questão (Ref.: 201409586545) Pontos: 1,0 / 1,0 Em relação aos modelos de entrada e saída, considere: I. Na entrada e saída mapeada, o programa vê os dispositivos periféricos como endereços de memória, mandando dados para eles como se estivesse escrevendo na memória. II. No modo de transferência simples o controlador de DMA devolve o controle de barramento à CPU a cada transferência de um byte (ou palavra); no modo de transferência por bloco o controlador de DMA não devolve o controle do barramento à CPU até que toda a transferência tenha sido efetuada. III. Na entrada e saída mapeada, se cada dispositivo tem seus registradores de controle em uma página diferente do espaço de endereçamento, o sistema operacional pode dar a um usuário o controle sobre dispositivos específicos, simplesmente incluindo as páginas desejadas em sua tabela de páginas. IV. Os controladores de DMA que usam endereçamento de memória física para suas transferências requerem que o sistema operacional converta o endereço virtual do buffer de memória pretendido em um endereço físico e escreva esse endereço físico no registrador de endereço do DMA. Está correto o que se afirma em I, II e III, Apenas II, III e IV, apenas I, II e IV, apenas I, III e IV, apenas I, II, III e IV. Gabarito Comentado. 8a Questão (Ref.: 201409934796) Pontos: 1,0 / 1,0 O sistema operacional é responsável por uma ou mais das seguintes atividades relacionadas ao gerenciamento de disco: (I) Gerenciamento do espaço livre. (II) Alocação do armazenamento. (III) Interpretação de comandos. (IV) Escalonamento do disco. Está correto o que se afirma em: I, II e III, apenas. I, II e IV, apenas. I, II, III e IV. I, III e IV, apenas. II, III e IV, apenas. Gabarito Comentado. 9a Questão (Ref.: 201409920463) Pontos: 1,0 / 1,0 Todas as rotinas do sistema operacional que tem como função se comunicar com os dispositivos de Entrada/Saída em nível de hardware. São os softwares tradutores que recebem comandos do sistema operacional para um hardware específico. Essa é a definição diz respeito aos: Backups Ghost Controladores Drivers Subsistemas de E/S Gabarito Comentado. 10a Questão (Ref.: 201409614494) Pontos: 1,0 / 1,0 O projetista de um sistema operacional percebeu, após medições de desempenho, que o sistema apresentava problemas no acesso ao disco, com um tempo de espera médio bastante elevado. Assinale a alternativa que apresenta, correta e respectivamente, uma causa plausível e sua solução. Controle de dispositivo baseado em pilha; troca para controle de dispositivo baseado em prioridade. Controle de dispositivo baseado em fila; troca para controle de dispositivo baseado em prioridade. Controle de dispositivo baseado em prioridade; troca para controle de dispositivo baseado em fila. Algoritmo para escalonamento de disco ineficiente; troca para algum algoritmo do tipo varredura. Algoritmo para escalonamento de disco ineficiente; troca para algum algoritmo do tipo menor distância primeiro. SISTEMAS OPERACIONAIS Simulado: CCT0245_SM_201409077179 V.1 Fechar Aluno(a): JONATHAS SOUZA DA CRUZ Matrícula: 201409077179 Desempenho: 2,0 de 8,0 Data: 02/06/2015 08:56:38 (Finalizada) 1a Questão (Ref.: 201409100616) Pontos: 0,0 / 1,0 Um sistema operacional trabalha com gerência de memória por páginas (paginação). Quatro processos serão executados nesse sistema e terão seus códigos (relocáveis) divididos em páginas. Após preencher a tabela abaixo com a quantidade de páginas ocupadas e o tamanho do fragmento interno à última página para cada processo assinale a alternativa correta: Os fragmentos do processo C para as duas situações apresentadas são 9 e 14 bytes, respectivamente O processo B ocupa mais páginas que o processo D em ambas as situações O processo A não apresenta fragmento na situação 1 O processo B não apresenta fragmento em qualquer das duas situações O processo A ocupará 6 páginas de 15bytes Gabarito Comentado. 2a Questão (Ref.: 201409323479) Pontos: 0,0 / 1,0 Considerando o momento em que a UCP encontrase livre, ela será entregue ao processo que tiver o menor tempo de duração para o próximo surto de UCP, caso o sistema operacional esteja utilizando um algoritmo de escalonamento: FCFS FIFO Round Robin SJF Múltiplas Filas Gabarito Comentado. 3a Questão (Ref.: 201409100648) Pontos: 1,0 / 1,0 Considerando que um processo em um determinado sistema operacional pode estar no estado executando, pronto ou bloqueado, marque a sentença correta. O processo passa do estado de execução para o estado de pronto se o próprio processo solicitar acesso a um dispositivo de hardware O processo passa do estado de execução para o estado de pronto se for interrompido pelo temporizador (relógio) O processo passa do estado de pronto para o estado de bloqueado se for solicitado um acesso ao disco. O processo passa do estado de bloqueado para o estado de executando se for solicitado pelo próprio processo. O processo passa do estado de execução para o estado de pronto se for interrompido pelo sistema operacional. 4a Questão (Ref.: 201409100671) Pontos: 0,0 / 1,0 Um computador com endereços de 32 bits usa uma tabela de páginas de dois níveis. Os endereços virtuais são divididos em um campo de 11 bits para o primeiro nível da tabela, outro campo de 11 bits para o segundo nível e um último campo para o desloamento. Quantas páginas podem existir neste sistema? 232 211 210 222 212 Gabarito Comentado. 5a Questão (Ref.: 201409692207) Pontos: 0,0 / 1,0 Qual a técnica aplicada à gerência de memória para programas que esperam por memória livre para serem executados. Onde o sistema escolhe um processo residente, que é transferido da memória principal para a memória secundária (swap out) geralmente disco, e posteriormente, o processo pode ser carregado de volta da memória secundária para a principal (swap in) e pode continuar sua execução como se nada tivesse ocorrido. Técnica de overlay Swapping Memória Virtual por Segmentação Alocação Contígua Simples Memória Virtual por Paginação Gabarito Comentado. 6a Questão (Ref.: 201409672028) Pontos: 0,0 / 1,0 Em um sistema com gerenciamento de memória paginado o endereço é composto por 32 bits, sendo 10 reservados para a identificação da página. Qual o tamanho da página? 32MB 16KB 4MB 8MB 4KB Gabarito Comentado. 7a Questão (Ref.: 201409662694) Pontos: 0,0 / 1,0 Um computador tem 8 molduras de página, atualmente ocupadas pelas páginas abaixo. Página Carga Último Acesso 0 123 270 1 231 250 2 101 278 3 145 279 4 123 253 5 109 167 6 132 198 7 143 185 Dados os momentos de carga e último acesso, a próxima página a ser retirada pela política LRU (menos recentemente utilizada) é: 0 3 6 2 5 Gabarito Comentado. 8a Questão (Ref.: 201409316323) Pontos: 1,0 / 1,0 As operações de E/S devem ser o mais simples e transparente possível, sendo independentes do dispositivo. Correlacione os conceitos com seus significados: Escalonamento de E/S ‐ Denominação ‐ Buferização ‐ Cache de dados I ‐ Armazena em memória os dados mais recentes (cópia) II ‐ Associação de um nome a um periférico III ‐ área de memória que compatibiliza a comunicação entre dispositivos com velocidades e unidades de transferência diferentes. IV ‐ Ordem de atendimento as requisições Assinale a alternativa que apresenta a correlação CORRETA entre os conceitos e significados acima: I II III IV II IV I III IV II III I II III I IV III II IV I Gabarito Comentado. 9a Questão (Ref.: 201409695772) Na execução de processos existem duas importantíssimas rotinas que são o escalonador e o dispatcher. Uma destas rotinas depende da outra para sua execução. Descreva a função de cada uma delas e responda qual a rotina que depende da outra para ser executada. Sua Resposta: XSDCVBSDFB Compare com a sua resposta: Escalonador é o responsável por implementar os critérios da política de escalonamento dos processos e o dispatcher é o repsonsável pela troca de contexto dos processos. Após o escalonado determinar qual processo deve fazer uso do processor, o dispatcher irá realizar a troca. Sendo assim é o dispatcher que depende do escalonador. 10a Questão (Ref.: 201409147097) Existem diversos critérios utilizados em uma política de escalonamento. O tempo de processador, tempo de espera, tempo de turnaround e tempo de resposta são exemplos destes critérios. O que representa cada um destes tempos? Sua Resposta: XCVBCXVB Compare com a sua resposta: Tempo de processador é o tempo que um processo leva no etsado de execução durante o seu processamento. Tempo de espera é o tempo total que um processo permanece na fila de pronto durante o seu processamento, aguardando ser executado. Tempo de turnaround é o tempo que um processo leva desde sua criação até o seu término. Tempo de resposta é o tempo decorrido entre uma requisição ao sistema ou à aplicação e o instante em que a resposta é exibida. SISTEMAS OPERACIONAIS Simulado: CCT0011_SM_201201233887 V.1 Fechar Aluno(a): MICHEL PEREIRA DA NOBREGA MARINHO Matrícula: 201201233887 Desempenho: 0,5 de 0,5 Data: 10/06/2015 20:41:55 (Finalizada) 1a Questão (Ref.: 201201272795) Pontos: 0,1 / 0,1 Considere o código alterado com semáforo para um produtor no problema clásico de produtores e consumidores. A alteração no código consiste em entrar na região crítica antes de saber se há um espaço vazio para inserir um item produzido. O que pode acontecer de errado considerando que o semáforo mutex controla o acesso a região crítica e os semáforos espaço_vazio e espaço_ocupado controlam a quantiadade de itens produzidos? Nada, esta alteração não influencia no resultado. O resultado pode ser alterado por um produtor sem que um consumidor tenha conhecimento. Nenhuma das alternativas. Pode ocorrer um deadlock caso não haja espaços vazios para inserir um item produzido. O resultado pode ser alterado por um consumidor sem que um produtor tenha conhecimento. 2a Questão (Ref.: 201201830308) Pontos: 0,1 / 0,1 A política de escalonamento utilizada pelo sistema operacional para fazer a gerência do processador, que é caracterizada pela possibilidade de o sistema operacional interromper um processo em execução e passálo para o estado de pronto, com o objetivo de alocar outro processo no processador, é chamada de escalonamento: não preemptivo temporal preemptivo seletivo atemporal Gabarito Comentado. 3a Questão (Ref.: 201201864524) Pontos: 0,1 / 0,1 A gerência do processador apresenta alguns critérios que devem ser considerados em uma política de escalonamento. Qual o critério de escalonamento que representa o número de processos executados em um determinado intervalo de tempo? Tempo de Turnaround Tempo de processador Tempo de Espera Throughput Utilização do Processador Gabarito Comentado. 4a Questão (Ref.: 201201868152) Pontos: 0,1 / 0,1 Suponha o seguinte cenário: você é um engenheiro de sistemas e está projetando um sistema operacional. No seu projeto você contemplou uma arquitetura de sistema operacional multiprogramado no qual vários processos serão executados de forma concorrente. Imagine que, neste contexto, seja importante que o sistema operacional adote como critério de escalonamento a escolha dos processos que tiverem o menor tempo de processador ainda por executar. Neste caso optaria por adotar qual critério de escalonamento? ShortestJobFirst (SJF) Por Prioridade Circular Não preemptivo FirstInFirstOut (FIFO) 5a Questão (Ref.: 201201272786) Pontos: 0,1 / 0,1 No contexto de processos, como pode ocorrer uma condição de corrida? Uma condição de corrida é uma técnica computacional aplicada aos processos para que os mesmos sejam comparados com relação ao tempo de execução. Uma condição de corrida é uma técnica utilizada para medir o tempo de execução de um processo. Uma condição de corrida ocorre quando um ou mais processos iniciam a execução concomitante e competem no tempo para terminar primeiro. Uma condição de corrida pode ocorrer quando dois ou mais processos estão lendo ou escrevendo algum dado compartilhado e o resultado final depende de qual e quando executa precisamente. Não haverá condição de corrida em sistemas multitarefa. Gabarito Comentado. SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201207097446 V.3 VOLTAR Aluno(a): FAGNER SILVA DE LIMA Matrícula: 201207097446 Desempenho: 8,0 de 8,0 Data: 12/10/2013 23:44:47 (Finalizada) 1a Questão (Ref.: 200712081177) Pontos: 1,0 / 1,0 Durante a execução de um programa podem ocorrer eventos inesperados, que causem um desvio forçado no fluxo de execução de um programa. Esses eventos são conhecidos por interrupção ou exceção. Em relação ao conceito de interrupção e exceção, é correto afirmar que: Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum evento externo ao programa. É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, programas dos usuários e dispositivos. O mecanismo de interrupções ser implementado em sistemas operacionais multitarefa e monotarefa. Exceções partem de eventos síncronos e previsíveis. Uma grande diferença entre a interrupção e a exceção é que no caso da interrupção o próprio programador pode escrever uma rotina de tratamento, evitando que o programa seja encerrado. 2a Questão (Ref.: 200712080016) 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 : tanto o gráfico 1 quanto o gráfico 2 representam processos de I/O bound. o gráfico 2 representa um processo de I/O bound e o gráfico 1 representra um processo de CPU-bound. tanto o gráfico 1 quanto o gráfico 2 representam processos de CPU-bound. o gráfico 1 representa um processo de I/O bound e o gráfico 2 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. 3a Questão (Ref.: 200712080299) 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 MINIX Linux Windows XP Windows 7 4a Questão (Ref.: 200712080383) Pontos: 1,0 / 1,0 Em relação ao conceito de processos, marque a assertiva CORRETA: 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. Sistemas multitarefa não suportam mais de uma instância do mesmo programa em execução. 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 iguais. 5a Questão (Ref.: 200712078520) Pontos: 1,0 / 1,0 Para interromper a execução de um programa no sistema Linux utilizamos a combinação das teclas Ctrl + C. Nese caso, podemos afirmar que: o sistema operacional, a partir da rotina de tratamento da interrupção, gera um sinal sinalizando ao processo a ocorrência do evento. a combinação das teclas gera um sinal para o processo, que por sua vez, gera uma interrupção para o sistema operacional, sinalizando assim a ocorrência do evento. a combinação das teclas gera automaticamente um sinal ao processo, sem passar pelo sistema operacional, garantindo um melhor desempenho. o sistema operacional trata este evento com a utilização da estrutura de sincronização - monitor, que sinaliza ao processo a ocorrência do evento. o sistema operacional trata este evento com a utilização da estrutura de sincronização - semáforo, que sinaliza ao processo a ocorrência do evento. 6a Questão (Ref.: 200712081222) Pontos: 1,0 / 1,0 Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais: Um sistema operacional é responsável por gerenciar os recursos computacionais. São componentes básicos de um sistema operacional: interface com o usuário; gerência do processador; gerência de memória; gerência de dispositivos; sistema de arquivos. Atua como uma interface entre o usuário e o computador. É impossível fazer uso de um computador que não tenha um sistema operacional instalado. Um sistema operacional deve facilitar acesso aos recursos do sistema, assim como compartilhá-los de forma organizada e protegida. 7a Questão (Ref.: 200712079910) 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 II e III, apenas I e II, apenas II, III, IV e V apenas 8a Questão (Ref.: 200712079991) Pontos: 1,0 / 1,0 Um processo, segundo Machado, é formada por três partes, conhecidas como contexto de hardware, contexto de software e espaço de endereçamento.A figura ilustra, de maneira abstrata, os componentes da estrutura de um processo, que juntos, mantêm todas as informações necessárias a execução de um programa. Sobre os componentes é correto afirmar que: o contexto de software armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). o espaço de endereçamento armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, podendo salvá-las caso o processo seja interrompido. o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, mas não pode salvá-las caso o processo seja interrompido. o contexto de hardware de um processo é composto por três grupos de informações sobre o processo:identificação, quotas e privilégios. 9a Questão (Ref.: 200712080268) 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: 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.: 200712081308) 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: 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ção realizada pelo primeiro caixa. Dessa forma, quando o segundo caixa fizer a gravação, a operação realizada pelo primeiro caixa terá sido ignorada. VOLTAR Período de não visualização da prova: desde até . SISTEMAS OPERACIONAIS Simulado: CCT0166_SM_201207097446 V.2 VOLTAR Aluno(a): FAGNER SILVA DE LIMA Matrícula: 201207097446 Desempenho: 7,0 de 8,0 Data: 12/10/2013 23:36:36 (Finalizada) 1a Questão (Ref.: 200712106641) Pontos: 0,0 / 1,0 Em relação ao uso de threds em modo kernel, analise as assertivas a seguir: I - Threads em modo kernel podem ser utilizados em sistemas operacionais monothread II - Threads em modo usuário são criadas e destruidas pelo sistema operacional. III - Threads em modo kernel não bloqueiam o processo quando entram em estado de espera Marque a alternativa que contém as assertivas VERDADEIRAS: Somente I e III Somente II Somente I Todas são verdadeiras Somente III 2a Questão (Ref.: 200712106658) Pontos: 1,0 / 1,0 Em sistemas multiprogramáveis os processos podem assumir diferentes estados. Os três estados mais importantes são: running (execução); ready (pronto); e wait (espera). Mudanças entre esses estados podem ocorrer a qualquer momento. Assinale dentre as assertivas seguir a unica mudança de estado que NÃO pode acontecer: ESPERA para PRONTO EXECUÇÃO para PRONTO EXECUÇÃO para ESPERA ESPERA para EXECUÇÃO PRONTO para EXECUÇÃO 3a Questão (Ref.: 200712106591) 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 monolítica é a que tem a implementação mais complexa. 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 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. A arquitetura em camadas tem como vantagem o alto desempenho. 4a Questão (Ref.: 200712106608) Pontos: 1,0 / 1,0 A maioria dos autores classifica os sistemas operacionais entre os seguintes tipos: sistemas monotarefa ou multitarefa, sistemas monousuário ou multiusuário, sistemas monoprocessados ou multiprocessados. Em relação a essas classificações, marque a alternativa correta: Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é simultânea. Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. 5a Questão (Ref.: 200712105721) Pontos: 1,0 / 1,0 Um processo divide-se, basicamente, em três partes: contexto de hardware, contexto de software e espaço de endereçamento. Assinale a alternativa que representa exemplos de componentes do contexto de hardware: Endereços de memória principal alocados. PID e UID. Prioridade de execução. Owner. Registrador PC e registrador status. 6a Questão (Ref.: 200712105794) Pontos: 1,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. foreground. CPU-bound. I/O-bound. 7a Questão (Ref.: 200712106651) 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? EXECUÇÃO TERMINADO PRONTO CRIADO ESPERA 8a Questão (Ref.: 200712105391) Pontos: 1,0 / 1,0 Um processo, segundo Machado, é formada por três partes, conhecidas como contexto de hardware, contexto de software e espaço de endereçamento.A figura ilustra, de maneira abstrata, os componentes da estrutura de um processo, que juntos, mantêm todas as informações necessárias a execução de um programa. Sobre os componentes é correto afirmar que: o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, podendo salvá-las caso o processo seja interrompido. o contexto de software armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). o contexto de hardware de um processo é composto por três grupos de informações sobre o processo:identificação, quotas e privilégios. o contexto de hardware mantém informações nos registradores do processador, enquanto um processo está em execução, mas não pode salvá-las caso o processo seja interrompido. o espaço de endereçamento armazena o conteúdo dos registradores gerais da UCP, além dos registradores de uso específico, como program counter(PC), stack pointer (SP) e registrador de status(PSW). 9a Questão (Ref.: 200712105668) 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: 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.: 200712106708) 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
Compartilhar