4.7UNIX系统的存储管理.pptVIP

  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文档。上传文档
查看更多
4.7UNIX系统的存储管理

4.1 概述 4.2 存储管理的功能 4.3 分区存储管理 4.4 页式存储管理 4.5 段式系统 4.6 段页式存储管理 4.7 UNIX系统的存储管理 4.7 UNIX系统的存储管理 目前流行的UNIX系统采用段页式存储管理的方式,一个进程的图象分为U区、共享正文区、用户栈区和数据区,各进程的各个区的大小是不相等的,只有U区的大小是相等的。这里的区类似于段。每个段又分成大小相等的页,内存的分配是以页为单位的。 因此,在UNIX系统中存储管理(上下文,context)机构包括区表和页表,其结构参见7.7。 4.7.1 概述 UNIX系统的早期版本采用分页存储管理,进程的存储映象可以在内存和交换区之间传递,称为对换; UNIX 第6、7版采用对换。 在目前的一些UNIX系统中,采用请求分页存储管理,也就是采用虚拟存储技术,称为请求调页。 UNIX SYSTEM Ⅴ采用请求调页(请求分页)。以后的UNIX系统的各种版本均采用了请求调页技术。 4.7.2 对换空间的管理 系统盘的结构: 对换存储管理的数据结构 系统设置了两个相同的结构: coremap 内存空闲区表 swapmap 对换区空闲区表 空闲区的分配采用最佳适应法。 程序是:malloc(map,size) 空闲区回收程序: mfree(map,size,aa) map:内存(或对换区);size:大小 ; aa:释放区首址 空闲区首址 空闲区大小 123 50 300 150 0 0 4.7.3 对换进程 对换进程就是0号进程,它一个永远处于核心态的进程。其任务是将进程的映象在内存和对换区之间传递。 (一)进程换入 当内存空闲时,0号进程将对换区中处于就绪状态的进程的映象调入内存,直到内存满,或者是对换区中已经没有处于就绪状态的进程。 调入就绪进程的依据是进程在对换区中驻留的时间,每次调人一个在对换区中驻留时间最在的进程映象进入内存。 (二)进程换出 当内存空间不足时,0号进程将内存中的某些进程换到对换区。 不能换出的进程是核心态的进程(UNIX核心)、处于创建状态的进程、上锁的进程,在内存中驻留时间不足两分钞钟的就绪进程。 换出的顺序是:处于睡眠状态的进程、暂停状态的进程。 若无以上这两类进程,就是处于就绪状态的进程。 按就绪状态的进程在内存中驻留时间从长到短的顺序依次调入内存,直到内存中无进程可调出为止。 4.7.4 请求调页数据结构 进程映象的结构: 在请求调页的系统中,进程映象的结构是U区、正文区、数据区、用户栈区。其中U区的大小是固定的,其它的各区的大小不是固定的。 (一)进程区表 在UNIX system Ⅴ中,一个进程可以有正文区、数据区、用户栈区和U区。其中U区只有处于运行状态的进程才有,其它状态的进程没有U区。每个区又分成若干个页。所以,每个区有一个页表。 (二)页和页表 将用户的程序空间分成大小相等的单位,称为页。并把内存空间也分成与之相等的块。页的大小为512字节。刚好与磁盘的物理块大小相等。 页表的格式如下: 块号:内存块号 年龄:该块在工作集中驻留的时间 修改:表示该页调入内存后修改过,置1,否则为0; 访问:该页调入内存后,被访问过; 有效:为1表示该页在内存,否则不在内存; 保护:该页的存储保护信息; 对换设备:指明对换设备; 磁盘块号:该页在对换设备上的磁盘物理块号。 4.7.6 页面错(缺页中断) 在UNIX系统中产生页面错有两种情况: 1.进程企图访问虚存空间范围之外的页面,即段违例,在这种情况下,核心向违例的进程发送一个“段违例”的软中断。(这是一般操作系统中页面错的处理方法)。 2.进程企图访问一个有效位为0的页(该页不在内存),这时将产生一个有效位错的中断(类似于一般OS中的缺页中断)。核心处理该中断时,将所而的页面调入内存。 4.7.7 偷页进程(页面淘汰) 当有进程需要调人一些页面时,又没有内存空间时,核心将按某种策略将系统中的一些页面调出内存,在一般的OS中称为页面淘汰,在UNIX中称为偷页。 1.选择淘汰的页; 2.选中了淘汰页后,执行淘汰,若修改位为1,表示该页调入内存后,已经修改,淘汰时,要将要淘汰的页面写到相应的磁盘块。若修改位为0,表示该页面调入内存后没有修改过,只是把该页置为空。

文档评论(0)

yaocen + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档