What Is Linux? -- Looking into the Linux kernel -- System memory management
操作系统内核的主要功能之一是内存管理。内核不仅管理服务器上可用的物理内存,还可以创建和管理虚拟内存或实际上不存在的内存。
它通过使用硬盘上的空间(称为交换空间)来实现这一点。内核将虚拟内存位置的内容从交换空间交换到实际物理内存中。这使得系统认为有更多的内存可用,而实际上物理内存比虚拟内存少,如图1-2所示。
内存位置被分组成名为页面的块。内核在物理内存或交换空间中定位每个内存页面。然后内核维护一个内存页面表,指示哪些页面在物理内存中,哪些页面被交换到磁盘上。
内核跟踪哪些内存页面正在使用,并自动将一段时间内未被访问的内存页面复制到交换空间(称为交换出),即使有其他可用内存。当程序想要访问被交换出的内存页面时,内核必须通过交换出不同的内存页面并从交换空间交换所需的页面来为其在物理内存中腾出空间。显然,这个过程需要时间,可能会减缓正在运行的进程的速度。
为运行应用程序交换出内存页面的过程将持续到Linux系统运行结束。