System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于定制软件源的嵌入式操作系统构建方法技术方案_技高网

一种基于定制软件源的嵌入式操作系统构建方法技术方案

技术编号:40079882 阅读:5 留言:0更新日期:2024-01-17 02:26
本发明专利技术公开了一种基于定制软件源的嵌入式操作系统构建方法,包括:确定并获取嵌入式操作系统需要安装的rpm安装包列表;选定使用的rpm安装包repo文件,获取repo文件中的url下载地址;循环安装rpm安装包列表中的每一个包到rootfs的根目录下;构建rootfs文件系统;完善rootfs根文件系统的配置参数;制作rootfs根文件系统镜像。本发明专利技术提高了嵌入式操作系统的构建效率,满足多样化的定制需求,构建高度可移植性的嵌入式操作系统,实现低功耗,高稳定性运转。

【技术实现步骤摘要】

本专利技术属于操作系统软件,具体涉及一种基于定制软件源的嵌入式操作系统构建方法


技术介绍

1、随着计算机技术及集成电路技术的发展,嵌入式技术日渐普及,在通讯、网络、工控、医疗、电子等领域发挥着越来越重要的作用。嵌入式系统无疑成为当前最热门最有发展前途的it应用领域之一。嵌入式系统是一种专门为特定应用程序设计的计算机系统,这些系统经常要在较小的空间内处理较复杂的问题,比如执行实时控制、保持实时数据处理、提供高性能计算等。

2、区别于传统的服务器操作系统,嵌入式操作系统在设计过程中会遇到一些难点,首先是嵌入式操作系统资源有限,如处理器,存储等等性能有限,因此需要在有限的资源下设计系统;其次是对特定版本的软件有较高的要求,嵌入式设备一般运行于特定场景下,专注于某项特定功能,因此需要嵌入式操作系统提供对软件版本以及特殊软件的定制需求;再者,由于构建环境差异,现有的嵌入式操作系统的构建方法配置复杂,开发效率低下。


技术实现思路

1、本专利技术的目的是在于提供一种基于定制软件源的嵌入式操作系统构建方法,提高嵌入式操作系统的构建效率,满足多样化的定制需求,构建高度可移植性的嵌入式操作系统,实现低功耗,高稳定性运转。

2、为实现上述目的,本专利技术提供如下技术方案:一种基于定制软件源的嵌入式操作系统构建方法,包括如下方法步骤:

3、s1、明确嵌入式操作系统需要安装的rpm安装包列表,指定宿主机非根目录的工作路径,并设置为新rootfs根文件系统的根目录;rpm安装包是linux中标准的软件包格式,能够轻松地安装、更新、卸载软件包,而无需手动编译软件;选定构建rootfs根文件系统的根目录,预安装程序和后续安装程序都会安装到这个目录下,并创建一个新的rpm资料库;

4、s2、选定使用的rpm安装包repo文件,获取repo文件中的url下载地址;repo文件定义了一个或者多个软件仓库的地址,根据软件仓库的地址对待安装或者待升级的软件包进行下载;软件仓库中的软件包可以是根据需求做的定制化修改的软件包,从而在软件层面保持嵌入式操作系统的可定制化。

5、s3、基于url下载地址,下载安装rpm安装包filesystem在rootfs根目录下生成相应的文件系统框架,下载并循环安装rpm安装包列表中的每一个rpm安装包到rootfs文件系统的根目录下,安装完成后删除下载的rpm安装包;

6、s4、构建rootfs文件系统,将宿主机的/proc、/dev、/sys等虚拟文件系统挂载到rootfs根文件系统目录下,构建rootfs根文件系统整体目录结构;

7、s5、完善rootfs根文件系统的配置参数,使用chroot命令进入rootfs根文件系统,修改新系统的配置参数;

8、s6、制作rootfs根文件系统镜像,系统镜像包含了该rootfs操作系统所有数据的克隆;计算rootfs目录下所有文件所占的空间大小,分配镜像空间资源,创建ext4的文件系统,并生成rootfs.img镜像,并将该镜像挂载到临时目录下,把新生成的rootfs根文件系统中的所有内容同步复制到rootfs.img的挂载点,文件系统镜像制作完成。

9、进一步地,采用rpm命令中的--root选项将指定的工作路径设置为根路径,并根据需求定制化修改构建嵌入式文件系统所需要的软件包列表。

10、进一步地,所述s1还包括使用--initdb选项初始化rpm数据库,rpm数据库用于记录rpm安装包下载安装过程中的日志。

11、进一步地,所述rpm安装包列表至少包括filesystem安装包,安装filesystem软件包在嵌入式文件系统根目录下生成相应的文件系统框架。

12、进一步地,s2中所述的url下载地址支持通过本地源、网络源或者输入以空格隔开的url地址连接来进行rpm安装包软件仓库源的指定。

13、进一步地,所述s3采用dnf软件包管理工具下载与安装rpm安装包,具体包括:使用dnf命令中的--repofrompath选项指定要使用的软件仓库的标签和地址,可多次使用此选项添加多个软件仓库源;使用dnf命令中的--installroot指定安装包的安装路径;根据所述的rpm安装包列表循环安装,在每个rpm安装包安装完成后检验安装过程中是否出错,若出错则中断程序并给予报错警告,若确认无误则继续安装列表中的下一个rpm安装包。

14、进一步地,s4中构建rootfs文件系统包括:将宿主机中的/dev、/proc、/sys挂载到新的rootfs根文件系统对应目录下面,通过parted-s命令对rootfs根文件系统进行分区,并通过--resizepart调整分区容量,将整个嵌入式系统的可用空间扩展到相应大小。

15、进一步地,s5中修改新系统的配置参数时,使用chroot命令将指定的工作路径作为新系统的根目录,后续系统命令运行环境都以指定目录为根目录运行,宿主机环境不可见,在新的系统根目录下运行指令,更改文件系统的配置参数。

16、进一步地,所述配置参数包括定制化文件系统名称、文件系统密码、文件系统的时间设置、网络配置以及开机自启动设置系统参数,其他定制化操作通过更新软件源中的安装包进行设置。

17、进一步地,s6中所述的分配镜像空间资源具体包括:使用dd命令生成虚拟块设备稀疏文件,dd命令参数中of是写入目标,值为rootfs.img文件的绝对路径,分配rootfs_img的空间,使用sync指令将存于buffer中的资料强制写入硬盘中。

18、与现有技术相比,本专利技术的有益效果为:

19、1.自主可控,可定制化设计。为了满足不同软件环境下嵌入式操作系统的要求,本专利技术可以构建任何可行的软件搭配,只需要提供相应的软件仓库源以及待安装rpm安装包列表,根据需求对软件源中的软件包进行更新升级,对软件包安装列表进行裁剪,提供多层次,灵活稳定的系统体系结构。

20、2.可移植性强。本专利技术设计的嵌入式操作系统是与内核解耦的,也就是说rootfs操作系统理论上可以运行在其他支持linux内核的设备平台,需要在烧录的时候改变一下cpu以及板卡型号的内核文件,因此对于硬件平台的多样性,该专利技术实现的嵌入式操作系统可以支撑运行在不同的处理器和开发板上,具有高度可移植性。

本文档来自技高网...

【技术保护点】

1.一种基于定制软件源的嵌入式操作系统构建方法,其特征在于,包括以下方法步骤:

2.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:采用rpm命令中的--root选项将指定的工作路径设置为根路径,并根据需求定制化修改构建嵌入式文件系统所需要的软件包列表。

3.根据权利要求2所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述S1还包括使用--initdb选项初始化rpm数据库,rpm数据库用于记录rpm安装包下载安装过程中的日志。

4.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述rpm安装包列表至少包括filesystem安装包。

5.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:S2中所述的url下载地址支持通过本地源、网络源或者输入以空格隔开的url地址连接来进行rpm安装包软件仓库源的指定。

6.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述S3采用dnf软件包管理工具下载与安装rpm安装包,具体包括:使用dnf命令中的--repofrompath选项指定要使用的软件仓库的标签和地址,可多次使用此选项添加多个软件仓库源;使用dnf命令中的--installroot指定安装包的安装路径;根据所述的rpm安装包列表循环安装,在每个rpm安装包安装完成后检验安装过程中是否出错,若出错则中断程序并给予报错警告,若确认无误则继续安装列表中的下一个rpm安装包。

7.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:S4中构建rootfs文件系统包括:将宿主机中的/dev、/proc、/sys挂载到新的rootfs根文件系统对应目录下面,通过parted-s命令对rootfs根文件系统进行分区,并通过--resizepart调整分区容量,将整个嵌入式系统的可用空间扩展到相应大小。

8.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:S5中修改新系统的配置参数时,使用chroot命令将指定的工作路径作为新系统的根目录,后续系统命令运行环境都以指定目录为根目录运行,宿主机环境不可见,在新的系统根目录下运行指令,更改文件系统的配置参数。

9.根据权利要求8所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述配置参数包括定制化文件系统名称、文件系统密码、文件系统的时间设置、网络配置以及开机自启动设置系统参数,其他定制化操作通过更新软件源中的安装包进行设置。

10.根据权利要求1~9任一所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:S6中所述的分配镜像空间资源具体包括:使用dd命令生成虚拟块设备稀疏文件,dd命令参数中of是写入目标,值为rootfs.img文件的绝对路径,分配rootfs_img的空间,使用sync指令将存于buffer中的资料强制写入硬盘中。

...

【技术特征摘要】

1.一种基于定制软件源的嵌入式操作系统构建方法,其特征在于,包括以下方法步骤:

2.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:采用rpm命令中的--root选项将指定的工作路径设置为根路径,并根据需求定制化修改构建嵌入式文件系统所需要的软件包列表。

3.根据权利要求2所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述s1还包括使用--initdb选项初始化rpm数据库,rpm数据库用于记录rpm安装包下载安装过程中的日志。

4.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述rpm安装包列表至少包括filesystem安装包。

5.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:s2中所述的url下载地址支持通过本地源、网络源或者输入以空格隔开的url地址连接来进行rpm安装包软件仓库源的指定。

6.根据权利要求1所述的一种基于定制软件源的嵌入式操作系统构建方法,其特征在于:所述s3采用dnf软件包管理工具下载与安装rpm安装包,具体包括:使用dnf命令中的--repofrompath选项指定要使用的软件仓库的标签和地址,可多次使用此选项添加多个软件仓库源;使用dnf命令中的--installroot指定安装包的安装路径;根据所述的rpm安装包列表循环安装,在每个rpm安装包安装完成后检验安装过程中是否出错,若出错则中断程...

【专利技术属性】
技术研发人员:于建平谢宏文张欣宇邹雨婷张畅侯礼康毕凤娇王二朋张蒙
申请(专利权)人:中国船舶集团有限公司第七一六研究所
类型:发明
国别省市:

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

1