信息存储与管理75页PPT
- 格式:ppt
- 大小:5.97 MB
- 文档页数:75
存储管理-页式管理存储管理-页式管理页式管理解决什么问题分区式管理,存在着严重的碎⽚问题使得内存的利⽤率不⾼1.固定分区,因为每⼀个分区只能分配给某⼀个进程使⽤,⽽该进程可能占不满这个分区,就会有内部碎⽚2.动态分区,会产⽣⼤量的外部碎⽚,虽然可以使⽤紧凑技术,但是这样时间成本过⾼了出现这种情况的原因是分区管理必须要求进程占⽤⼀块连续的内存区域,如果让⼀个进程分散的装⼊到不同的内存分区当中的话,这样就可以充分的利⽤内存,并且不需要紧凑这种技术了。
⽐如把⼀个进程离散的拆分放到零散的内存碎⽚中去,这样就可以更为⾼效的利⽤内存。
也就是产⽣了⾮连续的管理⽅式。
⽐如就是把⼀个进程拆分为若⼲部分,分别放到不同的分区中,⽐如⼀个进程23M,可以拆分为10M,10M,3M放到不同的分区中如果分区分的更⼩,23M拆分为11个2M的,和⼀个1M的,每个分区是2M,那么总共会装满11个分区,剩下⼀个分区装不满,也仅仅浪费1M的空间,也就是分区越⼩的话,那么就是内存利⽤率就会越⾼。
分区式管理时,进程的⼤⼩受分区⼤⼩或内存可⽤空间的限制分区式管理也不利于程序段和数据的共享页式管理的改进页式管理只在内存存放反复执⾏或即将执⾏的程序段与数据部分不经常执⾏的程序段和数据存放于外存待执⾏时调⼊。
页式管理的基本概念页框(页帧):将内存空间分成⼀个个⼤⼩相等的分区,每个分区就是⼀个页框。
页框号:每⼀个页框有⼀个编号,这个编号就是页框号,从0开始页(页⾯):将进程分割成和页框⼤⼩相等的⼀个个区域,也叫页页号:每⼀⼆个页⾯有⼀个编号,叫做页号,从0开始注意:由于最后⼀个页⾯可能没有页框那么⼤,所以页框不可以太⼤,否则会产⽣过⼤的内存碎⽚操作系统会以页框为单位为各个进程分配内存空间,进程的每⼀个页⾯分别放⼊⼀个页框中,也就是进程的页⾯和内存的页框具有⼀⼀对应的关系注意:各个页⾯不需要连续存放,可以放到不相邻的各个页框中如何实现地址的转化1.⾸先需要知道⼀个进程内的页对应物理内存中的起始地址a是多少2.其次要知道进程页内地址b是多少3.逻辑地址对应的实际物理地址就是c=a+b如何计算?⽐如逻辑地址80确定页号:页号=逻辑地址/页⾯长度 1=80/50页内偏移量:页内偏移量=逻辑地址%页⾯长度 30=80%50每个进程页⾯对应物理内存中页框的⾸地址:这是通过页表查询到的,⽐如查询到对应物理内存⾸地址是4500那么对应最终物理地址就是4500+30=4530页表页表的存在是为了让我们知道进程中的⼀个页的页号对应它存放在物理内存中的页框号,进⽽求出页框号对应的⾸地址逻辑地址的结构假如页号有k位,那么页数就是2^k个假如页内地址m位,那么页内地址有2^m个静态页⾯管理在作业或进程开始执⾏之前,把作业或进程的程序段和数据全部装⼊内存的各个页⾯中,并通过页表(page mapping table)和硬件地址变换机构实现虚拟地址到内存物理地址的地址映射。