服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - 嵌入式 Linux 系统的组件

嵌入式 Linux 系统的组件

2022-01-04 21:22粤嵌教育 Linux

大多数嵌入式设备都是为了在通常资源受限或低规格的设备上执行特定任务而构建的。 因此,大多数嵌入式开发人员需要去除不必要的库和模块,并为其特定设备和用例创建自定义分发。我们先来了解一下嵌入式 Linux 系统有哪些组

大多数嵌入式设备都是为了在通常资源受限或低规格的设备上执行特定任务而构建的。 因此,大多数嵌入式开发人员需要去除不必要的库和模块,并为其特定设备和用例创建自定义分发。我们先来了解一下嵌入式 Linux 系统有哪些组件

嵌入式 Linux 系统的组件

引导加载程序

从技术上讲,它位于系统之外,其运行方式与首先运行 BIOS 的台式机或服务器系统不同。在嵌入式系统上,硬件启动负责基本初始化和执行内核的引导加载程序。在嵌入式系统上,这可以通过以下方式处理:GRUB、LILO 或 Das U-Boot。后者专门用于嵌入式设备。

Linux内核

包含进程和内存管理、网络堆栈、设备驱动程序,并为任何用户空间应用程序提供服务。引导加载程序将内核加载到内存中并运行它。内核寻找首先运行的“init”程序。 “Init”程序负责启动其他服务,例如硬件驱动程序、文件系统驱动程序、文件系统挂载、服务和其他应用程序。内核只知道 init 程序,如果找不到它,就会“内核崩溃”。

嵌入式系统上的内核与台式机等大型系统中的内核相同。主要区别在于嵌入式 Linux 内核专为在不同的 CPU 架构上运行而构建。

根文件系统

根文件系统包含 C 库和 Linux 服务/命令,以及其他必要的脚本。在嵌入式开发中,文件系统是内核和用户空间应用程序之间的接口。在初始化时,内核将每个程序加载到内存中,并希望将它们组织到文件和目录中。这是根文件系统,应该提前创建并挂载到“/”,然后内核才能启动“init”。

用户空间

用户空间是任何自定义应用程序或服务所在的地方。 init 程序还负责将这些加载到内存中。大多数嵌入式系统都是执行特定功能的单一用途应用程序,因此嵌入式系统上的应用程序往往是精简和最小化的。在目标嵌入式处理器上运行 Linux 需要至少 8MB 的 RAM,大多数应用程序至少需要 32MB 的 RAM。 RAM 的实际要求取决于你的嵌入式应用程序的大小。除了 RAM 之外,还需要至少 4MB 的存储内存。它可以是以下类型之一:NAND 或 NOR 闪存、SD 或 MMC 卡。

主板支持包

主板支持包包含驱动程序和其他软件,它们与你正在运行的特定硬件和操作系统相连接。 对于 Linux 系统,每种电路板类型都有自己的一组 BSP。在嵌入式开发某些情况下,如果你需要硬件来执行默认 BSP 中未包含的特定功能,你可能需要自定义这些并编写你自己的驱动程序来支持你的特定应用程序。

原文链接:https://www.toutiao.com/a7047686873048744481/

延伸 · 阅读

精彩推荐
  • Linuxlinux驱动程序开发详细介绍

    linux驱动程序开发详细介绍

    前提,一般来说内核代码的错误可能会引起一个用户进程的死亡,或者整个系统的瘫痪,更严重的后果,可能导致磁盘损伤~因此建议最好有一台实验机进行...

    Linux教程网5392019-12-17
  • Linux在Linux系统中创建新的亚马逊AWS访问密钥的方法

    在Linux系统中创建新的亚马逊AWS访问密钥的方法

    如何在Linux系统中创建新的亚马逊AWS访问密钥?我在配置一个需要访问我的亚马逊AWS帐号的应用时被要求提供AWS访问密钥ID和秘密访问密钥,我怎样创建一个...

    Linux教程网6182019-10-30
  • Linuxlinux top命令详解

    linux top命令详解

    这篇文章主要介绍了linux top命令详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    sparkdev5622022-03-01
  • Linuxssh 登录很慢该如何解决

    ssh 登录很慢该如何解决

    这篇文章主要介绍了ssh 登录很慢该如何解决的相关资料,这里提供了两种方法,DNS反向解析及关闭ssh的gssapi认证的解决办法,需要的朋友可以参考下...

    linuxeye9922021-12-16
  • Linux将 Linux 终端与 Nautilus 文件管理器结合起来

    将 Linux 终端与 Nautilus 文件管理器结合起来

    Nautilus 是 GNOME 桌面环境中的图形化文件浏览器。你可以使用它来访问和管理系统中的文件和文件夹。 尽管并非所有人都喜欢使用终端来管理文件和目录,...

    未知812023-08-08
  • Linuxlinux设置tomcat自启动的方法

    linux设置tomcat自启动的方法

    这篇文章主要介绍了linux设置tomcat自启动的方法,需要的朋友可以参考下...

    Linux教程网8512021-10-10
  • LinuxLinux系统下无法卸载挂载的目录怎么办?

    Linux系统下无法卸载挂载的目录怎么办?

    我们在日常运维中经常性会遇到需要进行磁盘的扩容、卸载、挂载等操作,但是有时候这个系统上跑的应用并没有停止或者有其他的运维同事在操作这个目...

    今日头条10302020-12-30
  • Linux理解 Linux/Unix 登录脚本的技巧

    理解 Linux/Unix 登录脚本的技巧

    有一些常见的情况,例如从Debian的包管理程序到Iaas的管理中,很多任务需要设置环境变量才能正常运行。 有时,程序通常只需要在 登陆时运行一次,例如...

    未知1042023-05-12