深度win10- 绿色安全免费的win10系统下载站
自助下单地址(拼多多砍价,ks/qq/dy赞等业务):点我进入
传统的内存使用存在的问题
在早期的计算机中,程序都是直接访问物理内存的,但是这样存在很多问题:
内存使用效率低程序的运行地址不确定隔离的重要性文件系统的演进分段
假设程序A需要10M内存,它的虚拟空间地址是从0x00000000开始的操作系统内存分配,然后从实际地址空间找到一个10M大小的物理内存,进行虚拟地址空间到物理内存空间的映射。这个映射在软件层面由操作系统的文件系统来设置,实际的转换操作由硬件来完成。
程序的局部性原理
当一个程序在运行的时候,在某个时间段内,它只是频繁的使用到了一小部分数据, 大部分数据都是没有使用到的。
分页
假设我们现在有两个进程,物理内存空间大小有6kb,他们进程中的部分虚拟页面被映射到了物理页面,有部分在磁盘中。我们把虚拟空间中的页面称为虚拟页,物理地址空间的页面称为地址页。这样,不同的虚拟页就可以映射到相同的物理页,实现物理内存的共享,提高内存使用效率。当某个进程需要的页不在内存中的时候,硬件会捕获到一个称为页错误的消息,然后操作系统接管该进程操作系统内存分配,将虚拟页需要的内容从磁盘读出到内存,然后建立虚拟页和物理页之间的映射关系。
c程序内存分区
image.png
程序(进程)内存分布 解析
C程序中的内存分布
更多精彩:输入法https://www.147xz.com2022-03-03 /
系统之家WINDOWS 10 X64完美专业版 2022.03
2022-03-03 /
2022-02-28 /
2022-02-28 /
2022-02-23 /
2022-02-23 /
2022-02-23 /
2022-02-23 /
2022-02-17 /