2.9 交换缓存:
在把页面换出到交换文件时, L i n u x尽量避免写页。有的时候一页既在交换文件中又在物
理内存中。当一个页面被换出内存并在又一次进程访问时被读进内存,则会出现这种情况。
只要内存中的页没有被写,交换文件中的副本就保持有效。
L i n u x使用交换缓存来跟踪这些页。交换缓存是一个页表项列表,每个代表系统中一物理
页。这是一个被换出的页的页表项并描述该页保存在哪个交换文件中以及在交换文件中的位
置。如果一个交换缓存项非空,它代表保存在交换文件中并且未被修改的一页。若该页在以
后被修改(通过写入),该项将被从交换缓存中移去。
当L i n u x需要换出一物理页到交换文件中时,它将参考交换缓存,并且若有该页的一个有
效项,就不需要写该页到交换文件中。这是因为内存中这一页在最近一次由交换文件中读出
后还没被修改过。
交换缓存中的项是换出的页的页表项,它们被标识为无效但包含一些信息使L i n u x可以找
到正确的交换文件及该文件中正确的页。