基于微内核设计思想的软件应用框架设计.pdf
《基于微内核设计思想的软件应用框架设计.pdf》由会员分享,可在线阅读,更多相关《基于微内核设计思想的软件应用框架设计.pdf(7页珍藏版)》请在咨信网上搜索。
1、0引言伴随信息化技术的飞速发展,软件产品逐渐渗透应用到社会的各个领域。客户期望软件产品能够满足更多的功能需求,快速适应功能需求变更,缩短产品研制周期等要求1。本文先分析传统应用框架的缺陷,再结合实际工程应用需求,基于微内核设计思想,构建一套能够支撑软件产品高效、快速开发的应用框架。1应用框架现状分析传统应用框架主要用于对各类基础功能和业务功能进行整体性封装,并实现对各功能适时调度和流程控制;基础功能是一种与业务功能无关的功能,具有粒度小,复用度高的特点;业务功能主要用于实现软件产品的业务需求。基础功能与基础功收稿日期:2022-04-15修回日期:2022-06-09作者简介:董强(1981)
2、,男,四川绵阳人,本科,正高级工程师。研究方向:指挥控制系统,任务规划系统。摘要:软件应用框架为各类软件产品提供一个“骨架”,对不同类型功能模块的整体性封装,提供发布、通信、调度、流程控制等服务,呈现出软件产品整体效果。提出一种基于微内核设计思想的软件应用框架设计方法,阐述微内核的优势,对软件应用框架的内核服务进行抽取、设计,剖析其核心工作流程。利用该方法能够增强软件产品的稳定性,降低各组件之间的耦合度、提高系统的可扩展性、提升团队协作开发效率。关键词:微内核;组件;服务;软件应用框架中图分类号:TP311.1文献标识码:ADOI:10.3969/j.issn.1002-0640.2023.0
3、6.021引用格式:董强,许长霞.基于微内核设计思想的软件应用框架设计 J.火力与指挥控制,2023,48(6):131-137.基于微内核设计思想的软件应用框架设计董强,许长霞(西南计算机有限责任公司,重庆400060)Software Application Framework Design Based onMicrokernel Design ConceptDONG Qiang,XU Changxia(Southwest Computer Co.,Ltd.,Chongqing 400060,China)Abstract:The software application framework
4、 provides a“skeleton”for all kinds of softwareproducts.It encapsulates different types of functional modules,provides services such as release,communication,scheduling and process control,etc.and presents the overall effects of the softwareproducts.A software application framework design method base
5、d on the microkernel design concept isproposed,expounds the advantages of the microkernel are expounded,the kernel services of the softwareapplication framework are extracted,designed and analyzes its core workflow is analyzed.This methodcan enhance the stability of software products,and can reduce
6、the coupling degree betweencomponents,improve the scalability of the system,and improve the efficiency of team collaborativedevelopment.To improve the system scalability and the efficiency of team collaborative development.Key words:microkernel;components;services;softwareapplication frameworkCitati
7、on format:DONG Q,XU C X.Software application framework design based on microkerneldesign concept J.Fire Control&Command Control,2023,48(6):131-137.文章编号:1002-0640(2023)06-0131-07Vol.48,No.6Jun,2023火 力 与 指 挥 控 制Fire Control&Command Control第 48 卷第 6 期2023 年 6 月131(总第 48-)火 力 与 指 挥 控 制2023 年第 6 期能、业务功能与
8、业务功能、基础功能与业务功能之间都可能直接发生信息交互(包括功能调用、数据交换、消息交互等),传统应用框架基本组成如图 1所示。图 1传统应用框架基本组成图Fig.1Basic composition diagram of the traditional applicationframework用户对软件产品功能需求的增多,软件产品所包含的各类功能也随之增多,功能之间的耦合程度变得更加紧密。新功能的增加和原功能的变更,都会导致应用框架和各类功能受到一定程度的影响,造成软件产品修改、维护、扩展困难的问题,无法满足客户对软件产品的高要求2。2基于微内核设计思想的应用框架分析2.1微内核分析微内核(
9、Micro kernel)是提供操作系统核心功能内核的精简版本3,是内核的一种精简形式。它提供一组“最基本”的服务,如进程调度、进程间通信、存储管理、处理 I/O 设备。其他服务,如文件管理、网络支持等作为扩展服务通过接口连接到微内核4。将通常与内核集成在一起的系统服务层被分离出来,变成可以根据需求加入的选件,这样就可提供更好的可扩展性和更加有效的应用环境。使用微内核设计,对系统进行升级,只要用新模块替换旧模块,不需要改变整个操作系统5。微内核具有可移植性、灵活性和扩展性,以及健壮性等特点6。微内核示意图如图 2 所示。2.2组件化分析组件化是指解耦复杂系统时将多个功能模块拆分、重组的过程,有
10、多种属性、状态反映其内部特性。为了达到解耦的目的7,按照软件产品需求将软件产品拆分成多个组件8,确定各组件的边界和职责。拆分出来的各组件由于耦合度低,基本上互不影响,便于开发人员同步开展各组件的开发工作。开发完成的独立组件按照集成规范集成到应用框架,由测试人员实施单元测试。当各独立组件完成单元测试后,将所有组件集成到应用框架,进行集成测试,对测试过程暴露出软件问题,只需要修改相应的组件。针对用户变更的需求,定位变更组件后进行修改即可;针对用户新增的需求,重新按照拆分组件、开发组件、组件单元测试、集成测试、修改组件等流程,最终形成软件产品。组件化的意义还在于提升代码复用性9,可以直接将相同功能的
11、组件运用到其他项目,而无所重新开发,或者是对该组件进行重构,让其复用程度更高,也便于后续软件产品的复用10,提高软件产品的开发效率。2.3总体设计思路借鉴微内核操作系统设计思想和组件化的设计方法,将传统软件应用框架核心功能分离出来,作为软件应用框架的内核服务,负责完成与具体业务功能无关的最基本功能,如组件管理、组件通信、组件连接等,它不会因为各类功能的扩展而不断修改,仅用于支撑软件产品的基本运行。由于其精简形式的核心设计,更容易对其充分测试,保证整个系统的稳定性。基础组件通过组件连接服务实现应用框架的基础功能扩展,而不影响整体系统的稳定性;根据软件产品功能需求,开发或复用相应的业务组件,通过组
12、件连接服务按需集成所有业务组件。基于微内核设计思想的软件应用框架总体设计如下页图 3 所示。3基于微内核设计思想的软件应用框架设计按照基于微内核设计思想的软件应用框架总体设计思路,细化内核服务功能,将其设计成基于微内核设计思想的软件应用框架,它包括一个组件描述文件规范和组件管理服务、组件连接服务、组件通信服务等三种集成接口服务。组件管理服务提供加载组件、注册组件、查询组件、调度组件、卸载图 2微内核示意图Fig.2Schematic diagram of microkernel1321086(总第 48-)图 3基于微内核设计思想的软件应用框架总体设计图Fig.3Overall design
13、diagram of software applicationframework based on microkernel design concept组件等功能;组件连接服务提供连接组件、获取接口类集合、初始化组件、释放组件等功能;组件通信服务用于各组件间的信息交互,包括发送信息和接收信息等。基于微内核设计思想的软件应用框架组成如图 4 所示。其中,基础组件用于完成某类应用需求而构建的通用化功能模块;业务组件用于完成特定应用需求而构建的专业化功能模块。3.1微内核应用框架工作原理软件产品启动时,宿主程序直接调用微内核应用框架提供的导出函数,由其函数自动启动组件管理服务;组件管理服务先依次加载
14、各组件,再调用组件连接服务获取各组件连接对象,然后将各组件注册到组件管理服务中;各组件启动时按需向组件管理服务注册组件接收信息对象。软件产品运行中,各组件按需调用组件通信服务中的发送信息对象向其他组件发送交互信息;发送信息对象经过一系列的数据预处理,通过接收信息对象将交互信息分发到指定组件;接收到交互信息的组件,根据交互信息标识符进入对应的处理流程。软件产品退出时,组件管理服务调用组件连接服务释放并卸载各组件。3.2组件描述文件规范设计组件描述文件规范是一种结构化的描述模板,定义了组件基本信息,以及组件与外部发生交互关系所需信息。具体包括组件信息、集成信息、交互信息、接口类信息的规范;其中,组
15、件信息中组件标识符用于唯一标识某个组件;集成信息中集成接口标识符用于唯一标识某个组件功能点;交互信息中交互信息标识符用于唯一标识某个组件传递的某条信息;接口类信息中接口类标识符用于唯一标识某个组件的接口类。考虑到组件描述文件规范应具备跨平台、易阅读、可扩展、可视化等特性,建议采用 XML 文件格图 4基于微内核设计思想的软件应用框架组成图Fig.4Composition diagram of software application framework based on microkernel design concept董强等:基于微内核设计思想的软件应用框架设计1331087(总第 48-
16、)火 力 与 指 挥 控 制2023 年第 6 期图 6组件描述文件规范使用原理图Fig.6Schematic diagram of the use specification of component description files图 5组件描述文件规范Fig.5Specification of description files of components式来存储组件描述信息。组件描述文件规范如图 5所示。各组件参照组件描述文件规范,编写专属组件描述文件,并编码实现其描述文件中定义的外部交互标识符所对应的逻辑代码,再由组件管理服务通过组件描述文件中定义的外部交互标识符间接调用组件内部的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 内核 设计 思想 软件 应用 框架
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。