这款赛灵思工具为我带来三大关键优势

介绍
在 designlinx 硬件解决方案公司,我们使用 petalinux 构建定制 linux 镜像,为客户的定制产品提供支持。不得不承认,初一听闻 petalinux 时我是心存质疑的。我的职业背景是嵌入式 linux,曾从事过大量项目,包括纯 yocto/bitbake/oe,以及在不同的 soc 平台上集成 linux。yocto 是构建定制化嵌入式 linux 发行版的实用方式。从可由源文件构建任意内容的特性到极富扩展性的接口,yocto 允许用户针对自身产品构建定制化 linux 发行版。
问题在于,yocto 的使用难度较大。由于学习难度较高,采用 yocto 开发将是一个艰深甚至是痛苦的过程。此外,如果没有快速构建设备,构建一个完整的镜像可能需要花费数个小时(取决于封装包的数量)。而当我终于首次开始尝试使用 petalinux 的时候,我感到十分惊讶:
因为 petalinux 拥有许多堪与 yocto 媲美的优势,但学习过程却简单方便,且构建时间更短。
转粉 petalinux 的三大理由
petalinux 是一套直接构建在 yocto 项目顶层的定制工具,用于实现与赛灵思平台的集成。因此,在某种意义上 petalinux 仍属于 yocto。但赛灵思更进一步,通过提供一套额外的工具,简化了开发流程,使新手使用起来及其方便,在这方面网上已有大量的指南,本文我将不再深入复述一些具体细节,而是想借此机会,跟大家分享一下使用这款赛灵思工具为我带来三大关键优势。
01
便于入门
正如前文所说,使用 petalinux 构建镜像非常方便。只需安装 petalinux 工具,您就可能在一小时之内完成镜像构建并启动镜像。在后台,它仍然使用 yocto,所以在定制开发方面我们仍然有很大的灵活性,例如在项目创建过程中,petalinux 实际上是使用 bitbake“配方”为您创建了一个 yocto 层。虽然 petalinux 提供了创建简单“配方”的机制,但对于较高级的用户来说,还可以手动定制“配方”来实现非标配功能。
02
加快构建时间
当我构建首个 petalinux 镜像时,我惊讶地发现根本不需要几个小时,而是只要几分钟。构建时间可能会随机器性能和互联网连接性能而有所改变,对此我将进行比较。我们公司有一台非常高端的构建服务器,我们将它用于 fpga 综合、仿真等用途以及软件搭建。“poky”镜像“core-image-minimal”的纯 yocto 构建用时大约为 30 分钟(含下载),用于 zcu104 板的 petalinxu 镜像仅用时 10 分钟。虽然这种比较不能算是直观准确的比较,core-image-minimal 也算一种相当紧凑的镜像,但它的用时显然更长。
我不禁在想:“他们是如何做到的?肯定是用了缓存 sstate 和下载。”显而易见,这正是他们采取的方法。如果您不知道 sstate 缓存,这是它的介绍:sstate 缓存是一种 yocto 已构建“配方”的缓存,可以用在未来的构建工作中,帮助加快构建速度。此外,如果外部源头的“配方”下载也建立了缓存,构建时就无需重新下载。赛灵思就是这样做的,其在 petalinux 工具安装包中同时提供了这两项功能,这样用户就能重复使用通用组件,只需要重新构建真正不同的组件,从而显著加快了构建速度。
petalinux 安装包中的部分缓存下载
petalinux 安装包中的 sstate 缓存目录
petalinux 安装包中用于 aarch64 的 yocto 层
03
自持性以及可轻松实现 git 集成
赛灵思预先添加了 git 集成功能。使用 .gitignore 文件能够自动完成新项目的设置工作,以忽略不应属于版本控制的任何内容(构建工件等)。另外,由于petalinux 安装所需的大多数外部 yocto 层都留存在 petalinux 安装包内部,这些项目都具有自持性,而您的整个项目的应用、驱动程序、器件树定制等都能够保留在单个项目/库内。
结 论
总之,使用 petalinux 的理由众多,我就不一一尽述了。所以,我不得不说,即使是 yocto 的资深用户,我也鼓励您更深入地去了解 petalinux 工具。因为 petalinux 最终将为您节省大量时间,让您能够腾出更多时间用来编写软件,而不是学习 yocto 的使用方法。

嵌入式系统安全将面临的一些挑战
dfrobotL298N直流电机驱动模块DF-MD介绍
华硕灵耀Deluxe13评测 非常适合经常出差或者移动办公的小伙伴
MEMS压力传感器助力电子血压计安全性能大幅提升
英飞凌发布2021财年第四季度及全年财报,业绩创下新纪录
这款赛灵思工具为我带来三大关键优势
角速度传感器(陀螺仪)的原理及其特性介绍
华为在全球专利战场接连遭遇“坏消息”
一加5和荣耀9那个手机好?性能、配置、外观、性价比大比拼!
C语言之指针的介绍
使用Android设备作为GealCuWork游戏2的控制器
加密货币资产的财富分配情况分析
通信协议考虑的几点问题
从两个层面来说电动汽车为什么不适合跑长途
你还不知道卡萨帝冰吧?她搭建的“云上客厅”都火出圈了!
白皮书结合了加密货币的经验教训,助你成功打造下一个比特币
骨传导蓝牙耳机哪个牌子好,国产平价骨传导蓝牙耳机推荐
基于门控时钟的低功耗电路设计方案
springcloud的工作原理
电子元器件解析:为什么LED驱动芯片突破增长是必然