Создание программного обеспечения на базе MMU и TLB - PullRequest
1 голос
/ 20 июля 2010

Я пытаюсь взломать старое ядро ​​Unix.Я просто хочу реализовать MMU и TLB с помощью программного обеспечения.Кто-нибудь может сказать мне, какие структуры данных и алгоритмы лучше всего использовать для их построения.Я видел много людей, использующих деревья сплайнов, потому что легко реализовать LRU.Есть ли лучшая структура данных?Какой самый эффективный способ преобразования виртуального адреса в физический в программном обеспечении. Примите его архитектуру и перевод x86 как любой базовый перевод таблицы страниц.

1 Ответ

0 голосов
/ 20 июля 2010

Вы упоминаете эффективность. Это цель, к которой вы стремитесь? Если вы не ограничены какой-либо конкретной целью, просто попытайтесь заставить ее работать. Я бы сделал таблицу страниц на одном уровне, если вы можете, прямую или полностью ассоциативную. Похоже, что вы прошли через это.

Наиболее эффективный будет зависеть от компромиссов между размером и скоростью и от того, какой тип местности вы ожидаете. У вас есть профилированные критические приложения или это просто возиться, чтобы попробовать некоторые реализации? Перевернутые таблицы страниц используются в некоторых более новых архитектурах. Я бы воспринял это как признак того, что кто-то, проводящий много времени над этим, думает, что это хороший путь.

...