Давно не читал про архитектуру железа, но на пальцах могу объяснить.
Оперативная память разделена на страницы.
Страницы диспетчеризируются на предмет устаревания.
Если к странице памяти давно не обращались, то она становится кандидатом на вытеснение в своп.
Если процессам не хватает оперативной памяти для какого-то маневра, то страницы-кандидаты летят в своп, соответственно, они помечаются, как вытесненные.
Если какому-то процессу нужно достать данные из адреса, то вычисляется, к какой странице этот адрес относится.
Если страница вытеснена, то принимаются меры, чтобы ее вернуть в озу.