在之前的文章—《Amazon推广AWS IoT的最后一块拼图:a:FreeRTOS》中,笔者曾介绍“a:FreeRTOS”是Amazon整体物联网技术策略的一环,而目前在云端市场上最具份量的业者,除了Amazon的AWS(Amazon Web Services)外,就是Microsoft的Azure与Google的GCP(Google Cloud Platform)或称Google Cloud,更次则为IBM Cloud。
对于物联网的前端技术布局,Google早在2015年5月就提出Android Things(更早之前称为Brillo)为物联网前端装置所用的操作系统,Amazon则在2017年11月提出a:FreeRTOS,而Microsoft直到2018年4月才提出相似定位的技术方案,称为Azure Sphere。
Azure Sphere MT3620 Development Kit
Azure Sphere基本介绍
Azure Sphere是由三部分所构成,一个是微控制器芯片(MCU)、一个是在微控制器芯片上执行的嵌入式操作系统(OS),还有一个是与之对应的云端服务。真正与Android Things、a:FreeRTOS对应抗衡的是Azure Sphere OS。
在这里先说明一点名称的典故,Microsoft与其云端服务有关的方案多会冠上Azure一词,例如其物联网云端服务称为Azure IoT,其中又包含了Azure IoT Hub、Azure IoT、Azure IoT Edge、Azure IoT Central、Azure IoT Suite等,而去年第二季,Microsoft推出放置于客户端执行的Azure云单执行环境方案则称为Azure Stack,以Azure开头为名的软件、服务、技术方案有非常多。
Sphere(球体)一词在信息技术(IT)产业相当常用,一些知名的软件多以此为名,如IBM的中间件WebSphere,VMware的虚拟化系统软件vSphere等。(题外话,信息技术产业爱用的另外一个词是Cube(立方体),多用在硬件上,但不知为何,以Cube为名的硬件产品多半不热销,如Steve Jobs(贾柏斯)创立的NeXT所推出的NeXTCube工作站,之后在Apple时期推出的PowerPC G4 Cube桌面计算机也是卖一年就停产,其他如Nintendo(任天堂)的GameCube游乐器、ASUS(华硕)的CUBE with Google TV。)
回归正题,Microsoft提出的Azure Sphere,与Amazon、Google不同的地方在于强调全层面、全环节的安全性,安全性从MCU芯片的设计开发阶段就已经进行要求,然后OS操作系统也是。最后联机运作时,将数据传递到云端的过程标榜安全芯片、安全软件、安全云端服务。
在具体发展上,Microsoft与联发科合作,以联发科的MT3620芯片来发展Azure Sphere MCU,从目前的报导来看,Microsoft有意以自家品牌推广此芯片,因为芯片外打印Microsoft字样,但估计为了扩大与加速发展,也会实行与Amazon相同政策,即广泛对芯片商提供Azure Sphere认证,合乎其安全规范则可使用,或者是授权芯片电路技术供他人量产。
Azure Sphere OS未来发展
至于Azure Sphere OS方面,Microsoft已坦言是以Linux为基础所修改成,COMPUTEX展上的Azure Sphere方案解说人员表示,未来有可能将Azure Sphere OS的源代码开放出来,目前仍在封闭阶段。
至此有一个疑问:Azure Sphere OS需要多少硬件效能与硬件资源才能执行?目前这方面的信息尚未完整,但以MT3620芯片来推敲,至少需要500MHz Cortex-A7、4MB SRAM系统内存才行。另外,芯片内有个Pluton(冥王星)安全子系统,是另一个独立系统在运作,该系统有一个Cortex-M4F核心,搭配特有的Pluton引擎,来实现芯片层面的安全性。
微软的物联网的生态体系:连网微控制器(MCU)、Linux核心,与Azure Sphere云端服务
芯片内针对I/O部份也使用2个Cortex-M4F核心,在Wi-Fi无线收发方面则再用一个晶心科技(Andes)的N9核心。有趣的是,过去联发科于2014年针对创客提出的LinkIt Connect 7681,其芯片MT7681的核心就是使用N9,而联发科也有投资晶心。
以4MB内存来看,Azure Sphere OS正好介于Android Things与a:FreeRTOS间,Android Things官方要求32MB~64MB以上内存,a:FreeRTOS则是16KB~64KB,看来科技大厂对物联网前端装置的终极硬件规格形貌,仍在尝试探索中。
小结
另外,各位可能会好奇Azure Sphere支持的通讯协议,就目前所知,似乎仅支持Wi-Fi一类,然而多数的物联网操作系统为了加速普及化,多半广泛支持多种通讯协议,即便是Apple的HomeKit都支援Wi-Fi与蓝牙(Bluetooth)两类。因此,Azure Sphere仍在很前期的发展阶段,讲究的是三环节的完整串连,各环节的发展都很初步,未来才可能扩展延伸强化。
至于云端服务方面,则是由Microsoft自家的Azure云端服务提供全程加密,另外前述的各类Azure IoT服务与软件也能与之呼应。其他的支持项目当然也包含Microsoft最知名的程序开发工具Visual Studio。
最后,由于要500MHz Coretex-A7核心、4MB内存,笔者估计,短期内无法使用于电池运作的物联网装置上。事实上,现有的Microsoft介绍中,似乎都是暗示电冰箱、洗衣机等有插头的家电内使用Azure Sphere,或者Microsoft未来会再推行适合电池运作的Azure Sphere方案。
作者:陆向阳