[管理学]第4章-存储管理.ppt

  1. 1、本文档共121页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[管理学]第4章-存储管理

4.10.2算法 函数xalloc附接一个正文段到某个进程中去。函数xfree放弃进程所用的共享正文段。 【算法4.14 xalloc】 功能:将一个正文段附接到进程中去。 输入:指向i节点的指针ip。 输出:改变相应的数据结构。 【算法4.15 xfree】 功能:放弃进程所用的共享正文段。 输入:无。 输出:改变相应的数据结构。 xalloc(ip) 正文段大小为0? 查text数组各表项 该正文段已连入? 返回 该正文段上锁 x_count++ p_textp=xp 正文段在 交换区? x_ccount++ fp_flag︱=STEXT 把正文段页表项复制到本进程页表区 正文段开锁 返回 调用xexpand分配内存,换入正文段 text数组满? 报错 释放NODEV设备使用计数为0的正文段 有释放 的吗? 发SIGKILL信号 返 回 为text空表项置初值 i_flag︱ITEXT i_count++ text表项指针送入 P_textp 为正文段分配 内存空间 将正文段读入内存 x_flag=XWRIT 返回 Y N Y N Y N Y N Y N 图4.67 xalloc 算法流程 xfree 正文段指针为空? 该正文段上锁 p_textp=NULL 置正文段指针无效 访问计数 减1为0且不保留在 对换区? 清正文段i节点指针 若该正文段在交换区 则释放对换区 释放正文段所占内存 清i节点正文段标志 i节点上锁? i节点引用计数减1 返回 返回 调用xccdec释放指定的内存正文段 返回 释放该i节点 Y N N Y N Y 图4.68 xfree算法流程 4.11UNIX系统请求调页 4.11.1基本原理 4.11.2数据结构 4.11.3动态地址变换 4.11.4页故障 4.11.5换页进程 4.11.1基本原理 UNIX System V中,系统以页面为单位把内存分配给进程,页面与进程虚地址空间中的一页相对应。当进程访问某虚拟地址时,地址映射机构将该虚拟地址转换为内存物理地址。若访问的虚拟地址所在的页不在内存中,则要将该页装入内存后才能实现虚实地址的转换。若要装入该页时内存无足够页面,则需要请求调页 4.11.2数据结构 为实现请求调页存储管理,UNIX System V设置了页表, 磁盘块描述表,页面数据表和交换使用表4种数据结构。 1. 页表 每一个区有一张页表,页表的每个表项记录了一个页与页 面的对应关系。 页面号 年龄位 有效位 访问位 修改位 保护位 写时才 复制位 图4.69 页表项的内容 2. 磁盘块描述表(Disk Block Descriptor) 由于进程的地址空间在磁盘上都有一个磁盘复制(在文件 系统中和交换区中),因此进程的每一个页在磁盘上都对 应一个块(块和页同样大小)。磁盘块描述表的每个表项 同页表的某一个表项都有对应关系,用来记录进程的各页 的磁盘复制所在的块号。共享同一个区的进程可以访问共 同的页表项和磁盘块描述表项。 交换设备 块号 类型 图4.70 磁盘块描述表表项内容 3. 页面数据表(page frame data table,简称pfdata) 页面数据表描述每一个物理页。 每个表项包含以下内容: (1)页状态。指出页的复制是在交换设备上还是在可执行文件中。 (2)引用页进程数:引用该页的进程数目。 (3)逻辑设备号和块号:逻辑设备可以是交换设备或文件系统。 (4)指向空闲页面链表中下一个页面数据表项的指针。 (5)指向散列队列中下一个页面数据表项的指针。 4. 交换使用表(swap-use table) 在交换设备上的每一页都在交换使用表中占一个表项。交 换使用表的每一个表项由一个引用计数构成,它表示处于 交换设备上的某页有多少页表表项指向它。 交换 使用表项 页面数 据表项 状态 引用 进程数 逻辑 设备号 块号 指针 指针 引用计数 图4.71 页面数据表项和交换使用表项的内容 虚拟地址 493 (页号) 内 存 … 第794页面 … 页表项 794(页面号) 1(交换设备号) 2743(块号) 磁盘块描述表项 页面数据表项(第794页面) 引用计数 对换使用表项(2743块) 1(引用数)1(对换设备)2743(块号) … … 第2743块 对应 交换设备1 图4.72 四种数据结构之间的关系 4.11.3动态地址变换 UNIX System V采用请求调页和交换相结合的方法实现虚拟存储器。当进程执行某虚拟地址时,应将该虚拟地址转换为内存中的物理地址。 根据虚拟地址确定该虚拟地址所 在的页号和页内相对地址 由页表始地址寄存器PBR得

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档