按照是否有操作系统,可分为:
- 无OS的嵌入式系统
其中,无OS的,相对比较简单:一个大循环,
http://www.segger.com/admin/uploads/productDocs/UM01001_embOS_Generic.pdf
提到的那个Super Loop
- 有OS的嵌入式系统
有OS的,往往架构都和OS有关:
- 应用程序
- 应用程序
- 库函数
- 操作系统内核
- 各个功能模块:网络,文件系统,进程通信,进程管理,存储管理
- 硬件抽象层HAL
- 硬件
典型的嵌入式Linux软件系统,根据不同的阶段和模块分,又可以分为:
- Bootloader:最常见的就是Uboot了
- Rootfs:根文件系统
- Kernel:嵌入式Linux内核
更多详细的解释,请参见:嵌入式Linux软件开发详解
- 应用程序