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

崇明专业做网站北京aso优化

崇明专业做网站,北京aso优化,公司网站如何做推广,导购网站 模板页式管理 学过计组的同学都了解一点页式管理,就是将内存划分成较小的、大小固定的、等大的块。现在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.tj-hxxt.cn/news/125644.html

相关文章:

  • 常德做网站专业公司网站推广怎样做
  • 网站模板带有sql后台下载宁波网站seo诊断工具
  • 运动服装商城网站建设品牌推广策略分析
  • 胶州做网站的百度服务中心人工客服
  • 成都工业设计公司排名手机seo百度点击软件
  • 网站建设价格标准报价单独立站seo是什么
  • 网站建站公司公告云南网络推广公司排名
  • 网站栏目规划叫什么win7优化设置
  • 数字今天科技 网站关键词免费网站
  • 淘宝上 网站建设百度推广客户端下载网址
  • c2c网站制作襄阳seo培训
  • 做企业网站能赚钱吗?查关键词排名软件
  • 网站建设云创金城武重庆森林经典台词
  • 做美食直播哪个网站最好百度推广销售话术
  • 淘宝网网页安徽百度seo公司
  • ps如何做网站导航图湖南竞价优化专业公司
  • 企业网站建设的基本内容深圳品牌策划公司
  • 怎么做解析视频网站保定seo排名
  • ps做素材下载网站网站推广方案策划书2000
  • 清远市清城区发布长春网站seo哪家好
  • 网站建设流程步骤怎么样优化生育政策
  • 做搜狗pc网站知名的搜索引擎优化
  • 如何做国外外贸网站百度客户端登录
  • 佛山免费建站百度推广信息流有用吗
  • 武汉高端网站建设简述如何对网站进行推广
  • 移动网站建设价格便宜优化关键词排名提升
  • 网站建设相关标准爱站网排名
  • 牡丹江建设工程信息网站中国营销网官网
  • 网站改版升级通知北京seo不到首页不扣费
  • 响应式网站自助建站网站设计公司建设网站