Documente Academic
Documente Profesional
Documente Cultură
1. Explique a diferença entre endereços lógicos e endereços físicos e as razões que justificam seu
uso.
Os endereços de memória gerados pelo processador na medida em que executa algum código, são chamados
de endereços lógicos, porque correspondem à lógica do programa, mas não são necessariamente iguais aos
endereços reais das instruções e variáveis na memória real do computador, que são chamados de endereços
físicos.
4. O que é troca de contexto? Quais políticas e mecanismos estão envolvidos na troca de contexto?
É o processo computacional de armazenar e restaurar o estado de uma CPU de forma que múltiplos processos
possam compartilhar uma única instância de CPU. É garantido que quando o contexto anterior armazenado
seja restaurado, o ponto de execução volte ao mesmo estado que foi deixado durante o armazenamento.
O estado de um processo inclui todos os registradores que o processo pode estar usando, especialmente o
contador de programa, e qualquer outro dado específico do sistema operacional. A estrutura que armazena
todas essas informações é chamada de bloco de controle de processo. O bloco pode ser armazenado na pilha
de execução do processo na memória do núcleo, ou em algum outro local específico definido pelo sistema
operacional. A seguir é feita a restauração do bloco de controle do processo que irá executar. Com a
atualização do contador de programa, a execução do novo processo pode iniciar.
6. Explique como é feita a translação entre endereços lógicos e físicos e o mecanismo de tratamento
de falta de página em um sistema de memória virtual paginada.
A translação entre endereço logico e físico em um processo com N páginas e realizada a partir de n frames livres
na memória, as páginas são carregadas em qualquer frame livre. A memória física e dividida em blocos
denominados frames com tamanho fixo, a memória logica e dividida em blocos de tamanho fixo denominados
páginas, acontece apenas a verificação da memória física disponível para a alocação do recurso. O mecanismo
de tratamento de falta de página em memória virtual paginada, acontece da seguinte maneira o page fault
handler consulta uma outra estrutura de dados para determinar se a referência é válida, e, em caso
afirmativo, onde se encontra a página. O handler obtém um frame livre. Transfere a página do disco para a
frame.
7. Por que os tamanhos de páginas e quadros possuem o mesmo tamanho?
8. Considere um sistema com endereços físicos e lógicos de 32 bits, que usa tabelas de páginas com três
níveis. Cada nível de tabela de páginas usa 7 bits do endereço lógico, sendo os restantes usados para o
offset. Cada entrada das tabelas de páginas ocupa 32 bits. Calcule, indicando seu raciocínio:
a) O tamanho das páginas e quadros, em bytes.
10. Explique o que é, para que serve e o que contém um PCB ‐ Process Control Block.
PCB é uma estrutura de dados que serve para armazenar as informações relativas ao contexto e os demais
dados necessários à gerencia de uma tarefa presente no sistema. Ele serve também para que seja efetuada a
Troca de Contexto o que é: interromper a execução de uma tarefa e retornar a ela mais tarde, sem corromper
seu estado interno. Um TCB tipicamente contém as seguintes informações:
Identificador da tarefa (pode ser um número inteiro, um apontador, uma referência de objeto ou um
identificador opaco);
Estado da tarefa (nova, pronta, executando, suspensa, terminada);
Informações de contexto do processador (valores contidos nos registradores);
Lista de áreas de memória usadas pela tarefa;
Lista de arquivos abertos, conexões de rede e outros recursos usados pela tarefa (exclusivos ou
compartilhados com outras tarefas);
Informações de gerência e contabilização (prioridade, usuário proprietário, data de início, tempo de
processamento já decorrido, volume de dados lidos/escritos, etc.).
11. Por que é necessário limpar o cache TLB após cada troca de contexto entre processos? Por que isso não é
necessário nas trocas de contexto entre threads?
12. Explique o que é fragmentação externa. Quais formas de alocação de memória estão livres desse
problema?
Fragmentação externa: entre processos.
14. Para que serve o registrador PTBR e qual sua relação com o TCB de uma tarefa?
16. Explique o princípio da localidade de referências: Localidade temporal, localidade espacial e localidade
sequencial.
19. Como é feito a escolha para substituição de uma página na memória RAM? Explique o algoritmo FIFO,
OPT, LRU, Algoritmo de segunda chance, NRU e o algoritmo de envelhecimento.
20. Explique o que é fragmentação interna. Quais formas de alocação de memória estão livres desse
problema?
24. O que é uma falta de página? Quais são suas causas possíveis e como o sistema operacional deve tratá‐
las?
25. Ao dividir a memória em blocos de tamanho fixo (quadros) e dividir a memória lógica (espaço de
endereçamento de processos) em blocos do mesmo tamanho (páginas) e permitir que as páginas sejam
carregadas em quaisquer quadros disponíveis, estaremos implementando a) Memória Virtual
b) Journaling
c) Paginação de Memória
d) Enquadramento de memória