一种针对存储软件的内存分配方法及装置制造方法及图纸

技术编号:14478588 阅读:138 留言:0更新日期:2017-01-25 11:14
本发明专利技术公开了一种本发明专利技术实施例提供的针对存储软件的内存分配方法及装置,包括:在操作系统启动时,预先保留预定大小的系统内存,并将系统内存映射到用户空间;获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录功能模块与所需的内存空间的对应关系。通过上述方法,将预定大小的系统内存映射到用户空间使得该部分系统内存不被操作系统管理,因此即使存储软件对应的系统内存发生泄漏等问题时,不会影响整个操作系统的正常运行,提高了操作系统的可靠性,降低了操作系统的故障机率。另外,存储软件的功能模块具有单独的系统内存,因此当出现问题时,能够快速定位。

【技术实现步骤摘要】

本专利技术涉及计算机
,特别是涉及一种针对存储软件的内存分配方法及装置
技术介绍
在传统的软件设计中,应用软件的内存完全交由操作系统来管理,这样带来的一个问题是,当某个应用软件设计不合理,比如内存泄漏等原因,会消耗大量内存,导致其他应用软件运行缓慢,甚至导致整个系统崩溃。由于所有内存都是由操作系统分配管理,所以一旦出现这种问题,也很难跟踪和调试。存储软件是应用软件中的一种,在存储软件中,系统的稳定性尤为重要,而内存的使用又是重中之重。因此,如何管理好存储软件内存的使用,就是一个很大的课题。
技术实现思路
本专利技术的目的是提供一种针对存储软件的内存分配方法及装置,用于管理存储软件内存的使用,以提高操作系统的可靠性和降低操作系统的故障机率。另外,当出现问题时,能够快速定位。为解决上述技术问题,本专利技术提供一种针对存储软件的内存分配方法,包括:在操作系统启动时,预先保留预定大小的系统内存,并将所述系统内存映射到用户空间;获取所述存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录所述功能模块与所需的内存空间的对应关系;其中,所述系统内存的空间大于或等于全部所述功能模块所需的内存空间。优选地,具体通过文件记录所述功能模块与所需的内存空间的对应关系。优选地,还包括:当所述功能模块所需的内存空间发生变化时,更新所述对应关系。优选地,在更新所述对应关系之后还包括:输出重新启动所述操作系统的提示信息。为解决上述技术问题,本专利技术提供一种针对存储软件的内存分配装置,包括:映射单元,用于在操作系统启动时,预先保留预定大小的系统内存,并将所述系统内存映射到用户空间;获取单元,用于获取所述存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录单元,用于记录所述功能模块与所需的内存空间的对应关系;其中,所述系统内存的空间大于或等于全部所述功能模块所需的内存空间。优选地,所述记录单元具体通过文件记录所述功能模块与所需的内存空间的对应关系。优选地,记录单元,还用于当所述功能模块所需的内存空间发生变化时,更新所述对应关系。优选地,还包括:提示单元,用于在更新所述对应关系之后输出重新启动所述操作系统的提示信息。本专利技术所提供的本专利技术实施例提供的针对存储软件的内存分配方法及装置,包括:在操作系统启动时,预先保留预定大小的系统内存,并将系统内存映射到用户空间;获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录功能模块与所需的内存空间的对应关系。通过上述方法,将预定大小的系统内存映射到用户空间使得该部分系统内存不被操作系统管理,因此即使存储软件对应的系统内存发生泄漏等问题时,不会影响整个操作系统的正常运行,提高了操作系统的可靠性,降低了操作系统的故障机率。另外,存储软件的功能模块具有单独的系统内存,因此当出现问题时,能够快速定位。附图说明为了更清楚地说明本专利技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种针对存储软件的内存分配方法的流程图;图2为本专利技术实施例提供的一种针对存储软件的内存分配装置的结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本专利技术保护范围。本专利技术的核心是提供一种针对存储软件的内存分配方法及装置。为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。图1为本专利技术实施例提供的一种针对存储软件的内存分配方法的流程图。如图1所示,针对存储软件的内存分配方法包括:S10:在操作系统启动时,预先保留预定大小的系统内存,并将系统内存映射到用户空间。S11:获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间。S12:记录功能模块与所需的内存空间的对应关系。其中,系统内存的空间大于或等于全部功能模块所需的内存空间。在具体实施中,在接收到操作系统启动的指令时,预先保留预定大小的系统内存,保留下来的系统内存专门用来分配给存储软件中的各个功能模块。本实施例中,将系统内存映射到用户空间后,该系统内存就不会被操作系统所管理。可以理解的是,通过Linux现有的技术就可以把预定大小的系统内存映射到用户空间,本实施例不再赘述。由上可知,我们在用户空间实现一套管理逻辑来操作内存。这样做的好处是,即使用户层应用使用内存有问题导致应用崩溃,也不会导致整个系统崩溃,从而有利于调试人员的调试工作;从编程的角度看,用户层的编程比内核层编程容易的多。获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间。在使用中,就可以按照功能模块的数量来划分,并且使得每个功能模块所需的内存空间都可以满足。记录功能模块与所需的内存空间的对应关系,当存储应用启动的时候,会解析需要哪个功能模块,并且取得相应的功能模块所需的内存空间,应用根据这些参数为每个功能模块分配好空间,从而实现存储软件的正常工作。本专利技术实施例提供的针对存储软件的内存分配方法,包括:在操作系统启动时,预先保留预定大小的系统内存,并将系统内存映射到用户空间;获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录功能模块与所需的内存空间的对应关系。通过上述方法,将预定大小的系统内存映射到用户空间使得该部分系统内存不被操作系统管理,因此即使存储软件对应的系统内存发生泄漏等问题时,不会影响整个操作系统的正常运行,提高了操作系统的可靠性,降低了操作系统的故障机率。另外,存储软件的功能模块具有单独的系统内存,因此当出现问题时,能够快速定位。作为优选地实时方式,具体通过文件记录功能模块与所需的内存空间的对应关系。在具体实施中,将功能模块与所需的内存空间的对应关系记录在一个专属的文件中,可以方便调试人员查看,并方便后续的修改。作为优选地实时方式,还包括:当功能模块所需的内存空间发生变化时,更新对应关系。由于操作系统是动态变化的,每次启动时都需要进行上述分配过程,而每次分配过程中,对应的功能模块的数量以及每个功能模块所需的内存空间大小都是不同,因此,当功能模块所需的内存空间大小变化时,需要更新相应的对应关系,即更新文件。作为优选地实时方式,在更新对应关系之后还包括:输出重新启动操作系统的提示信息。为了保证能够获取正确的对应关系,当更新对应关系之后,需要重新启动,因此,为了更好的提示用户,本实施例中,输出提示信息。图2为本专利技术实施例提供的一种针对存储软件的内存分配装置的结构图。如图2,针对存储软件的内存分配装置包括:映射单元10,用于在操作系统启动时,预先保留预定大小的系统内存,并将系统内存映射到用户空间;获取单元11,用于获取存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录单元12,用于记录功能模块与所需的内存空间的对应关系;其中,系统内存的空间大于或等于全部功能模块所需的内存空间。在本文档来自技高网
...
一种针对存储软件的内存分配方法及装置

【技术保护点】
一种针对存储软件的内存分配方法,其特征在于,包括:在操作系统启动时,预先保留预定大小的系统内存,并将所述系统内存映射到用户空间;获取所述存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录所述功能模块与所需的内存空间的对应关系;其中,所述系统内存的空间大于或等于全部所述功能模块所需的内存空间。

【技术特征摘要】
1.一种针对存储软件的内存分配方法,其特征在于,包括:在操作系统启动时,预先保留预定大小的系统内存,并将所述系统内存映射到用户空间;获取所述存储软件中包含的功能模块的数量,以及每个功能模块所需的内存空间;记录所述功能模块与所需的内存空间的对应关系;其中,所述系统内存的空间大于或等于全部所述功能模块所需的内存空间。2.根据权利要求1所述的方法,其特征在于,具体通过文件记录所述功能模块与所需的内存空间的对应关系。3.根据权利要求1所述的方法,其特征在于,还包括:当所述功能模块所需的内存空间发生变化时,更新所述对应关系。4.根据权利要求3所述的方法,其特征在于,在更新所述对应关系之后还包括:输出重新启动所述操作系统的提示信息。5.一种针对存储软件的内存分配装置,其...

【专利技术属性】
技术研发人员:姜怡坤
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南;41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1