58

物联网的十大开源操作系统

 5 years ago
source link: http://iot.51cto.com/art/201901/589979.htm?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

物联网作为新时代的宠儿,有其独到之处,操作系统是物联网的灵魂,开源操作系统更是集结了各物联网大亨的理论精髓,物联网、开源、操作系统这三个词汇构成了物联网开源操作系统。接下来给大家介绍10款经典的物联网操作系统。

如今的物联网技术包括了智能电网、智能家居、智能交通和智慧城市等等概念,是一种更广的联网,最终目标是实现电网、家居、交通等领域网络之间的互联,同时提供安全性、数据分析和管理。

YbyuiqQ.jpg!web

操作系统是什么?

uaeEBby.jpg!web

操作系统,英文名 operating system,简称:OS,是一种系统软件,位于计算机硬件和应用程序中间的一层,管理硬件和软件资源,为计算机程序提供相关服务。所有的计算机程序包括应用程序或者固件,都需要操作系统支持。

一般来说,操作系统通常具有以下功能:进程管理、中断、内存管理、文件系统、设备驱动、网络、安全、输入输出系统。

典型的操作系统主要有windows 操作系统(微软)、Unix及类Unix操作系统(Linux、谷歌)、mac操作系统(苹果)。

windows 操作系统 MS-DOS 的基础上设计的图形操作系统,是一种闭源系统,即源代码不开放。

而Unix及类Unix操作系统,例如FreeBSD、OpenBSD、Solaris 、Minix、Linux、QNX、谷歌的Android 操作系统(基于linux),ubuntu,这些基本上都是开源系统,源代码开放。

另外就是苹果的Mac OS X 和 iOS移动设备操作系统,是以Darwin为基础开发的,Darwin 是一种类Unix操作操作系统,苹果的操作系统(Mac OS X 和 iOS)是闭源的,但是苹果于2000年将 Darwin 进行开源。

什么是开源操作系统?

开源操作系统(open source operating system),是指源代码公开的操作系统软件,遵循开源协议进行使用、编译和再发布。在遵守相关开源协议的前提下,任何人都可以免费使用,随意控制软件的运行方式。开源操作系统最大的特点就是开放源代码和自由定制。下面列举开源操作系统的一些优势:

  • 易理解:开源操作系统源代码公开,开发人员更容易查看理解代码,获取相关知识。
  • 公开透明:操作系统漏洞和缺陷更容易曝光,同时代码的开发和维护也是公开的。
  • 可定制:用户可以根据需求,依照不同的硬件平台和应用场景进行定制。
  • 低成本:无商业版权费,节省了相关开发管理和人力投入成本。
  • 可持续:即使之前开发的公司因为各种原因无法支持,依靠开源社区广大的开发人员的参与,系统还可以持续维护下去。
  • 集思广益:因为开源操作系统公开,可以让更多的开发者参与开发,集中更多的智慧和想法。

物联网为何需要开源操作系统?

对于物联网发展而言,"碎片化"是主要的问题,其中芯片、传感器、通信协议、应用场景千差万别,"山头林立"。比如无线通信标准,就有蓝牙、Wi-Fi、ZigBee、PLC、Z-Wave、RF、Thread、Z-Wave、NFC、UWB、LiFi、NB-IoT、LoRa等等。很明显,技术方案不统一,体系结构不一致,阻碍了物联网的发展,也局限了互联互通的范围。

然而,各种操作系统可以支持不同的硬件、通信标准、应用场景。开源,有利于打破技术障碍和壁垒,提高互操作性和可移植性,减小开发成本,同时也适合开源社区的开发人员参与进来。

操作系统,是物联网中一个十分关键的环节,而开源更佳助推了物联网的开放和发展。目前,开源操作系统在物联网中的应用已经十分广泛,以后也必将在物联网中扮演越来越重要的角色。

十大物联网开源操作系统

1. Andorid Things

Andorid Things 是谷歌推出的物联网操作系统,是 "Brillo"操作系统的更新版本,作为 Andorid 系统的一个分支版本,类似于可穿戴和智能手表用的Andorid Wear(实际上它也是一种物联网操作系统)。

jEFRZrI.jpg!web

它使用一种名为 Weave的通信协议,实现设备与云端相连,并且与谷歌助手等服务交互。Android Things 面向所有Java开发者,不管开发者有没有移动开发经验。该操作系统将能够支持一系列物联网设备的计算平台,其中包括英特尔Edison 平台,NXP公司的Pico平台,以及"黑莓派3"。

2. Contiki

Contiki,是一个开源的、容易移植的多任务操作系统,适用于内存受限的网络任务。Contiki 项目的作者是瑞典计算机科学研究所的网络嵌入式系统小组的Adam Dunkels 博士。

VNVjYrI.jpg!web

该系统只需要几千字节或者几百字节的内存,就能提供多任务操作系统环境和TCP/IP支持。它已经移植并成功运行于嵌入式微控制器平台(TI MSP430,Atmel AVR)以及电脑、游戏机等平台。它支持的协议有全标准 IPv6 和 IPv4,以及低功耗网络标准:6lowpan、RPL、CoAP。

3. eLinux

eyueqmq.jpg!web

eLinux,也称为Embedded Linux,即嵌入式Linux 操作系统,该操作系统基于Linux 内核,是Linux 对于嵌入式系统的裁剪版,支持该操作系统的厂家、芯片和产品比较广泛。该操作系统的维基主页提供了开发、硬件、产品、厂家、社区等一系列相关信息。

4. FreeRTOS

FreeRTOS 是一个迷你的实时操作系统内核,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。

NBNNZbn.jpg!web

FreeRTOS 操作系统是完全开源你的操作系统,具有源码公开、可移植、可裁减、调度策略灵活的特点。目前,该操作系统已经数百万设备上部署,它号称是"市场上领先的嵌入式实时操作系统",能够为微控制器和微处理器提供很好的解决方案。

5. mbed OS

6vYzaq2.jpg!web

这款操作系统由ARM开发,专门为运行ARM处理器的物联网设备而设计。它包含了C++应用程序网络,公司也提供其他开发工具和相关的设备服务器。

默认情况下,mbed 操作系统是事件驱动的单线程架构,而非多线程(实时操作系统)环境。 这确保了它可以扩展到尺寸最小、成本最低且功耗最低的物联网设备。

ARM在移动设备端有着强大的市场占有率,所以这款操作系统实力和前景不可小觑。

6. Raspbian

Raspbian 是一款基于Debian,为树莓派硬件而设计的操作系统。这个操作系统包括一些列的基础程序和工具,保证树莓派硬件的运行。

Qf2yya3.jpg!web

7. RIOT

RIOT,将自己称为"友好的物联网操作系统",致力于开发者友好、资源友好、物联网友好,关键的功能包括C/C++支持、多线程、能量效率、部分遵守POSIX等等。RIOT 开源社区自2008年以来就启动了。RIOT能够在众多平台上运行包括嵌入式设备、PC、传感器等。

AVBvMzQ.jpg!web

8. Ubuntu Core

Ubuntu 是目前最流行的Linux 版本,而Ubuntu Core旨在将Ubuntu 带向物联网世界。它可以运行例如微软Azure、 谷歌计算引擎、 亚马逊弹性云计算服务,也可以运行在例如BeagleBone Black 和树莓派等硬件上。

2ABfMjf.jpg!web

9. Huawei LiteOS

Huawei LiteOS 是华为面向IoT领域,构建的"统一物联网操作系统和中间件软件平台",具有轻量级(内核小于10k)、低功耗、互联互通、安全等关键能力。Huawei LiteOS 目前主要应用于智能家居、穿戴式、车联网、智能抄表、工业互联网等 IoT 领域的智能硬件上,还可以和LiteOS生态圈内的硬件互联互通,提高用户体验。

Liteos操作系统具有能耗最低,尺寸小、响应快等特点,也建立了开源社区,能够支持的芯片例如海思的PLC芯片HCT3911、媒体芯片3798M/C、IPCamera芯片Hi3516A,以及LTE-M芯片等。

10. Tizen

Tizen,Linux基金会和LiMo基金会,联合英特尔和三星电子,共同开发的开源操作系统,它可以满足物联网设备生态系统(包括设备制造商、手机运营商、应用开发者、独立软件服务提供商)的需求,应用于手机、电视、穿戴等多个产品。

MBryU3b.jpg!web

Tizen底层平台相关API按照HTML5的形式公开出来,服务将涵盖通信、多媒体、相机、网络、社区媒体等。三星已经售卖了几款搭载该操作系统的产品,是它的最大支持者。

蒂蒙技术作为工业物联网设备的生产厂家,对于各大操作系统做好了自身的研发支撑,根据不同的市场定向,配备不同的操作系统,开发满足客户需求的各类设备!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK