[发明专利]一种内核态客户端的升级方法、系统、设备及存储介质在审
申请号: | 201710912392.2 | 申请日: | 2017-09-29 |
公开(公告)号: | CN107643924A | 公开(公告)日: | 2018-01-30 |
发明(设计)人: | 李杰 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内核 客户端 升级 方法 系统 设备 存储 介质 | ||
技术领域
本发明涉及分布式存储技术领域,更具体地说,涉及一种内核态客户端的升级方法、系统、设备及存储介质。
背景技术
随着存储技术的发展,分布式存储的应用越来越广泛。而分布式存储的IO时延较高,为了降低IO时延,现有的分布式文件系统采用内核态客户端来提高IO效率。
然而在对内核态客户端进行函数升级时,需要先停止前端应用,再从新加载内核态模块,这里所说的内核态模块中封装有待运行函数和全局事件链表,不适合那些不允许前端应用停止的内核态分布式文件系统,使得现有的内核态升级方法的适用性差。
综上所述,如何提高内核态升级方法的适用性是目前本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种内核态客户端的升级方法,其能在一定程度上解决如何提高内核态升级方法的适用性的技术问题。本发明还提供了一种内核态客户端的升级系统、设备及存储介质。
为了实现上述目的,本发明提供如下技术方案:
一种内核态客户端的升级方法,包括:
获取外界输入的替换函数和被替换函数各自的标识信息;
将所述替换函数和所述被替换函数各自的标识信息组合成替换事件;
添加所述替换事件至内核态模块的全局事件链表,以供所述内核态模块执行所述全局事件链表时基于所述替换事件将自身模块中的所述被替换函数替换为所述替换函数。
优选的,所述获取外界输入的替换函数和被替换函数各自的标识信息,包括:
获取外界输入的替换函数和被替换函数各自的函数名;
基于所述函数名查找所述替换函数和所述被替换函数各自的函数地址;
所述将所述替换函数和所述被替换函数的标识信息组合成替换事件,包括:
将所述函数名和所述函数地址组合成替换事件。
优选的,所述将所述函数名和所述函数地址组合成替换事件,包括:
将所述函数名和所述函数地址组合成替换事件,所述函数名和所述函数地址在所述替换事件中的排列顺序包括:被替换函数的函数名、被替换函数的函数地址、替换函数的函数名、替换函数的函数地址。
本发明还提供了一种内核态客户端的升级系统,包括:
获取装置,用于获取外界输入的替换函数和被替换函数各自的标识信息;
组合装置,用于将所述替换函数和所述被替换函数各自的标识信息组合成替换事件;
添加装置,用于添加所述替换事件至内核态模块的全局事件链表,以供所述内核态模块执行所述全局事件链表时基于所述替换事件将自身模块中的所述被替换函数替换为所述替换函数。
优选的,所述获取装置包括:
获取模块,用于获取外界输入的替换函数和被替换函数各自的函数名;
查找模块,用于基于所述函数名查找所述替换函数和所述被替换函数各自的函数地址;
所述组合装置包括:
组合模块,用于将所述函数名和所述函数地址组合成替换事件。
优选的,所述组合模块包括:
组合单元,用于将所述函数名和所述函数地址组合成替换事件,所述函数名和所述函数地址在所述替换事件中的排列顺序包括:被替换的函数名、被替换的函数地址、替换的函数名、替换的函数地址。
本发明还提供了一种内核态客户端的升级设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述任一种内核态客户端的升级方法的步骤。
本发明还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种内核态客户端的升级方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710912392.2/2.html,转载请声明来源钻瓜专利网。