五、六章习题2018-12-5Chap5【4】分页式虚拟内存管理是如何实现内存管理的保护需求和共享需求的保护需求有两方面含义:隔离需求:即一个进程只能访问所分配的物理内存空间,不能跨越进程边界,访问另一个进程的物理内存空间;读写访问控制需求:一个物理内存分区/分段/分页作为一项资源,必须附加读写访问控制标识,对物理内存分区的访问必须受到访问控制的保护.
共享需求也有两方面含义:一是指整个物理内存空间被多个进程镜像所共享,从而在存储方面支持了多道程序设计;二是指,有时需要打破进程边界,让一些数据和代码被多个进程共享.
这样内存当中只有这些代码和数据的一个副本,从而节约了内存空间.
比如共享库(动态链接库)就是在多个进程间共享的代码,而共享内存(sharedmemory)就是多个进程共享同一数据的具体实现.
分页式虚拟内存管理通过进程控制块、页表、页表基址寄存器(PTBR)以及地址转换机制共同来实现保护需求.
具体过程如下:每个进程都有一个与之关联的页表,不同进程的页表存放在内存的不同区域,进程控制块(PCB)中保存着页表的基址.
由于不同进程的页表把虚拟页面映射到不同的物理页面,所以每个进程能够访问的物理内存空间仅仅局限在页表所限定的物理页面中,这就实现了进程的隔离需求.
另外,页表项中的读写控制位(《教材》图5-22)规定了对一个页面的读写操作许可位,限定了对一个虚拟(物理)页面的读写操作,进而实现了读写访问控制需求.
在实现代码和数据的共享时,只需要在进程的页表中,将相应的虚拟页面映射到同一物理页面即可实现单一副本共享(《教材》图5-22).
【13】解答:页面为4KB大小,则虚拟地址低12位为页面偏移,高20位为页面号.
因此有1M个页面,页表项有1M项.
由于程序和数据位于0号页面,堆栈位于最高页面,即1M-1号页面,其余页面均没有被分配出去,但是仍然在页表中占用页表项,因此很不经济.
如果采用二级页表,页目录占10位,二级页面号占10位,那么页目录项有1K个,每个二级页表的表项有1K个.
这样可以用一个页目录项表示1K个虚拟页面是否被分配,就比以及页表经济得多.
【14】虚拟地址空间物理地址空间哪段程序具有较好的局部性vaddr命中检查TLB20nsYes95%形成物理地址用物理地址访问内存80ns得到数据No5%一级页表访问一级页表80ns二级页表访问二级页表80ns得到页表项Validbit检查有效位形成物理地址validbit=190%触发缺页故障validbit=010%用物理地址访问内存80ns得到数据有空闲物理页面按照置换算法选择一个物理页面假定没有是否被更新过更新页表,更新TLB未更新过80%页面载入5000ns再次以vaddr访问TLB,这次能命中20ns形成物理地址用物理地址访问内存80ns更新过20%回写磁盘页面载入(5000*2)ns得到数据更新页表,更新TLB再次以vaddr访问TLB,这次能命中20ns形成物理地址用物理地址访问内存80nsCh6【8】谈谈文件的生命周期与打开文件的生命周期有什么不同答:文件存储在持久介质中,其生命周期跨越多次开机关机.
而打开文件对应内核中的一系列数据结构,这些数据结构随着进程打开一个文件而建立,随着进程关闭一个文件或者进程退出而消亡.
因此打开文件的生命周期存在于一个进程的生命周期中.
【11】假设UNIX系统已经在/path路径下挂载了一个文件系统.
那么一个应用程序为了读取/path/to/file的第一个字节,必须额外访问多少次磁盘答:要访问file的第一个字节,必然要进行一次磁盘访问,除此之外,还要根据路径名找到file文件,需要额外的磁盘访问.
找到file的文件内容需要经历下面几个步骤:1.
访问根目录"/"的i-node,需要访问一次磁盘;2.
根据i-node找到根目录的目录项列表;3.
在目录项列表中查找"path"对应的目录项,并得到path目录的i-node号,访问该i-node;4.
根据i-node得到path的目录项列表;5.
在path的目录项列表中查找"to"对应的目录项,并得到to的i-node号,访问该i-node;6.
根据i-node得到to的目录项列表;7.
在to的目录项列表中查找"file"对应的目录项,并得到file的i-node号,访问该i-node;8.
从i-node中得到file的文件内容磁盘分布,访问其第一个字节.
上述每个步骤都需要进行一次磁盘访问.
因此额外访问的次数是7次.
【14】设物理块大小为1K字节.
对于UNIX混合索引表,假设每个物理块最多可存放256个物理块号,请分别计算长度为7K字节、20K字节和50M字节的文件占用多少个数据块多少个直接索引块、多少个一级间接索引块、多少个二级间接索引块和多少个三级间接索引块对于50M大小的文件,共有50K个磁盘块,显然需要用到二级索引表,因为二级索引表可以表示256*256=64K个块,因此(50K-256-12)个块用二级索引来表示.
(50K-256-12)/256=198.
9.
一级索引表占一个块,二级索引表共有199个,即占199个块,因此二级索引表共占200个磁盘块.
老周互联怎么样?老周互联隶属于老周网络科技部旗下,创立于2019年12月份,是一家具有代表性的国人商家。目前主营的产品有云服务器,裸金属服务器。创办一年多以来,我们一直坚持以口碑至上,服务宗旨为理念,为用户提供7*24小时的轮班服务,目前已有上千多家中小型站长选择我们!服务宗旨:老周互联提供7*24小时轮流值班客服,用户24小时内咨询问题可提交工单,我们会在30分钟内为您快速解答!另免费部署服务器...
pigyun怎么样?PIGYunData成立于2019年,2021是PIGYun为用户提供稳定服务的第三年,目前商家提供香港CN2线路、韩国cn2线路、美西CUVIP-9929、GIA等线路优质VPS,基于KVM虚拟架构,商家采用魔方云平台,所有的配置都可以弹性选择,目前商家推出了七月优惠,韩国和美国所有线路都有相应的促销,六折至八折,性价比不错。点击进入:PIGYun官方网站地址PIGYUN优惠...
Chia矿机,Spinservers怎么样?Spinservers好不好,Spinservers大硬盘服务器。Spinservers刚刚在美国圣何塞机房补货120台独立服务器,CPU都是双E5系列,64-512GB DDR4内存,超大SSD或NVMe存储,数量有限,机器都是预部署好的,下单即可上架,无需人工干预,有需要的朋友抓紧下单哦。Spinservers是Majestic Hosting So...
物理内存为你推荐
免费云主机有永久免费的云主机吗?vps试用求个免费现成的vps(可永久可试用)网站服务器租用公司想建个网站,请问租服务器按年收费是多少钱免费vps服务器有没有便宜的vps,最好是免费的网站域名空间网站域名和空间免费网站空间有没有免费的网站空间推荐网站空间购买企业网站空间购买的网站空间具体需要多大的合适?免备案虚拟主机哪家免备案虚拟主机好,而且便宜点的?大连虚拟主机上海未星网络科技有限公司是一家什么样的公司?淘宝虚拟主机淘宝买虚拟主机空间好吗?
厦门域名注册 日本私人vps 免费动态域名解析 sugarhosts adman softlayer 免备案cdn ubuntu更新源 搜狗12306抢票助手 免费个人网站申请 南通服务器 支付宝扫码领红包 购买国外空间 英国伦敦 云服务器比较 杭州电信 SmartAXMT800 asp简介 跟踪路由 泥瓦工 更多