当前位置:首页 > 行业动态 > 正文

存储管理的主要方法有哪些?

存储管理主要包括内存和外存的统一管理,其对象是主存(也称内存),主要功能有分配和回收主存空间、提高主存利用率、扩充主存、对主存信息实现有效保护等。 存储管理方案主要有分区存储管理、分页存储管理、分段存储管理、段页式存储管理以及虚拟存储管理等。

存储管理是操作系统的重要组成部分,它负责对计算机的内存资源进行管理和分配,以下是关于存储管理的详细介绍:

存储管理的主要方法有哪些?  第1张

存储管理的主要类型

1、分区存储管理

静态分区:预先把可分配的主存储器空间分割成若干个连续区域,每个区域的大小可以相同或不同,为了说明各分区的分配和使用情况,系统需设置一张“主存分配表”,当作业需要装入时,根据其大小选择足够大的空闲分区,若找到则分配,否则等待,这种管理方式简单,但容易造成内存碎片和浪费。

可变分区:按作业的大小来划分分区,当要装入一个作业时,根据作业需要的主存量查看主存中是否有足够的空间,若有则按需要量分割一个分区分配给该作业;若无则令该作业等待主存空间,随着作业的装入、撤离,主存空间被分成许多个分区,有的分区被作业占用,而有的分区是空闲的,当一个新的作业要求装入时,必须找一个足够大的空闲区,把作业装入该区,如果找到的空闲区大于作业需要量,则作业装入后把原来的空闲区分成两部分,一部分给作业占用了,另一部分又分成为一个较小的空闲区,当一作业执行结束撤离时,它归还的区域如果与其它空闲区相邻,则可合成一个较大的空闲区,以利大作业的装入。

可重定位分区:基本思想是移动所有已分配好的分区,使之成为连续区域,当请求空间不足时发生,分区保护的目的是防止未经校核的用户访问分区,常用上界/下界寄存器保护和基址/限长寄存器保护两种方式。

2、分页存储管理

将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,从0开始,相应地,也把内存空间分成与页面相同大小的若干个存储块,称为(物理)块或页框(frame),也同样为它们加以编号,在为进程分配内存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理块中,由于进程的最后一页经常装不满一块而形成了不可利用的碎片,称之为“页内碎片”。

3、分段存储管理

作业的地址空间被划分为若干个段,每个段定义了一组逻辑信息,有主程序段MAIN、子程序段X、数据段D及栈段S等,每个段都有自己的名字,为了实现简单起见,通常可用一个段号来代替段名,每个段都从0开始编址,并采用一段连续的地址空间,段的长度由相应的逻辑信息组的长度决定,因而各段长度不等,整个作业的地址空间由于是分成多个段,因而是二维的,亦即,其逻辑地址由段号(段名)和段内地址所组成。

4、段页式存储管理

基本原理是基本分段存储管理方式和基本分页存储管理方式原理的结合,即先将用户程序分成若干个段,再把每个段分成若干个页,并为每一个段赋予一个段名。

5、虚拟存储

当程序的存储空间要求大于实际的内存空间时,就使得程序难以运行了,虚拟存储技术就是利用实际内存空间和相对大的多的外部储存器存储空间相结合构成一个远远大于实际内存空间的虚拟存储空间,程序就运行在这个虚拟存储空间中,能够实现虚拟存储的依据是程序的局部性原理,即程序在运行过程中经常体现出运行在某个局部范围之内的特点,在时间上,经常运行相同的指令段和数据(称为时间局部性),在空间上,经常运行与某一局部存储空间的指令和数据(称为空间局部性)。

存储管理的功能

1、主存空间的分配和回收

存储管理负责分配和回收主存空间,以满足多个作业和进程的需求,当一个作业或进程需要运行时,存储管理系统会为其分配足够的主存空间;当作业或进程完成或终止时,存储管理系统会回收其占用的主存空间。

2、地址转换

存储管理系统负责将逻辑地址转换为物理地址,在程序执行过程中,处理器生成的是逻辑地址,而存储管理系统需要将这些逻辑地址转换为物理地址,以便正确地访问主存中的数据。

3、主存空间的共享和保护

存储管理系统允许多个作业和进程共享主存中的同一数据或代码,存储管理系统还负责保护各个作业和进程的数据不被其他作业和进程干扰或破坏。

4、主存空间的扩充

存储管理系统可以通过使用虚拟存储技术来扩充主存空间,虚拟存储技术利用硬盘等外部存储设备来模拟额外的RAM,使得系统能够运行更多的应用程序而不受物理内存大小的限制。

相关FAQ

1、什么是内存碎片?如何避免?

内存碎片是指计算机内存中出现的未被使用的小块区域,这些碎片可能是由于程序频繁地分配和释放内存而产生的,为了避免内存碎片,可以采用紧凑技术将正在使用的程序压缩到内存的一端,从而消除碎片,采用分页或分段存储管理方式也可以减少内存碎片的产生。

2、虚拟存储技术是如何工作的?

虚拟存储技术通过将硬盘空间作为内存的扩展来工作,当系统的物理内存不足时,它可以将部分数据暂存到硬盘上的页面交换文件中,这样,系统就可以在较小的物理内存中运行更多的应用程序,当需要访问被交换到硬盘上的数据时,操作系统会将这些数据重新加载到物理内存中。

3、为什么需要不同的存储管理方式?

不同的存储管理方式适用于不同的应用场景和需求,分页存储管理方式适用于需要大量内存且对内存连续性要求不高的应用程序;而分段存储管理方式则更适用于需要按逻辑功能划分内存的程序,虚拟存储技术则提供了一种灵活且高效的方式来管理内存资源。

0