一、什么是openSCA(openSCA不局限于无线电)

SCA(软件通信体系结构),起源于海湾战争之后的五角大楼,为了解决美国军方和北约各国多达上百种军用无线电设备之间的信息互通问题。它就像是给来自不同厂家的、不同型号的设备安装了一套类似“安卓”的操作系统,而那个时候,还没有“安卓”。

“软件定义”的概念从此兴起,来自不同领域的系统集成商们,越来越倾向于使用一套框架(或者有些领域被称之为操作系统)将硬件高度抽象并进行标准化的封装,以优化产业分工、优化生态、降低成本。

介于硬件和应用软件之间的这层框架,成为了一个行业/领域是否能够走进“软件定义”的最直接技术门槛。

openSCA是介方信息推出的用于军用无线电设备的“软件定义”框架,然而,我们对openSCA的架构做了深度的调整,它除了能够很好地适配无线电应用场景外,我们鼓励开发者大胆地将它应用到更多的“软件定义“领域中,譬如汽车、机器人、无人机等等。这一点,我们期待开发者去进一步挖掘和发现更多的惊喜!

二、openSCA的特性

作为一款纯嵌入式的框架软件,openSCA核心框架拥有9.1万行源代码,ROS2.0目前的代码行数已经达到18.9万行,我们期待这次的开源能够吸引开发者们在这个基础上,不断对框架进行优化,并丰富即插即用的场景化组件和增强组件。

相比较国外OSSIE(RedHawk开源项目)来说,openSCA拥有高质量的代码和更开放、更灵活的架构,并在功能上做了很多强化。

亮点1:即插即用的增强型功能扩展

用户可单独编译自定义服务,例如新增事件服务,将可执行文件及配置文件放置平台包的Services目录下,如下图所示:

然后在openSCA/frameworks/BootLoader/Bootloader.cpp中增加启动事件服务的接口即可,如下图所示:

亮点2:灵活的传输机制(确保平滑替换中间件)

openSCA对传输机制重新进行了标准化封装,在替换中间件时,无需修改框架代码和上层应用的代码。

这样,开发者在替换传输机制(中间件),再也无需担心为此付出昂贵的代价。

目前,开源版虽然只支持TAO,但是其架构能够支撑对中间件的平滑替换,后续开源版将支持更多中间件,包括国产中间件。

亮点3:支持一个应用、多个实例

openSCA特有的机制,解决了人工智能场景和多部同型电台/数据链场景下对同一个应用/波形进行N次实例化的问题。

亮点4:纯国产,自主可控

亮点5:后续将支持国产嵌入式操作系统

三、openSCA能够运行在什么硬件上?

openSCA可以免费地运行在任何硬件平台上,开发者只需要将Linux操作系统在对应的硬件平台上成功运行即可。

此外,介方公司还为开发者提供了专用的开发板——jLabSDR,它由一片Zynq SOC处理器和一片AD9371构成,能够适用目前市面上90%以上的通信场景(包括用来做5G终端),该产品的详细情况可以登录介方信息官网查看。

四、openSCA项目的贡献者有哪些?

实际上,这是一个无效的问题,因为你可以为openSCA贡献任何可以贡献的。我们概括了以下几类贡献者:

第一类:增强型功能及服务 贡献者

对openSCA框架本身,以及基于框架的各类共性服务很感兴趣,他们往往来自计算机、自动化与控制专业等。

第二类:通信算法/波形 贡献者

对通信算法和波形感兴趣,往往来自通信、信号处理、网络等专业。

第三类:人工智能场景下的算法 贡献者

对智能无线电、认知无线电、人工智能感兴趣,往往来自人工智能、计算机、通信、信号处理、网络等专业。

第四类:场景扩展 贡献者

对所在场景下的“软件定义”感兴趣,正在寻求或者开发一款对应于自己场景的“软件定义”框架。如果你是这一类开发者,事实上,openSCA已经帮你完成了9.1万行的代码开发工作,你只需要基于openSCA展开与你所在场景相关的适应性开发即可。

对于所有的开发者,我们提醒您,openSCA采用GNU GPL v3开源协议,您在加入该项目开发时,请务必认真了解该协议内容。

五、你可以用openSCA做什么?

硬件设计/制造商:

如果你是硬件设计/制造商,你不妨尝试将openSCA移植到你的硬件上,使你的用户能够免费共享openSCA及其生态的成果。这个过程,你无需向任何人付费。

算法/波形设计商:

你可以在openSCA的平台上开发和验证你的算法和波形,不仅仅因为我们为你提供了免费的软件框架和免费开发工具,更因为你的波形一旦在openSCA验证成功,它将能够很快被移植到客户所要求的其他平台上。同样,这个过程,你无需向任何人付费。

六、介方信息为开发者提供哪些支持?

支持1:免费的远程技术支持

无论你是开发者,还是使用者,可以将问题发布到开源社区(介方后续将会推出对应的技术论坛),介方的工程师会及时答复你的问题。

支持2:终身免费使用介方的开发工具

介方为openSCA开源提供了可终身免费使用的开发工具sdrIDE版本,并且会定期进行维护升级。

支持3:提供成果交易机会,回报优质开发者

开发者可以将自己在openSCA的成果形成“开源版”和“商业版”,“开源版”可以通过openSCA实现演示和验证。

支持4:即将发布开源硬件项目

帮助开发者快速进行更加系统的开发工作。

支持5:持续的项目版本升级

介方信息将对openSCA开源项目进行持续、频繁的更新。

七、不同版本的SCA/SDS框架对比

八、开源项目获取和参与方式

进入GitHub搜索openSCA,因该项目6月15日刚刚公开,GitHub可能无法搜索到,你也可以点击以下链接:

https://github.com/JFounderSDR/openSCA

关注本公众号

掌握“软件定义”和军工行业科技动态

还有更多惊喜哦

国产自主“软件定义”框架——openSCA核心框架永久开源相关推荐

  1. 深度学习平台——Paddle核心框架介绍

    摘要 本博文将最后的讲解和学习有关于的Paddle的核心框架的分享.并且有关于的Paddle的学习就暂时告一段落.后期本人将更多的在与深度学习的原理和利用Paddle开发自己的深度学习模型作为分享.飞 ...

  2. 追源索骥:透过源码看懂Flink核心框架的执行流程

    https://www.cnblogs.com/bethunebtj/p/9168274.html 追源索骥:透过源码看懂Flink核心框架的执行流程 前言 1.从 Hello,World WordC ...

  3. 追源索骥:透过源码看懂Flink核心框架的执行流程--来自GitHub

    追源索骥:透过源码看懂Flink核心框架的执行流程 联系qq2499496272可进行删除,需要文件版本的私聊!!~ 文章目录 追源索骥:透过源码看懂Flink核心框架的执行流程 前言 1.从 ~~H ...

  4. 大数据核心框架Hadoop

    Hadoop两大核心框架HDFS与MapReduce的原理.发展情况.常见操作与行业应用 Hadoop简介 1.什么是Hadoop? Hadoop是一个由Apache基金会所开发的分布式系统基础架构, ...

  5. java ee核心框架实战 pdf_Java EE核心框架实战 高洪岩 中文PDF

    资源名称:Java EE核心框架实战 高洪岩 中文PDF 第1章 MyBatis 3操作数据库 第2章 MyBatis 3常用技能 第3章 Struts 2必备开发技能 第4章 Struts 2文件的 ...

  6. 《Java EE核心框架实战》—— 2.3 resultMap 标签

    本节书摘来异步社区<Java EE核心框架实战>一书中的第2章,第2.3节,作者: 高洪岩,更多章节内容可以访问云栖社区"异步社区"公众号查看. 2.3 < re ...

  7. spring框架 AOP核心详解

    AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子. 一 AOP的基本概念 (1)Asp ...

  8. 飞桨全新发布,核心框架首次完整公开解读

    导读:11 月 5 日,在 Wave Summit+2019 深度学习开发者峰会上,飞桨全新发布和重要升级了最新的 21 项进展,在深度学习开发者社区引起了巨大的反响.很多未到场的开发者觉得遗憾,希望 ...

  9. php框架所用到的核心概念,【PHP】PHP现代框架代表-Laravel框架核心技术特性

    一.php语言特点及发展现状 1.服务端脚本语言,自由度太大 ,一个业务逻辑可言写在模型里,控制器里,也可以单独封装成一个类,甚至可以嵌入到html里,这样势必会造成混乱,业务逻辑散落在各处,尤其对于 ...

最新文章

  1. Spring中的这些坑,99%的程序员都踩过
  2. VS2013怎么给实体类的属性自动生成set和get方法
  3. MySQL的source命令不加分号和delimiter的使用
  4. Google搜索正在“死亡”
  5. php自动加载原理,php中的自动加载类机制原理
  6. python 神经网络_100行Python代码,轻松搞定神经网络 !
  7. 吴恩达旗下Drive.ai商业化第一步!现在去德州能打无人驾驶出租车
  8. 别人改出了新BUG,怎么看?
  9. Java版扫雷小游戏
  10. “白嫖”时代进入最后倒计时,网盘行业到底是怎么由盛及衰的?
  11. 质谱流式细胞技术 小笔记
  12. 大数据集群资源监控Zabbix
  13. 保险H5页面、新增模板设计记录
  14. 单片机实例3——多路开关状态指示(硬件电路图+汇编程序+C语言程序)
  15. 7.12 C语言练习(爬动的蠕虫:一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。)
  16. 网狐、6878子游戏下载失败
  17. 许远东:砥砺互联网,有人是先锋,有人是炮灰
  18. 关于java中Steam流的探索
  19. 电脑连上网络,但是上不了网,IP变成了169.254.X.X问题解决!!!
  20. 如何制作没用的电脑操作系统

热门文章

  1. 2-SAT(随意写点)
  2. python使用gdal读取shp文件
  3. SpringBoot的easyui实现导入和导出功能到excel
  4. 一款最流行的MVPArms MVP快速集成框架Retoift,Okhttp,RxCache,Gson,RxLifeCycle, Dagger2,Rxjava,ImageLoader
  5. 【背景建模】VIBE
  6. uniapp使用第三方文字,本地文字
  7. 【VBA(八):在VBA中使用公式】【工作表函数+VBA函数+小结】
  8. 【Allegro 17.4软件操作保姆级教程六】布线操作基础之一
  9. FME转换LPK层文件到AUTOCAD报错
  10. Visual Basic 6.0 中文企业版