① 什么是内部碎片什么是外部碎片各种存储管理中都可能产生何种碎片
1.内部碎片:
当一个进程装入到固定大小的分区块(比如页)时,假如进程所需空间小于分区块,则分区块的剩余的空间将无法被系统使用,称为内部碎片。
2.外部碎片:
指的是还没有被分配出去(不属于任何进程),但由于太小了无法分配给申请内存空间的新进程的内存空闲区域。
3.存储管理中都可能产生的碎片:
除了内部碎片和外部碎片,在“分页存储”中,可能产生“页内碎片”,页内碎片是由于进程的最后一页经常装不满一块而形成了不可利用的碎片。
(1)单一分区存储管理扩展阅读
在数据存储领域中,碎片(fragmentation)是指存储空间使用效率低下,结果导致功能、运行效率变低或二者兼而有之的现象。碎片化所造成的影响取决于具体的存储系统以及碎片化的种类。
大部分情况下,碎片化都会导致都会导致存储空间的浪费,此时“碎片”一词亦可指代闲置的空间本身。对于其他的一些系统来说(比如FAT文件系统),数据量一定的前提下,用于存储数据所占的存储空间是一定的,和碎片化的程度无关。
② 操作系统中的分区存储管理和分页存储管理的优点和缺点各是什么
一、分区存储管理
1、固定分区:
优点:易于实现、开销小
缺点:存在内部碎片(分区内未被利用空间)、分区总数固定,限制了并发执行的程序数量。
2、动态创建分区:按照程序申请要求分配。
优点: 没有内部碎片
缺点:有外部碎片(难以利用的小空闲分区)
二、页式存储管理
优点: 没有外部碎片,最后一页可能有内碎片但不大; 程序不必连续存放;便于改变程序占用空间大小。
缺点: 程序仍需要全部装入内存。
③ 存储器管理的连续分配存储管理方式有哪些
连续分配方式.它是指为了一个用户程序分配一个连续的内存空间.可以分为单一连续分配、固定分区分配、动态分区分配以及动态重定位分区分配四种方式。不过今天我们讲的是固定分区分配和动态分区分配。
固定分区分配是最简单的一种可运行多道程序的存储管理方式。 一、基本思想:在系统中把用户区预先划分成若干个固定分区(每个分区首地址固定,每个分区长度是固定),每个分区可供一个用户程序独占使用。注意:每个分区大小可以相同,也可以不相同。 二、主存分配与回收:借助主存分配表。 三、地址转换(静态重定位):物理地址=分区起始地址+逻辑地址。其中划分分区方法包括分区大小相等和分区大小不等。
动态分区分配是根据进程的实际需要,动态地为之分配内存空间。一、基本思想:按用户程序需求动态划分主存供用户程序使用。(每个分区首地址是动态的,每个分区的长度也是动态的) 二、主存分配与回收-->(1)未分配表(登记未分配出去的分区情况);(2)已分配表(登记已经分配出去的分区情况)。 三、地址转换:物理地址=分区起始地址+逻辑地址。 四、分区分配算法:从空闲分区中选择分区分www.hbbz08.com 配给用户程序的策略。 (1)首次适应算法(最先适应)顺序查询为分配表,从表中找出第一个可以满足作业申请的分区划分部分分配给用户作业。 (2)循环首次适应算法 (3)最佳适应算法:从空闲分区中找出一个能满足用户作业申请的最小空闲分区划分给用户作业使用(有利于大作业执行) (4)最坏适应算法:从空闲分区中挑最大的分区划分给用户程序使用(有利于中、小作业执行)
④ 单个分区的存储管理不适用于
专用计算机
单道程序系统
多道程序系统
个人计算机最好也不要用单个分区.
⑤ 存储管理的方式
分区存储管理又有三种不同的方式:静态分区、可变分区、可重定位分区 。
静态分区
静态分区存储管理是预先把可分配的主存储器空间分割成若干个连续区域,每个区域的大小可以相同,也可以不同。为了说明各分区的分配和使用情况,存储管理需设置一张“主存分配表”。主存分配表指出各分区的起始地址和长度,表中的占用标志位用来指示该分区是否被占用了,当占用的标志位为“0”时,表示该分区尚未被占用。进行主存分配时总是选择那些标志为“0”的分区,当某一分区分配给一个作业后,则在占用标志栏填上占用该分区的作业名。采用静态分区存储管理,主存空间的利用不高。
可变分区
可变分区方式是按作业的大小来划分分区。当要装入一个作业时,根据作业需要的主存量查看主存中是否有足够的空间,若有,则按需要量分割一个分区分配给该作业;若无,则令该作业等待主存空间。由于分区的大小是按作业的实际需要量来定的,且分区的个数也是随机的,所以可以克服固定分区方式中的主存空间的浪费。
随着作业的装入、撤离,主存空间被分成许多个分区,有的分区被作业占用,而有的分区是空闲的。当一个新的作业要求装入时,必须找一个足够大的空闲区,把作业装入该区,如果找到的空闲区大于作业需要量,则作业装入后又把原来的空闲区分成两部分,一部分给作业占用了;另一部分又分成为一个较小的空闲区。当一作主行结束撤离时,它归还的区域如果与其它空闲区相邻,则可合成一个较大的空闲区,以利大作业的装入。
可变分区调度算法
1)首次适应算法。每次分配时,总是顺序查找未分配表,找到第一个能满足长度要求的空闲区为止。分割这个找到的未分配区,一部分分配给作业,另一部分仍为空闲区。这种分配算法可能将大的空间分割成小区,造成较多的主存“碎片”。
2)最佳适应算法。从空闲区中挑选一个能满足作业要求的最小分区,这样可保证不去分割一个更大的区域,使装入大作业时比较容易得到满足。采用这种分配算法时可把空闲区按大小以递增顺利排列,查找时总是从最小的一个区开始,直到找到一个满足要求的区为止。
3)最坏适应算法。挑选一个最大的空闲区分割给作业使用,这样可使剩下的空闲区不至于太小,这种算法对中、小作业是有利的。采用这种分配算法时可把空闲区按大小以递减顺利排列,查找时总是从最大的一个区开始。按这种方法,在收回一个分区时也必须对表格重新排列。 尽管虚拟内存允许进程有其独立的虚拟地址空间,但有时也需要在进程之间共享内存。 例如有可能系统中有几个进程同时运行BASH命令外壳程序。为了避免在每个进程的虚拟内存空间内都存在BASH程序的拷贝,较好的解决办法是系统物理内存中只存在一份BASH的拷贝并在多个进程间共享。动态库则是另外一种进程间共享执行代码的方式。共享内存可用来作为进程间通讯(IPC)的手段,多个进程通过共享内存来交换信息。 Linux支持SYSTEM V的共享内存IPC机制。
⑥ 单个分区存储管理仅适用于哪两个系统
系统分区被破坏,你可以用启动碟有分区魔术师的软件进入,中文操作,简单,容易学,然后再重新划分硬盘,重装系统就OK
⑦ 分区存储管理中如何实现分区的保护
分区保护的目的是防止未经核准的用户访问分区,常用以下两种方式。
(1)上界/下界寄存器保护。上界寄存器中存放的是作业的装入地址,下界寄存器装入的是作业的结束地址,形成的物理地址必须满足如下条件:
上界寄存器<=物理地址<=下界寄存器
(2)基址/限长寄存器保护。基址寄存器中存放的是作业的装入地址,限长寄存器装入的是作业长度,形成的物理地址必须满足如下条件:
基址寄存器<=物理地址<基址寄存器+限长寄存器
⑧ 固定分区存储管理和可变分区存储管理的区别是什么
可变分区存储管理不是预先把内存中的用户区域划分成若干固定分区,而是在作业要求装入内存时,根据用户作业的大小和当时内存空间使用情况决定是否为该作业分配一个分区。因此分区大小不是预先固定的,而是按作业需求量来划分的;分区的个数和位置也不是预先确定的。它有效地克服了固定分区方式中,由于分区内部剩余内存空置造成浪费的问题。
⑨ 在内存管理系统中为什么让连续分配方式访问速度快,而
连续分配存储管理方式
连续分配是指为一个用户程序分配连续的内存空间。连续分配有单一连续存储管理和分区式储管理两种方式。
1、单一连续存储管理在这种管理方式中,内存被分为两个区域:系统区和用户区。应用程序装入到用户区,可使用用户区全部空间。其特点是,最简单,适用于单用户、单任务的操作系统。CP/M和DOS 2.0以下就是采用此种方式。
这种方式的最大优点就是易于管理。但也存在着一些问题和不足之处,例如对要求内存空间少的程序,造成内存浪费;程序全部装入,使得很少使用的程序部分也占用—定数量的内存。
2、分区式存储管理为了支持多道程序系统和分时系统,支持多个程序并发执行,引入了分区式存储管理。分区式存储管理是把内存分为一些大小相等或不等的分区,操作系统占用其中一个分区,其余的分区由应用程序使用,每个应用程序占用一个或几个分区。分区式存储管理虽然可以支持并发,但难以进行内存分区的共享。
内存操作系统(RAM
OS)是一种启动后不依赖硬盘的操作系统,其启动后会将所有文件加载到内存运行,运行速度快,绝对不会中毒,还能更好保护系统的核心文件不受破坏。
内存操作系统早在win98时代就已出现,由于硬盘速度的限制和内存条价格的降低,内存操作系统现在已完全突破硬件的限制,在启动后可以将硬盘断电,完全不依赖硬盘运行。但目前其应用范围还较窄,主要应用有学校教学机房等。