Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

1) (1 ponto) ​Considere um sistema multiprogramado com grau de 6 (isto é, seis 
programas na memória ao mesmo tempo). Presuma que cada processo 
passa 40% do seu tempo esperando pelo dispositivo de E/S. Qual será a 
utilização da CPU? 
 
2) (1 ponto) ​Quantas mensagens “Hello World” serão exibidas a partir do 
programa abaixo? Justifique sua resposta. 
 
 
 
3) (1 ponto) ​Um dos principais problemas em se utilizar threads implementadas 
no espaço de usuário são as chamadas bloqueantes. O que acontece em um 
 
Instituto Federal de Brasília 
Campus Taguatinga 
Superior em Computação  
 
Atividade Avaliativa 2 
Gerenciamento de Processos 
 
Sistemas Operacionais - 2/2020 
Professor João Victor de A. Oliveira 
 
 
processo quando uma de suas threads realiza uma chamada de sistema 
bloqueante? Cite duas possíveis soluções para esse problema. 
 
4) (2 pontos) ​O jogo Super ​Mario Kart ​(Figura abaixo) de 1992, desenvolvido e 
publicado pela ​Nintendo​® ​é um jogo de corrida que se diferencia dos demais 
pela possibilidade de usar itens e atalhos durante a competição, seja para 
atrapalhar ou obter vantagens em relação a seus oponentes. O jogo, em uma 
visão minimalista de uma única fase, poderia ser implementado com os 
seguintes subsistemas: 
 
 
a. Jogador: controlado por um ser humano a partir de um controle de 
videogame (entrada), sendo suas ações impressas na parte superior 
da tela (saída); 
b. 7 oponentes: ​controlados por algum algoritmo de inteligência artificial, 
que deve, através da observação do que acontece no jogo, agirem de 
modo a vencer a partida; 
c. Gerenciador de corrida: responsável por coletar informações sobre 
tempo da volta, vidas, quantidades de moedas coletadas, item 
coletado e a localização em tempo real do jogador e seus adversários 
no mapa (parte inferior da tela); 
 
 
d. Renderizador de vídeo: ​Responsável por atualizar a tela do jogo a 
cada 1/30 segundos, exibindo informações coletadas pelo gerenciador 
de corrida. 
 
Descreva como poderia ser implementado este jogo (versão minimalista de 
uma única fase com os subsistemas citados acima) usando threads de modo 
eficiente. 
 
5) (2 pontos) ​No problema do jantar dos filósofos, deixe o protocolo a seguir ser 
usado: um filósofo de número par sempre pega o seu garfo esquerdo antes 
de pegar o direito; um filósofo de número ímpar sempre pega o garfo direito 
antes de pegar o esquerdo. Esse protocolo vai garantir uma operação sem 
impasse? 
 
 
Jantar dos filósofos 
 
6) (1 ponto) ​A solução de espera ocupada usando a variável turn, funciona 
quando os dois processos estão executando em um multiprocessador de 
memória compartilhada, isto é, duas CPUs compartilhando uma memória 
comum? 
 
7) (1 ponto) ​Escalonadores circulares em geral mantêm uma lista de todos os 
processos executáveis, com cada processo ocorrendo exatamente uma vez 
na lista. O que aconteceria se um processo ocorresse duas vezes? Você 
consegue pensar em qualquer razão para permitir isso? 
 
 
 
8) (1 ponto) ​O algoritmo de envelhecimento com a=½ está sendo usado para 
prever tempos de execução. As quatro execuções anteriores, da mais antiga 
à mais recente, são 40, 20, 40 e 15 ms. Qual a previsão para o próximo 
tempo? 
 
Bons estudos!

Mais conteúdos dessa disciplina