一种基于软件通信体系架构的核心框架集成方法

文档序号:6621808阅读:497来源:国知局
一种基于软件通信体系架构的核心框架集成方法
【专利摘要】本发明公开了一种基于软件通信体系架构的核心框架集成方法,包含以下步骤:一、建立CORBA客户端程序,获取域管理器对象引用根节点,通过该节点可以获取应用工厂序列、应用实例;二、建立一张具有表征应用启动、停止状态的应用启停状态表;三、用户向CF集成接口发送应用请求,CF集成接口检查应用是否已在应用启停状态表的应用列序中,如在根据应用实例完成应用请求,否则通过CORBA客户端程序获取的域管理器对象引用根节点在创建应用实例后,完成应用请求;四、更新应用启停状态表。本发明提出了在SCA环境下集成CF的思想,通过设计通俗易懂的接口,让用户不再有对CF接口直接访问的需求。
【专利说明】一种基于软件通信体系架构的核心框架集成方法

【技术领域】
[0001] 本发明涉及软件无线电(以下简称SDR)系统中核心框架(以下简称CF)的集成 方法,尤其涉及软件通信体系架构(以下简称SCA)中的核心框架集成方法。

【背景技术】
[0002] SDR是一种新型的无线体系结构,它将硬件、软件、无线技术有机地结合在一起,组 成灵活多样的多功能系统。它的基本思想是以一个通用、标准、模块化的硬件平台为依托, 通过软件编程来实现无线电台的各种功能,从基于硬件、面向用途的电台设计方法中解放 出来。
[0003] 为了达到SDR系统的设计目标,美国联合战术无线电系统(Joint Tactical Radio System, JTRS)联合项目执行办公室(Joint Program Executive Office, JPE0)发布了软件 通信体系架构即SCA。SCA是一种面向通用式通信系统的设计规范,其应用可使系统的功能 实现不再着重于具体的硬件功能实现,而主要在于应用的开发。SCA可显著提高通信系统的 灵活性、通用性、可重构性和互操作性。良好的硬件平台设计和SCA架构的使用可使未来的 通信电台类似一台PC机,其统一的管理界面和操作方法让用户易于上手;其高度模块化设 计方法使开发效率大大提高;其开放式的体系结构使更多厂家参与设计和开发电台的各个 组件。
[0004] CF是SCA规范中所定义的操作环境的重要组成部分,是应用层接口和服务的基本 "核心"集,为应用软件设计者提供对底层软件和硬件的高层次抽象,将CF以及应用组件同 底层硬件隔离,所有构成应用的组件都需要继承CF所定义的基本接口,从而CF可以用统一 的方式控制和访问这些应用组件,CF通过向SCA系统平台加载软件组件的方式,利用加载 不同的软件组件实现不同的系统功能,使通用组件可以重复利用,提高软件资源的复用率, 增强了系统的灵活性和可移植性。
[0005] 然而,CF仅仅为应用组件的开发提供了最底层的接口和服务,只有CF开发工程师 才知道如何去访问以及获取各应用对象,对程序员以及系统集成师而言,CF几乎等同于一 黑盒,有如下特征:
[0006] (1)无法访问。一般程序员根本无法访问到CF的任何一个对象。
[0007] (2)无法调用。需要CF开发工程师的帮助才能完成诸如应用加载等最简单的操 作。
[0008] (3)无法管理。无法获得系统当前应用的运行状态。


【发明内容】

[0009] 本发明的目的是提供一种基于软件通信体系架构的核心框架集成方法,解决了 CF 对程序员以及系统集成师如同黑盒的问题,让他们能够获得对应用的访问、调用、管理的能 力。
[0010] 一种基于软件通信体系架构的核心框架集成方法,包含以下步骤:
[0011] 步骤一、建立C0RBA客户端程序,获取域管理器对象引用根节点,通过该节点可以 获取应用工厂序列、应用实例;所述域管理器用于负责域内软件资源、逻辑设备、波形应用、 服务等的控制、配置和管理,是核心框架所有操作的源;
[0012] 步骤二、建立一张具有表征应用启动、停止状态的应用启停状态表;
[0013] 步骤三、用户向CF集成接口发送应用请求,CF集成接口检查应用是否已在应用启 停状态表的应用列序中,如在根据应用实例完成应用请求,否则通过C0RBA客户端程序获 取的域管理器对象引用根节点在创建应用实例后,完成应用请求;所述CF集成接口包含有 一组具有将核心框架功能封装的函数;
[0014] 步骤四、更新应用启停状态表。
[0015] 依据上述特征,CF集成接口包含应用加载loadAppO函数,用户向CF集成接口发 送loadAppO函数后,CF集成接口执行如下步骤:
[0016] 1. 1)检查待加载的应用是否已在应用启停状态表的应用序列中,满足则转到 1. 5);不满足则转到1. 2);
[0017] 1.2)检查待加载的应用是否已在应用工厂序列中,满足则转到1.4),不满足则转 到 1. 3);
[0018] 1. 3)通过域管理器对象引用安装应用;
[0019] 1. 4)通过应用工厂序列创建应用;
[0020] 1. 5)创建应用实例成功,应用预加载完成;
[0021] 1. 6)通过应用实例启动应用,应用加载完成;
[0022] 1.7)更新应用启停状态表该应用的状态。
[0023] 依据上述特征,CF集成接口包含应用卸载unloadAppO函数,用户向CF集成接口 发送unloadAppO函数后,CF集成接口执行如下步骤:
[0024] 2. 1)检查待卸载的应用是否已在应用序列中,满足则转到2. 2),不满足则转到 2.4) ;
[0025] 2. 2)通过应用实例停止应用;
[0026] 2. 3)通过应用实例释放应用,转到步骤2. 6);
[0027] 2. 4)检查待卸载的应用是否已在应用工厂序列中,满足则转到2. 5),不满足则转 到 2. 6);
[0028] 2. 5)通过域管理器对象引用删除应用;
[0029] 2.6)应用卸载完成,更新应用启停状态表中该应用的状态。
[0030] 依据上述特征,CF集成接口包含应用启动startAppO函数,用户向CF集成接口 发送startAppO函数后,CF集成接口执行如下步骤:
[0031] 3. 1)检查待启动的应用是否已在应用序列中,满足则转到3. 2),不满足则转到 3.4) ;
[0032] 3. 2)通过应用实例启动应用;
[0033] 3. 3)应用启动成功,更新应用启停状态表中该应用的状态;
[0034] 3.4)应用启动失败,报错返回。
[0035] 依据上述特征,CF集成接口包含应用停止stopAppO函数,用户向CF集成接口发 送stopAppO函数后,CF集成接口执行如下步骤:
[0036] 4. 1)检查待停止的应用是否已在应用序列中,满足则转到4. 2),不满足则转到 4.4) ;
[0037] 4. 2)通过应用实例停止应用;
[0038] 4. 3)应用停止成功,更新应用启停状态表中该应用的状态;
[0039] 4. 4)应用停止失败,报错返回。
[0040] 依据上述特征,CF集成接口包含应用配置configAppO函数,用户向CF集成接口 发送configAppO函数后,CF集成接口执行如下步骤:
[0041] 5. 1)检查待配置的应用是否已在应用序列中,满足则转到5. 2),不满足则转到 5.4) ;
[0042] 5. 2)通过应用实例配置应用;
[0043] 5. 3)应用配置成功;
[0044] 5. 4)应用配置失败,报错返回。
[0045] 依据上述特征,CF集成接口包含应用查询queryAppO函数,用户向CF集成接口 发送queryAppO函数后,CF集成接口执行如下步骤:读取应用启停状态表,直接查询各应 用运行状态。
[0046] 本发明具备如下特点:
[0047] (1)本发明提出了在SCA环境下集成CF的思想,通过设计通俗易懂的接口,让用户 不再有对CF接口直接访问的需求。
[0048] (2)本发明提出了对CF的接口进行集成,并抽象出应用加载、应用卸载、应用启 动、应用停止、应用配置这5个接口,让用户不必直接访问CF的接口,便可以完成对应用的 一系列基本调用。
[0049] (3)本发明提出的对CF的接口进行集成抽象出的应用查询接口,可以让用户获得 对系统中应用状态管理的能力。

【专利附图】

【附图说明】
[0050] 图1是应用加载接口设计流程图。
[0051 ] 图2是应用卸载接口设计流程图。
[0052] 图3是应用启动接口设计流程图。
[0053] 图4是应用停止接口设计流程图。
[0054] 图5是应用配置接口设计流程图。
[0055] 图6是应用启停状态表示意图。
[0056] 图7是一套完整的CF集成实施方案的系统框图。

【具体实施方式】
[0057] 下面给出一种本发明的实施方式和步骤。
[0058] 先给出如下定义:
[0059] 定义1 :域管理器:负责域内软件资源、逻辑设备、波形应用、服务等的控制、配置 和管理的模块,是CF所有操作的源。
[0060] 定义2 :C0RBA客户端程序:一个能够获取CF域管理器对象引用根节点的程序,通 过CORBA协议进行通信与数据交换。
[0061] 定义3 :CF集成接口 :一组具有将CF功能封装的函数。
[0062] 定义4 :应用启停状态表:一张具有表征应用启动、停止状态的表,可由某些函数 进行实时更新。见图6。
[0063] 在对CF的接口进行集成前,首先要开发一个C0RBA客户端程序。其次要创建一张 应用启停状态表。然后便可以对CF的接口进行集成了。这三者的关系如下:
[0064] 1.通过C0RBA客户端程序能够获得CF域管理器对象引用的根节点,为CF集成接 口的实现提供源;
[0065] 2.在对CF的接口进行集成过程中,会实时修改应用启停状态表,用户可以通过该 表实时获取系统中应用的运行状态,获得对应用的管理能力;
[0066] 3.通过CF的集成接口,用户可以对系统中的应用进行实时操作,获得对应用的访 问与调用的能力。
[0067] 4.综上通过CF的集成接口,即使CF如同黑盒,用户仍可获得对系统中应用的访 问、调用及管理的能力。
[0068] 本实施方案的系统中由以下几个模块构成:
[0069] 1. C0RBA客户端程序;
[0070] 2. CF 集成接口
[0071] 3.应用启停状态表;
[0072] 4.应用若干。
[0073] 整个系统的框图如图7所示,包含如下步骤:
[0074] 步骤一、建立C0RBA客户端程序,获取域管理器对象引用根节点,通过该节点可以 获取应用工厂序列、应用实例;所述域管理器用于负责域内软件资源、逻辑设备、波形应用、 服务等的控制、配置和管理,是核心框架所有操作的源;
[0075] 步骤二、建立一张具有表征应用启动、停止状态的应用启停状态表;
[0076] 步骤三、用户向CF集成接口发送应用请求,CF集成接口检查应用是否已在应用启 停状态表的应用列序中,如在根据应用实例完成应用请求,否则通过C0RBA客户端程序获 取的域管理器对象引用根节点在创建应用实例后,完成应用请求;所述CF集成接口包含有 一组具有将核心框架功能封装的函数;
[0077] 步骤四、更新应用启停状态表。
[0078] 以下详细介绍CF集成接口的实现。
[0079] 1.应用加载(loadAppO)(见图 1)
[0080] 应用加载接口包括安装应用(installApplicationO)、创建应用(createO)、启 动应用(start ())这3个CF底层接口。
[0081] 具体集成步骤如下:
[0082] 1. 1)检查待加载的应用是否已在应用序列(ApplicationSequenece)中。满足则 转到1. 5)。不满足则转到1. 2)。
[0083] 1. 2)检查待加载的应用是否已在应用工厂序列(ApplicationFactorySequenece) 中。满足则转到1. 4)。不满足则转到1. 3)。
[0084] 1. 3)通过域管理器(DomainManager)对象引用安装应用。
[0085] 1.4)通过应用工厂序列创建应用。
[0086] 1.5)创建应用实例成功,应用预加载完成。
[0087] 1.6)通过应用实例启动应用,应用加载完成。
[0088] 1.7)更新应用启停状态表。
[0089] 2.应用卸载(unloadApp ())(见图 2)
[0090] 应用卸载接口包括停止应用(stop〇)、释放应用(releaseObject〇)、删除应用 (uninstallApplication ())这 3 个 CF 底层接口。
[0091] 具体步骤如下:
[0092] 2. 1)检查待卸载的应用是否已在应用序列(ApplicationSequenece)中。满足则 转到2. 2)。不满足则转到2. 4)。
[0093] 2. 2)通过应用实例停止应用。
[0094] 2. 3)通过应用实例释放应用。下面转到步骤e。
[0095] 2. 4)检查待卸载的应用是否已在应用工厂序列(ApplicationFactorySequenece) 中。满足则转到2. 5)。不满足则转到2. 6)
[0096] 2. 5)通过域管理器(DomainManager)对象引用删除应用。
[0097] 2. 6)应用卸载完成,更新应用启停状态表。
[0098] 3.应用启动(startAppO)(见图 3)
[0099] 应用启动接口包括启动应用(start ())这1个CF底层接口。
[0100] 具体步骤如下:
[0101] 3. 1)检查待启动的应用是否已在应用序列(ApplicationSequenece)中。满足则 转到3. 2)。不满足则转到3. 4)。
[0102] 3. 2)通过应用实例启动应用。
[0103] 3. 3)应用启动成功,更新应用启停状态表。
[0104] 3.4)应用启动失败,报错返回。
[0105] 4.应用停止(stopAppO)(见图 4)
[0106] 应用停止接口包括停止应用(stop ())这1个CF底层接口。
[0107] 具体步骤如下:
[0108] 4. 1)检查待停止的应用是否已在应用序列(ApplicationSequenece)中。满足则 转到4. 2)。不满足则转到4. 4)。
[0109] 4. 2)通过应用实例停止应用。
[0110] 4. 3)应用停止成功,更新应用启停状态表。
[0111] 4. 4)应用停止失败,报错返回。
[0112] 5.应用配置(configApp ())(见图 5)
[0113] 应用配置接口包括配置应用(config ())这1个CF底层接口。
[0114] 具体步骤如下:
[0115] 5. 1)检查待配置的应用是否已在应用序列(ApplicationSequenece)中。满足则 转到5. 2)。不满足则转到5. 4)。
[0116] 5. 2)通过应用实例配置应用。
[0117] 5. 3)应用配置成功。
[0118] 5. 4)应用配置失败,报错返回。
[0119] 6.应用查询(queryAppO)
[0120] 具体步骤如下:
[0121] 6. 1)读取应用启停状态表,直接查询各应用运行状态。
[0122] 下面通过一组具体的实际操作来进一步对本发明进行说明。
[0123] 第一步单个应用加卸启停处理:
[0124] 1.系统上电之后,进行初始化操作,清空应用启停状态表所有条目。
[0125] 2.对应用 A 调用 loadApp ()接口。
[0126] 3.判断应用A既不在应用序列中,也不在应用工厂序列中。于是根据C0RBA客户 端获得的域管理器对象引用,自动调用CF的安装应用接口,将应用A添加到应用工厂序列 中。
[0127] 4.根据应用工厂序列创建应用实例,将应用A添加到应用序列中。
[0128] 5.根据应用实例启动应用。
[0129] 6.更新应用启停状态表,添加条目1-A-1。
[0130] 7.对应用 A 调用 stopApp ()接口。
[0131] 8.判断应用A在应用序列中。于是自动调用CF的停止应用接口,根据应用实例停 止应用。
[0132] 9.更新应用启停状态表,修改条目1-A-1变为1-A-0。
[0133] 10.对应用 A 调用 startApp ()接口。
[0134] 11.判断应用A在应用序列中。于是自动调用CF的启动应用接口,根据应用实例 启动应用。
[0135] 12.更新应用启停状态表,修改条目1-A-0变为1-A-1。
[0136] 13.对应用 A 调用 unloadApp ()接口。
[0137] 14.判断应用A在应用序列中。于是自动调用CF的停止应用接口,根据应用实例 停止应用。
[0138] 15.根据应用实例释放应用,将应用A从应用序列中删除。
[0139] 16.根据域管理器对象引用删除应用,将应用A从应用工厂序列中删除。
[0140] 17.更新应用启停状态表,删除条目1-A-1。
[0141] 第二步多个应用加卸启停处理:
[0142] 1.对应用 A、B、C、D 依次调用 loadApp ()接口。
[0143] 2.同第一步的处理,依次完成4个应用的加载操作,并更新应用启停状态表,添加 条目 1-A-1、2-B-1、3-C-1、4-D-1。
[0144] 3.对应用C、D依次调用unloadApp ()接口。
[0145] 4.同第一步的处理,依次完成应用C、D的卸载操作,并更新应用启停状态表,删除 条目 3-C-U4-D-1。
[0146] 5.对应用B、C依次调用stopApp ()接口。
[0147] 6.判断应用B在应用序列中,于是同第一步的处理,完成应用B的停止操作,并更 新应用启停状态表,修改条目2-B-1变为2-B-0。
[0148] 7.判断应用C不在应用序列中,系统提示用户应用C停止失败,直接返回。
[0149] 8.对应用A、D依次调用startApp ()接口。
[0150] 9.判断应用A在应用序列中,于是同第一步的处理,完成应用A的启动操作,并更 新应用启停状态表,修改条目1-A-1变为1-A-1。
[0151] 10.判断应用D不在应用序列中,系统提示用户应用D启动失败,直接返回。
[0152] 第三步应用配置与查询处理:
[0153] 1.对应用 A、B、C 依次调用 configApp ()接口。
[0154] 2.判断应用A、B在应用序列中,通过应用实例配置应用,完成应用A、B的配置操 作。
[0155] 3.判断应用C不在应用序列中,系统提示用户应用C配置失败,直接返回。
[0156] 4.对应用启停状态表进行读取操作,调用queryAppO接口。
[0157] 5.获得条目1-A-U2-B-0,表明系统当前有应用A、B被加载,其中应用A处于启动 状态,应用B处于停止状态。
【权利要求】
1. 一种基于软件通信体系架构的核心框架集成方法,包含以下步骤: 步骤一、建立CORBA客户端程序,获取域管理器对象引用根节点,通过该节点可以获取 应用工厂序列、应用实例;所述域管理器用于负责域内软件资源、逻辑设备、波形应用、服务 等的控制、配置和管理,是核心框架所有操作的源; 步骤二、建立一张具有表征应用启动、停止状态的应用启停状态表; 步骤三、用户向CF集成接口发送应用请求,CF集成接口检查应用是否已在应用启停状 态表的应用列序中,如在根据应用实例完成应用请求,否则通过CORBA客户端程序获取的 域管理器对象引用根节点在创建应用实例后,完成应用请求;所述CF集成接口包含有一组 具有将核心框架功能封装的函数; 步骤四、更新应用启停状态表。
2. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用加载 loadAppO函数,用户向CF集成接口发送loadAppO函数后,CF集成接口执行如下步骤: 1. 1)检查待加载的应用是否已在应用启停状态表的应用序列中,满足则转到1.5);不 满足则转到1. 2); 1.2) 检查待加载的应用是否已在应用工厂序列中,满足则转到1.4),不满足则转到 1.3); 1. 3)通过域管理器对象引用安装应用; 1.4)通过应用工厂序列创建应用; 1. 5)创建应用实例成功,应用预加载完成; 1. 6)通过应用实例启动应用,应用加载完成; 1.7)更新应用启停状态表该应用的状态。
3. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用卸载 unloadAppO函数,用户向CF集成接口发送unloadAppO函数后,CF集成接口执行如下步 骤: 2. 1)检查待卸载的应用是否已在应用序列中,满足则转到2. 2),不满足则转到2. 4); 2. 2)通过应用实例停止应用; 2.3) 通过应用实例释放应用,转到步骤2.6); 2. 4)检查待卸载的应用是否已在应用工厂序列中,满足则转到2. 5),不满足则转到 2.6); 2. 5)通过域管理器对象引用删除应用; 2.6)应用卸载完成,更新应用启停状态表中该应用的状态。
4. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用启动 startAppO函数,用户向CF集成接口发送startAppO函数后,CF集成接口执行如下步骤: 3. 1)检查待启动的应用是否已在应用序列中,满足则转到3. 2),不满足则转到3. 4); 3. 2)通过应用实例启动应用; 3. 3)应用启动成功,更新应用启停状态表中该应用的状态; 3. 4)应用启动失败,报错返回。
5. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用停止 stopAppO函数,用户向CF集成接口发送stopAppO函数后,CF集成接口执行如下步骤: 4. 1)检查待停止的应用是否已在应用序列中,满足则转到4. 2),不满足则转到4. 4); 4. 2)通过应用实例停止应用; 4. 3)应用停止成功,更新应用启停状态表中该应用的状态; 4. 4)应用停止失败,报错返回。
6. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用配置 configAppO函数,用户向CF集成接口发送configAppO函数后,CF集成接口执行如下步骤: 5. 1)检查待配置的应用是否已在应用序列中,满足则转到5. 2),不满足则转到5. 4); 5. 2)通过应用实例配置应用; 5. 3)应用配置成功; 5. 4)应用配置失败,报错返回。
7. 根据权利要求1所述的核心框架集成方法,其特征在于CF集成接口包含应用查询 queryAppO函数,用户向CF集成接口发送queryAppO函数后,CF集成接口执行如下步骤: 读取应用启停状态表,直接查询各应用运行状态。
【文档编号】G06F9/445GK104090810SQ201410366827
【公开日】2014年10月8日 申请日期:2014年7月29日 优先权日:2014年7月29日
【发明者】胡晨浩, 许生, 李裕, 吴敏, 羿昌宇 申请人:中国航空无线电电子研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1