心得体会 存储器管理心得体会.docx

上传人:b****3 文档编号:4702507 上传时间:2022-12-07 格式:DOCX 页数:14 大小:25.75KB
下载 相关 举报
心得体会 存储器管理心得体会.docx_第1页
第1页 / 共14页
心得体会 存储器管理心得体会.docx_第2页
第2页 / 共14页
心得体会 存储器管理心得体会.docx_第3页
第3页 / 共14页
心得体会 存储器管理心得体会.docx_第4页
第4页 / 共14页
心得体会 存储器管理心得体会.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

心得体会 存储器管理心得体会.docx

《心得体会 存储器管理心得体会.docx》由会员分享,可在线阅读,更多相关《心得体会 存储器管理心得体会.docx(14页珍藏版)》请在冰豆网上搜索。

心得体会 存储器管理心得体会.docx

心得体会存储器管理心得体会

存储器管理,心得体会

存储器管理,心得体会

1.相关知识........................................................................................................................................4

1.1空闲盘块的组织.................................................................................................................41.2空闲盘块的分配与回收.....................................................................................................52.系统设计........................................................................................................................................5

2.1算法及说明.........................................................................................................................52.2算法流程图.........................................................................................................................62.3数据结构及各子程序.........................................................................................................63.成果................................................................................................................................................7

3.1磁盘存储空间的分配.........................................................................................................73.2磁盘存储空间的回收.........................................................................................................73.3结束.....................................................................................................................................84.总结................................................................................................................................................9

4.1个人总结赵勋..................................................................................................................94.2个人总结史迎丰............................................................................................................104.3个人总结齐泓洋............................................................................................................114.4个人总结李霖................................................................................................................125.参考文献...................................................................................................................................12

《操作系统》课程设计任务书

1.相关知识

1.1空闲盘块的组织

(1)空闲盘块好栈用来存放当前可用的一组空闲的盘块好(最多含100个号),以及栈中尚有的空闲盘块号数N。

顺便指出,N还兼作栈顶指针用。

(2)文件区中的所以空闲盘块被分成若干组,比如,将每100个盘块作为一组。

假定盘上共有1000个盘块,每块大小为1kb,其中201~7999号盘块用于存放文件,即作为文件区,这样,该区的最末一组盘块号应为7901~7999;次末组为7801~7900….;第二组盘块号为301~400;第一组为201~300

(3)将每一组含有的盘块总数N和该组所有的盘块记入其前一组的第一个盘块的S.freee(0)~S.free(99)中。

这样,由各组的第一个盘块可链成一条链。

(4)将第一组的盘块总数和所有的盘块号记入空闲盘块号栈中,作为当前可供分配的空闲盘块号。

(5)最末一组只有99个盘块,其盘块号分别记入其前一组的S.freee

(1)~S.free(99)

中,而在S.freee(0)中则存放“0”,作为空闲盘块链的结束标志。

1.2空闲盘块的分配与回收

当系统要为用户分配文件所需的盘块时,须调用盘块分配过程来完成。

该过程首先检查空闲盘块号栈是否上锁,如未上锁,便从栈顶取出一空闲盘块号,将与之对应的盘块分配给用户,然后将栈顶指针下移一格。

若该盘块号已是栈底,即S.freee(0),这是当前栈中最后一格可分配的盘块号。

由于在该盘块号所对应的盘块号记有下一组可用的盘块号,因此,须调用磁盘读过程,将栈底盘块号所对应的盘块的内容读入栈中,作为新的盘块号栈的内容,并把原栈底对应的盘块分配出去。

然后,再分配一相应的缓冲区。

最后,把栈中的空闲盘块数减1并返回。

在系统回收空闲盘块时,须调用盘块回收过程进行回收。

它是将回收盘块的盘块号记入空闲盘块号栈的顶部,并执行空闲盘块数加1操作。

当栈中空闲盘块号数目已达100时,表示栈已满,便将现有栈中的100盘块号记入新回收的盘块中,再将其盘块号作为新栈底。

2.系统设计

2.1算法及说明

首先定义磁盘分配数组并初始化,9个一维数组分别表示9个空闲块,程序运行时,先将专用块A〔0〕复制到内存中,然后进行功能选择,分配时,查MA,从中找出空闲块号,当一组的空闲块只剩第一块时,应把该块中指出的下一组的空闲块数和块号复制专用块这,然后把该块分配给申请者,当一组的空闲块分配完后则把专用块内容(下一组链接情况)复制到内存,再为申请者分配。

回收时,输入待回收的块号,查找该块是否已被分配,若未分配,退出,否则,当前组不满规定块数时,将归还块登记入该组,若当前组已满,则另建一新组,这时归还块作为新一组的第一块,应把内存中登记的一组链接情况MA复制到归还块中,然后在MA这重新登记一个新组。

显示分组情况。

第二篇、第四章存储器管理l存储器管理的功能

存储器管理,心得体会

第四章存储器管理

●存储器的层次

●用户程序的主要处理阶段

1.编辑阶段:

创建源文件2.编译阶段:

生成目标文件3.连接阶段:

生成可执行文件4.装入阶段:

重定位,装入内存5.运行阶段:

得到结果●存储器管理的功能

存储器管理的功能:

内存分配、地址映射、内存保护、内存扩充。

●存储器有关概念

1.逻辑地址:

用户程序经编译之后的每个目标模块都以0为基地址顺序编址。

2.物理地址:

内存中各物理单元的地址是从统一的基地址顺序编址。

3.重定位:

把逻辑地址转变为内存的物理地址的过程。

4.静态重定位:

是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修

改,即把程序的逻辑地址都改成实际的内存地址。

重定位在程序装入时一次完成。

5.动态重定位:

在程序执行期间,每次访问内存之间进行重定位,这种变换是靠硬件地址变换机

构实现的。

6.碎片:

内存中容量太小、无法被利用的小分区。

存储管理基本技术

三种基本的存储管理技术:

分区法、可重定位分区法和对换技术1.分区法:

把内存划分成若干分区,每个分区里容纳一个作业。

1)固定分区:

分区的个数、分区的大小固定不变;每个分区只能放一道作业。

优点:

管理方式简单。

缺点:

内存空间利用率低。

2)动态分区法:

分区大小和个数依作业情况而定;作业进入内存时才建分区。

优点:

按需分配内存缺点:

产生大量碎片。

2.可重定位分区分配:

通过紧缩可解决碎片问题;作业在内存中可以移动。

优点:

解决了碎片的问题,提高了主存利用率;缺点:

增加了开销。

,但须消耗大量的CPU时间。

3.对换技术:

作业(或进程)在内存和磁盘之间交换,换出暂时不能运行的作业(或进程);换入具备运行条件的作业(或进程)。

●虚拟存储器

1.虚拟存储器:

是由操作系统提供的一个假想的特大存储器2.虚拟存储器的基本特征:

1)虚拟扩充:

不是物理上,而是逻辑上扩充了内存容量

2)部分装入:

每个作业不是全部一次性地装入内存,而是只装入一部分3)离散分配:

不必占用连续的空间,而是“见缝插针”。

4)多次对换:

所需的全部程序和数据要分成多次调入内存3.虚拟存储器受到的限制:

1)指令中表示地址的字长2)外存的容量

●分页存储管理技术

1.分页的概念

1)逻辑空间等分为页;

2)物理空间等分为块,与页面大小相同;3)逻辑地址表示:

(如,页面大小为1K)

4)内存分配原则:

以块为单位,逻辑上相邻的页可以分配在不相邻的内存块中。

5)页表:

实现从页号到物理块号的地址映射

6)地址映射:

由硬件完成。

2.请求分页的基本思想

1)地址空间分页,内存分块,页与块大小相同;2)作业部分装入内存。

3)作业所占的各块不连续。

4)硬件通过页表生成访内地址。

5)若缺页,进行缺页中断处理,换入内存。

6)利用快表可加速地址转换。

分段存储管理技术

1.分段的概念

1)逻辑空间分段:

段是信息的逻辑单位,每段对应一个相应的程序模块,有完整的逻辑意义。

2)程序的地址结构:

逻辑地址表示:

(二维的地址空间)

3)内存分配:

内存以段为单位进行分配,每个段单独占用一块连续的内存分区。

4)段表:

实现每个逻辑段到物理内存中分区位置的映射5)地址转换:

见图P1264-23

2.分页与分段的区别

虚存中的置换算法

1.先进先出法(FIFO):

将最先进入内存的页换出内存。

例如内存块数量为3时,采用FIFO页面置换算法,下面页面走向情况下,缺页次数是多少?

∴缺页次数=15次

2.最佳置换法(OPT):

将将来不再被使用或是最远的将来才被访问的页

例如内存块数量为3时,采用OPT页面置换算法,下面页面走向情况下,缺页次数是多少?

∴缺页次数=9次

3.最近最少使用置换法(LRU):

将最近一段时间里最久没有使用过的页面换出内存。

例如内存块数量为3时,采用LRU页面置换算法,下面页面走向情况下,缺页次数是多少?

∴缺页次数=12次

4.最近未使用置换法(NUR):

是LRU近似方法,比较容易实现,开销也比较小。

实现方法:

在存储分块表的每一表项中增加一个引用位,操作系统定期地将它们置为0。

当某一页被访问时,由硬件将该位置1。

需要淘汰一页时,把该位为0的页淘汰出去,因为最近一段时间里它未被访问过。

第三篇、存储管理的基本原理

存储器管理,心得体会存储器管理,心得体会

4.1存储管理的基本原理

4.1.1内存管理方法

内存管理主要包括内存分配和回收、地址变换、内存扩充、内存共享和保护等功能。

下面主要介绍连续分配存储管理、覆盖与交换技术以及页式与段式存储管理等基本概念和原理。

1.连续分配存储管理方式

连续分配是指为一个用户程序分配连续的内存空间。

连续分配有单一连续存储管理和分区式储管理两种方式。

(1)单一连续存储管理

在这种管理方式中,内存被分为两个区域:

系统区和用户区。

应用程序装入到用户区,可使用用户区全部空间。

其特点是,最简单,适用于单用户、单任务的操作系统。

CP/M和DOS2.0以下就是采用此种方式。

这种方式的最大优点就是易于管理。

但也存在着一些问题和不足之处,例如对要求内存空间少的程序,造成内存浪费;程序全部装入,使得很少使用的程序部分也占用—定数量的内存。

(2)分区式存储管理

为了支持多道程序系统和分时系统,支持多个程序并发执行,引入了分区式存储管理。

分区式存储管理是把内存分为一些大小相等或不等的分区,操作系统占用其中一个分区,其余的分区由应用程序使用,每个应用程序占用一个或几个分区。

分区式存储管理虽然可以支持并发,但难以进行内存分区的共享。

分区式存储管理引人了两个新的问题:

内碎片和外碎片。

前者是占用分区内未被利用的空间,后者是占用分区之间难以利用的空闲分区(通常是小空闲分区)。

为实现分区式存储管理,操作系统应维护的数据结构为分区表或分区链表。

表中各表项一般包括每个分区的起始地址、大小及状态(是否已分配)。

分区式存储管理常采用的一项技术就是内存紧缩(compaction):

将各个占用分区向内存一端移动,然后将各个空闲分区合并成为一个空闲分区。

这种技术在提供了某种程度上的灵活性的同时,也存在着一些弊端,例如:

对占用分区进行内存数据搬移占用CPU~t寸间;如果对占用分区中的程序进行“浮动”,则其重定位需要硬件支持。

1)固定分区(nxedpartitioning)。

固定式分区的特点是把内存划分为若干个固定大小的连续分区。

分区大小可以相等:

这种作法只适合于多个相同程序的并发执行(处理多个类型相同的对象)。

分区大小也可以不等:

有多个小分区、适量的中等分区以及少量的大分区。

根据程序的大小,分配当前空闲的、适当大小的分区。

这种技术的优点在于,易于实现,开销小。

缺点主要有两个:

内碎片造成浪费;分区总数固定,限制了并发执行的程序数目。

2)动态分区(dynamicpartitioning)。

动态分区的特点是动态创建分区:

在装入程序时按其初始要求分配,或在其执行过程中通过系统调用进行分配或改变分区大小。

与固定分区相比较其优点是:

没有内碎片。

但它却引入了另一种碎片——外碎片。

动态分区的分区分配就是寻找某个空闲分区,其大小需大于或等于程序的要求。

若是大于要求,则将该分区分割成两个分区,其中一个分区为要求的大小并标记为“占用”,而另一个分区为余下部分并标记为“空闲”。

分区分配的先后次序通常是从内存低端到高端。

动态分区的分区释放过程中有一个要注意的问题是,将相邻的空闲分区合并成一个大的空闲分区。

下面列出了几种常用的分区分配算法:

首先适配法(nrst-fit):

按分区在内存的先后次序从头查找,找到符合要求的第一个分区进行分配。

该算法的分配和释放的时间性能较好,较大的空闲分区可以被保留在内存高端。

但随着低端分区不断划分会产生较多小分区,每次分配时查找时间开销便会增大。

下次适配法(next-fit):

按分区在内存的先后次序,从上次分配的分区起查找(到最后{区时再从头开始},找到符合要求的第一个分区进行分配。

该算法的分配和释放的时间性能较好,使空闲分区分布得更均匀,但较大空闲分区不易保留。

最佳适配法(best-fit):

按分区在内存的先后次序从头查找,找到其大小与要求相差最小的空闲分区进行分配。

从个别来看,外碎片较小;但从整体来看,会形成较多外碎片优点是较大的空闲分区可以被保留。

存储器管理,心得体会

最坏适配法(worst-fit):

按分区在内存的先后次序从头查找,找到最大的空闲分区进行分配。

基本不留下小空闲分区,不易形成外碎片。

但由于较大的空闲分区不被保留,当对内存需求较大的进程需要运行时,其要求不易被满足。

2.覆盖和交换技术

引入覆盖(overlay)技术的目标是在较小的可用内存中运行较大的程序。

这种技术常用于多道程序系统之中,与分区式存储管理配合使用。

覆盖技术的原理很简单,一个程序的几个代码段或数据段,按照时间先后来占用公共的内存空间。

将程序必要部分(常用功能)的代码和数据常驻内存;可选部分(不常用功能)平时

存放在外存(覆盖文件)中,在需要时才装入内存。

不存在调用关系的模块不必同时装入到内存,从而可以相互覆盖。

覆盖技术的缺点是编程时必须划分程序模块和确定程序模块之间的覆盖关系,增加编程复杂度;从外存装入覆盖文件,以时间延长换取空间节省。

覆盖的实现方式有两种:

以函数库方式实现或操作系统支持。

交换(swapping)技术在多个程序并发执行时,可以将暂时不能执行的程序送到外存中,从而获得空闲内存空间来装入新程序,或读人保存在外存中而处于就绪状态的程序。

交换单位为整个进程的地址空间。

交换技术常用于多道程序系统或小型分时系统中,与分区式存储管理配合使用又称作“对换”或“滚进/滚出”(roll-in/roll-out)。

其优点之一是增加并发运行的程序数目,并给用户提供适当的响应时间;与覆盖技术相比交换技术另一个显著的优点是不影响程序结构。

交换技术本身也存在着不足,例如:

对换人和换出的控制增加处理器开销;程序整个地址空间都进行对换,没有考虑执行过程中地址访问的统计特性。

3.页式和段式存储管理

在前面的几种存储管理方法中,为进程分配的空间是连续的,使用的地址都是物理地址。

如果允许将一个进程分散到许多不连续的空间,就可以避免内存紧缩,减少碎片。

基于这一思想,通过引入进程的逻辑地址,把进程地址空间与实际存储空间分离,增加存储管理的灵活性。

地址空间和存储空间两个基本概念的定义如下:

地址空间:

将源程序经过编译后得到的目标程序,存在于它所限定的地址范围内,这个范围称为地址空间。

地址空间是逻辑地址的集合。

存储空间:

指主存中一系列存储信息的物理单元的集合,这些单元的编号称为物理地址存储空间是物理地址的集合。

根据分配时所采用的基本单位不同,可将离散分配的管理方式分为以下三种段式存储管理和段页式存储管理。

其中段页式存储管理是前两种结合的产物。

(1)页式存储管理

1)基本原理。

将程序的逻辑地址空间划分为固定大小的页(page),而物理内存划分为同样大小的页框(pageframe)。

程序加载时,可将任意一页放人内存中任意一个页框,这些页框不必连续,从而实现了离散分配。

该方法需要CPU的硬件支持,来实现逻辑地址和物理地址之间的映射。

在页式存储管理方式中地址结构由两部构成,前一部分是页号,后一部分为页内地址,如图4-2所示。

这种管理方式的优点是,没有外碎片,每个内碎片不超过页大比前面所讨论的几种管理方式的最大进步是,一个程序不必连续存放。

这样就便于改变程序占用空间的大小(主要指随着程序运行,动态生成的数据增多,所要求的地址空间

相应增长)。

缺点是仍旧要求程序全部装入内存,没有足够的内存,程序就不能执行。

2)页式管理的数据结构。

在页式系统中进程建立时,操作系统为进程中所有的页分配页框。

当进程撤销时收回所有分配给它的页框。

在程序的运行期间,如果允许进程动态地申请空间,操作系统还要为进程申请的空间分配物理页框。

操作系统为了完成这些功能,必须记录系统内存中

实际的页框使用情况。

操作系统还要在进程切换时,正确地切换两个不同的进程地址空间到物理内存空间的映射。

这就要求操作系统要记录每个进程页表的相关信息。

为了完成上述的功能,—个页式系统中,一般要采用如下的数据结构。

进程页表:

完成逻辑页号(本进程的地址空间)到物理页面号(实际内存空间)的映射。

每个进程有一个页表,描述该进程占用的物理页面及逻辑排列顺序。

物理页面表:

整个系统有一个物理页面表,描述物理内存空间的分配使用状况,其数据结构可采用位示图和空闲页链表。

请求表:

整个系统有一个请求表,描述系统内各个进程页表的位置和大小,用于地址转换也可以结合到各进程的PCB(进程控制块)里。

3)页式管理地址变换

在页式系统中,指令所给出的地址分为两部分:

逻辑页号和页内地址。

CPU中的内存管理单元(MMU)按逻辑页号通过查进程页表得到物理页框号,将物理页框号与页内地址相加形成物理地址(见图4-3)。

上述过程通常由处理器的硬件直接完成,不需要软件参与。

通常,操作系统只需在进程切换时,把进程页表的首地址装入处理器特定的寄存器中即可。

一般来说,页表存储在主存之中。

这样处

理器每访问一个在内存中的操作数,就要访问两次内存。

第一次用来查找页表将操作数的逻辑地址变换为物理地址;第二次完成真正的读写操作。

这样做时间上耗费严重。

为缩短查找时间,可以将页表从内存装入CPU内部的关联存储器(例如,快表)中,实现按内容查找。

此时的地址变换过程是:

在CPU给出有效地址后,由地址变换机构自动将页号送人快表,并将此页号与快表中的所有页号进行比较,而且这种比较是同时进行的。

若其中有与此相匹配的页号,表示要访问的页的页表项在快表中。

于是可直接读出该页所对应的物理页号,这样就无需访问内存中的页表。

由于关联存储器的访问速度比内存的访问速度快得多。

(2)段式存储管理

1)基本原理。

在段式存储管理中,将程序的地址空间划分为若干个段(segment),这样每个进程有一个二维的地址空间。

在前面所介绍的动态分区分配方式中,系统为整个进程分配一个连续的内存空间。

而在段式存储管理系统中,则为每个段分配一个连续的分区,而进程中的各个段可以不连续地存放在内存的不同分区中。

程序加载时,操作系统为所有段分配其所需内存,这些段不必连续,物理内存的管理采用动态分区的管理方法。

在为某个段分配物理内存时,可以采用首先适配法、下次适配法、最佳适配法等方法。

在回收某个段所占用的空间时,要注意将收回的空间与其相邻的空间合并。

段式存储管理也需要硬件支持,实现逻辑地址到物理地址的映射。

程序通过分段划分为多个模块,如代码段、数据段、共享段。

这样做的优点是:

可以分别编写和编译源程序的一个文件,并且可以针对不同类型的段采取不同的保护,也可以按段为单位来进行共享。

总的来说,段式存储管理的优点是:

没有内碎片,外碎片可以通过内存紧缩来消除;便于实现内存共享。

缺点与页式存储管理的缺点相同,进程必须全部装入内存。

2)段式管理的数据结构。

为了实现段式管理,操作系统需要如下的数据结构来实现进程的地址空间到物理内存空间的映射,并跟踪物理内存的使用情况,以便在装入新的段的时候,合理地分配内存空间。

·进程段表:

描述组成进程地址空间的各段,可以是指向系统段表中表项的索引。

每段有段基址(baseaddress)。

·系统段表:

系统所有占用段。

·空闲段表:

内存中所有空闲段,可以结合到系统段表中。

3)段式管理的地址变换。

第四篇、大数据存储管理面临的挑战-论文

存储器管理,心得体会第五篇、磁盘存储空间的管理

存储器管理,心得体会

磁盘存储空间的管理发布于xx年11月24日22时()4人收藏此代码,收藏()

位示图和内存

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1