投稿邮箱

digitcw@163.com

您的位置:首页 > 产业观察 >
RTOS走上现代化之路,VxWorks已经动身
作者:数字通信世界   添加时间:2021-06-18
文章介绍了嵌入式实时操作系统需要顺应时代发展,不断更新满足市场新的需求。
(赵法彬/数字通信世界)如今,大家对于电脑与手机都非常熟悉,对于时不时的电脑或手机操作系统升级也习以为常了。然而,在很多现代化工业领域也有各自的操作系统,它们对于及时性、安全性、稳定性要求非常高,是大家非常陌生的。
 
RTOS需要与时俱进,不断更新
实时操作系统(Real-time operating system, RTOS)会按照排序运行、管理系统资源,并为开发应用程序提供一致的基础。与一般的操作系统相比,RTOS最大的特点就是“实时性”,如果有一个任务需要执行,RTOS会在较短时间内马上执行该任务,不会有较长的延时,这种特性保证了各个任务的及时执行。在实时操作系统(RTOS)环境中进行嵌入式系统开发采用的是C和汇编语言,是专门为有严苛要求的设备开发软件。这些设备的内存限制可能只有几兆字节,而不是常见的几百或几千个G字节。同时,它们必须满足极高的性能要求,不仅速度快很多,而且运行结果必须完全可以预见,并且确有保障。
需要说明的是,大多数实时操作系统都是嵌入式操作系统,但嵌入式操作系统并不全都是实时的。并不是每个嵌入式系统都使用RTOS,例如,在Windows或Linux系统上进行嵌入式系统开发,就不属于RTOS。它们可能需要更少的资源,并提供比台式机或服务器更快的性能,但它们的速度不够快或可预测性不够,无法满足任务关键型或安全关键型RTOS系统的要求。RTOS是嵌入式系统开发的核心子集,在同一个可预测的时间框架内,每一个操作都必须是可重复的,而且每一次重复都具有相同的确定结果。
RTOS在嵌入式系统开发中已经使用了几十年,其演进改变速度比其他计算领域慢得多。其中一个原因是关键任务系统的固有惯性,没有理由去改变长期良好运作的系统。传统上,RTOS系统有一个很长的开发生命周期,在将系统部署到关键环境之前,必须解决每个Bug并优化每个操作,而且在关键环境中,RTOS必须精准无误地工作。一旦部署,传统的RTOS系统很少更新,但是在下次更新系统之前,它们需要工作很多年。这种漫长的生命周期节奏使得RTOS项目常常是一次性构建和部署,导致工具和方法的发展十分谨慎而且缓慢。
然而,现代化正在加快变革的步伐,RTOS也不得不推出各种新功能来加快现代化的步伐,从而满足市场需求。正在发生的现代化步伐将给RTOS开发带来前所未有的巨大变化,这些变化从企业IT世界渗透进来,将会给RTOS开发带来新的方法:敏捷开发和DevOps方法,诸如Rust、Python或Go之类的语言,以及包括容器和Kubernetes在内的部署范例。RTOS系统正被部署到“智能边缘”的新环境中,与云和人工智能等现代化邻居拥有了交集。RTOS要适应未来无所不在的环境,让软件无论运行在边缘还是云端,在任何地方都可以得到维护、更新,这就是未来的一个趋势。这个趋势都会在RTOS上有所反应,RTOS必须不断更新满足要求。
 
VxWorks积极回应变化,满足需求
嵌入式实时操作系统主要应用在关键性领域,与设备紧密结合,与IT领域软件技术日新月异不断更新的情况相比,RTOS不仅更新速度很慢,而且使用设备数量相对较少,但是随着物联网(IOT)的迅速发展,导致嵌入式设备百万千万级规模急剧增加,这对嵌入式实时操作系统提出了新的要求,其产品开发生命周期变短,更新频率增加,并且可以通过远程自动更新,因此,RTOS必须跟上时代发展,满足需求。RTOS需要把IT环境软件开发方法应用到嵌入式开发,以前RTOS内存与处理器都不高,现在不存在这些限制,在嵌入式应用大规模软件成为可能,但是用户的要求没变化,这就是高安全性、高可靠性、高稳定性、高即时性、高复杂性等,因此,嵌入式既要吸收IT软件开发的长处,又要保持自己原有的安全性等特点,这就带来了很大挑战。迭代式开发、敏捷开发在IT领域应用多年,但是在嵌入式领域依然需要分阶段进行,需要为DevOps加上安全性,即DevSecOps,需要将开发与运营一起考虑,在开发中想到运营,在运营中想到开发,两者缺一不可。安全性具有木桶效益,对应的软件开发与运营过程中不能有漏洞,如何让安全贯穿软件整个生命周期始终,都是RTOS现代化要考虑的方面。
VxWorks是美国风河(Wind River)公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),也是该公司一个拥有30多年历史的核心产品,具有硬实时、确定性与稳定性,也具备航空与国防、工业、医疗、汽车、消费电子产品、网络及其他行业要求的可伸缩性与安全性。创新是风河的DNA,也是风河的自身要求。VxWorks使用的很多技术都是风河内部要求,具有前瞻性。在技术演进过程中,VxWorks现代化是对环境的回应,也是对未来的一个准备。
RTOS开始现代化,风河更希望让自己的软件应用环境在云计算与边缘计算起到承上启下的作用,可以从边缘直达云端提供支持,这就需要很多新的技术,其中比较典型的是容器技术,该技术在云端使用,但是如何让其应用到嵌入式与边缘计算,这是风河考虑的,也是非常有意义的事情。基于RTOS的系统如何现代化并且适应智能边缘?风河在其RTOS——VxWorks中采用了以下几种方式:一是在价格亲民的硬件(如Raspberry Pi)上实现更快的原型设计;二是增加对现代开发技术的支持,如Python、Rust和WebAssembly;三是通过向RTOS世界介绍DevOps和容器,引入IT概念和规模。
RTOS开发过程发生很大的变化,新冠疫情对全球很多企业也是一次检验,风河用自己的平台为分散工作状态的员工提供了很好的支持,让大家协调工作,产品开发、测试、运营,都可以远程协同。对于软件工程师而言,风河技术起到了实实在在的作用:一是云端实验室(网络实验室),通常软件开发需要会面协同,如今可以在任何地方通过云端实验室进行开发,产品概念的提出、验证、测试、上市等都可以在云端实验室进行;二是设立网络论坛,软件工程师可以在这里提出问题集中讨论,从而集思广益,加快软件开发速度,让产品开发、维护、退役都进入新的状态。