发明名称 一种嵌入式软件支撑平台
摘要 本发明涉及软件支撑平台领域,具体为一种采用中间件技术和虚拟机原理,适应不同硬件平台和操作系统的嵌入式软件支撑平台。本发明包括板级支持包、操作系统适配层、公共模块,商用操作系统构建在板级支持包上,操作系统适配层构建在商用操作系统上,公共模块构建在操作系统适配层上,公共模块为上层应用程序提供支撑功能,用于任务或线程封装、信号量封装、消息队列封装、文件系统封装,屏蔽不同硬件平台、操作系统的差异。本发明的软件支撑平台与上层应用系统的开发分离,应用系统的开发摆脱了对操作系统的高度依赖,有效提高了上层应用系统的可移植性;通过内存管理模块、文件管理模块、定时器管理模块等功能提高了系统的实时性。
申请公布号 CN102779047B 申请公布日期 2016.07.06
申请号 CN201210236287.9 申请日期 2012.07.09
申请人 哈尔滨工程大学 发明人 闫保中;黄超;丁继成;赵琳;许兆新;李健利;李玉兵;黄卫权;郝勇;马兴成
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 代理人
主权项 一种嵌入式软件支撑平台系统,包括板级支持包、操作系统适配层、公共模块,其特征是:商用操作系统构建在板级支持包上,操作系统适配层构建在商用操作系统上,公共模块构建在操作系统适配层上,公共模块包括功能相互独立的调度管理模块、系统监控模块、异常管理模块、内存管理模块、定时器管理模块、文件管理模块、网络管理模块,公共模块为上层应用程序提供功能支撑,用于任务或线程封装、信号量封装、消息队列封装、文件系统封装,屏蔽不同硬件平台、操作系统的差异,操作系统适配层具有统一的接口供操作系统调用;所述的内存管理模块用于划分并管理内存池和内存块,内存管理模块通过配置文件配置内存池及内存块大小;内存池由大小相等的内存块组成,内存块分配采用最小匹配原则;定时器管理模块提供1000个精度为1ms的相对定时和精度为1s的绝对定时;调度管理模块对Vxworks系统进行优化,在任务的基础上引入二级调度的机制;系统监控模块实时监控系统CPU使用情况,如发现有进程CPU占用超过90%持续1分钟以上或进程发生死锁,则记录异常信息并且重启该进程;文件管理模块用于管理系统日志,将日志文件划分为1M大小的20个日志文件进行循环覆盖,采用zlib算法库对文件进行压缩;异常管理模块用于捕捉系统的异常情况,对发生异常时刻函数调用关系进行分析和记录;网络管理模块为应用程序搭建统一的网络通信平台:建立统一的网络线程池,线程池中的线程平时处于空闲状态不占用系统资源,当有网络传输请求时,网络管理模块在线程池中取出空闲的线程与需要网络传输的上层应用进行绑定;每个内存池包含数量大小相等的内存块;异常管理模块采用栈回溯对发生异常时刻函数调用关系进行分析和记录;通过内存管理接口申请内存时,内存管理模块就查找各个内存池中满足要求的最小内存块并标记为占用,然后不加切割地分配给用户使用;内存回收时按照待释放内存块的首地址找到其所属的内存池,将该块标记为空闲放回该池;定时管理模块采用定时管理算法,通过定时器队列并在每一个tick对定时器队列进行扫描的机制,来实现对大量定时器的管理;文件管理模块为应用程序提供统一的文件操作接口;嵌入式软件支撑平台首先选定适合的底层硬件板,根据用户的需求对底层的板级支持包加以修改和补充;然后选择相应的操作系统,进而选择相对应的操作系统层的适配模块,包括对该操作系统的信号量、消息队列、进程和线程系统调用的封装;再根据系统具体应用需求选择对应中间件;可选择的中间件包括内存管理、定时器管理、调度管理、系统监控、文件管理、异常处理、网络管理这7个公共模块,调度管理、系统监控和异常处理属于必选模块,其他模块可根据需求适当配置;各模块放在makefile中对系统一起进行编译。
地址 150001 黑龙江省哈尔滨市南岗区南通大街145号哈尔滨工程大学科技处知识产权办公室