操作系统内核内存分配算法的分析与性能评价

操作系统内核内存分配算法的分析与性能评价

ID:5275063

大小:301.63 KB

页数:5页

时间:2017-12-07

操作系统内核内存分配算法的分析与性能评价_第1页
操作系统内核内存分配算法的分析与性能评价_第2页
操作系统内核内存分配算法的分析与性能评价_第3页
操作系统内核内存分配算法的分析与性能评价_第4页
操作系统内核内存分配算法的分析与性能评价_第5页
资源描述:

《操作系统内核内存分配算法的分析与性能评价》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、万方数据计算机系统应用2007年第1期操作系统内核内存分配算法的分析与性能评价张琼声刘冬萍(中国石油大学(华东)计算机与通信工程学院山东东营257061)摘要:内存是计算机中的重要资源,快速、合理地分配内存不但能提高内存资源的利用率,也能使系统的整体性能得以提升。本文介绍了操作系统中几种常见的内存分配算法,深入分析了几种操作系统内核内存分配算法(内核分配器KMA);并对其性能进行了评价。关键词:内存管理内存分配内存释放l(^^A碎片1前言内存储器是计算机中的重要资源,对它们的访问频率和访问方式直接影响到整个系统的性能和效率。如何有效管理、合理分配、使用有限而昂贵的内存资源,对提升系统性能,

2、尤其是内存的使用效率和进程的运行速度显得尤为重要。本文介绍了内存分配的一些基本策略,重点阐述了内存分配中,常见的几种内核内存分配的原理,并对其性能进行了评述。2内存分配策略在内存管理中,操作系统管理所有的物理内存,并为系统内核中的不同子系统以及用户进程分配内存。通常内存的分配策略按分配的内存空间大小可以分为固定尺寸分配策略、可变大小分配策略;按分配内存的地址是否连续可以分为:离散内存分配和连续内存分配策略。2.1固定尺寸分配策略2.1.1分配策略简介固定尺寸分配策略的关键在于固定,即当申请内存时,系统总是返回一个固定大小(通常是2的指数倍)的内存空间,而不管我们实际需要内存的大小。2.1.

3、2固定尺寸分配策略的特点(1)优点延迟时间确定分配和回收速度快不会产生太多的细小碎片(2)缺点固定尺寸分配策略最明显的缺点是不灵活。如果定长空间过小,则容易引起溢出,使整个系统在没有任何征兆的情况下崩溃。如果相对保守地配置系统,扩大定长,又会造成内存的浪费,使系统的整体性能下降。2.2可变大小分配策略2。2.1分配策略简介可变大小分配策略,即系统处理不同尺寸的分配请求,并分配合适大小的内存空间。2.2.2可变分配策略的特点显然,这样的分配方式很灵活,应用也很广泛,但是它也有自己的缺陷。(1)为了满足用户要求和系统的要求,不得不做一些额外的工作(如:分区排序、分区合并等),效率会有所下降:(

4、2)在程序运行期间,可能会有频繁的内存分配和释放动作,这样会在内存中形成大量的、不连续的、不能够直接使用的内存碎片,在很多情况下,这对于程序是致命的。2.3连续内存分配2.3.1分配策略简介连续内存分配是一种静态的内存分配策略,即在程序开始运行之前就已经决定,每个程序在内存中只占有一块单独的连续内存区域。这种方法因决定的范围不同而发生变化。可以把整个作业作为一个整体进行分配,也可以按每一作业步(即程序)单独分配。2.3.2连续内存分配的特点连续内存分配方法的主要优点是简洁,额外开销也比较低,因为作业被装载在一个连续的区域,在系统运行时不需要内存的分配和回收。但是,连续内存分万方数据2007

5、年第1期计算机系统应用配会不同程度的产生内部碎片或者外部碎片。内部碎片是当分配给程序的内存没有被完全利用时出现的不可用内存空间;外部碎片是当一个系统中存在的空闲内存太小至于无法分配给其它程序时出现的不可用的内存空间。浪费了内存资源,对系统的稳定性造成了一定的威胁。2.4离散内存分配(分页、分段、段页式)2.4.1分配策略简介离散内存分配是为了解决内存碎片问题而提出的一种分配模式,它允许一个程序占用内存中不连续的区,在程序的执行过程中,通过“地址变换单元”进行地址校正,使程序进行正常的编译和链接。目前常用的分页、分段、段页式内存分配就属于离散型内存分配。2.4.2离散内存分配的特点离散内存分

6、配最大的优点就是有效的避免了内存碎片的产生,提高了内存资源的利用率。但在程序运行过程中,若程序被分配在过多的不连续区域上,就需要有多次的地址校正,这势必降低了程序运行的速度,降低了运行效率。3常用内核内存分配器I<』\^A介绍内核内存分配器管理的内存空间是由页面级分配器为其预留的一部分空间,只用于处理由内核子系统发出的请求。来自用户进程页的请求,交由分页系统处理。因内核内存管理也是对内存进行的操作,也就同样存在效率与碎片问题。3.1资源映射图分配器3.1.1原理资源映射图是一系列偶对的集合。起先,资源映射图只有一个项,即内存空间为空时(如图1)。当不断的有子系统请求发

7、出后,内存被不断的分配和释放,内存池被逐渐的打碎。资源映射图集合也随着内存的分配和释放增加或者减少。资源映射图按基址顺序组织,这样有利于连接两个相邻的内存区。利用资源映射图,内核可以采用3种策略进行匹配。最先适合法从最先满足的请求的空闲块中分配内存。这种方法最快速,也是最常用的分配方法。图1资源映射图分配器在现代主流分时操作系统中,大多采用基于分段的页式存储管理,内存分配的基本单位是页。此外,操作系统为内核子系统和用户进

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。