[发明专利]一种基于嵌入式操作系统的软件分层架构在审
申请号: | 201911032058.3 | 申请日: | 2019-10-28 |
公开(公告)号: | CN110780858A | 公开(公告)日: | 2020-02-11 |
发明(设计)人: | 王雨龙 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30;G06F8/76;G06F8/70 |
代理公司: | 11011 中国兵器工业集团公司专利中心 | 代理人: | 刘二格 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件分层 操作系统 计算机技术领域 嵌入式操作系统 嵌入式软件设计 操作系统移植 动态内存管理 面向对象语言 系统运行状态 控制台功能 模块化操作 硬件驱动层 层次功能 底层驱动 记录功能 可维护性 软件开发 业务逻辑 应用算法 语言开发 出错率 封装层 应用层 中间层 架构 开发 | ||
1.一种基于嵌入式操作系统的软件分层架构,其特征在于,由下至上依次包括:操作系统移植层、操作系统封装层、硬件驱动层、中间层和应用层;操作系统移值层为整个软件分层提供架构基础,操作系统封装层为硬件驱动层提供底层封装,中间层提供硬件驱动层和应用层的衔接。
2.如权利要求1所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述操作系统移植层包括μC/OS操作系统内核文件、CPU内核操作汇编文件、CPU系统操作汇编文件、STM32LIB启动文件;CPU内核操作汇编文件包括os_cpu.asm汇编文件,为指定CPU的内核操作;CPU系统操作汇编文件包括os_cpu_a.asm汇编文件,为指定CPU的系统操作;STM32LIB启动文件包括启动文件Startup.s,为CPU启动文件。
3.如权利要求2所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述操作系统移植层封装成LIB库。
4.如权利要求3所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述操作系统封装层采用C++面向对象语言进行操作系统底层处理方法的封装,将任务的操作、消息队列的操作以及互斥信号量的操作封装成类中的成员函数。
5.如权利要求4所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述任务类封装时,任务类的构造函数为初始化任务创建需要的资源,包括任务堆的申请、任务参数的初始化;消息队列类封装时,消息队列类构造函数为消息队列的消息空间内存堆的初始化以及消息队列的创建工作;互斥信号量类封装时,互斥信号量类的构造函数主要对互斥信号量相关参数进行初始化,并进行互斥信号量的创建。
6.如权利要求5所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述硬件驱动层为硬件外设的控制器驱动,针对相同的硬件控制器,将硬件驱动层封装成设备类,直接移植到其它平台使用。
7.如权利要求6所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述硬件驱动层包括串口驱动、CAN总线驱动、SPI总线驱动、SD卡驱动、IO驱动。
8.如权利要求7所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述中间层实现系统控制台的功能,在系统启动的main函数中创建一个控制台对象,通过控制台公有成员函数重定向的printf在其他线程实现串口打印;对于控制台接收功能,接口底层将收到的控制台数据通过消息队列传递给控制台线程,控制台遍历链表节点找到对应的指令并通过printf进行交互。
9.如权利要求8所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述应用层为系统的逻辑功能与算法,该层封装后不做任何改变的移植到其他平台直接使用。
10.如权利要求9所述的基于嵌入式操作系统的软件分层架构,其特征在于,所述操作系统移植层、操作系统封装层、硬件驱动层、中间层总封装为一个Lib。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911032058.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种统一日志组件
- 下一篇:一种基于自定义表单的服务架构的实现方法