最近重新进入嵌入式领域,有必要对嵌入式分层架构有一个清晰的理解。经过多方查阅以及个人的理解,本人对嵌入式分层架构概括总结如下:
比较细的层次由下到上可分为:
(硬件层) 硬件底层->硬件驱动层->
(硬件抽象层) 硬件抽象驱动层->硬件抽象接口层->
(功能模块层) 功能模块层(功能模块驱动层)->应用接口层(功能模块接口层)->
(应用层) 业务逻辑层(应用业务层)->应用层(应用控制层)
比较粗的层次由下到上可分为(将"硬件层 ->硬件抽象层->功能模块层->应用层"简化为三层):
硬件层->中间层(硬件抽象层)->软件层
或
硬件层->操作系统层(硬件抽象层->功能模块层)->应用层
对于各层关系的理解:各层都是独立的,和下层与上层只有调用和被调用的关系。某一层的驱动层为调用下层接口的子层,某一层的接口层为上一层的驱动层提供接口。
驱动的理解:某层的下一层可以认为是某层的抽象设备层,故某层必须具有驱动层,才能实现本层功能并为上一层提供接口。