嵌入式Linux简单介绍

什么是嵌入式Linux?

嵌入式Linux构建在与所有Linux系统相同的Linux内核上,可从http://kernel.org获得。但嵌入式系统有企业系统根本没有的严格限制,从更高的可靠性和安全性要求到更严格的资源可用性,以及对通常持续10年或更长时间的工程支持的需求。此外,嵌入式设备通常需要相互通信以及与云资源通信。 因此,用于嵌入式系统的Linux需要原始内核之外的其他包。您的分发需要哪些特定的软件包取决于您将要构建的内容,不同的用例会有不同的最佳解决方案。最终,每个嵌入式Linux系统都是独一无二的,专为智能边缘而构建。

嵌入式Linux的优势

嵌入式Linux为开发人员提供了优于其他操作系统的几个优势:

  • 任何受支持平台的交叉编译 更新版本中常见漏洞和暴露(CVE)修复程序的社区反映
  • 部署到常用的Linux基础设施和工具
  • 现代云原生环境
  • 广泛的硬件支持
  • 通过社区LTS的产品生命周期

嵌入式Linux需要什么硬件

嵌入式设备受到环境的限制,这些环境通常要求低功耗、降低处理能力、内存限制和外围设备可用性。有许多硬件架构,包括x86、Arm、PPC和RISC-V,每种架构都有自己的优势和局限性(例如低功耗和有限的软件支持)。

嵌入式Linux体系结构

在最基本的层面上,嵌入式Linux系统是一个使用Linux作为操作系统的系统,它位于嵌入式设备的硬件和应用程序之间。嵌入式Linux系统有五个关键组件:
嵌入式Linux简单介绍_第1张图片

  • 硬件处理器
  • 硬件抽象层
  • Linux操作系统
  • 服务层
  • 应用层

嵌入式Linux开发

BSP 开发

板支持包(BSP)是一层软件,包含硬件特定的驱动程序和其他例程,允许Linux在特定的硬件环境中运行。它不仅应该根据正确的体系结构/OS组合进行定制,还应该根据芯片上系统(SoC)和板上配置进行定制。为了优化嵌入式环境,BSP还应该包括定制版本的Linux(或其他操作系统)。您的BSP供应商可以提供定制的测试套件、专家的开发人员帮助以及其他专业服务。

系统集成

子系统的集合进行协作,使系统能够提供总体功能,并确保子系统作为一个系统一起发挥作用。系统集成涉及协调现有的、通常是不同的嵌入式系统,以便能够解决专门的用例。

嵌入式Linux的发行版

Linux发行版有着令人困惑的各种风格——有些是为企业使用而构建的,有些是专门为嵌入式而构建的;有些来自开源社区,有些则得到商业支持;有些是作为硬件包的一部分提供的,有些是内部开发的——所有这些类别都可能重叠。
嵌入式Linux简单介绍_第2张图片

构建自己的嵌入式Linux

“Roll your own”或RYO Linux指的是使用免费开源组件在内部开发和定制的Linux发行版。用于构建RYO Linux发行版的三个最重要和最流行的开源组件是Yocto Project、Buildroot和Raspberry Pi。

企业版Linux

Red Hat、Ubuntu和其他公司的通用服务器和桌面Linux发行版适用于资源充足、多用途且通常是多用户的解决方案,通常配置为支持各种设备。支持的自定义通常仅限于软件包安装和配置文件。其结果是稳定的用户体验、适用于通用用途的可靠性以及三到五年的廉价支持模型。然而,对于嵌入式系统来说,现成的企业Linux通常是一个糟糕的选择:它资源密集,攻击面大,维护窗口短。
嵌入式Linux简单介绍_第3张图片

商业支持的嵌入式Linux

商业支持的嵌入式Linux拥有与企业Linux类似的优势。考虑到特定的使用情况,大多数商业支持的嵌入式Linux供应商都创建了一个紧凑的内核,它支持低资源或资源受限的环境、更高的安全要求、高性能和可靠性需求,以及只需要本地支持扩展的构建系统。这种方法不是一刀切的分布。商业支持的Linux在产品生命周期中提供了强大的支持和维护,从而实现了理想的节约。然而,该解决方案还提供了定制平台、加快开发和更快进入市场的能力。

社区和商业Linux发行版是相互包容的。每个主要的商业发行版都有一个来自社区的免费开源变体,该变体基于并用于上游内容。技术投资(如Linux基金会的投资)或商业投资支持产生这些变体的各种社区。

嵌入式Linux简单介绍_第4张图片
参考:What Is Embedded Linux? | Wind River
https://www.windriver.com/solutions/learning/embedded-linux

你可能感兴趣的:(Yocto构建框架——嵌入式,linux,运维,服务器)