10款经典物联网操作系统,你了解多少?
时间:2020-09-17 07:51 来源:未知 作者:admin 点击:次
物联网、开源、操作系统是目前IT业界的热门词汇,也正是这三个词汇构成了物联网开源操作系统。那么,对于物联网开源操作系统,你了解有多少呢?今天氦氪小编带大家一起走近物联网操作系统,同时介绍10款经典的物联网操作系统。 从物联网说起 (图片来源于:维基百科) 物联网,英文名:Internet of Things,简称:IoT,是互联网概念的一种延伸,广义是指各种物理对象之间的联网,简单的说,就是“物物互联”。“物”在物联网中,可以是各种各样的设备,例如监测心脏功能的植入物、监测农场动物的生物芯片、内置传感器的汽车、监测食品环境的DNA分析设备、用于消防和搜救的现场操作设备等等。 (图片来源于:思科) 物联网技术包括了智能电网、智能家居、智能交通和智慧城市等等概念,是一种更广的联网,最终目标是实现电网、家居、交通等领域网络之间的互联,同时提供安全性、数据分析和管理。 操作系统是什么? (图片来源于:维基百科) 操作系统,英文名 operating system,简称:OS,是一种系统软件,位于计算机硬件和应用程序中间的一层,管理硬件和软件资源,为计算机程序提供相关服务。所有的计算机程序包括应用程序或者固件,都需要操作系统支持。 一般来说,操作系统通常具有以下功能:进程管理、中断、内存管理、文件系统、设备驱动、网络、安全、输入输出系统。 典型的操作系统主要有windows 操作系统(微软)、Unix及类Unix操作系统(Linux、谷歌)、mac操作系统(苹果)。 windows 操作系统 MS-DOS 的基础上设计的图形操作系统,是一种闭源系统,即源代码不开放。 什么是开源操作系统? 开源操作系统(open source operating system) ,是指源代码公开的操作系统软件,遵循开源协议进行使用、编译和再发布。在遵守相关开源协议的前提下,任何人都可以免费使用,随意控制软件的运行方式。开源操作系统最大的特点就是开放源代码和自由定制。下面列举开源操作系统的一些优势: 易理解:开源操作系统源代码公开,开发人员更容易查看理解代码,获取相关知识。 公开透明:操作系统漏洞和缺陷更容易曝光,同时代码的开发和维护也是公开的。 可定制:用户可以根据需求,依照不同的硬件平台和应用场景进行定制。 低成本:无商业版权费,节省了相关开发管理和人力投入成本。 可持续:即使之前开发的公司因为各种原因无法支持,依靠开源社区广大的开发人员的参与,系统还可以持续维护下去。 集思广益:因为开源操作系统公开,可以让更多的开发者参与开发,集中更多的智慧和想法。 物联网为何需要开源操作系统? 对于物联网发展而言,“碎片化”是主要的问题,其中芯片、传感器、通信协议、应用场景千差万别,“山头林立”。比如无线通信标准,就有蓝牙、Wi-Fi、ZigBee、PLC、Z-Wave、RF、Thread、Z-Wave、NFC、UWB、LiFi、NB-IoT、LoRa等等。很明显,技术方案不统一,体系结构不一致,阻碍了物联网的发展,也局限了互联互通的范围。 然而,各种操作系统可以支持不同的硬件、通信标准、应用场景。开源,有利于打破技术障碍和壁垒,提高互操作性和可移植性,减小开发成本,同时也适合开源社区的开发人员参与进来。 操作系统,是物联网中一个十分关键的环节,而开源更佳助推了物联网的开放和发展。目前,开源操作系统在物联网中的应用已经十分广泛,以后也必将在物联网中扮演越来越重要的角色。 十大物联网开源操作系统 手机市场呈现出Android和iOS两家独大的局面,而在物联网体系中,操作系统也呈现出多样性的特点,并不是一两种操作系统可以支持所有的物联网设备。 所以,我们今天要重点介绍的是十大物联网开源操作系统。(微软的Windows 10 for IoT 和 苹果的 iOS,虽然也是很强大,但是因为闭源,不在本文介绍之列。) 1) Andorid Things Andorid Things 是谷歌上周刚推出的物联网操作系统,是去年推出的“Brillo”操作系统的更新版本,作为 Andorid 系统的一个分支版本,类似于可穿戴和智能手表用的Andorid Wear(实际上它也是一种物联网操作系统)。 (图片来源于:谷歌) 它使用一种名为 Weave的通信协议,实现设备与云端相连,并且与谷歌助手等服务交互。Android Things 面向所有Java开发者,不管开发者有没有移动开发经验。该操作系统将能够支持一系列物联网设备的计算平台,其中包括英特尔Edison 平台,NXP公司的Pico平台,以及“树莓派3”。 2) Contiki Contiki,是一个开源的、容易移植的多任务操作系统,适用于内存受限的网络任务。Contiki 项目的作者是瑞典计算机科学研究所的网络嵌入式系统小组的Adam Dunkels 博士。 (图片来源于:contiki-os.org) 该系统只需要几千字节或者几百字节的内存,就能提供多任务操作系统环境和TCP/IP支持。它已经移植并成功运行于嵌入式微控制器平台(TI MSP430,Atmel AVR)以及电脑、游戏机等平台。它支持的协议有全标准 IPv6 和 IPv4,以及低功耗网络标准:6lowpan、RPL、CoAP。 3) eLinux (图片来源于:elinux.org) eLinux,也称为Embedded Linux,即嵌入式Linux 操作系统,该操作系统基于Linux 内核,是Linux 对于嵌入式系统的裁剪版,支持该操作系统的厂家、芯片和产品比较广泛。该操作系统的维基主页提供了开发、硬件、产品、厂家、社区等一系列相关信息。 4) FreeRTOS FreeRTOS 是一个迷你的实时操作系统内核,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满足较小系统的需要。 (图片来源于:freertos.org) |