请教个关于保护模式页式内存管理的问题
Dover 2009-05-07 02:49:03 大家知道,在页式内存管理里面。
当要把一个页面调出内存,交换到磁盘的时候,要更新引用了这个内存页的页表,
因为有可能存在共享,所以这个引用很可能是多个。
那么就需要遍历所有进程的页表才能完成整个更新的动作。。
我的问题有2个:
1 整个遍历不是很费事么?
我查看了linux 2.5内核的更新,说是加了一个reverse map 的东西,或许会有缓解。。
2 如果在遍历过程中发现一个进程的页表不在内存里,那是不是还要把整个页面先调入到内存中, 才能进行更新?如果是这样的话,那不是已经循环。。。。?我本来是为了要空出一个页面来自己用,结果运算过程就要再调入新的页面。。。如此这般性能不是很低下?