前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >操作系统的段机制与页机制

操作系统的段机制与页机制

作者头像
用户7043923
发布2020-03-12 13:19:25
6580
发布2020-03-12 13:19:25
举报
文章被收录于专栏:J博士的博客J博士的博客

段的引入是解决“ 地址总线的宽度一般要大于寄存器的宽度 ”这个问题。

8086的分段寻址,是指一个物理地址由段地址(segment selector)与偏移量(offset)两部分组成,长度各是16比特。其中段地址左移4位(即乘以16)与偏移量相加即为物理地址。例如,06EFh:1234h,表示段地址为06EFh,偏移量为1234h,物理地址为06EF0h + 1234h = 08124h。在计算物理地址时如果发生上溢出,8086处理器舍弃进位。例如,FFFFh:0010h所对应的物理地址为00000h.

实模式: 是 段地址+偏移量 的方式,得到物理地址,进而寻址。

保护模式: 不允许通过段寄存器取值得到段的起始地址,而是把虚拟地址转进一个 MMU 的硬件,经过额外的转换和检查,进而得到一个物理地址。

段机制抛开了实际物理内存的大小,从抽象层面提供给开发人员更大的线性空间进行程序开发。但物理内存如果不足时的情况仍需解决。

它通过将 物理内存空间 和 线性地址空间 分成若干相等的页。(一般都为4KB)。这样整个程序就不需要连续存放在物理内存中,更可以按需把页面调进内存,而不需要把整个线性地址空间加载到内存中。正如你将会看到的,这种机制十分巧妙又实用。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-07-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档