swap_out()
w celu zdeaktywowania pewnej liczby stron, czyli przeniesienia ich na listę
inactive_dirty_list
. Od tego momentu proces odwołuje się do tej strony
poprzez wyjątek page fault ustawiając bit PG_referenced (poprzez funkcję do_swap_page()
).
Strona teraz może przemieścić się na listę active_list
, jeżeli proces się
do niej odwoła lub na listę inactive_clean_list
, jeżeli będzie brakowało
pamięci i zostanie wywołana funkcja page_launder()
, zapisująca stronę na
dysk.
reclaim_page()
, która wyrzuci jedną ze stron z listy
inactive_clean_list
. W tym momencie strona nie jest na żadnej z list. Jej
obraz znajduje się na dysku (na urządzeniu swappującym, bądź w systemie plików,
jeżeli była ona mapą pliku).
do_swap_page()
, ale nie będzie się znajdowała na żadnej
z list. Czyli strona nie będzie swappowana, dopóki znów nie zostanie wywołana
funkcja try_to_swap_out()
na tej stronie.