1.一种软件升级方法,其特征在于,所述方法包括:
当接收到外部升级脚本发送至目标进程的升级指令时,启动目标进程对应框架结构下的升级框架,所述升级框架中封装有用于控制内部资源升级的函数以及用于控制外部资源访问的函数,所述升级指令为针对so文件进行升级,具体为针对so文件所包含的函数、全局变量的升级,所述升级框架为分层式的进程框架,所述目标进程对应框架结构上分为两个部分,一部分是用于软件升级的升级框架,另一部分是对外部访问请求提供功能接口的基础功能实体;
基于所述用于控制内部资源升级的函数对待升级文件进行升级,所述升级指令中包含目标升级文件的路径信息,具体基于所述用于控制内部资源升级的函数调用目标升级文件的路径信息,并根据所述路径信息获取所述目标升级文件;将所述待升级文件在运行过程中所用到的资源数据同步至所述目标升级文件中,更新所述目标升级文件;向所述待升级文件发送关闭指令,并将所述更新后的目标升级文件作为升级后的文件;
在对所述待升级文件进行升级的过程中,基于所述用于控制外部资源访问的函数阻塞外部程序的访问操作,具体基于用于控制外部资源访问的函数将待升级文件以及目标升级文件在运行过程中所用到的资源函数设置为隐藏,基于用于控制外部资源访问的函数将待升级文件以及目标升级文件在运行过程中提供给外部程序调用的资源数据设置为可见。
2.根据权利要求1所述的方法,其特征在于,所述基于所述用于控制内部资源升级的函数对待升级文件进行升级,具体还包括:若接收到升级失败提示,则触发升级回退指令,并根据所述升级回退指令调用所述用于控制内部资源升级的函数对应的回退函数对所述待升级文件进行升级回退。
3.根据权利要求1所述的方法,其特征在于,在所述启动目标进程对应框架结构下的升级框架之后,所述方法还包括:通过统计外部程序访问引用计数,确定在软件升级之前所有外部程序的访问操作;
若所述所有外部程序的访问操作执行完毕,则基于所述用于控制内部资源升级的函数对待升级文件进行升级。
4.根据权利要求1所述的方法,其特征在于,所述目标进程对应框架结构下还包括基础功能实体,所述基础功能实体所使用的功能函数封装在所述待升级文件中,在所述基于所述用于控制内部资源升级的函数对待升级文件进行升级之后,所述方法还包括:基于所述目标进程对应框架结构下的基础功能实体生成外部操作提供功能接口;
所述基于所述目标进程对应框架结构下的基础功能实体对外部访问请求提供功能接口,具体包括:
从所述待升级文件中提取所述基础功能实体所使用的功能函数;
根据所述基础功能实体所使用的功能函数,对外部操作提供功能接口。
5.根据权利要求1‑4中任一项所述的方法,其特征在于,在所述基于所述用于控制内部资源升级的函数对待升级文件进行升级之后,所述方法还包括:按照所述待升级文件在运行过程中所用到资源函数的函数格式设置目标升级文件在运行过程中所用到资源数据的函数格式。
6.一种软件升级装置,其特征在于,所述装置包括:
启动单元,用于当接收到外部升级脚本发送至目标进程的升级指令时,启动目标进程对应框架结构下的升级框架,所述升级框架中封装有用于控制内部资源升级的函数以及用于控制外部资源访问的函数,所述升级指令为针对so文件进行升级,具体为针对so文件所包含的函数、全局变量的升级,所述升级框架为分层式的进程框架,所述目标进程对应框架结构上分为两个部分,一部分是用于软件升级的升级框架,另一部分是对外部访问请求提供功能接口的基础功能实体;
升级单元,用于基于所述用于控制内部资源升级的函数对待升级文件进行升级,所述升级指令中包含目标升级文件的路径信息,具体基于所述用于控制内部资源升级的函数调用目标升级文件的路径信息,并根据所述路径信息获取所述目标升级文件;将所述待升级文件在运行过程中所用到的资源数据同步至所述目标升级文件中,更新所述目标升级文件;向所述待升级文件发送关闭指令,并将所述更新后的目标升级文件作为升级后的文件;
阻塞单元,用于在对所述待升级文件进行升级的过程中,基于所述用于控制外部资源访问的函数阻塞外部程序的访问操作,具体基于用于控制外部资源访问的函数将待升级文件以及目标升级文件在运行过程中所用到的资源函数设置为隐藏,基于用于控制外部资源访问的函数将待升级文件以及目标升级文件在运行过程中提供给外部程序调用的资源数据设置为可见。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
8.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。