内存的分段、分页机制

摘录自《程序员的自我修养》1.5节

早期的计算机中,内存有限,在运行多个程序时有如下问题:
1.地址空间不隔离:程序直接访问物理内存,程序间互相影响;
2.内存使用效率低:需要将整个程序载入内存,程序切换时候,在内存和磁盘间交换效率低下;
3.程序运行地址不确定:因为直接访问物理内存,使用的大多是固定地址,给程序编写造成一定的麻烦;

分段
段信息Descriptor:1.段基址Base;2.段界限Limit;3.段属性Attr;
增加了虚拟地址,映射到物理地址,解决了第一个和第三个问题。

分页
将地址空间人为的分成固定大小的页,一般是4kb,当程序需要某个页的时候,如果该页没有在内存中,就会发生页错误(page fault),然后操作系统就会装载这个页到内存,这样程序就不必要全部载入内存,按需装载即可。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值