当前位置: 首页 > 专利查询>惠州学院专利>正文

一种动态链接库的内存复用方法和装置制造方法及图纸

技术编号:15450490 阅读:109 留言:0更新日期:2017-05-31 12:14
本发明专利技术提供了一种动态链接库的内存复用方法,所述方法包括:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。该动态链接库的内存复用方法可将多数函数、变量和函数进行有效复用。

Memory reuse method and device for dynamic link library

The present invention provides a memory multiplexing method for dynamic link library, the method comprises: acquiring data, variables and dynamic link library functions through the process of data acquisition function; determine the parameter data structure, variables and functions are consistent with the standard; if yes, then determine the parameters, variables and data function reuse; the parameter data, variables and functions through the process of pass through to another auxiliary process by the auxiliary process of the parameter data, variables and functions into global or local type, and the statement, and the main function calls for effective reuse. The memory reuse method of the dynamic link library can effectively reuse most functions, variables and functions.

【技术实现步骤摘要】
一种动态链接库的内存复用方法和装置
本专利技术涉及数据处理领域,尤其涉及一种动态链接库的内存复用方法和装置。
技术介绍
动态链接库文件,是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源。Windows提供的DLL文件中包含了允许基于Windows的程序在Windows环境下操作的许多函数和资源。一般被存放在电脑的"C:\Windows\System32"目录下。Windows中,DLL多数情况下是带有".dll"扩展名的文件,但也可能是".ocx"或其他扩展名;Linux系统中常常是".so"的文件。它们向运行于Windows操作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。然而,动态链接库中的内存产生的很多函数、变量和参数数据并没有办法进行复用,急需一种复用的方法将上述函数、变量和参数数据进行复用。
技术实现思路
基于此,本专利技术提供了一种动态链接库的内存复用方法和装置。一种动态链接库的内存复用方法,所述方法包括:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。在其中一个实施例中,所述方法还包括:判断所述参数数据为形式参数或者实质参数;若判断为形式参数,则将所述形式参数进行丢弃;若判断为实质参数,则将所述实质参数进行复用。在其中一个实施例中,所述方法还包括:判断所述变量为全局变量或者局部变量;若判断为全局变量,则进行全局声明;若判断为局部变量,则进行局部声明。在其中一个实施例中,所述方法还包括:若判断所述函数为主函数,则将主函数进行解复用;若判断所述函数为备函数,则将备函数进行丢弃。在其中一个实施例中,所述方法还包括:在判断所述参数数据、变量和函数可复用之后,则在动态链接库中写入相应的地址,以将所述参数数据、变量和函数进行发送,并对应相应的动态链接库的地址收集另一个数据库的参数数据、变量和函数。一种动态链接库的内存复用装置,所述装置包括:获取模块,用于通过进程的获取函数获取动态链接库中的参数数据、变量和函数;第一判断模块,用于判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;透传模块,用于将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。在其中一个实施例中,所述装置还包括:第二判断模块,用于判断所述参数数据为形式参数或者实质参数;丢弃模块,用于若判断为形式参数,则将所述形式参数进行丢弃;复用模块,用于若判断为实质参数,则将所述实质参数进行复用。在其中一个实施例中,所述装置还包括:第三判断模块,用于判断所述变量为全局变量或者局部变量;若判断为全局变量,则进行全局声明;若判断为局部变量,则进行局部声明。在其中一个实施例中,所述装置还包括:第四判断模块,用于若判断所述函数为主函数,则将主函数进行解复用;若判断所述函数为备函数,则将备函数进行丢弃。在其中一个实施例中,所述装置还包括:发送模块,用于在判断所述参数数据、变量和函数可复用之后,则在动态链接库中写入相应的地址,以将所述参数数据、变量和函数进行发送,并对应相应的动态链接库的地址收集另一个数据库的参数数据、变量和函数。有益效果:本专利技术提供了一种动态链接库的内存复用方法,所述方法包括:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。该动态链接库的内存复用方法可将多数函数、变量和函数进行有效复用。附图说明为了更清楚地说明本专利技术运行原理和使用的技术方案,下面将对运行原理和使用的技术中所需要使用的附图作简单地介绍。显而易见,下面描述中的附图仅仅是本专利技术的一些运行例子,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1是本专利技术的一种动态链接据的内存复用方法的方法流程图。图2是本专利技术的一种动态链接据的内存复用装置的装置框图。具体实施方式下面将结合本专利技术运行原理中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参照图1,一种动态链接库的内存复用方法,所述方法包括:S101:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;S102:判断所述参数数据、变量和函数是否符合标准的数据结构;S103:若是,则判断所述参数数据、变量和函数可复用;S104:将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。在其中一个实施例中,所述方法还包括:判断所述参数数据为形式参数或者实质参数;若判断为形式参数,则将所述形式参数进行丢弃;若判断为实质参数,则将所述实质参数进行复用。在其中一个实施例中,所述方法还包括:判断所述变量为全局变量或者局部变量;若判断为全局变量,则进行全局声明;若判断为局部变量,则进行局部声明。在其中一个实施例中,所述方法还包括:若判断所述函数为主函数,则将主函数进行解复用;若判断所述函数为备函数,则将备函数进行丢弃。在其中一个实施例中,所述方法还包括:在判断所述参数数据、变量和函数可复用之后,则在动态链接库中写入相应的地址,以将所述参数数据、变量和函数进行发送,并对应相应的动态链接库的地址收集另一个数据库的参数数据、变量和函数。请参照图2,一种动态链接库的内存复用装置,所述装置包括:获取模块100,用于通过进程的获取函数获取动态链接库中的参数数据、变量和函数;第一判断模块200,用于判断所述参数数据、变量和函数是否符合标准的数据结构;结果判断模块300,用于判断所述参数数据、变量和函数可复用;透传模块400,用于将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。在其中一个实施例中,所述装置还包括:第二判断模块,用于判断所述参数数据为形式参数或者实质参数;丢弃模块,用于若判断为形式参数,则将所述形式参数进行丢弃;复用模块,用于若判断为实质参数,则将所述实质参数进行复用。在其中一个实施例中,所述装置还包括:第三判断模块,用于判断所述变量为全局变量或者局部变量;若判断为全局变量,则进行全局声明;若判断为局部变量,则进行局部声明。在其中一个实施例中,所述装置还包括:第四判断模块,用于若判本文档来自技高网...
一种动态链接库的内存复用方法和装置

【技术保护点】
一种动态链接库的内存复用方法,其特征在于,所述方法包括:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。

【技术特征摘要】
1.一种动态链接库的内存复用方法,其特征在于,所述方法包括:通过进程的获取函数获取动态链接库中的参数数据、变量和函数;判断所述参数数据、变量和函数是否符合标准的数据结构;若是,则判断所述参数数据、变量和函数可复用;将所述参数数据、变量和函数通过进程透传给另一辅助进程,由所述辅助进程将所述参数数据、变量和函数划分为全局型或局部型,并进行声明,并调用主函数进行有效复用。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:判断所述参数数据为形式参数或者实质参数;若判断为形式参数,则将所述形式参数进行丢弃;若判断为实质参数,则将所述实质参数进行复用。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:判断所述变量为全局变量或者局部变量;若判断为全局变量,则进行全局声明;若判断为局部变量,则进行局部声明。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:若判断所述函数为主函数,则将主函数进行解复用;若判断所述函数为备函数,则将备函数进行丢弃。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:在判断所述参数数据、变量和函数可复用之后,则在动态链接库中写入相应的地址,以将所述参数数据、变量和函数进行发送,并对应相应的动态链接库的地址收集另一个数据库的参数数据、变量和函数。6.一种动态链接库的内存复用装置,其特征在于,所述装置包括:获取模块,用于通...

【专利技术属性】
技术研发人员:蔡昭权胡辉陈伽胡松蔡映雪陈军黄翰黄思博
申请(专利权)人:惠州学院
类型:发明
国别省市:广东,44

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

1