Виртуальное адресное пространство каждого процесса намного больше общей физической памяти, доступной всем процессам. Для того, чтобы увеличить размер физической памяти, система использует в качестве дополнительной памяти винчестер. Таким образом, общее количество памяти, доступное всем процессам, состоит из суммы физической памяти и свободного пространства на винчестере, организованного в виде файла подкачки. Файл подкачки используется для увеличения физической памяти. Физическая память и виртуальное адресное пространство каждого процесса организованы в виде страниц - единиц памяти, размер которых зависит от архитектуры используемого компьютера. Например, на компьютерах с процессорами на базе x86 размер страницы составляет 4 Кб.
Для того, чтобы обеспечит максимальную гибкость в управлении памятью, система может перемещать страницы из физической памяти в файл подкачки и наоборот. Когда страница перемещается в физическую память, система обновляет карту памяти затронутого процесса. Когда система нуждается в свободной физической памяти, то выбирается страница в оперативной памяти, к которой дольше всего не было обращений, и перемещается в файл подкачки. Манипуляции системы с физической памятью абсолютно прозрачны для всех приложений, которые оперируют только со своим виртуальным адресным пространством.
Структура виртуальной памяти |
Состояние страниц![]() |
© Mystic, 2002