嵌入式linux系统结构概述

2019-07-12 14:09发布

    嵌入式LInux系统从软件的角度通常分为一下4个层次,如下图所示:
(1)引导加载程序,包括固化在固件中的boot代码和bootloader两大部分。有些cpu在运行bootloader之前会先运行一段固化程序,比如x86的CPU会先运行BIOS中的固件,然后才运行硬盘的第一个分区(MBR)中的bootloader,但是在大多的嵌入式系统中,是没有固件的,bootloader就是上电后执行的第一个程序。
(2)linux内核    特定于嵌入式板子的定制内核以及内核的启动参数,内核的启动参数可以是内核默认的,也可以是由bootloader传递给它的。
(3)文件系统     包括根文件系统和建立于Flash内存设备上的文件系统,里面包含了linux系统能够运行所必须的应用程序、库等等,比如可以给用户提供LInux的控制界面shell程序、动态链接的程序时所需要的glibc或uClibc库等。
(4)用户应用程序    特定于用户的应用程序,它们也存储在文件系统中,有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面,常用的嵌入式GUI有:Qtopia和MinGUI等。显然,在嵌入式系统的固态存储设备上有相应的分区来存储它们。