虚拟内存和虚拟地址
2016-09-19 19:37
295 查看
虚拟内存,是用以解决应用程序太大以致内存容纳不下程序的问题。
基本思想:程序、数据、堆栈的总的大小可以超过物理内存的大小,操作系统把当前使用的部分保留在内存中,而把其它未被使用的部分保存在磁盘上。
地址范围:计算机上存在的能够产生的地址合集。范围的大小由CPU的位数决定,亦称为虚拟地址空间。
虚拟地址:在虚拟地址空间里的某一个地址。
与虚拟地址空间和虚拟地址相应的是物理地址空间和物理地址,大多数系统的物理地址空间是虚拟地址空间的一个子集。
下面一些例子加以理解:
一个32位的CPU,它的虚拟地址范围是0~0xFFFFFFFF(4GB),物理地址范围是0~0xFFFFFFF(256MB),所以物理地址空间比虚拟地址空间小。而64位CPU的虚拟地址空间是0~0xFFFFFFFFFFFFFFFF(64TB),所以虚拟地址空间由CPU的位数决定。如果在32位的CPU上安装8GB的内存,只会造成4GB无用的内存余留。
基本思想:程序、数据、堆栈的总的大小可以超过物理内存的大小,操作系统把当前使用的部分保留在内存中,而把其它未被使用的部分保存在磁盘上。
地址范围:计算机上存在的能够产生的地址合集。范围的大小由CPU的位数决定,亦称为虚拟地址空间。
虚拟地址:在虚拟地址空间里的某一个地址。
与虚拟地址空间和虚拟地址相应的是物理地址空间和物理地址,大多数系统的物理地址空间是虚拟地址空间的一个子集。
下面一些例子加以理解:
一个32位的CPU,它的虚拟地址范围是0~0xFFFFFFFF(4GB),物理地址范围是0~0xFFFFFFF(256MB),所以物理地址空间比虚拟地址空间小。而64位CPU的虚拟地址空间是0~0xFFFFFFFFFFFFFFFF(64TB),所以虚拟地址空间由CPU的位数决定。如果在32位的CPU上安装8GB的内存,只会造成4GB无用的内存余留。
相关文章推荐
- mySQL占用虚拟内存达8百多兆问题解决思路
- 如何设置虚拟内存 winxp、win2003最正确的设置虚拟内存方法
- 利用腾讯的ip地址库做ip物理地址定位
- Redis教程(十一):虚拟内存介绍
- MySQL内存及虚拟内存优化设置参数
- Win10怎么调节虚拟内存大小? Win10虚拟内存调整的技巧
- MySQL内存及虚拟内存优化设置参数
- 剖析top命令显示的VIRT RES SHR值
- fork炸弹+限制单个用户可用虚拟内存和进程数
- 系统调优(内存)
- 虚拟内存设置的测试方法(图)
- 虚拟内存
- Linux开机启动程序详解
- 42.虚拟内存如何设置:
- GUN,Linux,Linux发行版
- Linux内存回收机制
- vmstat 命令解读
- linux进程的内存管理之虚拟内存
- 深入理解 c#堆栈和托管堆
- linux系统性能调优第一步——性能分析(vmstat)