进程管理_linux0.11[定归纳.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux0.11 的地址 有 3 类地址需要区分清楚: 1. 程序(进程)的虚拟地址和逻辑地址 虚拟地址( virtual address )指程序产生的有段选择符和段内偏移两部分组成的地址。一 个程序的虚拟地址空间有 GDT 映射的全地址空间和 LDT 映射的局部地址空间组成。 逻辑地址 (logical address )指程序产生的段内偏移地址。 应用程序只与逻辑地址打交道, 分段分页对应用程序来说是透明的。也就是说 C 语言中的 ,汇编语言中的符号地址, C 中 嵌入式汇编的 ”m ”对应的都是逻辑地址。 2. CPU 的线性地址 线性地址( linear address)是逻辑地址到物理地址变换的中间层,是处理器可寻址空间 的地址。程序代码产生的逻辑地址加上段基地址就产生了线性地址。 3. 实际物理内存地址 物理地址 (physical address )是 CPU 外部地址总线上的寻址信号, 是地址变换的最终结 果,一个物理地址始终对应实际内存中的一个存储单元。 对 80386 保护模式来说, 如果开启 分页机制, 线性地址经过页变换产生物理地址。 如果没有开启分页机制, 线性地址直接对应 物理地址。页目录表项、页表项对应都是物理地址。 Linux 0.11 的内核数据段,内核代码段基地址都是 0, 所以对内核来说,逻辑地址就是 线性地址。 又因为 1 个页目录表和 4 个页表完全映射 16M 物理内存,所以线性地址也就是 物理地址。 故对 linux0.11 内核来说,逻辑地址,线性地址,物理地址重合。 个人总结: 分段和分页的区别: 分段可以给每个进程提供不同的线性地址 分页可以把同一线性地址空间映射到不同的物理地址 逻辑地址: 线性地址: 物理地址: 逻辑地址 -》分段单元 -》线性地址 - 》分页单元 - 》物理地址 Linux 在使用的时候避开了 Intel 原先的设计意图,只是对段基址设置了 0 ,这样逻辑地址 和线性地址就一样了,再经过分页机制,就最后变成了物理地址了。 Linux2.4 内核使用的空间中,虚拟地址和物理地址只是简单的相差了 3G 与 80386 段相关的宏定义 set_seg_desc 64 55 47 39 32 段基地址( BASE ) G D 0 AV 限长 P DPL 1 段基地址( BASE ) type 31..24 L 19..16 23..16 段基地址( BASE )15..0 段限长( LIMIT ) 15..0 31 23 15 7 0 /*****************************************************************************/ /* 功能 : 设置存储段描述符 ,把指定属性的段描述符放入 gate_addr 处 */ /* 参数 : gate_addr 段描述符的目的地址 */ /* type 描述符中类型域,具体见 80386 基础

文档评论(0)

肖四妹学教育 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档