Под свопингом понимается копирование всего адресного пространства процесса или, во всяком случае, сегмента текстовых данных, не подлежащих совместному использованию, на устройство подкачки или обратно за один раз (обычно на диск).
Принимая во внимание, что под пейджингом понимается копирование одной или нескольких страниц адресного пространства.В частности, это намного лучше.Например, в адресном пространстве ОЗУ 1 ГБ содержится ~ 250 000 страниц по 4 КБ.
В ранние времена использовалась подкачка, например, DEC pdp-11 эпоха Unix, 1975-80 гг.Для всего, что вы хотели бы знать, и даже больше, могу ли я порекомендовать The Lions Document, также известный как Lions's Comment по Unix 6th Ed.с исходным кодом, Джон Лайонс, ISBN 1-57398-013-7?
Вы наверняка оцените главу 14 «Обмен программами», которая начинается так: «Unix, как все системы с разделением времени и некоторые мультипрограммные системы», использует «замену программы» (также называемую «развертывание / развертывание») для разделения ограниченного ресурса основной физической памяти между несколькими процессами. *
Пейджинг (в Unix) поступил с BSD (Berkeley Systems Distribution) на VAX-11/780, начиная примерно с 1980 года.
Пейджинг также обычно связан с постраничными атрибутами памяти (нет доступа, только чтение, чтение-запись, нет выполнения, исполняемый файл),и различные приемы управления виртуальной памятью, такие как заполненные нулями страницы, страницы с копированием при записи и т. д.
Аппаратно, подкачка может выполняться без какого-либо управления памятью, хотя на ранних машинахиспользовала простую схему отображения памяти (например, базовый и связанный, или простую одноуровневую таблицу отображения страниц фиксированного размера (например, разделить 64 КБ адресного пространства данных into 8, 8 КБ страниц в большем физическом адресном пространстве (256 КБ ... 4 МБ).
В отличие от этого, для подкачки страниц требуются записи таблицы страниц виртуальной памяти с гранулярностью, которые обычно кодируют физический адресстраница, биты PTE, такие как действительный, чтение, запись и т. д. Аппарат также должен автоматически (прозрачно для прикладной программы) извлекать и интерпретировать записи таблицы страниц при необходимости для сопоставления каждого виртуального адреса с его физическим адресом и / или приниматьисключение сбоя страницы, чтобы ОС могла сделать страницу доступной и / или запланировать ввод-вывод для загрузки ее в физическую память.
Счастливого взлома!