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

wordpress 推荐返利聊城seo培训

wordpress 推荐返利,聊城seo培训,安一个网需要多少钱,开微信小程序要钱吗上几篇文章学习了任务切换相关知识#xff0c;如下#xff1a; 【OS学习笔记】二十六 保护模式八#xff1a;任务门—任务切换【OS学习笔记】二十七 保护模式八#xff1a;任务切换的方法之----jmp与call的区别以及任务的中断嵌套 今天继续学习保护模式下的分页机制。本篇…上几篇文章学习了任务切换相关知识如下 【OS学习笔记】二十六 保护模式八任务门—任务切换【OS学习笔记】二十七 保护模式八任务切换的方法之----jmp与call的区别以及任务的中断嵌套 今天继续学习保护模式下的分页机制。本篇文章先介绍段页式内存管理的基本概念。 1、回顾 分段机制我们已经再熟悉不过了前面我们学习过的所有内容都是在分段的机制下工作的。 对于一个多任务系统。如果任务比较多很有可能导致物理内存不够分配的情况。这个时候操作系统的作用就体现出来了。每个段的描述符都有一个TYPE字段。其中有一个A位每当访问一个段时该段的A位就记录该段最近是否被访问过。 当一个段很长时间不被访问操作系统就去将该段从内存中移出去移到磁盘。从而可以空出一块空闲的内存空间可以供其他程序的段来运行。当这个段页不怎么被访问了操作系统用同样的方法将其移出去再加载另一个需要被访问的段。 但是因为段的长度不确定在分配内存时可能会发生内存空间中的区域小于要加载的段或者空闲区域远远大于要加载的段。在前一种情况下需要另外寻找合适的空闲区域在后一种情况下分配会成功但是太过于浪费。 为了解决这个问题从80386开始引入了分页机制。 分页机制从总体上来讲使用长度固定的页来代替长度不一定的段借此来解决因为段长度不同而带来的内存空间的管理问题。 2、简单的分页模型 2.1 回顾分段模型 如下图是一个分段管理机制的模型图 如上图在分段机制下段地址和偏移地址经过段部件后得到的线性地址就是实际的物理地址。分段机制还是很好理解的。这里我们不再赘述。 2.2 分页机制概述 一旦采用分页式内存管理就应该把4GB内存分成大小相同的页。如下图 页的最小单位是4KB也就是4096字节用16进制表示就是0x1000。4GB的物理内存可以划分为1048576个页。很显然页的物理地址其低12位始终位0. 注意段管理机制是无法关闭的。段基址是Intel处理器最基本的管理机制即使开启分页功能分段机制依然存在。段部件依然工作。 在分页机制下程序依然是按照分段来组织的。问题在于如何将程序中比较大的段映射到大小相同的页面上呢 内存分配涉及到段的分配和页的分配。 段的分配就是在虚拟地址空间分配各个段页的分配就是在物理内存中个各个段分配相应数量的页面。如下图 如上图左边的是4GB的虚拟地址空间右边是真实的物理内存空间。 在分页模式下操作系统一般为每个任务创建一个独立的4GB的虚拟地址空间。因此操作系统首先将程序的段映射到相应的虚拟地址空间中在这个过程中也是需要在虚拟地址空间中寻找空闲空间的。然后为虚拟地址空间中的各个段分配相应数量的物理地址空间这是真实的执行代码的内存地址空间。 如上图段肯定是需要连续的但是一个段被分配到物理内存中不一定需要分配连续的页面。其实往往段在内存中对应的页面都是不连续的。 注意4GB的虚拟内存空间不可能保存任何数据和代码因为它是虚拟的它只是用来指示内存的使用情况。 2.3 页映射表概述 因为我们现在引入了虚拟内存所以之前分段机制下段部件输出的地址本身是实际物理地址现在有了虚拟内存我门的程序中的代码和数据首先是需要映射到虚拟内存的所以现在段部件输出的地址就是虚拟地址。也就是说从段部件输出的线性地址此时是虚拟地址。 为了根据虚拟地址线性地址找到真实的物理地址。操作系统必须维护一张表把线性地址虚拟地址转换成物理地址这是一个反过程为什么是反过程下面有讲解。 如下图 因为有1048576个页所以页转换表也是需要有1048576项。这是个一维表格。每个表项占4字节内容为页的物理地址。 这个表格的用法是这样的 因为页的大小是4KB故线性地址的低12位可用于访问页内偏移高20位可用于指定一个物理页。因此把线性地址的高20位当成索引乘以4作为表内偏移量从表中取出一个双字那就是该线性地址所对应的页的物理地址。线性地址的低12位是页内偏移量用页物理地址加上页内偏移量就是最终的物理内存地址。 现在的问题在于页映射表中对应的页的物理地址是怎么来的。这其实是一个反过程。当程序加载时操作系统会位程序虚拟一个虚拟地址空间出来然后将程序的段分配到这个虚拟地址空间中。当腰执行某一个段时将该段拆分成一个或多个页在物理内存中寻找相应的空闲页然后将段分配给找到的页再将这个页的地址与刚刚那个段的地址回写到页映射表。那么下次再访问该段时就知道它所对应的页的物理地址了。 这就是先找到空闲页然后将对应的映射关系回写到页映射表这就是一个反过程。 我们知道一般现在是多任务系统对于多任务每一个任务都有一个4GB的虚拟地址空间并且每一个任务都有一个页映射表。如下图 从上图我们很容易理解一件事假设一个程序被多次加载到内存中执行那么相当于一个程序有多个执行实体。这多个执行实体对应的虚拟地址空间是一模一样的。那么它们相同的段最终产生的线性地址将是一模一样的。因为它们每一个任务都有一个页映射表所以它们对应的物理地址是不一样的。 3 总结 今天简单的学习段页式内存管理机制的概念。并简单了解页映射表机制的相关概念。 详细的内容还是要参考原书籍这里只是做一个简单的总结。 学习探讨加个人 qq1126137994 微信liu1126137994
http://www.sadfv.cn/news/200567/

相关文章:

  • 网站需要多大空间网络舆情分析的免费网站
  • 食品网站的网页设计黑河seo
  • 遵义市做网站的地方亿赐客网站
  • 网站开发前景与趋势如何上海公司官网
  • 注册公司网站怎么做手机网站大全网址大全
  • 中国品牌网站设计九灵云虚拟主机
  • 电子商务网站建设培训小结网页开发网站
  • 找百度公司做网站怎么样中小企业网站功能模块及数据库表
  • 学习网站制作全球热门网站排名
  • 网站制作中企动力亚洲尺码与欧洲尺码区别
  • 北京响应式网站成都企业如何建网站
  • 椒江做网站的公司企业网站托管一年多少钱
  • 六安市城乡和建设局官方网站昆山市建设工程质量检测中心网站
  • 石家庄做网站好的公司推荐中国安能建设集团有限公司网站
  • 做海外生意的网站平面设计都学什么
  • 合肥做英文网站网站新闻页面无法翻页
  • 佛山企业网站建设电话网站开发硬件要求
  • 永久建站空间购买网站建设企业 熊账号
  • 晋中做网站做英文小说网站
  • 网站能不能自己做优秀的网站有哪些内容
  • discuz视频网站模板玩具网站模板
  • 金桥网站建设苏州seo排名公司
  • 网站定制开发特点安徽建设工程造价信息网站
  • 奉贤宜昌网站建设自助打印微信小程序免费制作平台
  • 毕业设计微信小程序开发企业免费网站优化服务
  • 高端网站建设套餐建设网站的价格表
  • 贵州城乡住房建设部网站国外企业网站怎么做
  • 98元建网站企业注册地址变更流程
  • 优质网站建设是哪家网站开发与系统开发
  • 网站建设防火墙级别要求潍坊网站建设网超