返回首页  设为首页  加入收藏  今天是:
网站首页电脑主板电脑cpu电脑内存电脑硬盘电脑显卡电脑电源显示器电脑配件电脑维修
相关文章
 什么是虚拟内存?
 《永劫无间》明日 Steam 全球…
 从根儿上理解linux虚拟内存
 虚拟内存是什么?win10要关闭…
 三星RAM Plus虚拟内存扩展功…
 电脑显示器什么牌子好 电脑显…
 华硕TUF 27英寸游戏电竞显示…
 泰坦军团 32英寸 4K 144Hz m…
 华硕TUF 27英寸游戏电竞显示…
 创维(Skyworth)27英寸 办公…
 电脑风扇声音大怎么办?详解…
 台式机cpu风扇声音大怎么办
 电脑cpu风扇声音大怎么办 cp…
 cpu风扇声音太大的怎么处理
 cpu风扇声音大_电脑机箱噪音…
 把android平板电脑装进车机 …
 电脑机箱主板接线_安装图解详…
 电脑主板跳线接法图文教程(安…
 电脑组装教程之主板跳线接法…
 完整版)电脑主板插线方法图解…
 RTX 4050显卡性能怎么样 显卡…
 RTX 4050显卡性能怎么样 405…
 显卡不仅仅可以用来打游戏还…
 用上RTX 40系显卡!机械革命…
 性能孤独求败温度看齐甜品卡…
 电脑电源怎么选?细致入微的…
 笔记本电脑怎么选?这三款性…
 以太坊完成合并 大规模显卡挖…
 RTX 4080显卡功耗是多少 408…
 关于电脑电源请大神解答下鑫…
 【手慢无】别买机械硬盘了!…
 全国行情新闻_硬盘_天极网DI…
 固态硬盘选择的三大误区:十…
 希捷(Seagate) 移动硬盘 5TB…
 杀疯了!3300MBs 2TB M2 超高…
 电脑突然使用就不开机了不一…
 【午播钢都】
 我为同学办实事 用心用情服务…
 笔记本维护
 暑实资讯
 东莞笔记本报价
 手提电脑价格图片及价格 (手…
 物丰价稳蔬菜人守“沪”不断…
 CES 2023成为「技术小年」消…
 昆明官渡农村合作银行2023年…
 DDR5内存都爱强调 内存延迟为…
 128是什么意思(128内存什么意…
 电脑的内存用英文怎么说
 outofmemory是什么意思 outo…
 bios中英文对照表
专题栏目
网络
您现在的位置: 电脑评测网 >> 电脑内存 >> 正文
高级搜索
什么是虚拟内存?
作者:佚名 文章来源:本站原创 点击数: 更新时间:2023/1/15 23:51:40 | 【字体:

  小白鼠投邮包虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。与没有使用虚拟内存技术的系统相比,使用这种技术的系统使得大型程序的编写变得更容易,对真正的物理内存(例如RAM)的使用也更有效率。

  对虚拟内存的定义是基于对地址空间的重定义的,即把地址空间定义为「连续的虚拟内存地址」,以借此「欺骗」程序,使它们以为自己正在使用一大块的「连续」地址。

  也就是说虚拟内存能提供一大块连续的地址空间,对程序来说它是连续的,完整的,实际上虚拟内存是映射在多个物理内存碎片上,还有部分映射到了外部磁盘存储器上。虚拟内存有以下两个优点:

  2.虚拟内存的最大空间就是cup的最大寻址空间,不受内存大小的限制,能提供比内存更大的地址空间

  创建一个进程时,操作系统(32位系统)会为该进程分配一个4GB 大小的虚拟内存。 之所以是4GB ,是因为在 32 位的操作系统中,一个指针长度是 4 字节(32位, 2的32次方个地址寻址能力是从 0x00000000~0xFFFFFFFF )即为 4GB 大小的容量。

  一个进程用到的虚拟地址是由内存区域表来管理的,实际用不了4G。而用到的内存区域,会通过页表映射到物理内存。所以每个进程都可以使用同样的虚拟内存地址而不冲突,因为它们的物理地址实际上是不同的。比如进程A的0x12345678虚拟地址和进程B的的0x12345678虚拟地址映射的物理地址是不同的的。

  我们现在使用的64位系统,虚拟内存最大有多大呢?是2的64次方吗?那将会有16EB的虚拟地址空间,1EB有多大呢?1EB = 1,000 PB = 1,000,000 TB = 1,000,000,000 GB 毫无疑问这是个非常巨大的数字,我们的系统根本不需要如此巨大的虚拟内存。现代的操作系统,比如,Windows在AMD64上的实现仅应用了最大256TB的虚拟内存。

  cup要访问虚拟内存地址时,需要经过地址翻译成物理地址才能访问。比如下图(来自《深入理解计算机系统》)中,cpu要访问虚拟地址4100,需要通过专用的硬件内存管理单元(memory management unit)MMU来翻译成对应的内存物理地址4,然后cpu在内存地址4的位置上取到数据返回。

  虚拟内存被分为一块块固定的大小,成为虚拟页(Virtual Page)简称VP,对应的物理内存也被分成一块块同样的大小,成为物理页(Physical Page)简称PP。磁盘和内存之间是以页为单位进行数据交换的。

  页表第一列valid 如果是0表示该虚拟页未被缓存,1表示已经缓存了数据。

  当cpu要访问PTE2(箭头所指的位置)的数据时,发现valid标志位为1,所以表示该虚拟页已经被缓存了,由于页表中的地址指向内存中的VP2数据块,所以cpu直接从内存中读取数据VP2,这种情况就叫做页命中。

  当cpu要访问PTE3(箭头所指的位置)的数据时,发现valid标志位为0,所以表示该虚拟页未被缓存,这时会触发一个缺页异常,cup根据页表第二列的指针找到磁盘中对应的数据块VP3,然后根据规则选择一个内存中的牺牲页,把VP3覆盖到内存中。

  缺页异常返回后,会重启缺页指令,并更新虚拟地址,cpu再次访问PTE3的时候就能命中页,取到数据了。

  当每个进程创建的时候,内核会为每个进程分配虚拟内存,这个时候数据和代码还在磁盘上,当运行到对应的程序时,进程去寻找页表,如果发现页表中地址没有存放在物理内存上,而是在磁盘上,于是发生缺页异常,于是将磁盘上的数据拷贝到物理内存中并更新页表,下次再访问该虚拟地址时就能命中了。

电脑内存录入:admin    责任编辑:admin 
  • 上一个电脑内存:

  • 下一个电脑内存: 没有了
  •  
     栏目文章
    普通电脑内存 什么是虚拟内存? (01-15)
    普通电脑内存 《永劫无间》明日 Steam 全球公测官方建议开启… (01-15)
    普通电脑内存 从根儿上理解linux虚拟内存 (01-15)
    普通电脑内存 虚拟内存是什么?win10要关闭虚拟内存吗?如何… (01-15)
    普通电脑内存 三星RAM Plus虚拟内存扩展功能将登陆更多中高… (01-15)
    普通电脑内存 DDR5内存都爱强调 内存延迟为啥那么重要 (01-15)
    普通电脑内存 128是什么意思(128内存什么意思) (01-15)
    普通电脑内存 电脑的内存用英文怎么说 (01-15)
    普通电脑内存 outofmemory是什么意思 outofmemory的英文意思 (01-15)
    普通电脑内存 bios中英文对照表 (01-15)
    普通电脑内存 依旧D4 B760金属大师主板内存搭配选择 (01-15)
    普通电脑内存 DDR5时代拒绝高价低配“价格屠夫”光威破局内… (01-15)
    普通电脑内存 笔记本内存将大改:CAMM 成为下一代标准取代 … (01-15)
    普通电脑内存 苹果iPhone14 Plus是是A16吗 苹果可以插内存卡… (01-15)
    普通电脑内存 CAMM 将成为下一代笔记本内存标准取代 SO-DIM… (01-15)
    普通电脑内存 电脑储存内存由什么决定? (01-14)
    普通电脑内存 存储容量的基本单位是(在表示计算机存储容量时… (01-14)
    普通电脑内存 极客马—什么是内存(RAM)?装机时如何选择内… (01-14)
    普通电脑内存 电脑内存大有什么用? (01-14)
    普通电脑内存 为什么手机的内存都到了16GB 电脑才普及8GB呢… (01-14)