Pergunta

Eu estou tentando hackear um velho kernel UNIX.Eu só quero implementar o MMU e TLB usando o software.Alguém pode me dizer quais são as melhores estruturas de dados e algoritmos para usar na construção.Eu vi muitas pessoas usando árvores splay porque é fácil implementar LRU.Existe alguma estrutura de dados melhor?Qual é a maneira mais eficiente de traduzir o endereço virtual para o físico no software. Sua arquitetura e tradução X86 como qualquer Tradução de Tabela de Página Básica.

Foi útil?

Solução

Você menciona eficiência.Esse é o objetivo que você é engenharia para?Se você não é restrito a qualquer objetivo específico, tente fazê-lo funcionando.Eu faria uma única mesa de página de nível, se puder, direto ou totalmente associativo.Parece que você passou por isso.

A maioria eficiente vai depender de tradeoffs de velocidade de tamanho e que tipo de localidade você espera.Você tem algum aplicativo crítico ou é isso apenas brincando para experimentar algumas implementações?As tabelas de página invertidas são usadas em algumas arquiteturas mais recentes.Eu levaria isso como uma indicação de que alguém gastando muito tempo trabalhando nisso acha que é uma boa maneira de ir.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top