一种嵌入式系统的启动方法、装置、设备及存储介质制造方法及图纸

技术编号:28295079 阅读:15 留言:0更新日期:2021-04-30 16:18
本申请提供了一种嵌入式系统的启动方法、装置、设备及存储介质,所述方法包括:将嵌入式系统编译为bin格式的镜像文件;在引导程序的源码中添加一启动地址项;执行所述引导程序时,将目标机中预先存储的启动地址填充至所述启动地址项中;根据所述启动地址,将所述镜像文件拷贝到目标机内存对应的地址处;跳转到所述目标机内存对应的地址处运行所述镜像文件。基于本申请提供的方案,可以利用网络从本地或目标机的磁盘上加载运行没有头信息的镜像文件,减少镜像文件的加载运行时间。

【技术实现步骤摘要】
一种嵌入式系统的启动方法、装置、设备及存储介质
本申请涉及嵌入式系统领域,特别是涉及一种嵌入式系统的启动方法、装置、设备及存储介质。
技术介绍
现有技术中的引导程序只能加载运行可重定位的目标文件,比如elf文件。引导程序通过读取elf文件的头信息来获得该elf文件的启动地址和文件大小,然后将该elf文件拷贝到对应的启动地址处,通过跳转指令跳转到启动地址处,实现该elf文件的加载和运行。但是,elf文件相对较大,拷贝elf文件消耗的时间相对较多,占用的内存也较大。导致在启动时间或者内存大小受限的应用场景下,基于引导程序加载elf文件的方式可能不满足应用场景的要求。
技术实现思路
有鉴于此,本申请提供了一种嵌入式系统的启动方法、装置、设备及存储介质,使引导程序可以加载并运行bin格式的镜像文件,从而能够减少镜像文件的加载时间,并使镜像文件占用更少的内存空间。本申请的第一方面提供一种嵌入式系统的启动方法,包括:将嵌入式系统编译为bin格式的镜像文件;在引导程序的源码中添加一启动地址项;执行所述引导程序时,将目标机中预先存储的启动地址填充至所述启动地址项中;根据所述启动地址,将所述镜像文件拷贝到目标机内存对应的地址处;跳转到所述目标机内存对应的地址处运行所述镜像文件。由上,由于bin格式文件相对于其他格式文件所占用的内存较小,因此,bin格式文件的加载运行相对于其他格式文件的加载运行消耗的时间要少很多。本方面提供的技术方案,将嵌入式系统编译为bin格式的文件来加载运行,并提供了一种bin格式文件的加载运行方式,可以大大缩短嵌入式系统的启动运行时间。作为第一方面的一种实现方式,还包括:在引导程序的源码中还添加所述镜像文件的文件大小项;执行所述引导程序时,将目标机中预先存储的镜像文件的文件大小填充至所述文件大小项;将所述镜像文件拷贝到目标机内存对应的地址处时,还根据所述镜像文件的文件大小拷贝。由上,在本方面的引导程序源码中还添加了镜像文件的文件大小项,可以直观反映待加载的镜像文件的大小,以预估该镜像文件所需的内存大小以及加载运行时间。作为第一方面的一种实现方式,所述镜像文件的文件大小由所述编译获得。作为第一方面的一种实现方式,所述目标机中预先存储启动地址的过程包括:当引导程序进入命令行模式时,将预先获得的启动地址填充至命令行,并将所述启动地址保存在目标机的指定存储区中。作为第一方面的一种实现方式,所述目标机中预先存储镜像文件的文件大小的过程包括:当引导程序进入命令行模式时,将预先获得的储镜像文件的文件大小填充至命令行,并将所述储镜像文件的文件大小保存在目标机的指定存储区中。作为第一方面的一种实现方式,所述指定存储区为受保护的指定存储区。作为第一方面的一种实现方式,所述将所述镜像文件拷贝到目标机内存对应的地址处包括:采用文件传输协议或简单文件传输协议将所述镜像文件拷贝到目标机内存对应的地址处。作为第一方面的一种实现方式,所述将所述镜像文件拷贝到目标机内存对应的地址处包括:采用直接存储器访问将所述镜像文件拷贝到目标机内存对应的地址处。由上,提供了将镜像文件拷贝到目标机内存对应的地址处的拷贝方法,可以提高拷贝效率。本申请的第二方面提供一种嵌入式系统的启动装置,包括:编译模块,用于将嵌入式系统编译为bin格式的镜像文件;添加模块,用于在引导程序的源码中添加一启动地址项;执行模块,用于执行所述引导程序时,将目标机中预先存储的启动地址填充至所述启动地址项中;拷贝模块,用于根据所述启动地址,将所述镜像文件拷贝到目标机内存对应的地址处;运行模块,用于跳转到所述目标机内存对应的地址处运行所述镜像文件。作为第二方面的一种实现方式,所述添加模块,还用于在引导程序的源码中还添加所述镜像文件的文件大小项;所述执行模块,还用于执行所述引导程序时,将目标机中预先存储的镜像文件的文件大小填充至所述文件大小项;所述拷贝模块,还用于将所述镜像文件拷贝到目标机内存对应的地址处时,还根据所述镜像文件的文件大小拷贝。本申请的第三方面提供一种计算设备,包括:总线;通信接口,其与所述总线连接;至少一个处理器,其与所述总线连接;以及至少一个存储器,其与总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理执行上述第一方面任一项所述的嵌入式系统的启动方法。本申请的第四方面提供一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令当被计算机执行时使得所述计算机执行上述第一方面任一项所述的嵌入式系统的启动方法。本申请的第五方面提供一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令当被计算机执行时使得所述计算机执行上述第一方面任一项所述的嵌入式系统的启动方法。综上,本申请提供的技术方案,将嵌入式系统编译为bin格式的文件来加载运行,并提供了一种bin格式文件的加载运行方式,可以大大缩短嵌入式系统的启动运行时间。附图说明图1为本申请实施例提供的一种嵌入式系统的启动方法的流程图;图2为本申请实施例提供的在命令行添加配置参数的流程图;图3为本申请实施例提供的将bin格式的镜像文件拷贝到目标机的示意图;图4为本申请实施例提供的bin格式的镜像文件的运行示意图;图5为本申请实施例提供的一种嵌入式系统的启动装置结构示意图;图6为本申请实施例提供的计算设备的结构示意图。具体实施方式说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。在以下的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在一个或多个实施例中,能够以任何适当的方式组合各特定特征、结构或特性,如从本公开对本领域的普通技术人员显而易见的本文档来自技高网...

【技术保护点】
1.一种嵌入式系统的启动方法,其特征在于,包括:/n将嵌入式系统编译为bin格式的镜像文件;/n在引导程序的源码中添加一启动地址项;/n执行所述引导程序时,将目标机中预先存储的启动地址填充至所述启动地址项中;/n根据所述启动地址,将所述镜像文件拷贝到目标机内存对应的地址处;/n跳转到所述目标机内存对应的地址处运行所述镜像文件。/n

【技术特征摘要】
1.一种嵌入式系统的启动方法,其特征在于,包括:
将嵌入式系统编译为bin格式的镜像文件;
在引导程序的源码中添加一启动地址项;
执行所述引导程序时,将目标机中预先存储的启动地址填充至所述启动地址项中;
根据所述启动地址,将所述镜像文件拷贝到目标机内存对应的地址处;
跳转到所述目标机内存对应的地址处运行所述镜像文件。


2.根据权利要求1所述的方法,其特征在于,还包括:
在引导程序的源码中还添加所述镜像文件的文件大小项;
执行所述引导程序时,将目标机中预先存储的镜像文件的文件大小填充至所述文件大小项;
将所述镜像文件拷贝到目标机内存对应的地址处时,还根据所述镜像文件的文件大小拷贝。


3.根据权利要求1所述的方法,其特征在于,所述目标机中预先存储启动地址的过程包括:
当引导程序进入命令行模式时,将预先获得的启动地址填充至命令行,并将所述启动地址保存在目标机的指定存储区中。


4.根据权利要求2所述的方法,其特征在于,所述目标机中预先存储镜像文件的文件大小的过程包括:
当引导程序进入命令行模式时,将预先获得的储镜像文件的文件大小填充至命令行,并将所述储镜像文件的文件大小保存在目标机的指定存储区中。


5.根据权利要求3或4所述的方法,其特征在于,所述指定存储区为受保护的存储区。


6.根据权利要求1或2所述的方法...

【专利技术属性】
技术研发人员:王德泽
申请(专利权)人:北京科银京成技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1