Linux 内存监控虚拟内存实现机制及容量设定


在地址映射中要通过TLB(翻译后援存储器)来寻找物理页;交换机制中也要用到交换缓存,并且把物理页内容交换到交换文档中后也要修改页表来映射文档地址。


1)Linux 内存监控虚拟内存实现机制
Linux 内存监控Linux虚拟内存的实现需要六种机制的支持:地址映射机制、内存分配回收机制、缓存和刷新机制、请求页机制、交换机制、内存共享机制。


首先内存管理程式通过映射机制把用户程式的逻辑地址映射到物理地址,在用户程式运行时假如发现程式中要用的虚地址没有对应的物理内存时,就发出了请求页需要;假如有空闲的内存可供分配,就请求分配内存(于是用到了内存的分配和回收),并把正在使用的物理页记录在缓存中(使用了缓存机制)。 假如没有足够的内存可供分配,那么就调用交换机制,腾出一部分内存。另外在地址映射中要通过TLB(翻译后援存储器)来寻找物理页;交换机制中也要用到交换缓存,并且把物理页内容交换到交换文档中后也要修改页表来映射文档地址。


2)Linux 内存监控虚拟内存容量设定
也许有人告诉您,应该分配2倍于物理内存的虚拟内存,但这是个不固定的规律。假如您的物理保存比较小,能够这样设定。假如您有1G物理内存或更多的话,能够缩小一下虚拟内存。Linux会把大量的内存用做Cache的,但在资源紧张时回收回.。您只要看到swap为0或很小就能够放心了,因为内存放着不用才是最大的浪费。

相关内容