Você está na página 1de 4

Exercício de apoio - Semana 4: SISTEMAS OPERACIONAIS - EEO001 https://cursos.univesp.br/courses/3197/pages/exercicio-de-apoio-sema...

Apenas para praticar. Não vale nota.

1. Leia o texto a seguir que trata da definição do problema: O Jantar dos Filósofos, criado no
ano de 1965 por Dijkstra, que é descrito e ilustrado abaixo:

Figura 1. Jantar com cinco filósofos.

Cinco filósofos estão sentados em uma mesa circular (veja a Figura 1). Cada filósofo
tem um prato de espaguete. O espaguete está tão escorregadio que um filósofo
precisa de dois garfos para comê-lo. Entre cada par de pratos está um garfo. Os
filósofos alternam-se entre comer e pensar.

Explique em que situação poderia ocorrer inanição no problema do Jantar dos Filósofos?

A inanição poderá ocorrer caso todos os cinco filósofos decidam pegar o garfo esquerdo ao
mesmo tempo e subsequentemente tentem pegar o garfo direito, após um intervalo fixo de
tempo. Como o garfo direito encontra-se ocupado, todos os filósofos colocam de volta o
garfo esquerdo.
Depois de um mesmo intervalo fixo de tempo, todos os filósofos tentar pegar o garfo
esquerdo e depois o direito; e assim por diante. Como nesta situação, nenhum filósofo vai
conseguir comer, diz-se que ocorrerá um problema denominado inanição.

2. Dê um exemplo de um impasse no trânsito e cite uma solução para prevenir-se deste


impasse.

Um exemplo de impasse no trânsito é a presença de dois veículos em um cruzamento


(interseção), de forma que nenhum dos dois condutores possa avançar no seu percurso.

1 of 4 04/11/2020 21:24
Exercício de apoio - Semana 4: SISTEMAS OPERACIONAIS - EEO001 https://cursos.univesp.br/courses/3197/pages/exercicio-de-apoio-sema...

Uma solução para prevenir este impasse é fazer com que cada veículo atravesse o
cruzamento (interseção) entre as vias, apenas quando houver espaço após o cruzamento
das vias. Desta forma evitam-se os impasses e os bloqueios das vias.

3. Um sistema tem dois processos e três recursos idênticos. Cada processo precisa de no
máximo dois recursos. É possível ocorrer deadlocks (sim/não)? Justifique a sua resposta.

Não. Isso porque se cada processo tiver um recurso, então existirá um recurso livre. Se
qualquer processo pedir um outro recurso, ele poderá obtê-lo. Neste cenário, os processos
poderão terminar e liberar ambos os recursos, sem que haja um impasse no sistema.

4. Um sistema tem quatro processos e cinco recursos alocáveis. A alocação atual e as


necessidades máximas são as seguintes:

alocado máximo disponível

Processo A 10211 11212 00X11

Processo B 20110 22210

Processo C 11010 21310

Processo D 11110 11221

Qual é o menor valor de x para que esse estado seja seguro? Justifique o valor apontado. O
menor valor de x é [ ]?

O menor valor é 2. Se x é 0, temos um impasse imediatamente. Se x é 1, o processo D pode


executar até o seu término, porém quando D terminar, o sistema estará em um impasse. Se
x é 2, D pode executar e após o seu término, o vetor disponível será 1 1 3 2 1; e C pode ser
executado. Depois do término de C, ele retornará os seus recursos e o vetor disponível será
2 2 3 3 1, o que permitirá B executar até o seu término.

5. A condição de exclusão mútua, em que um recurso ou está associado a um único processo


ou está disponível, é suficiente para garantir as ocorrências de deadlocks.

a. Verdadeiro
b. Falso

A alternativa correta é:
b. Falso

6. Monitores e semáforos são estratégias usadas para garantir acesso adequado às regiões
com recursos compartilhados em um sistema operacional. Ambas apresentam a mesma
funcionalidade e o mesmo custo computacional quando implementadas.

a. Certo
b. Errado

2 of 4 04/11/2020 21:24
Exercício de apoio - Semana 4: SISTEMAS OPERACIONAIS - EEO001 https://cursos.univesp.br/courses/3197/pages/exercicio-de-apoio-sema...

A alternativa correta é:
b. Errado

7. O conceito de semáforo foi proposto por Dijkstra e mostra, de forma simples, como
implementar alguns mecanismos entre processos. Escolha a opção correta:

a. Os semáforos binários (mutexes) podem assumir qualquer valor inteiro positivo.


b. Semáforo é uma variável inteira e não negativa, que pode manipular mais de duas
instruções simultaneamente.
c. Instrução down executada com valor 0 faz o processo entrar no estado de espera.
d. Um semáforo pode assumir valores negativos.
e. Uma vez que trabalham com a conexão lógica OR, os semáforos são incapazes de
implementar exclusão mútua devido à mudança requerida nesse tipo de controle.

A alternativa correta é:
c. Instrução down executada com valor 0 faz o processo entrar no estado de espera.

8. Os semáforos são usados em sistemas operacionais para evitar que dois ou mais processos
acessem sua seção crítica simultaneamente. Assim, os semáforos são usados para garantir:

a. A exclusão mútua, de forma que cada processo deverá sinalizar imediatamente


antes e usar um recurso comum a ambos imediatamente após.
b. Os pipes, que funcionam ligando a saída de um processo com a entrada de outro.
c. O PID, a identificação única de cada processo.
d. Que haverá deadlock, ou seja, quando um processo espera indefinidamente por um
recurso de outro.
e. Que a máquina virtual gerencie os processos do Sistema Operacional e o hardware
da máquina corretamente.

A alternativa correta é:
a. A exclusão mútua, de forma que cada processo deverá sinalizar imediatamente antes e
usar um recurso comum a ambos imediatamente após.

9. No gerenciamento de processos em SO, há uma estrutura de dados responsável por


habilitar o sistema operacional a localizar e acessar rapidamente o Bloco de Controle de
Processo (PCB) de um processo. Essa estrutura denomina-se:

a. Tabela de Processos.
b. Lista de Processos.
c. Pilha de Processos.
d. Árvore de Processos.
e. Grafo de Processos.

A alternativa correta é:
a. Tabela de Processos.

10. Deadlock é um dos problemas relacionados ao gerenciamento de recursos em um SO. Esse

3 of 4 04/11/2020 21:24
Exercício de apoio - Semana 4: SISTEMAS OPERACIONAIS - EEO001 https://cursos.univesp.br/courses/3197/pages/exercicio-de-apoio-sema...

problema pode ocorrer, por exemplo, na seguinte situação: um processo (A) deseja um
recurso que esteja com outro processo (B). O processo (B) não libera o recurso e o processo
(A) não prossegue com sua execução, pois não consegue obter o recurso do processo (B).
Gerenciar o deadlock pode ser uma tarefa custosa para o processador, de modo que os SOs
em geral não tratam desse problema. Em alguns sistemas críticos, entretanto, tratar os
deadlocks é uma tarefa importante. Qual entre as formas de tratamento a seguir se baseia
em retirar o recurso do processo?

a. Eliminar o processo.
b. Reversão do estado do processo.
c. Por meio de preempção.
d. Verificar o trace do processo.
e. Suspender o processo.

A alternativa correta é:
c. Por meio de preempção.

4 of 4 04/11/2020 21:24

Você também pode gostar