嵌入式linux系统从软件角度看可以分为四个部分:引导加载程序(bootloader),linux内核,文件系统,应用程序。
当系统引导时,或系统被重置时,处理器会执行一个位于flash/rom中的已知位置处的代码,bootloader就是这段代码。它主要用来初始化处理器及外设,然后调用linux内核。linux内核在完成系统的初始化之后需要挂载某个文件系统作为根文件系统(rootfilesystem),然后加载要的内核模块,启动应用程序。这就是嵌入式linux系统启动过程linux引导的整个过程。
根文件系统是linux系统的核心组成部分,它可以作为linux系统中文件和数据的存储区域,通常它还包括系统配置文件和运行应用软件所需要的库。应用程序可以说是嵌入式系统的“灵魂”,它所实现的功能通常就是设计该嵌入式系统所要达到的目标。如果没有应用程序的支持,硬件上设计精良的嵌入式系统没有实用意义。
从以上分析可以看出bootloader在运行过程中虽然具有初始化系统和执行用户输入的命令等作用,但它根本的功能就是为了启动linux内核。