Buscar

BDQ PROVA SISTEMAS OPERACIONAIS

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

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

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ê viu 3, do total de 4 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

Prévia do material em texto

Avaliação: CCT0166_AV_201301839094 (AG) » SISTEMAS OPERACIONAIS
Tipo de Avaliação: AV
Aluno: 201301839094 - OSMAR ENEIAS MACHADO
Professor: MAURO CESAR CANTARINO GIL Turma: 9001/AA
Nota da Prova: 6,0 Nota de Partic.: 1 Data: 18/11/2015 14:17:03
1a Questão (Ref.: 201302612514) Pontos: 1,5 / 1,5
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.
Resposta: teria de desmenbrar o B e o D deixando fora da thread.
Gabarito: 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", "D" e "X" devem ficar fora dos trheads.
2a Questão (Ref.: 201301985198) Pontos: 0,5 / 1,5
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?
Resposta: escalonador controla a fatia de tempo
Gabarito: 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.
BDQ Prova http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp
1 de 4 25/11/2015 07:41
3a Questão (Ref.: 201302629047) Pontos: 0,5 / 0,5
Em relação aos tipos de Sistemas Operacionais, marque qual opção N Ã O faz sentido.
Sistemas Multiusuários e Multitarefas
Sistemas Multitarefas com Múltiplos usuários
Sistemas Monousuário e Multitarefas
Sistemas Monousuários e Monotarefas
Sistemas Monotarefas com mais de um usuário
4a Questão (Ref.: 201302616192) Pontos: 0,5 / 0,5
Escolha qual transição NÃO pode ocorrer entre estados de um processo:
De Bloqueado para Em Execução
De Em Execução para Bloqueado
De Em Execução para Pronto
De Bloqueado para Pronto
De Pronto para Em Execução
5a Questão (Ref.: 201302593533) Pontos: 0,0 / 0,5
Sabe-se que cada processo tem seu próprio contexto de software, contexto de hardware e espaço de
endereçamento. Threads de um mesmo processo compartilham o mesmo contexto de software e espaço de
endereçamento, apesar de terem contexto de hardware próprio. De acordo com as afirmações, marque a
alternativa correta.
O uso de threads diminui o desempenho, pois durante a interrupção de um thread é necessário salvar o
contexto de hardware, de software e espaço de endereçamento.
O uso de threads representa ganhos em termos de desempenho, pois durante a interrupção de um thread
apenas o contexto de hardware precisa ser salvo, já que o contexto de software e o espaço de
endereçamento são os mesmos entre os vários threads
O uso de threads representa ganhos em termo de desempenho, pois durante a interrupção de um thread
apenas o contexto de software precisa ser salvo, já que o contexto de hardware e o espaço de
endereçamento são os mesmos entre os vários threads.
O uso de threads não influencia no desempenho, pois durante a interrupção de um thread é necessário
salvar o contexto de hardware, de software e espaço de endereçamento
O uso de threads representa ganhos em termos de desempenho, pois durante a interrupção de um thread
apenas o espaço de endereçamento precisa ser salvo, já que o contexto de software e de hardware são os
mesmos entre os vários threads
6a Questão (Ref.: 201302495877) Pontos: 0,0 / 0,5
Sobre a ocorrência de impasses (deadlocks), marque a afirmativa correta.
Uma vez ocorrido o impasse, não há algoritmos que permitam detectá-lo, o que sempre leva ao travamento
do sistema, forçando o usuário a reinicializá-lo.
Uma abordagem utilizada para se lidar com impasses é simplesmente ignorar o fato de que possam ocorrer.
O bloqueio em duas fases é uma estratégia especializada de prevenção de impasses que é aplicada em
sistemas de tempo real.
A ocorrência de impasses depende do número de recursos e do número de processos envolvidos no
procedimento.
BDQ Prova http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp
2 de 4 25/11/2015 07:41
Pode-se evitar o impasse estabelecendo-se uma cadeia de espera circular, na qual um processo só pode
aguardar o recurso mantido pelo seguinte.
7a Questão (Ref.: 201302150860) Pontos: 0,5 / 0,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:
Um trecho de programa onde existe algum recurso a que somente o sistema operacional pode ter acesso
Um trecho de programa que deve ser executado em paralelo com a Região Crítica de outro programa
Um trecho de programa onde existe algum recurso cujo acesso é dado por uma prioridade
Um trecho de programa cujas instruções podem ser executadas em paralelo e em qualquer ordem
Um trecho de programa onde existe o compartilhamento de algum recurso que não permite o acesso
concomitante por mais de um programa
8a Questão (Ref.: 201301954733) Pontos: 0,5 / 0,5
Você é um engenheiro de sistemas e está projetando um sistema operacional. No seu projeto você contemplou uma
arquitera 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
First-In-First-Out (FIFO)
Circular
Por Prioridade
Shortest-Job-First (SJF)
9a Questão (Ref.: 201302153793) Pontos: 1,0 / 1,0
Com relação ao gerenciamento de memória com paginação em sistemas operacionais, assinale a opção correta.
Todas as páginas de um processo em execução devem ser mantidas na memória física enquanto o processo
não tiver terminado.
As páginas utilizadas por um processo, sejam de código ou de dados, devem ser obrigatoriamente
armazenadas na partição de swap do disco, quando o processo não estiver sendo executado.
Um processo somente pode ser iniciado se o sistema operacional conseguir alocar todas as páginas de
código desse processo.
O espaço de endereçamento virtual disponível para os processos pode ser maior que a memória física
disponível.
Um processo somente pode ser iniciado se o sistema operacional conseguir alocar um bloco contíguo de
páginas do tamanho da memória necessária para execução do processo.
10a Questão (Ref.: 201302189851) 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 separar as operações de entrada das operações de saída de dados.
BDQ Prova http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp
3 de 4 25/11/2015 07:41
Porque permite evitar o uso de DMA para a operação 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 características de hardware de características funcionais do dispositivo de
entrada/saída.
Porque permite o compartilhamento dos dispositivos de entrada/saída através do gerenciamento de
entrada/saída.
Período de não visualização da prova: desde 12/11/2015 até 24/11/2015.
BDQ Prova http://bquestoes.estacio.br/bdq_prova_resultado_preview_aluno.asp
4 de 4 25/11/2015 07:41

Outros materiais