Менеджер виртуальной памяти

Июнь 26th, 2009 по SadKo Оставить ответ »

Всё-таки нашёл в себе силы реализовать менеджер виртуальной памяти в XSystem. Конечно, готов он не на все 100%, но бОльшая часть уже действительно оттестирована и работает. Как подтверждение этого ядро было переведено на новый менеджер, а старый был выкинут из дерева проекта.
Теперь ядро умеет одинаково хорошо обращаться с обычной страничной адресацией и PAE (Page-Address Extension). Для этого достаточно перекомпилировать ядро с соответствующими параметрами.
В ближайшее время на wiki постараюсь разместить документацию по сделанному менеджеру. Зато сейчас как гора с плеч: пришлось очень долго и очень много думать, как правильнее реализовать менеджер. Теперь же можно потихоньку начинать разделять user-space и kernel-space для процессов.
Механизм подкачки пока не реализован, но это уже — отдельный разговор.

Реклама

9 комментариев

  1. Разве у тебя до недавнего времени всё в одном пространстве работало?

  2. а для мипсов будет?

  3. Вопрос хороший.
    Сначала нужно осилить до конца GCC, потом архитектуру x86_64, а потом уже можно думать о портировании на другие платформы. Более приоритетной всё же считаю ARM. Тем не менее, под MIPS было бы тоже полезно попробовать.

  4. Да, был такой грех. Исправляю вот.

  5. Быстро ты новый менеджер сделал? :) Небось, пара дней?

  6. Не, ввиду того, что меня тошнит уже от написания всякого рода аллокаторов памяти, процесс затянулся на несколько месяцев. Сам менеджер в процессе разработки был переписан 4 раза.

  7. Оу. ) А мне нравилось их писать )

  8. Просто когда постоянно только их и пишешь, это начинает досаждать. Примерно так же, как своей кривизной досаждает мне файловая система FAT, например.

  9. FAT меня тоже ужасно из себя выводил. Потому я его и не писал :)

Добавить комментарий

Blue Captcha Image
Refresh

*