[麦麦茶水间] 【每周分享】架构设计-分层思想

[复制链接]
385|0
liao6 发表于 2025-9-12 08:16 | 显示全部楼层 |阅读模式
@21小跑堂、#申请原创#
一、为什么要分层设计?

        分层设计是为了剥离硬件环境的依赖,使软件系统更好复用,当更换硬件方案时,只需要修改底层函数的初始化,抽象层和服务层完全不需要改动,这样极大的减小时间成本,平台能够很快投入使用。

二、 分层设计概要

        简单的OS分层设计:服务层、抽象层、系统层、HAL层。

        服务层:就是实现业务功能的应用程序API,属于功能层面。

        抽象层:用来隔离底层硬件而设计的层,上层只能通过这个抽象层调用底层函数,底层不能反过来调用上层,只能是单向操作,这样逻辑会比较清晰。

        系统层:用来创建任务,用链表把每个任务串起来,实时运行。

        HAL层:也就是底层,是面向硬件层的,如果要更换硬件方案,只需要修改对应的硬件模块即可,上层不需要动。

        举个例子:
        

三、分支设计

        框架搭建好之后,就是分支设计,分支依据单向调用原则,只能通过上层一层一层去调用到底层的函数,服务层--->抽象层--->HAL层,每一个服务层的业务功能都按照这样的规格去实现。

        业务层之间有数据流交互时,对外提供数据获取接口,数据设置接口,全局变量都设置为静态全局。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

51

主题

125

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部