大约40年前,VxWorks彻底改变了RTOS市场,因为它支持将硬件板卡连接到Unix工作站,从而革命性地改变了编辑/编译/调试的开发模式。这场革命具备极大的颠覆性,以至于在十年内,许多原本已经初具规模的竞争对手都纷纷退出市场,或者以被收购的方式来寻求生存。

凭借着VxWorks,风河公司以革命性的方式为整个行业做出了贡献,极大地提升了应用开发的便捷性、可靠性和经济性。我们致力于RTOS创新,使嵌入式行业能够一代一代地设计、开发和部署全球信息安全性和功能安全性最高的设备。我们的努力得到了整个业界的认可,使得风河一直被看作是商业RTOS的领导者。我们最新发布的VxWorks再一次为嵌入式开发行业带来了诸多尖端技术,满足了应用开发人员的长久期待,既支持他们在桌面设备上进行开发工作,也支持移动环境。具体来看,以下技术要点将会赢得他们的喜爱。

LLVM:与其他商业RTOS不同的是,VxWorks配备了最新的LLVM编译器。相比之下,其他RTOS只能提供封闭的专用编译器,或者只提供GNU工具链的衍生品。LLVM不仅是一个编译器,它还包括支持开发和创新的基础设施,如库和框架。

Boost: 为了确保开发人员能够在桌面电脑上开发VxWorks应用,而不必像以往那样在特定硬件之中进行,风河现在为Boost C++库提供了开箱自带的支持能力。这就使应用开发人员可以选择在自己的Windows平台上利用本机的Boost来进行应用开发工作,并提供将测试代码无缝迁移到VxWorks的功能。

WindRiver Helix Virtualization Platform

此前,我们一直使用一个名为VxSim的VxWorks仿真版本来支持桌面开发,这是风河IDE Workbench的一部分。最近推出了最新版本的VxWorks,而且已经做为Wind River产品集Helix Virtualization Platform中的一部分。

大家已经知道,Helix Virtualization Platform是一个边缘计算软件平台,整合了多操作系统和混合型关键应用,可以很好地支持航空航天、汽车、国防、工业和医疗等领域既有系统的现代化升级。

VxWorks 7 Logo

物联网尽管被提了多年,也得到各方力量的推动,但是产业的发展相对比较缓慢,而且目前鲜有企业在这个领域赚到钱。究其原因,一些行业分析师认为,要想让每个场景中的设备实现物联网化,单兵作战难以实现,整个物联网行业缺乏平台的支撑。这句话讲到了关键点。但是,有能力做物联网平台的企业并不多,能够下决心专注物联网领域的更是少之又少。风河可以算物联网能力平台中的一个。

VxWorks发展超过三十年 来到7时代

VxWorks Generation

VxWorks成长历程

结合VxWorks的发展经历不难看出,从1980年到2010年,VxWorks推出了四代产品。1980年代,为设备开发了32位处理器,而且设备中有了操作系统。1990年代,越来越多的设备开始数码化,互联网也开始兴起。VxWorks来到5时代。2000年代,风河推出了VxWorks 6版本,除了多核设备不断推出之外,很多设备开始需要有一些特定的增强性,不管是在安全性还是在防御性上。进入2010年代,风河推出了VxWorks 7,除了看到物联网的一些新机会外,更多的是不限于一个设备上使用,开始探讨从端到端,还有中间云端部分,因此,要分配和管理的设备越来越多,而且每个设备之间的互联、性能的分配、操作也越来越复杂。

VxWorks操作系统简介

VxWorks 是专门为实时嵌入式系统设计开发的操作系统内核,为程序员提供了高效的实时多任务调度、中断管理,实时的系统资源以及实时的任务间通信。在各种 CPU 平台上提供了统一的编程接口和一致的运行特性,尽可能的屏蔽了不同 CPU 之间的底层差异。应用程序员可以将尽可能多的精力放在应用程序本身,而不必再去关心系统资源的管理。基于VxWorks 操作系统的应用程序可以在不同 CPU 平台上轻松移植。VxWorks 是美国 Wind River System 公司(以下简称风河公司 ,即 WRS 公司)推出的一个实时操作系统。 WRS 公司组建于 1981 年,是一个专门从事实时操作系统开发与生产的软件公司,该公司在实时操作系统领域被世界公认为是最具有领导作用的公司。VxWorks 是一个运行在目标机上的高性能、可裁减的嵌入式实时操作系统。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。在美国的 F-16、 FA-18 战斗机、 B-2 隐形轰炸机和爱国者导弹上, 1997 年 4 月在火星表面登陆的火星探路者上也使用了 VxWorks。VxWorks 是一种功能强大而且比较复杂的操作系统,包括了进程管理、存储管理、设备管理、文件系统管理、网络协议及系统应用等几个部分。 VxWorks 只占用了很小的存储空间,并可高度裁减,保证了系统能以较高的效率运行。所以,仅仅依靠人工编程调试,很难发挥它的功能并设计出可靠、高效的嵌入式系统,必须要有与之相适应的开发工具。 TornadoII就是为开发 VxWorks 应用系统提供的集成开发环境, TornadoII 中包含的工程管理软件,可以将用户自己的代码与 VxWorks 的核心有效的组合起来,可以按用户的需要裁剪配置VxWorks 内核; vxSim 原型仿真器可以让程序员不用目标机的情况下,直接开发系统原型,作出系统评估;功能强大的 CrossWind 调试器可以提供任务级和系统级的调试模式,可以进行多目标机的联调;优化分析工具可以帮助程序员从多种方式真正地观察、跟踪系统的运行,排除错误,优化性能。

1 高性能的微内核设计

Micron 2200 NVMe SSD

镁光已经宣布了基于他们新自研的客户型NVMe SSD控制器的第一款产品。这个镁光2200没有自夸有足够的性能和零售市场上的顶级狂热级的NVMe驱动器相竞争,但是应该足够快让它针对的OEM和系统集成商们用来作为他们商用个人电脑的性能选项。

镁光在将NVMe带给他们的客户和消费产品线上已经明显慢了一步。他们原本计划将他们的第一代32层的3D NAND和Silicon Motion SM2260控制器联合起来发布客户型OEM和消费零售驱动器,但是这些计划被搁浅了,因为这种组合已经很明确的被证明不能够交付高端的性能。去年秋天镁光最后发布了基于QLC NAND和SM2263控制器的入门级的Crucial P1 NVMe SSD,在这之前都没有发布过高端的产品。

Astranis and Windriver

领先的关键基础设施物联网软件提供商风河®今日宣布,卫星新创公司Astranis Space Technologies正在将VxWorks®实时操作系统用于其新一代卫星,为网络尚未覆盖的市场提供经济高效的高速互联网接入服务。

全世界尚有一半以上的区域尚未接入互联网,卫星有望在解决这一问题中发挥重要作用。Astranis公司正在建造能够向全球个人用户提供宽带互联网服务的卫星。其覆盖目标是那些由于基础设施建设成本太高而导致宽带互联网无法广泛使用或完全不可用的地域。

Astranis公司采用VxWorks来管理卫星主飞行计算机,控制其中搭载的航空电子设备,以便实施引导并使其与地球保持互连通信。Astranis公司最近已经宣布,其第一颗卫星将部署在美国阿拉斯加州上空,与该州的互联网提供商Pacific Dataport公司合作运营。

Astranis公司首席执行官兼联合创始人John Gedmark表示,“我们很高兴能在自己的首颗卫星中与风河合作。风河在太空领域的成功以及与NASA(美国国家宇航局)和他航天机构的长期合作经验让我们相信,他们是正确的合作伙伴,足以帮助我们实现愿景。”

风河航空航天与国防市场副总裁Ray Petty指出,“风河在太空领域数十年来一直居于领先地位,我们很高兴Astranis选用风河的软件为其开创性的技术提供支持,这将使那些网络尚未覆盖的地区进入互连的世界。我们做为核心创新的推动者,帮助Astranis这样的企业加速发展、降低成本,并最终将足以改变游戏规则的技术推向市场,这一切都令人欣慰。”

风河针对网络边缘推出了全面性的软件产品集,面向航空航天和国防领域复杂多样的工程项目,从设计到开发再到部署运营,提供全方位的支持,技术配备丰富多样,囊括实时操作系统、基于开源的平台、系统模拟和虚拟化。

面向功能安全和信息安全环境,风河公司不仅提供市场领先的VxWorks,而且包括用于通用功能的Wind River Linux和其他商业级开源技术。最近推出的Wind River Helix Virtualization Platform则适用于实现多个联邦系统的集中化,能够把安全关键应用和通用应用合并到同一个计算平台之上。对于系统仿真,也就是支持未修改的目标软件能够以完全无异于物理硬件的方式运行在虚拟软件平台之上,风河公司提供了Wind River Simics。

QT5.5.1 for VxWorks

"I am pleased to announce that we have now released fully supported Qt 5.5.1 for VxWorks 7 Real Time Operating System (RTOS). Older version of VxWorks has been supported with Qt 4.8, but the port has now been updated to Qt 5.5 and a new major version of VxWorks. With the new version released today it is possible to run the Qt 5 goodies such as OpenGL accelerated Qt Quick 2 on top of VxWorks 7. The release is available for all existing Qt for VxWorks licensses as a new downloadable item in the Qt Account."

The goal of the new port is to provide a similar level of Qt functionality as the earlier Qt 4.8 port does, as well as to take advantage of the great graphics capabilities of Qt 5. In addition, Qt Creator IDE has integrated support for VxWorks, and deployment of a Qt application to a development hardware running VxWorks is accomplished with a single click. VxWorks development with Qt 5 can be done using both Windows and Linux development hosts.

The new Qt 5.5 port for VxWorks 7 supports most of the essential Qt modules:

  • Qt Core
  • Qt GUI
  • Qt Network
  • Qt Multimedia (audio output only)
  • Qt QML
  • Qt Quick
  • Qt Quick Controls
  • Qt Quick Dialogs
  • Qt Quick Layouts
  • Qt SQL
  • Qt Test
  • Qt Widgets

In addition to these, the following add-ons are supported:

  • Qt Quick Compiler
  • Qt Charts
  • Qt Data Visualization
  • Qt Virtual Keyboard
  • Qt Concurrent
  • Qt Graphical Effects
  • Qt Image Formats
  • Qt OpenGL (only for porting form Qt 4, new applications should use OpenGL support in Qt GUI)
  • Qt Platform Headers
  • Qt SVG
  • Qt XML Patterns

The new Qt 5.5 port requires VxWorks 7. We have used Freescale i.MX6 as the reference hardware for the Qt 5.5 for VxWorks port. Multiple other CPUs are supported by VxWorks 7 and most of the x86 and ARM based CPUs with OpenGL support are possible to be enabled for the Qt port with an additional effort.

Holders of a valid Qt for VxWorks license can download the new release from their Qt Account web portal and run it on top of the December 15th GA release of VxWorks 7 RTOS.