驱动物联网的八种操作系统
2017-04-06
物联网和操作系统这个话题出现在IT界时,常常听到“嵌入式操作系统”这个术语与“实时操作系统”(RTOS)互换使用,但实际上一些嵌入式操作系统有实时功能,另一些则没有这种功能。真正的RTOS物联网设备需要处理数据时没有缓冲延迟。RTOS的好处包括能够实现多任务处理,调度和优先处理任务,还能够管理资源在多个任务之间的共享,這种操作系统通常用于比较复杂的航空、工业和医疗物联网设备。另一方面,又有不太复杂,但又功能齐全的操作系统,它们有额外的好处:功耗比较低,对资源的要求也相对较低,例如处理能力和内存。
诸如此类的操作系统的增长率会超过RTOS,至少对第一代物联网设备来说是如此。八种不同的操作系统将驱动物联网行业,它们体现了可支持一切设备的操作系统,从卫星、联网冰箱一直到嵌入在手表和衣服中的智能技术等。
RIOT OS RIOT OS是一种开源社区项目,自2008年以来就已经启动。RIOT能够在众多平台上运行,包括嵌入式设备和PC(以及数量众多的极其流行的传感器),而且拥有易于使用的API,该操作系统因用电量和资源需求方面能够做到高效而家喻户晓。
Windows 10 For IoT 微软的最新款嵌入式操作系统名为Windows 10 for IoT。这面大旗下还有三个子操作系统。第一个是Windows 10 for IoT Mobile,它支持ARM架构;第二个是Windows 10 for IoT Core,它支持Raspberry Pi和英特尔凌动;第三个是Windows 10 for IoT Enterprise,这多少有点像功能完备的Windows 10 Enterprise,但仅限于运行单一应用程序。
由于Windows 10 for IoT是全新产品,它在用户群和经验丰富的开发者方面显然落后于其他许多物联网操作系统。但它大有潜力,特别是在内部开发应用程序方面,那些习惯于使用Visual Studio和Azure物联网服务、针对Windows从事开发工作的人会被整套的Windows 10 for IoT方案吸引过去。
WindRiver VxWorks WindRiver 的VxWorks可能是如今使用最流行的商用ROTS,它提供了一款可靠的操作系统,又具有高度的灵活性。VxWorks还提供了许多安全功能,这些功能对需要它们的物联网项目来说至关重要。VxWorks在工业、医疗和航空等领域的知名度很大,因为它是少数几家满足必要的认证要求、以便用于那些行业的RTOS厂商之一。
谷歌Brillo 谷歌在I/O大会上宣布,打算推出Brillo,进军嵌入式操作系统市场。面向基于安卓的嵌入式操作系统的开发平台很合适在编写安卓应用程序方面有着扎实背景的使用者,Brillo使用一种名为Weave的通信协议,这意味着智能设备没必要非得将嵌入式安卓作为其操作系统,它们只要能够使用Weave进行通信就可以,这为一大批厂商将Weave集成到物联网产品当中敞开了大门,最终让这些产品能够与Brillo比肩。
ARM Mbed OS ARM在开发自身的开源嵌入式操作系统,名为mbed OS。由于是由ARM开发,所以ARM是唯一支持的架构,话虽如此,预计该操作系统会在智能家居和可穿戴式设备这两个物联网细分市场大放异彩。这款操作系统有别于另外很多嵌入式操作系统,原因在于它是单线程,而不是多线程。ARM表示,它认为这对该操作系统能够在尺寸最小、功耗最低的设备上运行而言必不可少。如果物理尺寸和电池使用时间至关重要,物联网设备最后可能会在mbed OS上运行。
Embedded Apple iOS和OS X
虽然苹果还没有在如今的物联网市场扮演重要角色,但相信很快就会有这样的趋势。到目前为止,苹果已采用了其操作系统平台的变种,开发了多款物联网设备,例如苹果电视、CarPlay(借助BlackBerry QNX)和苹果手表。未来预计苹果会继续使用其iOS,并改动OSX,那样它可以在物联网端点设备上更精简、更高效地运行。开发人员可以使用诸如最近发布的HomeKit之类的工具,这种框架用来构建控制家庭自动化设备的应用程序。
Nucleus RTOS Nucleus RTOS是Mentor Graphics公司开发的一种嵌入式操作系统。据了解这款软件目前在30多亿个设备上运行,这是相当庞大的安装群。该操作系统为众多嵌入式架构提供了有力支持,在汽车、医疗、公用事业、工业和消费类电子产品等行业垂直领域大受欢迎。
Green Hills Integrity 另一种由来已久的商用RTOS解决方案是Green Hills的Integrity,它在航空、国防、汽车、工业和医疗等垂直领域展开激烈的竞争。该公司继续在面向消费者的物联网市场大受欢迎,这归功于它一向凭借性能、安全和可靠性博得了人气。