课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
内存管理是每一位程序员在学习软件开发技术的时候需要重点掌握的一个编程技术,下面我们就一起来通过案例分析来学习一下,虚拟内存管理都有哪些方法。
虚拟内存
每个进程都有4GB的虚拟内存运行空间
内存分页的概念:
操作系统管理内存是将内存分成一页一页来管理,每一页的大小是4K,也就是0x1000,4G的内存共有1M页
使用了分页机制之后,4G的地址空间被分成了固定大小的页,每一页或者被映射到物理内存,或者被映射到硬盘上的交换文件中,或者没有映射任何东西。对于一般程序来说,4G的地址空间,只有一小部分映射了物理内存,大片大片的部分是没有映射任何东西。CPU用来把虚拟地址转换成物理地址的信息存放在叫做页目录和页表的结构里。
页交换文件逻辑
操作系统会把进程中不常用的东西存到交换文件里面,当操作系统需要读取里面的内容时,就需要用到了页交换逻辑
当程序访问虚拟内存地址,操作系统判断数据是否在内存中,如果在就从虚拟地址映射到对应的物理地址,如果不在就判断是否在页交换文件当中,如果有就看物理内存有没有空闲的地址,有就加入进去然后映射虚拟地址,没有就移出不常用的物理地址内容再填入然后映射,如果都没有就报错。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。