Buscar

Exercicios

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 7 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 7 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

Aula 01 
 1
a
 Questão (Ref.: 201201226739) Fórum de Dúvidas (0) Saiba (0) 
 
O que é multiprogramação? 
 
 Processamento centralizado. 
 Processamento distribuído. 
 Técnica que permite que vários processos estejam em memória ao mesmo tempo. 
 Técnica que permite a troca de informações entre a memória principal e a memória secundária. 
 Processamento paralelo. 
 
 2
a
 Questão (Ref.: 201201441712) Fórum de Dúvidas (0) Saiba (0) 
Em relação às estruturas dos sistemas operacionais modernos, podemos afirmar que: 
I - O conceito de microkernel é de reduzir o kernel a comunicações de processos básicos e controle 
de I/O, e deixar os outros serviços de sistemas situados no user-space (espaço do usuário) em forma 
de processos normais (chamados de servers). 
II - O kernel monolítico executa cada serviço básico do sistema como gerenciamento de memória, 
manipulação de interrupções e comunicação I/O, sistemas de arquivos, no espaço do kernel. 
III - Na estrutura do microkernel tanto o núcleo como como os demais serviços são executados em 
modo kernel. 
IV - No kernel monolítico o sistema operacional é escrito como uma coleção de rotinas, ligadas a 
um único grande programa binário executável. 
Assinale a alternativa que contém a(s) afirmação(ões) correta(s): 
 
 Somente I, II e III 
 Somente I, II e IV 
 Somente I, III e IV 
 Somente I e III 
 Somente II, III e IV 
 
 3
a
 Questão (Ref.: 201201228344) Fórum de Dúvidas (0) Saiba (0) 
 
 
 
Qual instrução não precisa ser executada em modo privilegiado? 
 
 Desativar interrupções por tempo 
 Limpar memória 
 Obter a hora corrente 
 Ativar interrupções por tempo 
 Iniciar um processo 
 
 
 4
a
 Questão (Ref.: 201201226745) Fórum de Dúvidas (0) Saiba (0) 
 
Quais das instruções só podem ser executadas pelo kernel de um sistema operacional: I ¿ Desabilitar 
todas as interrupções II ¿ Ler o horário do relógio III ¿ Alterar o horário do relógio IV ¿ Alterar o 
mapa de memória 
 
 III e IV 
 I, II e IV 
 I, II e III 
 I, III e IV 
 II 
 
 
 5
a
 Questão (Ref.: 201201222281) Fórum de Dúvidas (0) Saiba (0) 
 
Marque a alternativa INCORRETA em relação ao conceito de sistemas operacionais: 
 
 Atua como uma interface entre o usuário e o computador. 
 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. 
 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. 
 
 6
a
 Questão (Ref.: 201201226730) Fórum de Dúvidas (0) Saiba (0) 
 
 
A CITAÇÃO " Principalmente usado em controle de processos, telecomunicações, etc. O SO 
monitora várias entradas que afetam a execução de processos, mudando os modelos de 
computadores do ambiente, e assim afetando as saídas, dentro de um período de tempo garantido 
(normalmente < 1 segundo)". REFERE-SE A: 
 
 MULPROCESSADOR 
 MULTITAREFA 
 TIME SHERING 
 INTERATIVO 
 TEMPO REAL 
 
 
Aula 02 
1. 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 "execução"? 
R: Não. O processo passa para o estado "pronto" e aguarda até que o sistema 
operacional o selecione para execução. 
 
2. Os sistemas operacionais criam estruturas de controle, chamadas processo, para 
controlar a execução dos programas, sejam do usuário ou do próprio sistema. 
Essa estrutura registra informações sobre a situação do processo durante todo 
seu processamento, sendo uma dessas informações o estado do processo. 
Avalie as sentenças a seguir e assinale a correto: 
R: O escalonador organiza a fila de processos em estado de PRONTO. Para 
escalonadores preemptivos existe a possibilidade de determinar uma fatia de 
tempo (time slice) para que o processo se mantenha em estado de EXECUÇÃO, 
após esse tempo o processo retorna para a fila de PRONTO. 
 
3. À instância de um programa em execução chamamos processo. Cada processo 
no sistema pode estar em algum de seus estados em certo momento. Um 
processo no estado executando passa para o estado pronto, quando: 
R: ocorre quando o processo é interrompido e novo processo será selecionado 
 
4. 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: 
R: Background. 
 
5. 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"? 
R: Não. O processo passa para o estado "pronto" e aguarda até que o sistema 
operacional o selecione para execução. 
 
6. Para melhor análise do desempenho dos processos com os diferentes tipos de 
escalonamento existentes, os processos são classificados em dois tipos: CPU-
bound e I/O-bound. Com esse conceito definido podemos afirmar que: 
 R: Os processos CPU-bound levam vantagem em escalonamentos feitos com o 
 mecanismo de preempção por tempo, enquanto os processos I/O-bound se 
 beneficiam através de mecanismos de prioridade dinâmica. 
Aula 03 
1. Threads são fluxos de execução distintos dentro de um mesmo processo. Assinale a 
afirmativa que NÃO está de acordo com o conceito de threads. 
R: Fornecem a interface entre os processos e o sistema operacional sendo um 
mecanismo de proteção ao núcleo. 
2. 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. 
R: 1.V - 2.F - 3.V 
3. Uma alternativa para o aumento de desempenho de sistemas computacionais é o uso de 
processadores com múltiplos núcleos, chamados multicores. Nesses sistemas, cada 
núcleo, normalmente, tem as funcionalidades completas de um processador, já sendo 
comuns, atualmente, configurações com 2, 4 ou mais núcleos. Com relação ao uso de 
processadores multicores, e sabendo que threads são estruturasde execução associadas 
a um processo, que compartilham suas áreas de código e dados, mas mantêm contextos 
independentes, analise as seguintes asserções: 
Ao dividirem suas atividades em múltiplas threads que podem ser executadas 
paralelamente, aplicações podem se beneficiar mais efetivamente dos diversos núcleos 
dos processadores multicores. 
PORQUE 
O sistema operacional nos processadores multicores pode alocar os núcleos existentes 
para executar simultaneamente diversas sequências de código, sobrepondo suas 
execuções e, normalmente, reduzindo o tempo de resposta das aplicações às quais estão 
associadas. 
Acerca dessas asserções, assinale a opção correta. 
R: As duas asserções são proposições verdadeiras, e a segunda é uma justificativa 
correta da primeira. 
 
4. Threads são fluxos de execução distintos dentro de um mesmo processo. É a unidade de 
execução de um sistema. Qual das afirmativas abaixo não estão de acordo com o 
conceito de threads ? 
R: Fornecem a interface entre os processos e o sistema operacional sendo um 
mecanismo de proteção ao núcleo. 
 
5. Considere uma aplicação baseada em threads em um sistema operacional com suporte a 
threads de kernel. Se uma das threads desta aplicação for bloqueada para aguardar um 
acesso ao disco podemos afirmar que as demais threads deste processo: 
R: Poderão continuar executando se não dependerem da thread que foi bloqueada. 
6. Uma das diferenças entre threads em modo usuário e threads em modo kernel é: 
 R: A thread em modo kernel é escalonada diretamente pelo sistema operacional e a de 
 usuário não. 
Aula 04 
1. Em programação concorrente, quando um processo nunca é executado ("morre de 
fome"), pois processos de prioridade maior sempre o impedem de ser executado, diante 
desta situação podemos concluir que ocorreu: 
R: Starvation 
2. Considere as seguintes afirmativas relativas à ocorrência de "deadlocks" (ou impasses). 
I. A estratégia de tratamento de "deadlocks" conhecida como detecção requer que se 
determine uma condição suficiente a que eles ocorram. Uma vez determinada a 
condição, o tratamento por detecção consiste em verificar sua validade e, em caso 
afirmativo, concluir que existe um "deadlock". 
II. As estratégias conhecidas como prevenção e detecção para o tratamento de 
"deadlocks" são complementares uma à outra: Enquanto a primeira guia o projeto dos 
algoritmos de compartilhamento de recursos para que "deadlocks" jamais ocorram, a 
segunda trata de impedir que ocorram quaisquer condições necessárias à ocorrência de 
"deadlocks". 
III. Para que ocorra um "deadlock" é necessário que haja um ciclo de espera envolvendo 
um determinado conjunto de processos. Uma estratégia comum de prevenção é a 
criação de algoritmos de compartilhamento de recursos que impeçam a ocorrência 
desses ciclos. 
Assinale a alternativa CORRETA: 
R: Apenas as afirmativas I e III são verdadeiras. 
3. 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. 
R: Threads possuem contexto simplificado. 
 
4. Analise o texto a seguir: 
 
"Preciso de canetas e apagador para a aula. Peguei as canetas, mas parei para conversar 
um pouco. Ao tentar pegar o apagador fiquei sabendo que outro professor pegou o 
apagador para um reunião não programada e aguardava a caneta que não estava mais 
sobre a mesa para começar a reunião. 
Fiquei esperando que o apagador fosse devolvido e, como isso não aonteceu, resolvi 
guardar as canetas para a segunda aula e continuar aguardando o apagador. 
Fiquei sabendo que o outro professor também não começou a reunião pois ficou 
aguardando as canetas e também resolveu aguardar." 
Nesta situação pode-se identificar a ocorrência de: 
R: Um deadlock em função da exclusão mútua no acesso aos dois recursos 
 
5. Em programação concorrente existe uma condição na qual um processo nunca é 
executado, pois processos de prioridade maior sempre são executados antes. Assinale a 
assertiva que descreve o nome desta condição: 
R: Starvation 
 
6. Starvation é uma situação que ocorre quando: 
R: Pelo menos um processo é continuamente postergado e não executa. 
Aula 05 
1. O problema do buffer limitado de tamanho N é um problema clássico de sincronização 
de processos: um grupo de processos utiliza um buffer de tamanho N para armazenar 
temporariamente itens produzidos; processos produtores produzem os itens, um a um, e 
os armazenam no buffer; processos consumidores retiram os itens do buffer, um a um, 
para processamento. O problema do buffer limitado de tamanho N pode ser resolvido 
com a utilização de semáforos, que são mecanismos de software para controle de 
concorrência entre processos. Duas operações são definidas para um semáforo s: wait(s) 
e signal(s). 
Considere o problema do buffer limitado de tamanho N cujos pseudocódigos dos 
processos produtor e consumidor estão mostrados na tabela abaixo. Pode-se resolver 
esse problema com a utilização dos semáforos mutex, cheio e vazio, inicializados, 
respectivamente, com 1, 0 e N. 
 
 
A partir dessas informações, para que o problema do buffer limitado de tamanho N 
cujos pseudocódigos foram apresentados possa ser resolvido a partir do uso dos 
semáforos mutex, cheio e vazio, é necessário que comando_a, comando_b, comando_c, 
comando_d, comando_e, comando_f, comando_g e comando_h correspondam, 
respectivamente, às operações? 
R: wait(vazio), wait(mutex), signal(mutex), signal(cheio), wait(cheio), wait(mutex), 
signal(mutex) e signal(vazio). 
 
2. 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. 
R: Instrução test-and-set. 
 
3. No contexto de processos, como pode ocorrer uma condição de corrida? 
R: 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. 
 
4. 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: 
R: Exclusão mútua, espera por recurso e não-preempção. 
 
5. Diversos conceitos são fundamentais para que se implemente concorrência entre 
processos. Região Crítica é um desses conceitos, que pode ser melhor definido como 
sendo: 
R: Um trecho de programa onde existe o compartilhamento de algum recurso que não 
permite o acesso concomitante por mais de um processo 
 
6. No âmbito de sistemas operacionais, uma seção ou região crítica é a: 
R: parte do programa que acessa dados compartilhados.

Outros materiais