系统的多通道密码资源分发系统软件设计
NIE L,LI J G.Software Design of Multi-Channel Cipher Resource Distribution System Based on Embedded Linux System[
DOI:10. 16311/j. audioe. 2020. 08. 006
系统的多通道密码资源分发系统
软件设计
聂 琳,李建国
中国电子科技集团公司第三十研究所,四川
为了满足不同接口类型的密码设备的密码资源快速加注需求,提出一种多通道密码资源分发系统的软件设计方法。基采用多线程管理技术和多接口多协议集成处理技术,
该软件设计满足要求,能有效提高加注效率,
多线程技术
Software Design of Multi-Channel Cipher Resource Distribution System Based on Embedded Linux System
NIE Lin, LI Jianguo
Institution of CETC, Chengdu 610041, China)
In order to meet the needs of cipher resource fast injection for cryptographic devices with different interface types, this paper proposes a software design method of Multi-channel cipher resource distribution system., which is based on embedded Linux system, multi-thread management technology and multi-interface protocol integrated processing technology are adopted to realize automatic identification of 8-channel cryptographic devices and batch parallel distribution and annotation of cipher resource. The actual tests show that the software design meets the requirements, and it’s suitable for the batch filling of a large number of devices.
Linux system; embedded software; multi-channel system; multi-threading technology
现代战争已经由传统的地面战向信息战转
快速地掌握敌我信息并建立高效的军队通信系统已经成为决定战争胜负的关 作、学习以及生活效率
基于嵌入式软件高效低耗的优点,种基于嵌入式
统的软件设计方案,
动识别和密码资源的并行分发与加注。
种接口接入系统。每个转
种接口类型的密码设备。人机
通过网口接入系统。系统通过读取接口状态自动识别密码设备在位信
用户选择需要进行的操作
设备初始化以及状
向服务器申请密码开始进行密码资源并行分发与加注;任务结通过网口上报结果并显示在计算机终端。
密码资源分发系统的嵌入式软件设计主要分
数据接口层和硬件驱
所示。界面表现层主要用于用户操作资源分发任务的发起和任
显示装备信息和显
个部分。任务处理层主要完成具体
任务状态机管理以及线程管
包含数据协议解
定时器管理、在
个部分。数据接口层主
拆封和发送。硬件驱
主要包含
密码资源分发系统的嵌入式软件主要采用多注册多个线程完成用户指定任务。该软
一是密码设备数据接收事件,接收密码设备的数据信息并将数据按照一定的规
查询及资源加注等任务;二是用户操作事件,接收用户的资源分发、设备初始化及状态查询等任务发起,并下发系统参数等;三是定时器事件,包括数据超时重发、任务超时退出以及定时反馈状态数据;四是掉电事件,监测密码设备的电源信息,控制转接盒指示灯状态。软件流程图如图2所示。
3 主要模块设计
任务处理层实现密码资源分发系统的主要功能,包含数据协议解析模块、任务状态机管理模块、多线程管理模块、定时器管理模块、在线识别模块以及电源管理模块共6个部分。
3.1 数据协议解析模块
数据协议解析模块主要按照密码资源加注协
图2 软件流程图
图1 数据流框图
同时对采集
判定其是否为有效数
如果数据无效,则按格式重发。系统接收到密码设备数据后,先判定
正确即代
之后按照规定协议进行数据解析,解
解析错误则给出错误应答。
涉及到的密码资源仅在内存中缓存,不进行
符合密码资源注入的安全需求。数据协议解
图3 数据协议解析模块软件流程图
为了使系统具有更清晰的软件架构,在数据协议解析模块采用模块化的设计方法[4],实现了多接口多协议集成处理技术。根据不同接口对应不同的数据协议格式,系统将数据协议解析模块分成个部分,分别对应3类接口。3种接口的密码设备各自对应一套数据解析协议。各模块之间相互独可以方便地在装备类型上进行扩展,不会对既有的装备类型产生影响。
任务状态机管理模块
任务状态机管理模块主要实现各任务的状态管理。系统将任务状态分为空闲态、就绪态、执行态、完成态以及异常态。系统初始化任务状态为空闲态,此时可接受用户发起的密码设备初始化、密码资源注入以及密码资源查询等任务。接受用户任务发起后,
任务类型完成参数初始化设置后,
态,并上报给用户界面显示,
不再响应用户其他指令。任务启动后,
设备进行交互,
嵌入式多线程编程行进度上报给用户界面。任务正常结束后,
换到完成态,
任务处于启动态或执行态而异常终止,
于异常态。下一个任务处理周期,
闲态,可以接受用户新的指令。任务状态机状态流转图如图
图4 任务流转图
3.3 多线程管理模块
多通道密码资源分发系统是一个典型的多任务系统,需要支持多个密码设备的密码资源加注和初始化等多个任务,且这些任务需要并行工作。Linux系统支持多线程结构。和多进程结构相比,它的主要优势在于调度开销小、控制开销小以及创建和同步效率高。Linux系统中,最常用的线程实现是POSIX标准定义实现的Pthreads。它提供了一系列的接口函数来完成线程的创建、管理、切换、同步以及删除等功能[5]。
多通道密码资源分发系统采用多线程管理技术,主要管理客户端线程、任务线程、定时查询线程以及数据采集线程4类线程。其中,客户端线程的主要功能为接收用户主机的指令信息,实现对密码设备的初始化、查询及参数设置等功能的任务发起,以及需要向密码资源分发密码资源。8通道任务线程主要为每个密码设备通道提供一个任务线程,每个线程并行运行,互不影响。定时查询线程主要实现8通道状态的定时查询和结果上报,每间
并将查询
方便用户获取各通道运行情况和使用状态。数据采集线程主要实现8
进而为数据协议解析模
定时管理模块主要完成定时查询功能、任务超
。定时查询功能
个通道进行一次状态查询。
自动刷新查询结果并开启新一轮查
系统与密码设备进行交互需要进行任务状态监控。如果密码设备超过定时时
则需要退出当前任务并告知用户响应避免用户长时间等待。为方便用户更直观地
LED指示指示任务执行状态。任务执行过程中,指示灯
而这个时间由定时器管理模块
在线识别模块主要实现密码设备的快速识别。密码设备模块通过接口转接盒接入系统后,用户无
系统通过轮询接口状态自动获取密码
并显示在用户计算机终端。识别3.6 电源管理模块
电源管理模块主要实现接口转接盒的掉电监测。密码资源分发系统通过接口转接盒向密码设备供电。
必须先断开接口转接盒供电。此时,
接盒断电,LED
报用户计算机终端,
4 运行效果
为验证密码资源分发系统的实际使用效果,普通密码设备接口为例,
转接盒接入系统。系统能够自动识别设备的物理标识,并显示在用户计算机终端,
户发起资源加注指令,
与加注。资源写入过程中,
态,如图
成功,如图
结果表明,
道的密码设备自动识别和密码资源批量并行分发与加注,
源分发采用一台主机对应一台密码设备的一对一形式,多通道的设计大大提高了密码资源加注的效率,为设备生产调试和军队日常维护管理等环节提供了更好的保障。通过设计更多通道数还可以进
(a)单个设备在线识别效果图
(b)批量设备在线识别效果图图5 在线识别效果图
一步提升效率,且后期可扩展性强。
结 语
结合多线程技术,提出了一种多通道密码资源分发系统的软件设计方法。它的实现基于嵌入式系统,开发灵活,大大降低了系统的开发成本。多线程技术和模块化设计方法的使用,实现了多通道的密码资源并发分发,提高了密码资源加注效率,适用于大量密码设备批量加注的情形。同时,该设计方法使系统结构变得更简明,极大地提升了后期可扩展性,值得其他批量处理任务借鉴。
参考文献:
王建民.科技战与信息战:浅谈现代战争中高科技通信技
践[J].通信技术,2020,53(6):1523-1530.
[3]代云飞.浅析嵌入式软件技术的现状与发展动向[讯世界,2018(1):108-109.
[4]周相康.基于模块化的嵌入式软件设计研究[J].科技风,2018(16):79-80.
[5]陈雪芳.嵌入式操作系统的多线程机制研究与实现电脑知识与技术,2011,7(7):1646-1648.
[6]马建辉,于良杰,李研强,等.嵌入式系统软件定时器的扩展与应用管理[J].单片机与嵌入式系统应用,
(10):59-61,66.
作者简介:
聂琳(1988—),女,硕士,工程师,研究方向:嵌入式系统软件开发设计、产品化开发;
李建国(1987—),男,硕士,工程师,研究方向:嵌入式系统软件开发设计、产品化开发。
图6 密码资源批量分发与加注运行实时效果图图7 密码资源批量分发与加注成功
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论