Схема сегментации или разбиения по страницам, которую ubuntu 12.04 использует для выделения основной памяти? Он использует оба? Как?
Если не используются обе схемы, то какую схему следует использовать? почему?
Intel представил понятие сегментации памяти в этих 286, но единственной ОС, которую я знаю тот действительно используемый это, была ОС/2. Все современные операционные системы просто используют подкачку страниц в качестве механизма защиты памяти. Почему? Поскольку это намного более гибко. Это не легко или convieient, чтобы должным быть разделить память на совершенно непересекающиеся сегменты и обратиться к ним отдельно. Это намного больше просто в использовании пространство сплошной памяти, что Вы можете или не можете настроить с различными правами доступа на различных страницах.
Как вся основанная на Linux системная работа Intel или подобных аппаратных средств, Ubuntu выделяет и управляет оперативной памятью на страницах, и даже сами микросхемы настраиваются для управления памятью на страницах. Для получения дополнительной информации посмотрите, например http://www.redhat.com/magazine/001nov04/features/vm/ . Статья стара, таким образом, некоторые детали изменились, но понятия являются все еще тем же.
Linux (включая Ubuntu!) на других аппаратных архитектурах с виртуальной памятью также используют страницы во всех случаях, о которых я знаю, например, архитектура ARM.