本发明专利技术实施例公开了一种镜像升级的程序执行接口预留方法及装置,方法包括:根据预设接口函数,增加自定义程序文件;根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。本发明专利技术实施例通过将增加自定义程序文件记录预设接口函数,并修改与所述自定义程序文件对应的目标文件,使得所述自定义程序文件在编译镜像时被自动编译;并根据自身需要编写生成可执行程序后打包进镜像文件对外提供给用户,使得用户在无需额外人为操作的无感知情况下完成升级操作,省时省力。
Method and device for executing program execution interface of image upgrading
The embodiment of the invention discloses an image upgrade program execution interface reservation method and device, method includes: according to the preset interface function, add custom program files; according to the custom program file, modify the program files corresponding to the custom of the target file, so that the program files are automatically compiled in the compiled image when will the program file; automatically generates executable file package, and the package after the executable file is added to the image file. The embodiment of the invention by adding custom program documentation and modify the default interface function, corresponding to the program file object file, the program files are compiled automatically in the compiled image; and according to their own needs to generate the executable program package into the image file provides to the user, enables the user to complete in the perception of no upgrade operation without additional manual operation, saving time and effort.
【技术实现步骤摘要】
本专利技术实施例涉及计算机
,具体涉及一种镜像升级的程序执行接口预留方法及装置。
技术介绍
网络设备一般会提供web或CLI命令行方式进行镜像文件升级,升级版本操作主要是替换升级镜像文件,然后升级完成后加载新镜像文件启动运行,但是有些特殊情况下需要在升级重启设备前对设备进行一些特殊操作,保证在设备下一次启动时修改生效,比如修改设备原有的grub.conf配置文件增加或修改引导参数,比如修改删除存储设备的指定文件等等。现有技术的升级镜像程序中没有预留自定义程序的执行接口,因此为了避免中间升级过渡版本多次重启设备,必须在升级前进入后台人为的进行手动修改,这对于研发人员来说较为方便,但对于普通用户来说则是无法接受的。在实现本专利技术实施例的过程中,专利技术人发现现有的方法如果升级镜像的程序中没有预留自定义程序的执行接口,则必须在升级前进入后台人为的进行手动修改,或者中间升级过渡版本多次重启设备。
技术实现思路
由于现有的方法如果升级镜像的程序中没有预留自定义程序的执行接口,则必须在升级前进入后台人为的进行手动修改,或者中间升级过渡版本多次重启设备的问题,本专利技术实施例提出一种镜像升级的程序执行接口预留方法及装置。第一方面,本专利技术实施例提出一种镜像升级的程序执行接口预留方法,包括:根据预设接口函数,增加自定义程序文件;根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。优选地,所述方法还包括:对所述镜像文件中的所述可执行文件解压,若判断获知解压成功且所述可执行文件存在,则执行所述可执行文件。优选地,所述方法还包括:若判断获知所述可执行文件执行完成,则删除所述可执行文件。优选地,所述预设接口函数包括文件读写、文件修改和文件删除。优选地,所述执行所述可执行文件进一步包括:通过popen或system函数执行所述可执行文件。第二方面,本专利技术实施例还提出一种镜像升级的程序执行接口预留装置,包括:文件增加模块,用于根据预设接口函数,增加自定义程序文件;文件修改模块,用于根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;文件处理模块,用于将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。优选地,所述装置还包括:文件执行模块,用于对所述镜像文件中的所述可执行文件解压,若判断获知解压成功且所述可执行文件存在,则执行所述可执行文件。优选地,所述装置还包括:文件删除模块,用于若判断获知所述可执行文件执行完成,则删除所述可执行文件。优选地,所述文件增加模块中的所述预设接口函数包括文件读写、文件修改和文件删除。优选地,所述文件执行模块中的所述执行所述可执行文件进一步包括:通过popen或system函数执行所述可执行文件。由上述技术方案可知,本专利技术实施例通过将增加自定义程序文件记录预设接口函数,并修改与所述自定义程序文件对应的目标文件,使得所述自定义程序文件在编译镜像时被自动编译;并根据自身需要编写生成可执行程序后打包进镜像文件对外提供给用户,使得用户在无需额外人为操作的无感知情况下完成升级操作,省时省力。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。图1为本专利技术一实施例提供的一种镜像升级的程序执行接口预留方法的流程示意图;图2为本专利技术一实施例提供的一种镜像升级的程序执行接口预留装置的结构示意图。具体实施方式下面结合附图,对专利技术的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。图1示出了本实施例提供的一种镜像升级的程序执行接口预留方法的流程示意图,包括:S101、根据预设接口函数,增加自定义程序文件;其中,所述预设接口函数为常用操作的接口函数,或者研发根据自身需要进行操作的函数。所述自定义程序文件可以为C语言编写的程序文件。具体地,增加自定义程序文件,在该文件中预留常用操作的接口函数,比如文件读写、修改、删除等。S102、根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;其中,所述目标文件可以为Makefile文件。具体地,修改相关的Makefile文件,保证新增的自定义程序文件在编译镜像时被自动编译。S103、将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。其中,所述镜像文件为镜像升级程序执行时读取的文件。本实施例通过将增加自定义程序文件记录预设接口函数,并修改与所述自定义程序文件对应的目标文件,使得所述自定义程序文件在编译镜像时被自动编译;并根据自身需要编写生成可执行程序后打包进镜像文件对外提供给用户,使得用户在无需额外人为操作的无感知情况下完成升级操作,省时省力。进一步地,在上述方法实施例的基础上,所述方法还包括:S104、对所述镜像文件中的所述可执行文件解压,若判断获知解压成功且所述可执行文件存在,则执行所述可执行文件。具体地,修改原来的镜像升级程序,在镜像文件替换完成的最后将自定义的可执行文件从镜像文件中单独解压出来,若解压成功且该可执行文件存在则通过popen或system函数执行该可执行文件。通过可执行文件的执行实现在升级设备镜像文件时做额外的一些镜像升级所需的操作,保证在设备重启前及时将操作完成,保证新镜像下次启动时所需操作能够生效。本实施例通过编写生成自定义可执行程序并打包进镜像文件,在镜像升级程序中增加自定义可执行程序的执行接口,在镜像升级命令下发执行升级过程中判断该执行程序是否存在并执行,完成在升级过程中的自身需要的特殊操作,保证该操作在镜像升级完成设备重启后能生效。进一步地,在上述方法实施例的基础上,所述方法还包括:S105、若判断获知所述可执行文件执行完成,则删除所述可执行文件。通过当可执行文件执行完成后将其删除,避免占用存储空间或被重复执行。进一步地,在上述方法实施例的基础上,所述预设接口函数包括文件读写、文件修改和文件删除。所述文件读写、文件修改和文件删除为常用的接口函数,通过将文件读写、文件修改和文件删除的接口函数添加至自定义程序文件,能够避免研发重复的函数,节省研发时间。更进一步地,在上述方法实施例的基础上,所述执行所述可执行文件进一步包括:通过popen或system函数执行所述可执行文件。通过popen函数执行所述可执行文件,能够提高文件的执行效率;通过system函数执行所述可执行文件,能够简化文件的执行过程。图2示出了本实施例提供的一种镜像升级的程序执行接口预留装置的结构示意图,所述装置包括:文件增加模块201、文件修改模块202和文件处理模块203;所述文件增加模块201用于根据预设接口函数,增加自定义程序文件;所述文件修改模块202用于根据所述自本文档来自技高网...
【技术保护点】
一种镜像升级的程序执行接口预留方法,其特征在于,包括:根据预设接口函数,增加自定义程序文件;根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。
【技术特征摘要】
1.一种镜像升级的程序执行接口预留方法,其特征在于,包括:根据预设接口函数,增加自定义程序文件;根据所述自定义程序文件,修改与所述自定义程序文件对应的目标文件,以使所述自定义程序文件在编译镜像时被自动编译;将所述自定义程序文件自动编译生成的可执行文件进行打包,并将打包后的所述可执行文件添加至镜像文件中。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:对所述镜像文件中的所述可执行文件解压,若判断获知解压成功且所述可执行文件存在,则执行所述可执行文件。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:若判断获知所述可执行文件执行完成,则删除所述可执行文件。4.根据权利要求1所述的方法,其特征在于,所述预设接口函数包括文件读写、文件修改和文件删除。5.根据权利要求2所述的方法,其特征在于,所述执行所述可执行文件进一步包括:通过popen或system函数执行所述可执行文件。6.一种镜像升级的程序执行接口预留装置,其特征在于,包括:文件增加...
【专利技术属性】
技术研发人员:高福亮,
申请(专利权)人:汉柏科技有限公司,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。