大多数计算机有两种形式的内存,虚拟内存和物理内存。虚拟内存,顾名思义,只是一种结构,它允许程序像运行它所需的所有信息都存储在同一个地方一样进行操作。存储在虚拟内存中的每一条信息都对应一个物理内存地址。页表是计...
大多数计算机有两种形式的内存,虚拟内存和物理内存。虚拟内存,顾名思义,只是一种结构,它允许程序像运行它所需的所有信息都存储在同一个地方一样进行操作。存储在虚拟内存中的每一条信息都对应一个物理内存地址。页表是计算机操作系统用来跟踪虚拟机之间连接的数据结构内存和物理内存。将虚拟内存与物理内存相关联的过程称为映射。

计算机操作系统使用页表来跟踪虚拟内存和物理内存之间的连接内存。页表如何组织这两种内存的概念最好用一个熟悉的例子来理解。当计算机用户在媒体播放器程序中创建播放列表时,他或她可以从电脑上的几个不同的文件中提取歌曲。物理文件不会移动,但程序知道到哪里去依次访问每首歌曲。播放列表就像虚拟的内存。它是一个连续的信息块,容易被程序访问。其中包含单个歌曲的单个文件就像物理内存。它们存储在计算机的许多不同位置。物理内存存储在页表中计算机中的一块硬件接收来自虚拟内存的请求,然后访问页表以找到数据的物理内存位置。这种硬件称为内存管理单元(MMU)或动态地址转换(DAT)单元。为了使数据访问尽可能快,MMU存储了一个在一个名为translation lookaside buffer的表中,有有限数量的常用映射。与web浏览器中的favorites选项卡类似,translation lookaside buffer允许计算机快速跳转到常用的内存位置。如果有问题的地址不是计算机经常要求的地址,MMU将直接访问页表。它扫描表直到找到有问题的地址。然后将地址返回到翻译查询缓冲区,程序可以从中访问信息有时计算机在页表上找不到地址。如果虚拟内存和物理内存之间没有映射,则可能会发生这种情况。在这种情况下,操作系统将向程序发送一条消息,通知它关闭。如果物理文件已存在,则查找也可能失败已移动,例如,如果已将其放在备份磁盘上并从系统中删除。