异常信息软件设计

异常信息软件设计监控模块的主要职责是记录 WinCE 系统的设备驱动和各种应用程序的异常信息, 该模块功能包括初始化、固件 ID 校验、授权认证、设备模块、系统日志模块、数据库模块和记录模块

监控模块是异常信息监控的基础,也是后续本地显示终端模块和远程显示终端模块所需要的信息显示的数据来源

监控模块方框图

初始化的作用是对监控模块的数据结构、线程、任务调度机制进行初始化,并分配一块用于缓存系统日志的内存(命名为 LogBuf) ,为监控模块的顺利运行建立框架

固件 ID 校验的作用是对工业设备本身的合法性进行判定,工业设备上集成了一个用于 ID 校验的只读Flash 芯片,该芯片在集成到工业设备上之前会经专业设备写入一段 ID 码

工业设备本身的合法性由其合法的 ID 码决定,从合法的工业设备的只读 Flash 芯片里所读取的 ID 码经过校验才能使固件 ID 校验返回正确的成功值,否则固件 ID 校验失败,说明该工业设备本身的合法性受到质疑,整个监控模块将异常退出

固件 ID 校验主要确保硬件体系, 即工业设备本身是合法的, 防止在非法的工业硬件体系上非法使用监控模块

授权认证的作用是对使用 WinCE 系统用户的合法性进行判定

监控模块的运行权限只有特定的用户才拥有,并不是所有的 WinCE 系统用户都能随意运行监控模块

授权认证主要根据当前运行的 WinCE 系统的用户和拥有权限的合法用户进行比对,如果比对的结果为真值,即当前运行的 WinCE 系统用户是合法的用户,那么授权认证返回正确的成功值,否则将表明当前运行的 WinCE 系统用户不是合法的授权用户,授权认证失败, 整个监控模块将异常退出

授权认证的目的在于保护监控模块在合法的 WinCE 系统用户下运行,防止该模块在任意非法用户下滥用

设备模块的作用是对工业设备的所有硬件外设和应用程序进行探测,获取相关硬件外设和应用程序的资源配置信息

这些硬件外设包含处理器、USB 设备、网络端口、键盘鼠标、WiFi 模块、3G/4G 模块、串口设备、并口设备、存储介质等

设备模块程序探测这些硬件外设获得相应的基地址、中断、驱动参数等信息

运行在 WinCE 系统上的应用程序都是和这些硬件外设相关的,应用程序和硬件外设的驱动程序频繁交换数据,因此应用程序的运行状态也能如实反映硬件外设的状态

故此设备模块也需要获取应用程序的资源配置信息,如内存碎片、程序运行的 CPU 占用率、程序运行的内存占用率等

接着就是数据库模块,数据库模块的作用是依据设备模块获取的硬件外设和应用程序的资源配置信息建立相应的硬件外设数据库表

所建立的硬件外设数据库表不仅包含硬件外设的资源配置信息,还包含与该硬件外设相关的应用程序的资源信息

数据库模块所建立的硬件外设数据库表与硬件外设是一一对应的,硬件外设的数目与数据库模块所建立的硬件外设数据库表是一致的

硬件数据库表包含处理器表、USB 设备表、网络端口表、键盘鼠标表、WiFi 模块表、3G/4G 模块表、串口设备表、并口设备表、存储介质表等,这些数据库表中包含硬件外设及其应用程序的资源配置信息 

系统日志模块的作用是将系统向串口输出的调试信息写入到缓存内存区 LogBuf,并给每条调试信息添加时间信息,同时通知记录模块记录系统日志数据

最后就是记录模块,记录模块的作用是监控各个硬件外设的实时状态数据,并将异常的信息写入数据库中与硬件外设相对应的硬件外设表中

记录模块所监控的实时状态数据包含硬件外设的基地址、中断、驱动参数,及其应用程序的内存碎片、程序运行的 CPU 占用率、程序运行的内存占用率和系统日志等,如果上述被监控的数据发生了变化,那么就认为出现了一次异常,并立即将此异常信息写入相应的硬件外设表中,同时写入时间戳,供后续的诊断模块分析

诊断分析模块分为参数设置、规则设置和分析诊断三个部分

参数设置用于设置诊断过程中需要使用的关键词,例如 Error、Warning、Failed、Timeout、CPU、COM 等;规则设置用于设置诊断分析过程中使用的规则,如与(&) 、或(||) 、非(!)等;诊断分析根据参数设置、规则设置和数据库模块中的各个数据表进行综合统计分析,并生成诊断结果写入数据库(也可以是文件)

以上内容由大学时代综合整理自互联网,实际情况请以官方资料为准。

相关