[发明专利]一种引导程序设置方法、装置、电子设备及存储介质有效
申请号: | 202111544636.9 | 申请日: | 2021-12-16 |
公开(公告)号: | CN114253615B | 公开(公告)日: | 2023-08-11 |
发明(设计)人: | 孙鹏;肖新光 | 申请(专利权)人: | 安天科技集团股份有限公司 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401 |
代理公司: | 北京锺维联合知识产权代理有限公司 11579 | 代理人: | 安娜 |
地址: | 150028 黑龙江省哈尔滨市高新技术产*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 引导 程序 设置 方法 装置 电子设备 存储 介质 | ||
本申请提供一种引导程序设置方法、装置、电子设备及存储介质,该方法包括:获取原始文件;根据所述原始文件和目标操作系统的配置,确定偏移量;根据所述偏移量对所述原始文件进行偏移处理,得到引导文件;将所述引导文件加载进目标扇区;其中,所述原始文件由高级计算机语言编写。通过本申请提供的引导程序设置方法,能够将由高级计算机语言编写的原始文件转换为目标扇区能够运行的引导文件。而不用使用汇编语言进行引导文件的编写,大大减少了开发人员的工作量。
背景技术
引导程序(英语:boot loader)位于电脑或其他计算机应用上,是指引导操作系统的程序。引导程序启动方式及程序视应用机型种类而不同。例如在普通的个人电脑上,引导程序通常分为两部分:第一阶段引导程序位于主引导记录(MBR),用以引导位于某个分区上的第二阶段引导程序,如NTLDR、BOOTMGR和GNU GRUB等。BIOS引导完成后,boot loader就接手初始化硬件设备、创建存储器空间的映射,以便为操作系统内核准备好正确的软硬件环境。
引导程序的一个重要作用就是对接口的引导和映射等。因为需要对接口进行设置,故而目前引导程序只能用汇编语言来写。但是汇编语言因为是低级的计算机语言,其编程的工作量很大,且后期维护起来非常困难。
发明内容
有鉴于此,本发明提供一种引导程序设置方法、装置、电子设备及存储介质,至少部分解决现有技术中存在的问题。
根据本申请的一个方面,提供一种引导程序设置方法,包括:
获取原始文件;
根据所述原始文件和目标操作系统的配置,确定偏移量;
根据所述偏移量对所述原始文件进行偏移处理,得到引导文件;
将所述引导文件加载进目标扇区;
其中,所述原始文件由高级计算机语言编写。
在本申请的一种示例性实施例中,所述根据所述原始文件和目标操作系统的配置,确定偏移量,包括:
对所述原始文件进行提取,得到可执行代码、重定位表和程序入口地址;
根据当前操作系统的配置,确定目标入口地址;
根据所述重定位表、所述程序入口地址和所述目标入口地址,确定所述偏移量。
在本申请的一种示例性实施例中,所述根据所述偏移量对所述原始文件进行偏移处理,得到引导文件,包括:
根据所述偏移量和所述重定位表对所述可执行代码进行偏移处理,得到所述引导文件。
在本申请的一种示例性实施例中,所述对所述原始文件进行提取,得到可执行代码、重定位表和程序入口地址,包括:
根据所述原始文件的数据结构对所述原始文件进行拆解,得到若干子文件;
对若干所述子文件进行特征识别,确定若干所述子文件中的所述可执行代码、所述重定位表和所述程序入口地址。
在本申请的一种示例性实施例中,在所述获取原始文件之前,所述方法还包括:
获取用户在编程界面输入的原始代码;
对所述原始代码进行编译,得到的所述原始文件;
其中,所述原始文件为二进制文件。
在本申请的一种示例性实施例中,所述对所述原始代码进行编译,包括:
为所述原始代码设置程序入口地址和重定位表。
在本申请的一种示例性实施例中,所述目标扇区为主引导扇区。
根据本申请的一个方面,提供一种引导程序设置装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安天科技集团股份有限公司,未经安天科技集团股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111544636.9/2.html,转载请声明来源钻瓜专利网。