SwapCache
1. SwapCache
一度ページアウトされてページインされたページは、SwapCacheに入れられ一時的にディスク上のスワップ領域にも主記憶上にも存在する状態になる。メモリ不足で再度ページアウトが必要になった場合、このページがSwapCache上に残っていれば、ディスク上にもデータが残っていることになるので、再度ページアウトすることなくページを解放してI/Oを省略することができる。
2. SwapCacheの管理
SwapCacheは図1のように管理される。SwapCacheはPageCacheと同じくaddress_spaceによって管理される(address_spaceの詳細は「PageCache」参照)。使用されるaddress_spaceはswapper_space。swapper_spaceに全スワップ領域に関するSwapCacheのページが登録される。swapper_spaceのTreeにページを登録する際のインデクスは図1に示すようにスワップ領域の種類とスワップ領域内のページオフセットを組み合わせた値を使用する。
図1 SwapCacheの管理