在上篇文章《找到一个合适的“杠杆”,你就能翘起整个物联网世界!》中,我探讨了物联网企业必不可少的思维模式之一“杠杆思维”,但“杠杆思维”仅仅是物联网企业荒野求生的必要条件而非充分条件,除此以外您还需掌握另一必要思维模式:“解耦思维”,在文中你将看到:
- 什么是“解耦”思维?为什么说操作系统或者物联网平台是解耦思维的集大成者?
- 什么是物联网的操作系统?
- 解耦之后,物联网硬件能否实现“公板公模”?
退一步海阔天空
我常说物联网赚不了快钱,因为物联网涉及到IT(信息技术)、CT(通信技术)和OT(运营技术)多个领域的有机交融,时间和积累的深度难有超车捷径。
首先比较一下代表CT的通信行业和代表IT的移动互联网产业。为什么通信行业的发展慢,移动互联网能快速演进迭代?很大程度的原因在于:标准的力量。通信行业有互联互通的基本诉求,所以它的发展要基于技术标准,制定技术标准需要多方协调统一,周期长、成本高。而移动互联网是在开放的通信技术以及通达全球的通信网络基础上的创新,具备一点接入服务全球的能力,没必要与其他企业互联互通,最多就是做一些接口标准和API,所以更能快速迭代、迅速扩张。
而与CT通信技术相比,OT需要深入到工业领域,涉及到实体经济中身量更重的一个部分。OT的纵深层次很多,从控制中心、工程师站,向下到交换机、网关、控制器,再向下到变频器、驱动器,然后再向下到传感器、执行单元、仪器仪表、终端设备…产品多、组合多、链条长,因此互联互通的难度更大,周期更长,成本更高。
因此谈到物联网,往往与之相关的形容词是“碎片化”和“术业有专攻”。无论是底层的连接还是上层的应用服务,都特别强调专业化,但他们又扎根于不同的专业,即便是一家企业对物联网实施全面布局,也会将任务分派给OT、CT、IT等不同团队。
如何将他们拼接起来,让他们彼此融合?正如文初所讲,退一步海阔天空,先让他们彼此拆解和分离,做到资源和协作的***化分离,即——“解耦”。
过去做硬件的人不用管软件,但是做软件的人必须兼顾,既看硬件又编软件。然而有了操作系统之后,软硬件彼此“解耦”,做软件的人可以不看硬件了。这并不是谁强谁弱,也不是谁重要谁不重要的问题,而是大家通过实践形成了共同遵守的共识。
提到操作系统,***时间我们就会想到运行在电脑上的Windows、Linux,想起运行在手机上的安卓和iOS。这些程序直接运行在“裸机”设备的***层,搭建起其他软件、应用运行的环境与基础。得益于操作系统的兴起、完善,才促成了软件与应用的兴起,铸就了辉煌的PC时代与移动互联网时代。
众所周知,以安卓为代表的操作系统,通过虚拟抽象层实现了硬件和软件的分离和解耦,即所有的软件和应用开发者只需根据操作系统提供的编程接口,开发出的应用软件就可以运行在所有基于该操作系统的设备上,而无需考虑设备中各类硬件配置。
这里所说的“解耦”,其实是在硬件抽象基础上的标准化,不是软件与硬件工程师之间不沟通、不交流了,而是因为他们彼此已经沟通充分,定义好了彼此之间的沟通边界和交互平面,形成共识。而这种共识已经固化成为标准和习惯,所以不需要再重复沟通。
如果我们能够参照这种思路,做到从现在的做OT的人不用管IT,但是做IT的人必须看OT,转变为做IT的人不用看OT了,那么就实现了IT与OT层面的解耦,从而创造了IT与OT融合的***个必要条件。
当然,在物联网通过虚拟化进行“解耦”的过程中面临重大挑战,因为物联网不仅涉及上述IT、OT、CT不同领域,还涉及云、边、端多个层级。安卓操作系统中的“硬件虚拟抽象层”在手机中只涉及一层,而要实现物联网中“物理世界的抽象层”,则要复杂得多。这点我们在本文的第②部分再进行详细论述。
操作系统的“解耦”思维体现在物联网时代便是物联网平台,物联网中的操作系统就是平台。未来将有数万亿的联网设备,网络经济规律将发挥重要作用,尽***努力获取更多的联网设备支持是操作系统或者物联网平台推广的关键。
谁的解耦更彻底,谁的使用更便捷,谁的生态更丰富,谁便最有机会触发平台、工程师与用户之间的“正反馈”。操作系统或者物联网平台应用更顺手,工程师们就会更愿意使用,让平台上的应用更加丰富,从而吸引更多的用户使用,在正反馈的激励下,围绕平台的生态圈自然越来越大。以此往复,良性循环。
物理世界的抽象层
操作系统并不是科技领域的***,人类自古以来就建立了自己的操作系统,并且随着技术的进步,操作系统的含义也在不断演进。
什么是人类的操作系统?是法律、是规则、是宗教。这些操作系统中的指令通过人与人之间组成的社会关系,层层分发,层层下达。
什么是PC和移动互联网时代的操作系统?是Windows、是Linux、是安卓、是iOS。这些操作系统调度的是PC或者手机中的计算和存储资源。
那么,什么是物联网时代的操作系统?这里要警惕了:可不要简单局限于“端侧操作系统”。不是AliOS Things,不是Lite OS,不是FreeRTOS,或者说不完全是,这几个嵌入式操作系统只是完成了物理硬件的抽象,并不是物联网的操作系统。
物联网的操作系统调度“物体”本身,因此它很可能将融合人类操作系统与PC时代操作系统的两种形态,物联网操作系统对“物体”的调度过程通过层层分发、层层下达,通过调度云、边、端,不同层级中不同设备的计算资源而实现。
因此,物联网中的操作系统涉及到芯片层、终端层、边缘层、云端层等多个层面。单一层次的物联网操作系统与安卓在移动互联网领域的地位和作用类似,实现了应用软件与智能终端硬件的解耦。就像在安卓的生态环境中,开发者基本不用考虑智能终端的物理硬件配置,只需根据安卓的编程接口编写应用程序,就可以运行在所有基于安卓的智能终端上一样,物联网操作系统的作用也是如此。
上述提到的几种嵌入式操作系统,AliOS Things、Lite OS、FreeRTOS…是物理硬件到数字世界的***道转换,它们是边缘侧的“解耦思维”承载体,其上还要经过多道转换,才完成了物理世界到数字世界的整个镜像,也才能构成完整的物联网操作系统。
理解物联网的操作系统,必须提到CPS。对CPS有充分理解,是做好物联网的基础,关于CPS的大量论述,此处不再展开,请参考文章《看懂CPS,才能真正撬动物联网的万亿级市场》。
目前在智能交通领域,物联网的操作系统初具雏形。我们以地铁为例,地铁交通网中的信号系统和综合监控系统,是局部相对成型的CPS系统,每一辆地铁用车都是由计算机调度,调度分配给每台车辆的轨道资源。如果将轨道看作是CPU处理器,车辆便是线程,类似PC时代操作系统的模式。而构成整个地铁物联网的操作系统,需要云端、边缘、芯片各个层面的操作系统互相协同,将物理世界通过层层“解耦”,抽象提取到数字世界。
因为PC和智能手机多为标准化的硬件配置,其操作系统标准化和批量复制难度不大,而物联网设备多样化和碎片化的特征,硬件资源常被约束在不同且不相通的多重环境中,对单个层面操作系统的伸缩性和灵活性提出了极高要求。
例如对于应用场景丰富的智能手表和仅需具备简单通讯、调度功能的计量终端,其操作系统量级应该差别很大,可能是从几KB到几十MB之间无规律伸缩。
目前多种物联网操作系统并存,同一层面中的操作系统由于演进路径不同,造成较大差异。
例如对于终端层的操作系统,便呈现出两种技术路线:一是基于安卓等操作系统进行裁剪和定制,二是在传统RTOS实时操作系统的基础上增加设备联网功能。因此物联网领域尚未形成像PC和手机市场那样,仅有少数几种操作系统的局面,不管硬件使用哪种系统,都不会形成使用障碍,只是性能不同而已。
因此在物联网的环境下,尤其需要操作系统屏蔽物联网底层硬件碎片化差异,提供统一的编程接口,降低物联网应用开发的门槛、成本和时间。为了应对严重的碎片化现状,采用“分而治之”的方法论,通过操作系统触发的软硬件分离与解耦可能将在众多应用场景中显现价值——更易复制,从而加快规模化进程。。
“公板公模”能否成真?
操作系统通过将软硬件解耦,完成的重大使命是令硬件开发厂商可以降低底层投入,实现产品的网络化和智能化并快速量产。
操作系统作为软硬件之间的解耦平面和接口,使得硬件标准化,通过软件实现个性化定制的行为变得可行。操作系统的另外一个价值,是能够***程度的实现硬件的通用和软件的复用,提升定制化软件的开发效率,降低复用成本、激活复用情景。
在物联网市场,软件和硬件模块复用性低是大家普遍面临的难题。尤以工业场景为甚,硬件型号极端碎片化,工业APP被重复使用的次数相对较低,可以说是低到惨不忍睹。现实的情况往往是一个工业APP被客制化的次数非常多,而被重复使用的次数又非常低,无法通过多次复用摊薄使用成本,几乎形成了一个死循环。
如果这个问题不解决,设备的大规模联网很难实现。
物联网本身是“系统的系统”,势必涉及到产品与系统之间“车同轨、书同文”的工作,涉及到大量的“解耦”工作,通过不同层面的操作系统,将硬件相对标准化,更多定制化功能通过软件实现。
回顾PC和手机的发展历程,都会看到硬件标准化,更多功能由软件定义的发展历程。
自从世界上***台电子计算机ENIAC在上个世纪四十年代诞生以来,PC经历了电子管、晶体管、集成电路、大规模集成电路等数个阶段。ENIAC虽是***台通用意图的计算机,但由于其结构设计不够弹性化,导致它每计算一道新的题目,都需要重新修改电路。随后从冯∙诺伊曼系统结构开始,计算机科学才慢慢演变为硬件和软件两部分。如今发展到硬件通用化、系列化和标准化,由软件实现文字处理和图形图像等丰富功能的阶段。
智能手机的硬件通用化,软件定制化特征则更为明显。当年苹果一款手机便击败了诺基亚拥有的众多型号,因为苹果率先从战略上认识到了在移动互联网阶段,硬件的标准化趋势、操作系统的重要性,以及手机应用程序的作用。就这样手机进入了硬件高度一致化,通过应用商店中种类繁多的各种软件满足用户个性化需求的新阶段。
在物联网领域,通过少数几种公板公模,实现硬件标准化的做法,是否能够成真呢?
至少很多企业已经看到了这个趋势,朝着类似的方向在努力。比如汽车领域,产业链的变革正在发生,通过苹果、谷歌、特斯拉等公司的推动,现在汽车正在变得越来越像一部装了四个轮子的智能手机,使用较少的车型,通过车载操作系统,用大量的个性化软件实现众多的功能。
至于其它领域,让我们等待时间去验证。
***,衷心感谢阿里云***智联网科学家丁险峰、华为软件***战略规划专家宁宇在成文过程中对我的大力支持。
本文小结:
- 这里所说的“解耦”,其实是在硬件抽象基础上的标准化,不是软件与硬件工程师之间、IT与OT工程师之间不沟通、不交流了,而是因为他们彼此已经沟通充分,定义好了彼此之间的沟通边界和交互平面,形成共识。
- 物联网的操作系统调度“物体”本身,而这种调度过程通过层层分发、层层下达,通过调度云、边、端,不同层级中不同设备的计算资源而实现。
- 很多企业已经看到了物联网领域公板公模的趋势,朝着同样的方向在努力。