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

男女上做床全播放网站武汉大学人民医院精神卫生中心

男女上做床全播放网站,武汉大学人民医院精神卫生中心,铜仁市城乡住房与建设局网站,web网站开发方法页式管理 学过计组的同学都了解一点页式管理,就是将内存划分成较小的、大小固定的、等大的块。现在OS引入了进程的概念,那么为了匹配内存的分块,同样把进程也划分成同样大小的块。 这里区分两个概念 The chunks of a process are called p…

页式管理

学过计组的同学都了解一点页式管理,就是将内存划分成较小的、大小固定的、等大的块。现在OS引入了进程的概念,那么为了匹配内存的分块,同样把进程也划分成同样大小的块。

这里区分两个概念

  • The chunks of a process are called pages→进程划分的块称为页
  • The chunks of memory are called frames/ page frames→内存划分的块叫做页框(物理页面、页帧)
    从语义去分析页和页框的区别和联系,把进程加载到内存,相当于把页放到页框中

在组原的课程当中我们知道逻辑地址包括页号和页内偏移量,有以下两个基本公式:

  • 页号=逻辑地址/页面大小
  • 偏移量=逻辑地址%页面大小
    看一下这个例子
    image.png
    按照我们之前的分区和分页的概念,假设用户空间大小是2700B,访问地址是十进制的1502。按照分区的思想如图a所示访问,按照分页思想如图b所示。

一般来说,页面大小都是2的整数次幂,可以直接通过位运算得到结果。比如,页大小是1K = 2^10,那么偏移量 = 逻辑地址%页面大小 ,也就是逻辑地址后10位,前面的6位就是页号。

下标从0开始,所以page1是从上往下数第二个页面,即从1024开始到2047结束,然后偏移量offset=478是针对于1024的基地址的相对位移。

最后我们可以看到,图b在最下面有一段内部碎片,就是page2中不会使用到的区域,但是为了分页必须要分配。

分页的特点

  • 没有外碎片,每个内碎片不超过页大小
  • 一个程序不必连续存放(支持虚拟存储
  • 便于改变程序占用空间的大小
  • 简单分页,程序全部装入内存
  • 不易实现共享
  • 不便于动态连接

页表

为了便于管理进程,操作系统为每个进程维护一张页表,包含进程的每个页面所对应的页框位置(号),即逻辑地址和物理地址的映射关系。
image.png
如图所示,OS给A、C、D进程分配了页框,其中A是连续的0-3,而C是连续的7-10,D比较特殊是4-6+11-12,空闲13-14。由于会出现像D这种分配的页框不连续的情况,所以就必须使用页表专门记录。

接下来说一下,地址映射关系和存储保护机制
image.png

如图所示,页表开始地址b放在页表始址寄存器,类似于基址寄存器。页表长度l放在页表长度寄存器,防止地址越界。
根据图示,地址映射关系可以按以下步骤描述:
第一步:比较运算

  • 将逻辑地址对应的页号pl 进行比较(比较条件为 P >= l),这决定了数据流向哪个分支,如果为真则地址越界抛出异常,反之进行下一步。
    第二步:加法运算
  • 页表始址 b 和页号 p 通过b+p*页表项长度查询页表,得到的结果p'就是所在页框的物理起始地址。
    第三步:输出映射
  • 在右侧分支,p'd 直接结合作为输出,得到真实的物理地址。
    注:之所以p=l也被视为是地址越界,因为我们的下标默认都是从0开始,所以页号最大是l-1,等于l也是非法的,实际写过代码的同学会比较熟悉。

段式管理

类似进程的管理,我们的程序在逻辑上也可以分开,也就是我们常说的分段管理,比如代码段、数据段等。段式管理中一般段长可变,但是有最大段长。
段式地址有两个部分构成,和页式管理类似

  • a segment number 段号
  • an offset 段内偏移量
    image.png
    回到我们之前看的这个例子,如图c采用段式存储,每一个段长度不一,偏移量指的是相对于每个段的起始地址。

接下来我们了解一下段式存储的内存划分和分配:
image.png

  • 内存划分:内存空间被动态的划分为若干个长度不相同的区域,这些区域被称为物理段,每个物理段由起始地址和长度确定
  • 内存分配:以段为单位分配内存,每一个段在内存中占据连续空间,但各段之间可以不连续存放

分析:

  • 没有内碎片,外碎片可以通过内存压缩来消除
  • 一个程序不必连续存放(支持虚拟存储)
  • 便于改变进程占用空间的大小
  • 便于存储保护、共享
  • 简单分段,进程全部装入内存

注:存储保护和共享我们下一章节会详细来说

段表

与页式管理类似,段式管理也有段表,不过由于每个段的长度不同,所以段表长度寄存器的值不是唯一的。

  • 进程段表:描述组成进程地址空间的各段,可以是指向系统段表中表项的索引。每段有段基址(base address)和段长度
  • 系统段表:系统内所有占用段,包含始值、段长等
  • 空闲段表:内存中所有空闲段,可以结合到系统段表中
    段式管理内存的分配算法:首次适配、下次适配、最佳适配等,即动态分区。

image.png

具体流程如下:

  • 输入逻辑地址:逻辑地址部分由段号 S 和段内地址 d 组成。
  • 地址越界检查:通过段号S和Cl的比较,判断地址越界,方法同页式管理
  • 查找段表:通过Cb+S*段表项长度查找段号找到对应的段基地址 b 和段长 l
  • 地址越界检查:将 dl 比较,确保 d 小于l,即段内偏移小于段长。
  • 计算物理地址:如果 d 在范围内,计算物理地址 b + d
    注:由于段长是不固定的,所以在计算得到物理地址之前会进行第二次检查地址越界

页式管理和段式管理的比较

  • 分页是出于系统管理的需要,分段是出于用户应用的需要。
    一条指令或一个操作数可能会跨越两个页的分界处,而不会跨越两个段的分界处。
  • 页大小是系统固定的,而段大小则通常不固定。
  • 逻辑地址表示:
    分页是一维的,各个模块在链接时必须组织成同一个地址空间;
    分段是二维的,各个模块在链接时可以每个段组织成一个地址空间。
    通常段比页大,因而段表比页表短,可以缩短查找时间,提高访问速度。

image.png

注:这里的一维和二维是根据程序员编程的角度分析,由于页的大小是固定的,所以给出一个逻辑地址OS就可以直接对应到物理地址,但是段的大小不一,就必须给定段名和段内地址,类似于基址变址寻址。

http://www.zhongyajixie.com/news/36405.html

相关文章:

  • 国家资源库建设网站成都网站制作设计公司
  • 部队网站制作网站免费搭建
  • 绥化做网站外贸seo网站建设
  • 网站建设教程培训整合营销策略
  • 网站关键字排名怎么做必应搜索引擎
  • 沈阳做网站需要多少钱注册平台
  • 怎么自己做彩票网站吗数字营销公司
  • 多语言外贸网站开发百度图片识别在线使用
  • 网站内容包括哪些高级seo优化招聘
  • wordpress menu表重庆seo薪酬水平
  • wordpress o connorseo关键词排名优化哪家好
  • 保洁公司做网站有什么作用网址查询工具
  • seo技术经理常州seo排名收费
  • 北京企业展示网站建设网站建设平台
  • 最新采购求购信息网站北京seo优化方案
  • 怎样做简易局域网站点互联网营销
  • 成都市建委北京百度seo公司
  • 介绍做ppt高大上图表的网站网推技巧
  • 期刊网站建设西安网站制作
  • 网站怎么做搜索引擎技巧
  • 怎么让百度搜到网站有免费推广平台
  • 如何做网站运营博客网站seo
  • 数字博物馆网站建设广州网站推广联盟
  • 水淼wordpressseo基础入门教程
  • 首页网站怎么做google手机官网
  • 沈阳网页设计方案成都seo优化公司
  • 哪里有做枪网站的第三方营销策划公司有哪些
  • 社区网站如何做内容运营中国新闻发布
  • 怎么用模板做网站怎么在百度上发布个人文章
  • 策划电子商务网站建设规划书seo怎么做