[发明专利]一种实现动态链接库的方法和装置有效
申请号: | 200910083419.7 | 申请日: | 2009-04-30 |
公开(公告)号: | CN101561763A | 公开(公告)日: | 2009-10-21 |
发明(设计)人: | 吴志华;古佳;邱会发;邱璇 | 申请(专利权)人: | 腾讯科技(北京)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京三高永信知识产权代理有限责任公司 | 代理人: | 何文彬 |
地址: | 100089北京市海淀区海淀大*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 动态 链接 方法 装置 | ||
1.一种实现动态链接库的方法,其特征在于,所述方法包括:
接收加载动态链接库文件的请求;
根据接收的加载请求判断所述动态链接库文件是否已经加载;
如果已经加载,则将所述动态链接库文件对应的句柄中计数器值加1,并执 行接收加载动态链接库文件的请求的步骤;
如果没有加载,根据所述动态链接库文件名进行加载,如果加载成功,为 所述动态链接库文件分配空闲句柄,并在所述分配的句柄中保存所述动态链接 库文件信息,将所述计数器值初始化为预设值并加1,然后执行接收加载动态链 接库文件的请求的步骤;否则,直接执行所述接收加载动态链接库文件的请求 的步骤;
接收获取所述动态链接库文件对外部其他应用提供的服务接口地址的请 求;
根据所述获取请求中的函数名调用句柄中保存的查询函数来查询所述动态 链接库文件对外部其他应用提供的服务接口相对地址,如果查找到,将查询的 所述相对地址加上所述动态链接库文件的起始地址,作为所述动态链接库文件 对外部其他应用提供的服务接口地址;否则,执行接收获取动态链接库文件对 外部其他应用提供的服务接口地址的请求的步骤;
释放所述动态链接库文件。
2.根据权利要求1所述的方法,其特征在于,所述动态链接库文件信息包 括:查询接口函数指针,动态链接库文件名及动态链接库文件起始地址。
3.根据权利要求1所述的方法,其特征在于,所述释放动态链接库文件, 具体包括:
接收释放所述动态链接库文件的请求;
将所述动态链接库文件对应的句柄中计数器值减1,并判断减1后的当前计 数器值是否为预设值,如果是,则将所述动态链接库文件从内存中释放;否则, 执行接收释放所述动态链接库文件的请求的步骤。
4.一种实现动态链接库的装置,其特征在于,所述装置包括:第一接收单 元,第一判断单元,加载单元,第二接收单元,查询单元,计算单元和释放模 块;
所述第一接收单元,用于接收加载动态链接库文件的请求;
所述第一判断单元,用于根据接收的加载请求判断所述动态链接库文件是 否已经加载,如果是,则将所述动态链接库文件对应的句柄中计数器值加1,并 触发所述第一接收单元;否则,触发所述加载单元;
所述加载单元,用于收到所述判断单元的触发后,根据所述动态链接库文 件名进行加载,如果加载成功,为所述动态链接库文件分配空闲句柄,并在所 述分配的句柄中保存所述动态链接库文件信息,将所述计数器值初始化为预设 值并加1,然后触发所述第一接收单元;否则,直接触发所述第一接收单元;
所述第二接收单元,用于接收获取所述动态链接库文件对外部其他应用提 供的服务接口地址的请求;
所述查询单元,用于根据所述获取请求中的函数名调用句柄中保存的查询 函数来查询所述动态链接库文件对外部其他应用提供的服务接口相对地址,如 果查找到,则触发所述计算单元;否则,触发所述第二接收单元;
所述计算单元,用于收到所述查询单元的触发后,将所述查询单元查询的 所述相对地址加上所述动态链接库文件的起始地址,作为所述动态链接库文件 对外部其他应用提供的服务接口地址;
所述释放模块,用于释放所述加载模块加载的动态链接库文件。
5.根据权利要求4所述的装置,其特征在于,所述动态链接库文件信息包 括:查询接口函数指针,动态链接库文件名及动态链接库文件起始地址。
6.根据权利要求4所述的装置,其特征在于,所述释放模块具体包括:第 三接收单元,第二判断单元和释放单元;
所述第三接收单元,用于接收释放所述动态链接库文件的请求;
所述第二判断单元,用于将所述动态链接库文件对应的句柄中计数器值减 1,并判断减1后的当前计数器值是否为预设值,如果是,触发所述释放单元; 否则,触发所述第三接收单元;
所述释放单元,用于收到所述判断单元的触发后,将所述动态链接库文件 从内存中释放。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(北京)有限公司,未经腾讯科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910083419.7/1.html,转载请声明来源钻瓜专利网。