技术特征:

1.一种提高用于linux系统的软件兼容性的方法,其特征在于:

对接收到的命令信息进行兼容性判断,如果需要调用自定义的内核函数,则执行内核函数修改步骤;反之,则根据接收到的命令中捕获内核系统调用的处理进程识别号,调用对应的处理进程对数据进行处理;

其中,内核函数修改步骤包括:根据接收到的命令中捕获内核系统调用的处理进程识别号;将内核系统调用的原始处理进程挂起使其处于休眠状态;并对内核的系统调用进程进行克隆,将克隆后的系统调用进程副本中的接口地址修改为自定义函数存储的地址;修改后的克隆的系统调用进程副本处于活跃状态等待cpu执行相关处理命令;命令执行完成后,销毁克隆后的系统调用进程副本,根据处理进程识别号查找原始的处理进程,并使其恢复运行。

2.根据权利要求1所述的提高用于linux系统的软件兼容性的方法,其特征在于:将内核系统调用的原始处理进程挂起使其处于休眠状态的方法为:根据原始处理进程的识别号找到对应的进程表项,在进程表项中将原始处理进程的状态修改为休眠。

3.根据权利要求1所述的提高用于linux系统的软件兼容性的方法,其特征在于:所述对接收到的命令进行兼容性判断的方法为:将接收到的命令与预设的映射表进行匹配,如果接收到的命令在预设的映射表中,则为需要调用自定义的内核函数的命令;反之,则根据接收到的命令中捕获内核系统调用的处理进程识别号,调用对应的处理进程对数据进行处理;其中,预设的映射表为哈希表,需要替换调用地址的命令的原始调用接口地址通过乘法哈希算法得到第一key1值,相对应的value部分为替换的新的函数调用接口的地址。

4.根据权利要求1所述的提高用于linux系统的软件兼容性的方法,其特征在于:还包括命令信息合法性检测;预设合法命令的格式,将接收到的命令信息进行反向解析,与预设合法命令的格式进行对比,完全一样,则该命令属于合法命令,继续进行命令的兼容性判断;如果接收到的命令信息进过反向解析与预设合法命令的格式不一致,则为非法命令,直接进行拦截。

5.根据权利要求4所述的提高用于linux系统的软件兼容性的方法,其特征在于:所述合法命令格式的设置方法为:通过合法命令中的命令名称和命令参数长度采用乘法哈希算法生成的字符串key2,提取字符串key2的奇位构成子串,子串与命令名称和命令参数长度构成的字符串拼接成字符串key3将字符串key3利用base64算法生成随机码。

6.根据权利要求1所述的提高用于linux系统的软件兼容性的方法,其特征在于:还包括命令权限判断,对直接调用原始处理进程的命令进行命令权限判断,如果命令为限制命令,则不执行该命令;如果是非限制命令;则根据调用的处理进程识别号调用对应的处理进程。

7.根据权利要求6所述的提高用于linux系统的软件兼容性的方法,其特征在于:所述命令权限判断方法为:首先预设值命令权限控制表,根据每个命令的原始调用接口地址做乘法哈希运算求模得到对应命令在命令权限控制表中的位置,然后这个位置存放对应命令权限状态的数据0或1,0表示非限制状态;1表示限制状态。

8.一种提高用于linux系统的软件兼容性的系统,其中包括内核驱动模块,所述内核驱动模块对接收到的命令进行判断,如果需要调用自定义的内核函数,则执行内核函数修改步骤;反之,则根据接收到的命令中捕获内核系统调用的处理进程识别号,调用对应的处理进程对数据进行处理;

其中,内核函数修改步骤包括:根据接收到的命令中捕获内核系统调用的处理进程识别号;将内核系统调用的原始处理进程挂起使其处于休眠状态;并对内核的系统调用进程进行克隆,将克隆后的系统调用进程副本中的接口地址修改为自定义函数存储的地址;修改后的克隆的系统调用进程副本处于活跃状态等待cpu执行相关处理命令;命令执行完成后,销毁克隆后的系统调用进程副本,根据处理进程识别号查找原始的处理进程,并使其恢复运行。

9.一种存储介质,其特征在于:所述存储介质上保存有程序,所述程序被运行时执行权利要求1~2中任意一项所述的提高用于linux系统的软件的兼容性的方法。

10.一种处理器,其特征在于:所述处理器用于运行程序,其中,所述程序被运行时执行权利要求1~2中任意一项所述的提高用于linux系统的软件的兼容性的方法。