pavia писал(а):
Общие страницы для простоты запретим.
Для ОС уровня хобби это может быть и осмысленно. Но если стоит задача сделать высокопроизводительную ОС, то общую память запрещать нельзя. При помощи общей памяти эффективно решаются задачи потоковой передачи данных и распределённые вычисления.
phantom-84 писал(а):
pavia писал(а):
ВАП не интересует. Любые окна это изврат
Это, видимо, было нужно в 32-разрядных системах с большим количеством памяти. С появлением 64-систем это стало не так актуально
Я полагаю, что даже в 64-битных системах ВАП вполне обосновано. Если мы говорим о высокопроизводительной ОС, то есть вероятность образования большого кол-ва процессов и потоков. Чем их больше, тем меньше остаётся адресного пространства на каждый из них. Кроме того, только виртуальная память может быть отсвоплена на диск, а физическая страница выделена другому процессу.
phantom-84 писал(а):
Специальной инструкции нет, но во всех нормальных системах используется хак (рекурсивное отображение каталога страниц), позволяющий отображать в ВАП саму таблицу страниц.
Кстати, очень красивый хак. Я думаю, он задумывался изначально при разработки механизмов виртуализации 386.
По поводу инструкции, задача получения физического адреса возникает очень редко. А при манипуляции с таблицами нам и так необходим к ним доступ. Поэтому, думаю, что отсутствие такой инструкции совсем не недостаток.