应用级内存管理器的设计与关键实现

来源 :南京大学 | 被引量 : 0次 | 上传用户:snoopyfeile123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
内存管理是大型应用软件的一个重要考虑因素,它的成功与否将直接影响到应用的稳定性和效率。目前对内存管理的研究可分为3个层次,自底而上依次为:操作系统级内存管理、高级语言级内存管理和应用级内存管理。 内存管理子系统是操作系统中核心子系统之一,复杂度较高。它将软件和硬件有机结合起来,确保了进程的正确初始化以及顺利执行,同时它还负责缺页调度,内存对象管理等。好的内存管理子系统将大幅度提高应用程序的运行效率。 高级语言级内存管理的实现是由高级语言运行库和编译器协作提供的,构筑在操作系统内存管理子系统基础上,向程序员提供了简单易用的接口。利用这个接口,编程人员构筑了各式各样的应用。它的好坏直接影响了应用程序的灵活性和开发的效率。 尽管操作系统和高级语言级的内存管理为软件开发人员提供了强有力的支持,但是应用级内存管理仍有其存在的必要性。 随着开发规模的扩大和应用的深入,越来越多的问题也暴露了出来。首先是容易出错,以目前最为流行的C/C++开发来讲,相当的精力被投入到内存泄露的防止和修正上,内存访问冲突更将引发一场应用的灾难;其次,很多应用需要对内存进行更为高级和完全的控制,比如需要将相同性质的内存的分配集中到一起,这些要求在以上两个级别上没有得到强调。 软件的发展潮流是封装和易用,针对以上问题,有必要强调应用级别的内存管理概念。它的框架和逻辑有着自己独有的特点,本文中将阐述一个具有适用性的应用级内存管理器的设计及关键性实现。应用级内存管理的实现与应用,将使得开发人员获得一个可靠易用的高级内存管理平台,从而将主要精力投入到应用逻辑上,提高代码质量和开发效率。 本文首先说明了操作系统内存管理的工作原理及几个关键过程,这个层次的内存管理同理论的结合性最强,同时具有基础意义,其他层次的内存管理不能脱离它而单独存在。 然后本文将重点介绍一个应用级内存管理器的设计思路及关键实现。这些内容在基于基础框架的设计上,围绕应用级内存管理器各个主题进行展开。 最后本文将对该内存管理器进行一个小结,并对应用级内存管理器今后的发展作出展望。
其他文献
随着互联网技术的发展,需要存储的数据量也不断增大,计算机硬件和软件的不稳定很容易导致用户数据的丢失,数据存储的可靠性已经成为学术界和工业界关注和研究的热点问题之一
在UNIX中,文件是一个非常广泛的概念,以下都可以被称作为文件:通过open()系统调用创建的五种位于磁盘上的的文件:正规文件、目录文件、字符设备文件、块设备文件、先进先出文件。
随着网络技术的迅速发展以及对多媒体信息需求的不断增长,视频流技术已经引起了学术界和业界的广泛关注.视频流媒体应用不同于传统业务,具有时延敏感、数据量大等特性,这就要
该文是以计算机符号计算为基础的、跨学科的非线性工作.符号计算是计算机人工智能领域的一个新分支学科,以计算机科学与各种理工学科交叉为特征.它显著提高了计算机以精确的
早在20世纪70年代初,决策支持系统(DSS)这一概念就产生了.但是,传统的DSS仅面向单一成员而不能胜任群体决策的支持,因此,决策支持系统逐渐进入一个新的发展阶段——群体决策
自1987年SEI发表软件过程成熟度框架和成熟度提问单以后,以定义软件过程模型和执行软件过程评估为主的软件过程运动代表了提高软件生产质量和效率的发展方向。到2002年,先后出
随着计算机数据库技术的普及和发展,数据库安全变得越来越重要,可以说是关系到国家、企业的重要生命线。从普通的数据库到安全型的数据库的过程中,对数据库的安全增强技术的研究
为应对激烈的市场竞争环境,提高客户服务水平,加强业务管理,国内大企业大部分采用基于数据中心的集中处理模式,数据集中处理有利于业务监控、降低成本和提高效益,但是数据集中处理
本文的研究是以水利部948项目“茨淮新河上桥枢纽信息化工程”为研究背景。该工程的目标是对计算机集成制造系统(CIMS)技术加以改进和创新,建立一个水利CIMS(ContemporaryInte
90年代初,随着Internet的迅速普及,出现了基于Internet的电子商务.它利用Internet的全球性,扩大了交易范围,成本大大降低;采用数据加密、电子认证、安全电子交易等一系列措施