进程物理内存

物理内存  时间:2021-01-16  阅读:()
五、六章习题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个磁盘块.

Webhosting24:€15/年-AMD Ryzen/512MB/10GB/2TB/纽约&日本&新加坡等机房

Webhosting24是一家始于2001年的意大利商家,提供的产品包括虚拟主机、VPS、独立服务器等,可选数机房包括美国洛杉矶、迈阿密、纽约、德国慕尼黑、日本、新加坡、澳大利亚悉尼等。商家VPS主机采用AMD Ryzen 9 5950X CPU,NVMe磁盘,基于KVM架构,德国机房不限制流量,网站采用欧元计费,最低年付15欧元起。这里以美国机房为例,分享几款套餐配置信息。CPU:1core内存...

快云科技,免云服务器75折优惠服务器快云21元/月

近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...

vdsina:俄罗斯VPS(datapro),6卢布/天,1G内存/1核(AMD EPYC 7742)/5gNVMe/10T流量

今天获得消息,vdsina上了AMD EPYC系列的VDS,性价比比较高,站长弄了一个,盲猜CPU是AMD EPYC 7B12(经过咨询,详细CPU型号是“EPYC 7742”)。vdsina,俄罗斯公司,2014年开始运作至今,在售卖多类型VPS和独立服务器,可供选择的有俄罗斯莫斯科datapro和荷兰Serverius数据中心。付款比较麻烦:信用卡、webmoney、比特币,不支持PayPal...

物理内存为你推荐
服务器空间租用个人网络域名空间租用租服务器租个服务器?哪里租?虚拟主机代理哪家虚拟主机商的代理比较好域名主机域名和主机名之间的区别是什么虚拟主机申请域名申请以及虚拟主机台湾vps虚拟主机,VPS,服务器,其中哪个流量最大?云服务器租用谁知道租用服务器、云主机去哪里租?服务器租用费用价格是多少呀虚拟空间哪个好虚拟空间哪个好jsp虚拟空间jsp虚拟主机有支持的吗1g虚拟主机1G虚拟空间大约多少钱?
域名主机空间 plesk oneasiahost mediafire 优key softbank官网 174.127.195.202 12306抢票攻略 浙江独立 免费个人网站申请 韩国网名大全 刀片服务器是什么 网站木马检测工具 世界测速 web服务器搭建 秒杀品 php服务器 免费php空间 网络速度 杭州电信宽带 更多