0.12内核,段限长 问题??

CCDDzclxy 2015-12-30 03:48:06
在看书,《Linux内核完全剖析基于0.12内核》

对书上的两处说法,理解不了,详细见下面:

一、
在 “4.3.4段描述符” 中,讲 “段限长字段LIMIT(Segment limit field)”的时候,里面有这样一段话:
如果 G=0,则段长度Limit范围可从 1字节到1MB字节,单位是字节。如果G=1,则段长度Limit范围可从 4KB到4GB,单位是4KB。

我的理解是 :段限长一共20位,取值范围为 0x0~0xFFFFF 。G=1时,当Limit=0,则段长度就是4KB,... ...,当Limit=0xFFFFF,则段长度为4GB。


二、
在 “4.9.1多任务程序结构和工作原理” 中,在 图4-41 的上面,有这样一段话:
而全局显示数据段被设置成:基地址为 0xB8000;段限长为 0x0002,所以实际段长度为 8KB,对应到显示内存区域上。”(此时的G是置位的)
根据我对上面那段文字(一)的理解,Limit=2,段长度应该是12KB才对啊...并非8KB啊...怎么回事?



书上的内容 “一”和“二” 哪个错了??
还是说,书上的内容是对的,我理解错了?那我哪里理解错了?应该怎么理解??

本人水平菜,该问题困扰我快2天了...请大家帮忙解答,谢谢。





...全文
502 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
CCDDzclxy 2016-01-08
  • 打赏
  • 举报
回复
引用 7 楼 nswcfd 的回复:
感觉应该是12K,要不然最大寻址地址就不4G,而是4G-4K了。 这个跟内核版本没有关系,找个intel的手册看看就清楚了。
这个倒是没有想到... 从来没看过这东西,搜个看看去~~~
nswcfd 2016-01-08
  • 打赏
  • 举报
回复
感觉应该是12K,要不然最大寻址地址就不4G,而是4G-4K了。 这个跟内核版本没有关系,找个intel的手册看看就清楚了。
CCDDzclxy 2016-01-08
  • 打赏
  • 举报
回复
引用 5 楼 r_Jimy 的回复:
段可以分代码段、数据段,==,逻辑地址只一个啊 这里的段长为8K,实际指的limit长8K,但实际可寻址12K
好吧,对你的解答 我持保留意见。或者说 我没完全接受 这种拗口的解释。
常书 2016-01-08
  • 打赏
  • 举报
回复
段可以分代码段、数据段,==,逻辑地址只一个啊 这里的段长为8K,实际指的limit长8K,但实际可寻址12K
CCDDzclxy 2016-01-08
  • 打赏
  • 举报
回复
引用 3 楼 r_Jimy 的回复:
更正下: 参考:http://baike.baidu.com/link?url=8mgEcZUJSycmcY4687g2Ye6GVzvzJRu9C-ELprXXpoPG6b5YdRoh-0OtI6kukrKB-7nmlvy53CNln5zAg-0l3_ 对于对于向上扩展的段,因为不检查低12位,所以段限长为0(段长度Limit为0)时,逻辑地址范围为0-FFF(共4K) 段限期长为2(段长度Limit为8KB),逻辑地址范围为0-2FFF(共12K) 你理解的段长度是逻辑地址范围,书里讲的是limit的实际值
逻辑地址范围 的 最大值 减去 最小值 +1 不就是 段的长度 吗??两者概念不同?
常书 2016-01-08
  • 打赏
  • 举报
回复
更正下: 参考:http://baike.baidu.com/link?url=8mgEcZUJSycmcY4687g2Ye6GVzvzJRu9C-ELprXXpoPG6b5YdRoh-0OtI6kukrKB-7nmlvy53CNln5zAg-0l3_ 对于对于向上扩展的段,因为不检查低12位,所以段限长为0(段长度Limit为0)时,逻辑地址范围为0-FFF(共4K) 段限期长为2(段长度Limit为8KB),逻辑地址范围为0-2FFF(共12K) 你理解的段长度是逻辑地址范围,书里讲的是limit的实际值
常书 2016-01-08
  • 打赏
  • 举报
回复
单位是4KB不是说Limit=0时,段限长是4KB,而是指的Limit=1时,段限长是4KB(1*4KB) Limit=2时自然是(2*4KB) 其范围应是[4kb-4GB)
CCDDzclxy 2016-01-07
  • 打赏
  • 举报
回复
来个人看看呢?

4,465

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧