Trabalho S O
Conteúdos
a) O que são tabelas invertidas? Uma tabela invertida é uma estrutura de dados global que vai englobar todos os processos.
b) Qual é sua estrutura e funcionamento?
Em sua forma mais simples, uma tabela invertida vai conter uma entrada por página física num *array* linear. Como a tabela é dividida entre todos os processos, cada entrada precisa conter o ID do processo dono da página. Além disso, como cada página física é mapeada virtualmente, cada entrada terá que conter um VPN, ao invés de um *physical*, em sua forma linear. Dessa forma, a forma Linear ocupa menos espaço, porém, a busca através dos itens se torna mais demorada.
Além da forma linear, existe outra forma, a *Hashed Inverted Page Table* que adiciona um nível extra, anterior a própria *page table*, chamado *hash anchor table*. Essa tabela é, no mínimo, tão larga quanto a *page table* e mapeia os IDs dos processos e VPNs. Para a tradução de um endereço virtual, o ID e o VPN de um processo são "hashados" para entrar na *hash anchor table*. Assim, a forma *Hashed* ocupa mais espaço, porém, a busca é acelerada com uso de apontadores.
Nome do Aluno: Lucas Lima do Nascimento
Número de Matrícula: 11721EMT014
