虚拟内存

按需页面调度和独立的虚拟地址空间的结合,对系统中内存的使用和管理造成了深远的影响.特别地,VM简化了链接和加载,代码和数据共享,以及应用程序的内存分配.

  • 简化链接: 独立的地址空间允许每个进程的内存映像使用相同的基本格式,而不管代码和数据实际存放在物理内存的何处.即,一个给定的Linux系统上的每个进程都使用相同的内存格式.对于64位地址空间,代码段总是从虚拟地址0x400000开始.数据段跟在代码段之后,中间有一段符合要求的对齐空白.栈占据用户进程地址空间最高的部分,并向下生长.这样的一致性极大地简化了链接器的设计和实现,允许链接器生成完全链接的可执行文件,这些可执行文件是独立于物理内存中代码和数据的最终位置的.
  • 简化加载: 虚拟内存还使得容易向内存中加载可执行文件和共享对象.要把目标文件中.text和.data节加载到一个新创建的进程中,Linux加载器为代码和数据段分配虚拟页,把它们标记为无效的(即未被缓存的),将页表条目指向目标文件中适当的位置.加载器从不从磁盘到内存实际复制任何数据.在每个页初次被引用时(CPU取指令时或一条正在执行的指令引用一个内存位置时),虚拟内存系统会按照需要自动地调入数据页.
  • 简化共享:
  • 简化内存分配:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值