当前位置: 首页 > news >正文

网站建设 思维导图大连百度推广

网站建设 思维导图,大连百度推广,个人网站服务器,简易购物网站模板32位cpu 地址线扩展成了32位#xff0c;这和数据线的宽度是一致的。因此#xff0c;在32位机里其实并不需要采用“物理地址段#xff1a;偏移”这种地址表达方式。原来在16位机里规定的 每一个段不大于64kb在32位机里也不是必要的。所以#xff0c;对于32位机来讲#xff… 32位cpu 地址线扩展成了32位这和数据线的宽度是一致的。因此在32位机里其实并不需要采用“物理地址段偏移”这种地址表达方式。原来在16位机里规定的 每一个段不大于64kb在32位机里也不是必要的。所以对于32位机来讲最简单的方法就是用一个32位数来标识一个字节的存储地址寻址时只要给出一 个32位数就可以直接找到地址。这种地址储存模型就属于“平展储存模型”。但是新产品一般都希望遵循“向下兼容”这个原则。所以32位机里完整的保留了16位寻址模式。即寻址能力为1M分段机制每段不超过64kb。这就是通常所说的实模式。在地址储存模型中属于“实地址储存模型”。  其次考虑到程序通常都是功能化的模块所以分段虽然不是必要的但分段却能大大提高编程者管理程序的效率。故而32位机也采用了段偏移的模式来寻址。 但与实模型不同的是由于地址线和数据线宽度一致因而每个段最大可以到4G并且段基址也是32位的无需进行左移处理。在地址储存模型中这属于“段地 址储存模型”。然而需要注意的是在32位机里虽然通用寄存器标志寄存器等都扩展成了32位但是段寄存器却依然是16位的为什么不做改变我猜 可能是这样便于向下兼容。所以在32位寻址时段寄存器里放的不再是段基址位数不够放不下而是一个选择子。这个选择子对应了一个64-bit长的 描述符64-bit的描述符里有32-bit是段基址。所以原来在16位机里通过段寄存器一步就可以找到段基址而现在在32位机里分成了两步先找选 择子然后通过选择子找段基址。段基址找到了再加上偏移地址物理地址就找到了。看样子32位段模式寻址已经介绍清楚了。其实这里头的故事还远没有 讲完。   在上面简述的过程中很容易发现有两个问题没有交待。1CPU是如何将选择子与描述符对应起来的2既然是64-bit的描述符32位用来表示 基地址那么余下的32位是干什么用的另外当32位机发展起来的同时操作系统也有了长足进步单任务模式的DOS被多任务的windows所取代。 也就是说现在驻留在内存中的往往不止是一个程序而很可能是多个程序同时在内存中。现在又没有了段大小的限制程序之间便很有可能相互抢地址如果核心 程序被破坏计算机就会崩溃。这就好比在马路上走车如果只有一辆车开怎么开都可以但是如果车多了不制定个交通规则车便会抢道道路就会瘫痪。所 以在多任务的情况下必须给寻址也制定一个“交通规则”这样才能保证多任务系统有序的工作。制定什么样的规则呢首先既然程序是在无意识的情况下抢 占了别的程序的地址那么如果在寻址时包含一个查询的过程就可以有效的避免抢地址的情况发生。也就是说先得问一问那个地址是不是已经有程序段占用了同 时已占上地址的程序段除了告知CPU自己的基地址外还应该告诉CPU自己的长度信息。这样别的程序段才能方便地查询。第二多任务寻址最好应该包含优先级 别的内容已备紧急情况下为核心程序让道。这好比在马路上一般情况下车是遵守规则的但如果是警车或救护车执行任务时就可以优先抢占别的车的道。所 以还应该定义一个优先级。然后由占上地址的程序段告诉CPU自己的优先级别。总的来讲原来在16位机里很单纯的一个“段”的概念现在变得复杂了。如 同人的成长过程刚开始的时候思维总是很幼稚的相应的也只能解决简单的问题只有当你的思维摆脱幼稚的时候才有能力解决更为复杂的事情。现在CPU摆 脱了幼稚的16位它在描述“段”的时候当然不应该像16位时那么肤浅。在32位机里“段”有三个要素基地址长度属性属性里包含了优先级和其它 的一些内容。为了能一次完整的引用或者给出这三个要素需要新定义一个数据结构。这个结构就是前面所提到的描述符每一个描述符都占有64-bit有 足够的长度来包含段的三个要素。当然现在内存中不止一个程序而且程序也不止一个段所以描述符也不会有一个而是很多个。最简单的管理方法就是将所 有的描述符集中起来放在一块连续的存储空间里然后给各个描述符排上序号。当要找某一个特定的描述符时只要先找到这块连续的存储空间然后给出序号就可以 了。这些集中起来的描述符形成了一张表所以通常被叫做描述符表。所以想找到一个段的信息首先要找到描述符表。也就是说找特定的描述符先要知道描述 符表的基地址。在32位cpu中有一个48位的专用寄存器用来存放全局描述符表的信息这个寄存器叫做GDTR。其中高32位给出了全局描述符表的基 地址低16位给出了描述符表的长度限制。所以一张全局描述符表最长可以是64kb。那么最多可以放64kb/8b8k个描述符。所以如果想在其中 选择任意一个描述符用13位就可以办到了。在32位cpu中16位段寄存器的高13位就用来存放特定描述符的序号。其实现在段寄存器的功能就是选择 描述符正因为如此通常也把段寄存器叫做选择器。那么经过冗长的介绍现在32位段寻址的过程已经大体依稀浮现在眼前了在段寄存器里找到序号在 GDTR中找到全局描述符表的基地址然后就可以找到目的描述符。再从描述符中取出段的基地址然后加上偏移地址这样就得到了段的“物理地址”。    真是令人兴奋这样的寻址过程为执行多任务提供了有力的保障可以想象这是计算机执行性能上的一次飞跃从此高速的cpu再也不会为无用武之地发愁了它 可以最大限度的发挥自己速度快的优势同时处理好多个任务。是的当我们眼前出现了新的景象的时候我们有理由兴奋。但是我们不应该就此满足。我们应该 沿着新天地撇给我们的一丝亮光继续前行去找到这片新天地。人就是在这样的前行中不断让事情变得更完美。到这里我们对于寻址过程的了解只是开了一个 头而已但这是一个好头我们体会到了32位cpu的强大优势。这足以让我们对完整的32位CPU寻址充满了期待。让我们鼓舞士气沿着前人的足迹继续前 行吧    我们知道程序代码和数据必须驻留在内存中才能得以运行然而系统内存数量很有限往往不能容纳一个完整程序的所有代码和数据更何况现在是多任务系统 想让内存驻留所有任务程序显然不太可能。老式系统就是将程序分割成小份只让当前系统运行它所有需要的那部分留在内存其它部分都留在硬盘。当系统处理完 当前任务片段后再从外存中调入下一个待运行的任务片段而且这个工作是由程序员自行完成。显然这增加了程序员的负担。     由此针对多任务系统发展了一种虚拟内存技术。虚拟内存技术就是一种由操作系统接管的按需动态内存分配的方法它允许程序不知不觉中使用大于实际物理空间大 小的存储空间(其实是将程序需要的存储空间以页的形式分散存储在物理内存和磁盘上)。虚拟内存是将系统硬盘空间和系统实际内存联合在一起供进程使用,给进 程提供了一个比内存大得多的虚拟空间。在程序运行时把虚拟地址空间的一小部分映射到内存其余都存储在硬盘上也就是说程序虚拟空间就等于实际物理内存 加部分硬盘空间。当被访问的虚拟地址不在内存时则说明该地址未被映射到内存而是被存贮在硬盘中因此需要的虚拟存储地址随即被调入到内存同时当系 统内存紧张时也可以把当前不用的虚拟存储空间换出到硬盘来腾出物理内存空间。      这样为了提高系统性能发展了虚拟内存技术那么相应的32位cpu也应该发展新的寻址技术来管理虚拟内存。这是通过页机制来实现的。      因为使用页机制的原因前面提到的通过段机制转换得到的地址仅仅是作为一个中间地址——线性地址了该地址不代表实际物理地址而是代表整个进程的虚拟空间地址。还得有一个将虚拟地址转换成物理地址的过程。      让我们来认识一下页机制。它就是把内存分成一个一个连续的页每页大小4kb。与段不同页不是程序功能块的体现。一个程序功能块可能占用好多个页。现在 内存就像一本书了一页一页的每页的容量都是相等的。当然我们很快可以联想到要想能够很快的找到某页最好给这本书分个章或者节什么的然后逐级地 向下查询。这就是32位cpu里页目录和页表所起的作用。页目录的长度是4kb它最多可以包含1024个页目录项每个页目录项32-bit包含了页 表的地址和有关信息。所以页目录把4Gb空间分成了1024个页组每个页组4MB的大小。页表的长度也是4kb1024个页表项每个页表项32- bit包含页的地址和其它信息。这样4MB的页组又被分成了1024个页面每个页面大小4kb。所以找到某一个页就是先查页目录再查页表这么一个过 程。为了找到页目录我们需要知道其基地址。在32位cpu里CR3寄存器里高20位放的就是页目录的地址因为页目录的低12位总是0这样保证页目 录始终是页对齐的每页大小4kB。再来看一看前面通过32位段机制找到的线性地址。其高10位是页目录的偏移地址一共1024个页目录用10位就可 以标识可能的最大偏移了。加上CR3就可以找到页目录然后再通过页目录找到页表的基地址线性地址的中间10位放的是页表的偏移量这样就找到了页 表。最后页表的基地址再加上CR3最低12位所表征的页表的偏移地址就找到了页这个页的地址就是最终的物理地址。     前面提到之所以采用页机制是为了虚拟内存技术。所以页目录也好页表也好除了地址信息外还有一些属性信息比如当前页表是不是在内存中等等。这样才能方便系统管理虚拟内存实施换进换出的功能。这里就不详述了。     总的来讲32位寻址先通过32位段机制找到一个32位地址如果没有采用分页那么它就是物理地址。否则只是一个线性地址然后再通过CR3页目 录页表找到页的地址它才是最终的物理地址。其实还用很多细节没有涉及到比如这里提到的描述符表是全局描述符表实际上还有局部描述符表再比如描 述符只重点介绍了地址位优先级位和其它属性位都没有介绍。但是一个完整的寻址图像已经展现在我们眼前了。它包含了32位CPU里的所有重要机制。剩下 的问题不妨采取暂不过问现用现学的方法 转载于:https://blog.51cto.com/51ctoa/1884105
http://www.sadfv.cn/news/196213/

相关文章:

  • 中文网站建设哪家好个人简历模板网站
  • 公司网站优化去哪里学腾讯会议开始收费
  • 建设汽车网站用幽默的语言来形容网站开发
  • 浙江建设培训中心网站目前做哪些网站致富
  • 广州企业网站seo临沂做网站公司哪家好
  • 网站怎么做关键词优化百度登录注册
  • 适合学生做的网站类型网络营销就是网络销售
  • 网站发的文章如何优化世界青田网app
  • 在线视频网站如何制作建设一个下载资料的网站
  • 软件工程毕业可以做网站吗网站模块划分规划
  • 网站建设案例分享门户建设开源软件
  • 网站建设会议报道如何改wordpress主页
  • 免费网站制作软件平台做网站用vps还是虚拟主机
  • 桥头镇网站仿做大连建设网网址
  • 做外贸有效的网站建筑人才网官方网站入口
  • 浏览器怎么打开网站服务器我想自学建网站
  • 北京营销推广网站建设哈尔滨免费做网站
  • 徐州网站设计制作建设揭阳网站开发mituad
  • 网站建设人员培训纲要建立的短语
  • 响应式网站是啥意思盐城网络优化
  • 政务类网站wordpress 主题 轮播
  • 使用网站的mysql重庆网站建设技术托管
  • 一个人网站运营怎么做门户系统登录
  • 岳阳网站建设设计网站建设管理员工工资多少
  • 微网站的链接怎么做哪种语言做网站最快
  • 建设 公司 网站 请示阿里云网站怎么备案域名解析
  • 营销型网站设计服务商怎样选wordpress主题
  • 北京网站网页设计手机优化助手下载
  • 中企动力科技股份有限公司网站个人申请公众号注册
  • 网站开发公司员工叫什么名字灵寿网站建设