Buscar

SIMULADO SISTEMAS OPERACIONAIS - 15-10-2014

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1a Questão (Ref.: 201201931278) 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 
 Somente II 
 
Todas são verdadeiras 
 Somente III 
 
Somente I e III 
 Gabarito Comentado. 
 
 
 
 
 2a Questão (Ref.: 201201932503) 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 : 
 
 
 
o gráfico 1 representa um processo de I/O bound e o gráfico 2 representra um processo 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. 
 tanto o gráfico 1 quanto o gráfico 2 representam processos 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 I/O bound. 
 
 
 
 3a Questão (Ref.: 201201931342) 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. 
 
É 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. 
 
 
 
 4a Questão (Ref.: 201201931261) Pontos: 0,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: 
 
 
PRONTO para EXECUÇÃO 
 ESPERA para EXECUÇÃO 
 EXECUÇÃO para ESPERA 
 
ESPERA para PRONTO 
 
EXECUÇÃO para PRONTO 
 Gabarito Comentado. 
 
 
 
 
 5a Questão (Ref.: 201201931319) Pontos: 1,0 / 1,0 
Deadlock pode ser definido como uma situação em que um processo aguarda por um recurso que nunca estará 
disponível ou um evento que nunca ocorrerá. Para que ocorra a situação de deadlock, algumas condições são 
necessárias simultaneamente. Assinale alternativa que contém todas essas condições: 
 
 
Exclusão mútua e não-preempção. 
 Exclusão mútua, espera por recurso e não-preempção. 
 
Espera por recurso e não-preempção. 
 
Exclusão mútua e espera por recurso. 
 
Não-preempção. 
 
 
 
 6a Questão (Ref.: 201201931311) 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 multiprocessado não é necessariamente um sistema multitarefa. 
 Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. 
 
Um sistema operacional multitarefa é necessariamente um sistema multiprocessado. 
 Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. 
 
Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é 
simultânea. 
 
 
 
 7a Questão (Ref.: 201201931297) Pontos: 0,0 / 1,0 
Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais: 
 
 
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. 
 É impossível fazer uso de um computador que não tenha um sistema operacional instalado. 
 
Atua como uma interface entre o usuário e o computador. 
 
Um sistema operacional deve facilitar acesso aos recursos do sistema, assim como compartilhá-los de 
forma organizada e protegida. 
 Um sistema operacional é responsável por gerenciar os recursos computacionais. 
 
 
 
 8a Questão (Ref.: 201201932220) Pontos: 0,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 7 
 
Windows Vista 
 
Windows XP 
 MINIX 
 
Linux 
 Gabarito Comentado. 
 
 
 
 
 9a Questão (Ref.: 201201932251) 
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: a 
 
 
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.: 201201931211) 
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: a 
 
 
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çãorealizada 
pelo primeiro caixa terá sido ignorada. 
 
 1a Questão (Ref.: 201201932528) Pontos: 0,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 de um processo é composto por três grupos de informações sobre o 
processo:identificação, quotas e privilégios. 
 
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 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 mantém informações nos registradores do processador, enquanto um processo 
está em execução, podendo 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). 
 Gabarito Comentado. 
 
 
 
 
 2a Questão (Ref.: 201201931328) 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 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. 
 
Na arquitetura monolítica, caso um serviço pare, o kernel não é comprometido, já que a principal função 
do núcleo é gerenciar a comunicação (troca de mensagens) entre as aplicações e os serviços. 
 
A arquitetura monolítica é a que tem a implementação mais complexa. 
 
 
 
 3a Questão (Ref.: 201201932220) Pontos: 0,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 XP 
 
Windows 7 
 
Windows Vista 
 
Linux 
 MINIX 
 Gabarito Comentado. 
 
 
 
 
 4a Questão (Ref.: 201201932136) Pontos: 0,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 
iguais. 
 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á 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). 
 
 
 
 5a Questão (Ref.: 201201932125) 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. 
 background. 
 
foreground. 
 
monotarefa. 
 
CPU-bound. 
 
 
 
 6a Questão (Ref.: 201201932609) 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, IV e V apenas 
 
I e III, apenas 
 
I e II, apenas 
 
II e III, apenas 
 
II, III e IV, apenas 
 Gabarito Comentado. 
 
 
 
 
 7a Questão (Ref.: 201201931268) Pontos: 0,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? 
 
 ESPERA 
 
CRIADO 
 
TERMINADO 
 
EXECUÇÃO 
 PRONTO 
 
 
 
 8a Questão (Ref.: 201201932190) Pontos: 0,0 / 1,0 
Para evitar os problemas causados pelo compartilhamento de recursos entre processos executados de forma 
concorrente foram propostos mecanismos de exclusão mútua. Os mecanismos de exclusão mútua são 
classificados entre soluções de hardware e soluções de software. Das alternativas abaixo, marque a unica que 
apresenta uma solução de HARDWARE para o problema da exclusão mútua. 
 
 Algoritmo de Peterson. 
 
Algoritmo de Dekker. 
 Instrução test-and-set. 
 
Segundo algoritmo 
 
Primeiro algoritmo 
 
 
 
 9a Questão (Ref.: 201201932251) 
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: a 
 
 
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.: 201201931211) 
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: a 
 
 
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. 
 
 1a Questão (Ref.: 201201931278) 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 I 
 
Somente II 
 Somente III 
 
Todas são verdadeiras 
 Gabarito Comentado. 
 
 
 
 
 2a Questão (Ref.: 201201932503) 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 CPU-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 I/O bound. 
 
 
 
 3a Questão (Ref.: 201201932220) Pontos: 0,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 
 
Windows 7 
 MINIX 
 
Linux 
 
Windows XP 
 Gabarito Comentado. 
 
 
 
 
 4a Questão (Ref.: 201201931342) 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. 
 Exceções partem de eventos síncronos e previsíveis. 
 
É através das exceções que o sistema operacional sincroniza diferentes atividades, como rotinas, 
programas dos usuários e dispositivos. 
 
Uma exceção independe da instrução que está sendo executada, pois é sempre gerada por algum 
evento externo ao programa. 
 
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. 
 
 
 
 5a Questão (Ref.: 201201931261) Pontos: 0,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 
 ESPERA para EXECUÇÃO 
 
EXECUÇÃO para ESPERA 
 
PRONTO para EXECUÇÃO 
 Gabarito Comentado. 
 
 
 
 
 6a Questão (Ref.: 201201931319) Pontos: 0,0 / 1,0 
Deadlock pode ser definido como uma situação em que um processo aguarda por um recurso que nunca estará 
disponível ou um evento que nunca ocorrerá. Para que ocorra a situação de deadlock, algumas condições são 
necessárias simultaneamente. Assinale alternativa que contém todas essas condições: 
 
 
Espera por recurso e não-preempção. 
 Não-preempção. 
 Exclusão mútua, espera por recurso e não-preempção. 
 
Exclusão mútua e espera por recurso. 
 
Exclusão mútua e não-preempção. 
 
 
 
 7a Questão (Ref.: 201201931311) 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. 
 Um sistema operacional multiprocessado não é necessariamente um sistema multitarefa. 
 
Todo sistema operacional multitarefa é necessariamente um sistema multiusuário. 
 
Em sistemas operacionais multitarefa monoprocessados a execução de diferentes programas é 
simultânea. 
 Todo sistema operacional multiusuário é ao mesmo tempo um sistema multitarefa. 
 
 
 
 8a Questão (Ref.: 201201931297) Pontos: 0,0 / 1,0 
Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais: 
 
 Atua como uma interface entre o usuário e o computador. 
 
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. 
 
Um sistema operacional é responsável por gerenciar os recursos computacionais. 
 
Um sistema operacional deve facilitar acesso aos recursos do sistema, assim como compartilhá-los de 
forma organizada e protegida. 
 É impossível fazer uso de um computador que não tenha um sistema operacional instalado. 
 
 
 
 9a Questão (Ref.: 201201932251) 
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: a 
 
 
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.: 201201931211) 
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 compartilhadoentre 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: a 
 
 
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.

Outros materiais