㈠ 如何理解电脑存储管理中的分页管理机制
其实和分段作用是类似的,让更少的地址位数寻址更大的内存空间。
就是和到某个宾馆里的某间房子找东西一样的,你直接给东西的地址编号,肯定要用很多位数,但你要是给房间编号了,就可以少用一些地址位数了,如果再能给宾馆编号,那位数就更少了。
不知我说的对不对,请参考。
㈡ 说明分页存储管理的基本原理
分页存储管理的基本原理是:将主存空间和辅存空间分别等分为大小相等的若干页,页的大小为个字节,如(1KB),(2KB),(4KB)等,并且为每个页按顺序指定一个页号,即0页、1页、2页、…。
㈢ 操作系统概论,关于页式存储管理的基本原理
页号占5位,2^5不就是32吗,5个位表示页号,地址总长度为15,5位表示页号了,剩下10位就是页内地址了,2^10=1024
㈣ 分页存储管理的实现原理
采用分页存储器允许把一个作业存放到若干不相邻的分区中,既可免去移动信息的工作,又可尽量减少主存的碎片。分页式存储管理的基本原理如下:
1、 页框:物理地址分成大小相等的许多区,每个区称为一块;
2、址分成大小相等的区,区的大小与块的大小相等,每个称一个页面。
3、 逻辑地址形式:与此对应,分页存储器的逻辑地址由两部分组成,页号和单元号。逻辑地址格式为 页号 单元号(页内地址) 采用分页式存储管理时,逻辑地址是连续的。所以,用户在编制程序时仍只须使用顺序的地址,而不必考虑如何去分页。
4、页表和地址转换:如何保证程序正确执行呢?
采用的办法是动态重定位技术,让程序的指令执行时作地址变换,由于程序段以页为单位,所以,我们给每个页设立一个重定位寄存器,这些重定位寄存器的集合便称页表。页表是操作系统为每个用户作业建立的,用来记录程序页面和主存对应页框的对照表,页表中的每一栏指明了程序中的一个页面和分得的页框的对应关系。绝对地址=块号*块长+单元号 以上从拓扑结构角度分析了对称式与非对称式虚拟存储方案的异同,实际从虚拟化存储的实现原理来讲也有两种方式;即数据块虚拟与虚拟文件系统. 数据块虚拟存储方案着重解决数据传输过程中的冲突和延时问题.在多交换机组成的大型Fabric结构的SAN中,由于多台主机通过多个交换机端口访问存储设备,延时和数据块冲突问题非常严重.数据块虚拟存储方案利用虚拟的多端口并行技术,为多台客户机提供了极高的带宽,最大限度上减少了延时与冲突的发生,在实际应用中,数据块虚拟存储方案以对称式拓扑结构为表现形式. 虚拟文件系统存储方案着重解决大规模网络中文件共享的安全机制问题.通过对不同的站点指定不同的访问权限,保证网络文件的安全.在实际应用中,虚拟文件系统存储方案以非对称式拓扑结构为表现形式. 虚拟存储技术,实际上是虚拟存储技术的一个方面,特指以CPU时间和外存空间换取昂贵内存空间的操作系统中的资源转换技术 基本思想:程序,数据,堆栈的大小可以超过内存的大小,操作系统把程序当前使用的部分保留在内存,而把其他部分保存在磁盘上,并在需要时在内存和磁盘之间动态交换,虚拟存储器支持多道程序设计技术 目的:提高内存利用率 管理方式
A 请求式分页存储管理 在进程开始运行之前,不是装入全部页面,而是装入一个或零个页面,之后根据进程运行的需要,动态装入其他页面;当内存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面
B 请求式分段存储管理 为了能实现虚拟存储,段式逻辑地址空间中的程序段在运行时并不全部装入内存,而是如同请求式分页存储管理,首先调入一个或若干个程序段运行,在运行过程中调用到哪段时,就根据该段长度在内存分配一个连续的分区给它使用.若内存中没有足够大的空闲分区,则考虑进行段的紧凑或将某段或某些段淘汰出去,这种存储管理技术称为请求式分段存储管理
㈤ 操作系统页式存储管理的问题
存储管理的基本原理内存管理方法 内存管理主要包括内存分配和回收、地址变换、内存扩充、内存共享和保护等功能。 下面主要介绍连续分配存储管理、覆盖与交换技术以及页式与段式存储管理等基本概念和原理。 1. 连续分配存储管理方式 连续分配是操作系统页式存储管理的问题
㈥ 帮帮我 页式存储和段式存储的定义和为什么要这些功能
页式存储分配
页式存储分配是基于这样一种概念,把到来的作业分成相等大小的页。一些操作系统选择页的大小,是根据存储块的大小和作业所存储的磁盘的一些区域的大小来分配的,一般它们是相等的。
磁盘上的一些区域叫做扇区(或者有时候叫块),主存中的这些区域叫做页面。当页面、扇区和主存中的页面都一样大小的时候,上述策略可以很有效的工作。页面的精确大小(每个页面所存储的字节数)通常由磁盘扇区的大小来决定。所以,一个扇区将保存一页作业指令,和内存的一个页面相匹配。
在执行一个程序之前,内存管理器需要的准备工作:
1. 确定程序的页数
2. 在主存中留出足够的空闲页面
3. 将程序的所有页面载入主存里。(静态的分页,页面无需连续)
当程序准备好载入,其页面是一个逻辑序列——第一页保存了程序的第一部分指令,最后一页是最后的一部分指令。为此我们可以假设程序的指令是一行一行的代码,也可以想象成是一些字节。
载入的过程和我们在第二章所学习到的策略是不同的,这是因为页面不用保存在相邻的存储块。实际上,每一页可以保存在主存页面的任何有效的位置(Madnick& Donovan,1974)。
不连续存储方法的首要优点是主存可以更有效的使用,因为一个空闲页面可以被任何作业的任何页使用。另外,用于重新定位的压缩策略可以被消除了,因为页面之间没有外部碎片了。(在很多页中也没有内部碎片)
然而,新的方法会带来新的问题。因为一个作业的页可以保存在主存的任何位置,内存管理需要一个机制来保存它们的情况——这意味着必须增加操作系统软件的大小和复杂度,也就是增加了开支。
段式存储分配
分段的概念是建立在最通常被程序员结构化他们的程序所用的模块的基础上的——逻辑上的一组代码。用段式存储分配方法,每一个作业被分为很多个不同尺寸的段,每一个模块都包含很多相关的功能。一个子分支程序就是这样一个逻辑组的例子。这是和分页策略的本质上的不同,分页策略把作业分成了很多页,都是一样的尺寸,都包含了程序模块的一些部分。
第二个重要的不同是主存不需要再分成页面了,因为每个段的大小都不一样——有的大,有的小。所以,和第二章中讨论的动态分区一样,内存也是动态模式下分配的。
当一个程序被编译后,段就根据程序的结构模块所建立起来。每一个段都编了号并且生成了一个段映射表(SMT);它包含了段序号,它的长度,访问权限,状态和(如果在内存中)内存中的位置。图3-11和图3-12给出了同一个作业,作业1,有一个主程序和两个分支程序组成,还有它的段映射表和实际的主存分配。
就像请求页式一样,引用,分段里也使用页修改和状态位,但是图3-11和图3-12没有给出。
内存管理器需要跟踪段在内存中的情况。这是通过将动态分区和请求页式存储管理都有的3个表格的合并来实现的:
1. 作业表,列出了处理的每一个作业(整个系统一个表)
2. 段映射表列出了每个段的具体情况(每个作业一个表)
3. 内存映射表监视了主存的分配情况(整个系统一个表)
就像请求页式,每个段中的指令顺序排列,但是在内存中段不用连续存储。我们只要知道每个段保存在哪里了。每一个段里的内容是连续的。
http://teach.ycit.cn:8070/kj/jsj/jsjczxt/main/study/xx/kcxx-3-4.htm
http://teach.ycit.cn:8070/kj/jsj/jsjczxt/main/study/xx/kcxx-3-1.htm
上面有更为详细的解释和图例
㈦ 页式存储管理和段式存储管理的区别
段式与页式存储管理的比较如下表所示。
段式
页式
分段由用户设计划分,每段对应一个相应的的程序模块,有完整的逻辑意义。
分页用户看不见,由操作系统为内存管理划分。
段面是信息的逻辑单位
页面是信息的物理单位
便于段的共享,执行时按需动态链接装入。
页一般不能共享
段长不等,可动态增长,有利于新数据增长。
页面大小相同,位置不能动态增长。
二维地址空间:段名、段中地址;段号、段内单元号
一维地址空间
管理形式上象页式,但概念不同
往往需要多次缺页中断才能把所需信息完整地调入内存
实现页(段)的共享是指某些作业的逻辑页号(段号)对应同一物理页号(内存中该段的起始地址)。页(段)的保护往往需要对共享的页面(段)加上某种访问权限的限制,如不能修改等;或设置地址越界检查,对于页内地址(段内地址)大于页长(段长)的存取,产生保护中断。
㈧ 内存管理页式管理和段式管理、段页式管理的区别
一 页式管理
1 页式管理的基本原理将各进程的虚拟空间划分成若干个长度相等的页(page),页式管理把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构,来解决离散地址变换问题。页式管理采用请求调页或预调页技术实现了内外存存储器的统一管理。
它分为
1 静态页式管理。静态分页管理的第一步是为要求内存的作业或进程分配足够的页面。系统通过存储页面表、请求表以及页表来完成内存的分配工作。静态页式管理解决了分区管理时的碎片问题。但是,由于静态页式管理要求进程或作业在执行前全部装入内存,如果可用页面数小于用户要求时,该作业或进程只好等待。而且作业和进程的大小仍受内存可用页面数的限制。
2 动态页式管理。动态页式管理是在静态页式管理的基础上发展起来的。它分为请求页式管理和预调入页式管理。
优点: 没有外碎片,每个内碎片不超过页大小。一个程序不必连续存放。便于改变程序占用空间的大小(主要指随着程序运行而动态生成的数据增多,要求地址空间相应增长,通常由系统调用完成而不是操作系统自动完成)。
缺点:程序全部装入内存。
要求有相应的硬件支持。例如地址变换机构,缺页中断的产生和选择淘汰页面等都要求有相应的硬件支持。这增加了机器成本。增加了系统开销,例如缺页中断处理机,请求调页的算法如选择不当,有可能产生抖动现象。 虽然消除了碎片,但每个作业或进程的最后一页内总有一部分空间得不到利用果页面较大,则这一部分的损失仍然较大。
二 段式管理的基本思想
把程序按内容或过程(函数)关系分成段,每段有自己的名字。一个用户作业或进程所包含的段对应一个二维线形虚拟空间,也就是一个二维虚拟存储器。段式管理程序以段为单位分配内存,然后通过地址影射机构把段式虚拟地址转换为实际内存物理地址。
程序通过分段(segmentation)划分为多个模块,如代码段、数据段、共享段。其优点是: 可以分别编写和编译。 可以针对不同类型的段采取不同的保护。 可以按段为单位来进行共享,包括通过动态链接进行代码共享。
三 段页式管理的实现原理
1 虚地址的构成
一个进程中所包含的具有独立逻辑功能的程序或数据仍被划分为段,并有各自的段号s。这反映相继承了段式管理的特征。其次,对于段s中的程序或数据,则按照一定的大小将其划分为不同的页。和页式系统一样,最后不足一页的部分仍占一页。这反映了段页式管理中的页式特征。从而,段页式管理时的进程的虚拟地址空间中的虚拟地址由三部分组成:即段号s,页号P和页内相对地址d。虚拟空间的最小单位是页而不是段,从而内存可用区也就被划分成为着干个大小相等的页面,且每段所拥有的程序和数据在内存中可以分开存放。分段的大小也不再受内存可用区的限制。
2 段表和页表
为了实现段页式管理,系统必须为每个作业或进程建立一张段表以管理内存分配与释放、缺段处理、存储保护相地址变换等。另外,由于一个段又被划分成了若干页,每个段又必须建立一张页表以把段中的虚页变换成内存中的实际页面。显然,与页式管理时相同,页表中也要有相应的实现缺页中断处理和页面保护等功能的表项。另外,由于在段页式管理中,页表不再是属于进程而是属于某个段,因此,段表中应有专项指出该段所对应页表的页表始址和页表长度。
3 动态地址变换过程
在一般使用段页式存储管理方式的计算机系统中,都在内存中辟出一块固定的区域存放进程的段表和页表。因此,在段页式管理系统中,要对内存中指令或数据进行一次存取的话,至少需要访问三次以上的内存:
第一次是由段表地址寄存器得段表始址后访问段表,由此取出对应段的页表在内存中的地址。
第二次则是访问页表得到所要访问的物理地址。
第三次才能访问真正需要访问的物理单元。
显然,这将使CPU的执行指令速度大大降低。为了提高地址转换速度,设置快速联想寄存器就显得比段式管理或页式管理时更加需要。在快速联想寄存器中,存放当前最常用的段号s、页号p和对应的内存页面与其它控制用栏目。当要访问内存空间某一单元时,可在通过段表、页表进行内存地址查找的同时,根据快速联想寄存器查找其段号和页号。如果所要访问的段或页在快速联想寄存器中,则系统不再访问内存中的段表、页表而直接把快速联想寄存器中的值与页内相对地址d拼接起来得到内存地址。
总之,因为段页式管理是段式管理的页式管理方案结合而成的,所以具有它们二者的优点。但反过来说,由于管理软件的增加,复杂性和开销也就随之增加了。另外,需要的硬件以及占用的内存也有所增加。更重要的是,如果不采用联想寄存器的方式提高CPU的访内速度,将会使得执行速度大大下降。
㈨ 描述一个包括页面分配与回收、页面置换和存储保护的请求页式存储管理系统
请求页式管理系统属于动态页式管理中的一种。
页面分配有相应的“分配算法”。请求表给出要求页数--->储存页面表检查是否有足够空闲页面--->否,此次无法分配;是,分配并设置页表,填写请求表相应信息,搜索所要求的空闲页面,将对应页面号填入页表。
回收算法很简单,进程执行完毕后更新页表、页面表。
置换算法宗旨是淘汰被访问概率最低的页,将其移出内存。常用算法有:随机淘汰算法、轮转法、先进先出算法、最近最久未使用页面置换算法以及理想型淘汰算法。(具体算法及优缺点可以网络到,很多资料。)
关于存储保护,一般有两种方式,一种是地址越界保护(由地址变化机构中的控制寄存器的值——页表长度和所访问的虚地址完成。),另一种是通过页表控制对内存信息的存取操作方式以提供保护(在页表中增加相应的保护位)。
㈩ 页式管理的基本原理
将各进程的虚拟空间划分成若干个长度相等的页(page),页式管理把内存空间按页的大小划分成片或者页面(page frame),然后把页式虚拟地址与内存地址建立一一对应页表,并用相应的硬件地址变换机构,来解决离散地址变换问题。页式管理采用请求调页或预调页技术实现了内外存存储器的统一管理。