首页 存储管理功能课件知识

存储管理功能课件知识

举报
开通vip

存储管理功能课件知识第六章存储管理存储管理功能内存资源管理存储管理方式外存空间管理虚拟存储系统6.1存储管理功能存储分配和去配分配去配对象内存、外存相同方法)分配去配时刻进程创建、撤销、交换、长度变化存储共享目的:节省内存、相互通讯内容:代码、数据存储保护防止地址越界防止操作越权6.1存储管理功能Cont.)存储扩充内存、外存结合虚拟存储体系速度接近内存,容量相当外存地址映射逻辑地址=>物理地址硬件支持基址寄存器base)、限长寄存器(limit)、快表;使用上述寄存器完成地址映射过程;不能正常完成地址映射时产生中断6.2内存资...

存储管理功能课件知识
第六章存储管理存储管理功能内存资源管理存储管理方式外存空间管理虚拟存储系统6.1存储管理功能存储分配和去配分配去配对象内存、外存相同方法)分配去配时刻进程创建、撤销、交换、长度变化存储共享目的:节省内存、相互通讯内容:代码、数据存储保护防止地址越界防止操作越权6.1存储管理功能Cont.)存储扩充内存、外存结合虚拟存储体系速度接近内存,容量相当外存地址映射逻辑地址=>物理地址硬件支持基址寄存器base)、限长寄存器(limit)、快 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf ;使用上述寄存器完成地址映射过程;不能正常完成地址映射时产生中断6.2内存资源管理6.2.1内存分区分区时刻静态分区:系统初始化时分;动态分区:申请时分分区大小等长分区:2i异长分区:依程序、程序单位、对象大小。通常作法静态+等长(页式、段页式动态+异长(段式、界地址)6.2.2内存分配静态等长分区的分配字位映象图空闲页面表空闲页面链动态异长分区的分配最先适应FirstFit)最佳适应(BestFit)最坏适应(WorstFit)字位映象图(bitmap100…1...10第0页第2页第1页第k页第n页......分配:自头寻找第一个为0的位改为1,返回页号;去配:页号对应的位bit)置为0用一个bit代表一页状态0表空闲,1表占用(多单元空闲页面表首页号空页数............1204特点:可以分配连续页面占用占用120页121页122页123页......空闲页面链占用占用占用Head:优点:节省空间(不适合管理外存动态异长分区的分配空闲区首址空闲区长度............25001500数据结构:Criteria:尽量使空闲区域连续初始时一个连续空闲区长度=0为表尾。最先适应算法(FirstFit空闲区首址空闲区长度128641024256322560......空闲区:首址递增排列;申请:取第一个可满足区域;优点:尽量使用低地址空间高区保持大空闲区域缺点:可能分割大空闲区。Eg.申请32将分割第一个区域。最佳适应算法(BestFit空闲区:首址递增排列;申请:取最小可满足区域;优点:尽量使用小空闲区保持大空闲区缺点:可能形成碎片fragment)。Eg.申请30将留下长度为2的空闲区。空闲区首址空闲区长度128641024256322560......最坏适应算法(WorstFit空闲区:首址递增排列;申请:取最大可满足区域;优点:防止形成碎片缺点:分割大空闲区域。空闲区首址空闲区长度128641024256322560......UNIX存储分配--FFstructmap{char*m_size;char*m_addr;};structmapcoremapCMAPSIZ;structmapswapmap[SMAPSIZ];defineCMAPSIZ100defineSMAPSIZ100mallocmpsize)structmap,*mp;{registerinta;registerstructmap*bp;for(bp=mp;bp->m_size;bp++){if(bp-m_size>=size){a=bp->m_addr;bp->m_addr=+size;if((bp->m_size=-size)==0)do{bp++;(bp-1)->m_addr=bp->m_addr;}while((bp-1)->m_size=bp->m_size);return(a);}}return(0);}mfreempsize,aa)structmap*map;{registerstructmapbp;registerintt,a;a=aa;for(bp=mp;bp->m_addr<=a&&bp->m_size=0;bp++);if(bp>mp&&(bp-1)->m_addr+(bp-1)->m_size==a){//与前合并(bp-1)->m_size=+size;if(a+size==bp->m_addr){//前后合并(bp-1)->m_size=+bp->m_size;while(bp->m_size){bp++;(bp-1)->m_addr=bp->m_addr;(bp-1)->m_size=bp->m_size;}}}}else{ifa+size==bp->m_addr&&bp->m_size){//与后合并bp->m_addr=-size;bp->m_size=+size;}elseif(size)do{//无合并t=bp->m_addr;bp->m_addr=a;a=t;t=bp->m_size;bp->m_size=size;bp++;}while(size=t);}}6.2.3碎片处理紧凑:移动占用区域使所有空闲区域连成一片(开销很大OSP1248k)P2250k)8k6k4k256k:512k:768k:264k:518k:P1OSP2256k:504k:754k:18k6.3存储管理方式界地址管理方式(一维地址页式管理方式(一维地址)段式管理方式(二维地址)段页式管理方式(二维地址)6.3.1界地址管理方式4.3.1.1基本原理1.内存空间划分:动态异长;2.进程空间划分:一个进程一个区域逻辑地址0l-13.进程空间与内存空间对应关系(可以浮动:0:l-1:......b:lb+l-1:进程空间内存空间6.3.1界地址管理方式4.所需表目:1)内存分配表--在PCB中;(2)空闲区域表:arrayof(addrsize)5.所需寄存器:(1)基址寄存器;(2)限长寄存器。6.地址映射:6.3.1界地址管理方式0:l-1:......b:lb+l-1:lb逻辑地址CP+aa+b步骤:1)由程序确定逻辑地址a;(2)a与l比较判断是否越界不满足:0al-1,越界;(3)a与b相加得到物理地址进程空间内存空间6.3.1界地址管理方式6.3.1.2双对界代码:一对界数据:一对界6.3.1.3交换技术swapping)例:UNIX交换进程sched(0)交换原则:外存SRUN状态进程内存(1)内存有空间直接移入;(2)内存空间不够,移出SWAITSSTOP状态进程;(3)如果还不够,移出SSLEEP,SRUN状态进程,条件:在外时间3秒;在内时间2秒b1l1b2l26.3.2分页式存储管理paging)6.3.2.1基本原理1.内存空间划分:静态等长2i称为一个页架......第0页第1页第k页第2n-i-1页2i02i:12i:k2i:2n-i-1)2i:物理地址=页架首址+页内地址=页架号2i+页内地址=页架号页内地址i位n-i位6.3.2分页式存储管理2.进程空间划分:静态等长2i称为一个页面......第0页第1页第k页第l-1页2i02i:12i:k2i:l-1)2i:逻辑地址=逻辑页首址+页内地址=逻辑页号2i+页内地址=逻辑页号页内地址i位3.进程空间与内存空间对应关系...第0页第1页第2页第3页第16页第22页第32页第15页.........进程空间内存空间4.所需表目:1)页表每个进程一个物理页号逻辑页号:1522163201235.所需寄存器2)总页表:系统一个1)页表首址寄存器:bl2)页表长度寄存器:系统一个系统一个3)快表:系统一组:逻辑页号页架号............fp逻辑地址pd)物理地址(f,d)(1)由程序确定逻辑地址(p,d);(2)由p查快表得页架号f;如查不到:(a)由p与l比较判别是否越界:不满足:0pl-1,越界;(b)由p和b查页表得f,(p,f)快表,如满淘汰一个;(c)转(2);(3)f与d合并得物理地址6.地址映射:pd)(f,d){}...逻辑页号页架号............fplbbl......PCB页架号逻辑页号...f...p...fdpd+cppf物理地址逻辑地址b:...6.3.2.2多级页表提出背景进程虚拟空间大幅度增加单级页表需要很大连续内存空间多线程设计导致进程虚拟空间不连续性页表所占内存空间浪费例如32位进程地址空间页长4k(占12位,页号20位,页表需要220个入口解决策略二级或多级页表Two-LevelPage-TableSchemeTwo-LevelPagingExampleAlogicaladdresson32-bitmachinewith4Kpagesize)isdividedinto:apagenumberconsistingof20bits.apageoffsetconsistingof12bits.Sincethepagetableispagedthepagenumberisfurtherdividedinto:a10-bitpagenumber.a10-bitpageoffset.Thus,alogicaladdressisasfollows:wherepiisanindexintotheouterpagetable,andpjisthedisplacementwithinthepagetable.pagenumberpageoffsetpipjd101012Address-TranslationSchemeAddress-translationschemeforatwo-level32-bitpagingarchitectureEventhoughtimeneededforonememoryaccessisquintupledcachingpermitsperformancetoremainreasonable  6.3.2.3反置页表invertedpagetable)传统页表面向进程空间每个进程逻辑页面有一表项当进程空间很大时页表很大反置页表面向内存空间每个内存页架一个表项大小固定反置页表--工作原理程序物理内存……pidp……fdpidpdf逻辑地址物理地址反置页表速度问题反置页表查找由表头起始平均为表长度的一半速度慢解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 在反置页表前增加一级杂凑表查找杂凑表与反置页表需要两次访问内存为进一步提高速度,快表缓冲1.内存空间划分:动态异长每区一段段首址+段内地址物理地址=b’:l’b’+d6.3.3分段式存储管理segmentation)2.进程空间划分:若干段每段一个程序单位调用x段ef:访问d段ae:调用y段fmain段号0)X段号1)Y段号2)D段号3)a:0…80k-10...40k-10…20k-10…60k-1逻辑地址=段号段内地址二维地址)mainxyd3.对应关系40k60k80k20k............进程空间内存空间100k:200k:300k:320k:4.所需表目1)段表:每进程一个段首址段长度100k40k80k60k段号0:1:2:3:20k200k320k300k2)空闲表:系统一个arrayof(addrsize)5.所需寄存器1)段表首址寄存器:bl2)段表长度寄存器:系统一个系统一个3)快表:系统一组:段号段首址段长度............l’s...b’...6.地址映射:sd)(b’+d){}逻辑地址(s,d)物理地址(b’+d)(1)由程序确定逻辑地址(s,d);(2)由s查快表得b’和l’如查不到:(a)由s与l比较判断是否越界不满足:0sl-1越界;(b)由s和b查段表,得b’和l’(s,b’,l’)快表,如快表满淘汰一个;(c)转(2)(3)由d与l’比较,判断是否越界不满足:0dl’-1,越界;(4)由b’d得物理地址段号段长段首址...…...…......l’b’slbbl......PCB段长段首址段号…...l’b’...s...b’+d物理地址sd逻辑地址…...cp+b:若快表查不到段号段长段首址...…...…......l’b’slbbl......PCB段长段首址段号…...l’b’...s...b’+d物理地址sd逻辑地址…...sl’b’cp+b:+cp6.3.3.2段的共享段长段首址…...b’l’......段号…si...P1段表:段长段首址…...b’l’......段号…sj...P2段表:共享段......b’:l’内存空间如何实现共享段表段名共享记数段长段首址其它…………...vi335k125k?…………...共享段表:进程段表n)共享段表(1)共享段(1)例子:UNIX正文段text段)structtext{intx_daddr;/*diskaddressintx_caddr;/*coreaddressifloadedintx_size;/*size(64)int*x_iptr;/*inodepointercharx_count;/*referencecountcharx_ccount;/*numberofloadedreference;}textNTEXT;defineNTEXT40structproc{……int*p_textp;/*pointertotextstructure;}structuser{……intu_tsize;……}6.3.3.2段的保护1)段表的改进:段长段首址……......l’b’101段号…s...访问权限RWE……......段号段长段首址………......sl’b’101访问权限RWE2)快表的改进:………......6.3.4段页式存储管理segmentationwithpaging)段式优于页式便于共享和保护页式由于段式消除碎片问题段页式:结合二者优点每个进程包含若干段每个段包含若干页6.3.4.1基本原理1.内存空间划分:同页式)静态等长2i称为一页物理地址=(页架号,页内地址)=(f,d)2.进程空间划分:一个进程若干个段一个段若干个页逻辑地址=(段号,逻辑页号,页内地址)=(s,p,d)3.对应关系:0页1页2页0页1页第1段:0页1页2页第0段:第2段:25页26页27页28页29页30页31页32页33页......内存空间进程空间4.所需表目1)段表:每个进程一个页表首址页表长度…...b’l’…...段号0...s...l-12)页表:每个段一个逻辑页号0…p…l’-1页架号...f...3)总页表:系统一个5.所需寄存器1)段表基址寄存器:保存正运行程度段表首址;(2)段表限长寄存器:保存正运行程序段表长度(3)快表:一组联想寄存器(快段表+快页表)段号逻辑页号页架号……...spf……...bl6.地址映射P.141):(sp,d)(f,d){}逻辑地址(s,p,d)物理地址(f,d)(1)由程序确定逻辑地址;(2)由(s,p)查快表得f;如找不到:(a)由s与l比较判断是否越界:不满足:0sl-1,越界(b)由s和b查段表得页表(b’,l’)(c)由p与l’比较判断是否越界:不满足:0pl’-1,越界(d)由b’与p查页表得f(s,p,f)快表若快表已满,淘汰一个(e)转(2)(3)由f与d合并得物理地址(f,d)
本文档为【存储管理功能课件知识】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
嘉德two
本人2009年毕业于湖南工业职业技术学院,学历大专,专业为机械设计与自动化,后在工作期间自考的武汉大学的机械设计与自动化专业的本科学历,并取得学士学位;先后在比亚迪汽车股份有限公司十七事业部担任机械设计工程师,在德昌电机APG事业部担任机械工程师,2013年后进入深圳市富诚达科技有限公司,从机械设计工程到高级机械工程师,在机械设计主管等这些职称都在这家公司都担任过。目前是担任机械设计主管一职。
格式:ppt
大小:201KB
软件:PowerPoint
页数:54
分类:企业经营
上传时间:2022-08-08
浏览量:1