В общем как создать PDE + PTE для нового процесса??? PDE то проблемы нету, выделилил page и все, но ведь PTE надо монтировать для последующего монтирования страниц в них же из создаваемого процесса!!! А вновь созданная PDE пуста, и получается что я не могу примонтировать PTE в создаваемом процессе без PTE, тоесть тут замкнутый круг получается!!! З.Ы.: Дайте, пожалуйста, ссылку на русский мануал Intel'а!
KLERIK например так вся доступная физическая память разбивается на страницы для удобства работы для каждой страницы создается структура, которая ее описывает все структуры объединяются в массив структур, который расположен по известному (ты сам задаешь) физическому адресу перед переходом в страничный режим создается каталог страниц и нужное количество таблиц страниц для описания системного адресного пространства 1. кода ядра 2. данных ядра 3. самого себя (т. е для того, чтобы через каталог страниц и таблицы страниц получить доступ к ним же (например для возможности изменения)) 4. массива страниц задается функция, которая позволяет получить виртуальный адрес из любого физического в системном адресном пространстве (для Linux, например, это f(x) = x + __PAGE_OFFSET, __PAGE_OFFSET = 0xC0000000) в каждой структуре, которая описывает страницу, предусмотрено поле, которое содержит виртуальный адрес адрес этой страницы (когда страница используется) все структуры, описывающие свободные страницы, объеденены в связный список адрес списка (адрес первой структуры) хранится в области данных ядра итак, для того, чтобы выполнить нужные тебе действия, нужно: 1. с помощью списка выделить нужное количество страниц 2. с помощью 3 (см. выше) отобразить их на виртуальное адресное пространство ядра, получив их виртуальные адреса для доступа к ним 3. настроть каталог страниц и таблицы страниц (используя полученные виртуальные адреса)