Linux系统学习笔记——系统内存管理
操作系统内核的主要功能之一就是内存管理。内核不仅管理服务器上的可用物理内存,还可以创建和管理虚拟内存(即实际上并不存在的内存)。
内核通过硬盘上的存储空间来实现虚拟内存,这块区域成为交换空间(swap space)。内核不断在交换空间和实际的物理内存之间反复交换虚拟内存中的内容。
内存存储单元按组划分成很多块,这些块称为页面(page)。内核将每个内存页面放在物理内存或交换空间。然后,内核会维护一个内存页面表,指明哪些页面位于物理内存中,哪些页面被换到了磁盘上。
内核会记录哪些内存页面正在使用中,并自动把一段时间未使用的内存页面复制到交换空间区域(称为换出,swapping out)——即使还有可用内存,当程序要访问一个已被换出的内存页面时,内核必须从物理内存换出另外一个内存页面给它让出空间,然后从交换空间换入请求的内存页面。