Understanding Open Source Operating Systems in IoT

Understanding Open Source Operating Systems in IoT

Source: IntelligentThings

Author: John

Published by IoT Think Tank

Please indicate the source and origin when reprinting

—— [Introduction] ——

The terms IoT, open source, and operating systems are currently hot topics in the IT industry, and these three terms constitute the open source operating systems for IoT. So, how much do you know about open source operating systems for IoT?

Today, we will take you closer to the IoT operating systems and introduce 10 classic IoT operating systems.

Starting from IoT

Understanding Open Source Operating Systems in IoT

(Image source: Wikipedia)

IoT, in English: Internet of Things, abbreviated as: IoT, is an extension of the internet concept that broadly refers to the networking of various physical objects, simply put, it is “the interconnection of things”.

In the context of IoT, “things” can be various devices, such as implants that monitor heart functions, biochips that monitor farm animals, cars with built-in sensors, DNA analysis devices that monitor food environments, and on-site operational devices used for firefighting and search and rescue, etc.

Understanding Open Source Operating Systems in IoT

(Image source: Cisco)

IoT technology includes concepts such as smart grids, smart homes, smart transportation, and smart cities, which represent a broader networking approach. The ultimate goal is to achieve interconnectivity among networks in areas such as power grids, homes, and transportation while providing security, data analysis, and management.

What is an Operating System?

Understanding Open Source Operating Systems in IoT

(Image source: Wikipedia)

An operating system, in English: operating system, abbreviated as: OS, is a type of system software that acts as a layer between computer hardware and applications, managing hardware and software resources and providing relevant services for computer programs. All computer programs, including applications or firmware, require support from an operating system.

Generally speaking, operating systems typically have the following functions: process management, interrupts, memory management, file systems, device drivers, networking, security, and input/output systems.

Typical operating systems include windows operating system (Microsoft), Unix and Unix-like operating systems (Linux, Google), and macOS (Apple).

  • The Windows operating system is a graphical operating system designed based on MS-DOS, which is a closed-source system, meaning the source code is not open.

  • Unix and Unix-like operating systems, such as FreeBSD, OpenBSD, Solaris, Minix, Linux, QNX, Google’s Android operating system (based on Linux), and Ubuntu, are essentially open-source systems with open source code.

  • Additionally, Apple’s Mac OS X and iOS mobile operating systems are developed based on Darwin, which is a Unix-like operating system. Apple’s operating systems (Mac OS X and iOS) are closed-source, but Apple open-sourced Darwin in 2000.

What is an Open Source Operating System?

An open-source operating system (open source operating system) is an operating system software whose source code is publicly available, allowing for use, compilation, and redistribution under open source licenses. Under the premise of complying with relevant open-source licenses, anyone can use the software for free and control how it runs. The biggest feature of open-source operating systems is open source code and freedom to customize. Below are some advantages of open-source operating systems:

  • Easy to Understand: Open-source operating systems have publicly available source code, making it easier for developers to view and understand the code and gain relevant knowledge.

  • Open Transparency: Vulnerabilities and defects in the operating system are more easily exposed, and the development and maintenance of the code are also open.

  • Customizable: Users can customize the software based on their needs according to different hardware platforms and application scenarios.

  • Low Cost: There are no commercial copyright fees, saving related development management and labor costs.

  • Sustainable: Even if the company that developed the software can no longer support it for various reasons, the system can still be maintained thanks to the participation of a large number of developers from the open-source community.

  • Crowdsourced Wisdom: Because open-source operating systems are public, more developers can participate in development, concentrating more wisdom and ideas.

Why Does IoT Need Open Source Operating Systems?

Understanding Open Source Operating Systems in IoT

For the development of IoT, fragmentation is a major issue, where chips, sensors, communication protocols, and application scenarios vary widely, creating many “mountains and forests”. For example, in wireless communication standards, there are Bluetooth, Wi-Fi, ZigBee, PLC, Z-Wave, RF, Thread, Z-Wave, NFC, UWB, LiFi, NB-IoT, LoRa, and so on. It is clear that the lack of unified technical solutions and inconsistent architectures hinder the development of IoT and limit the scope of interoperability.

However, various operating systems can support different hardware, communication standards, and application scenarios. Open source helps break down technical barriers and obstacles, improve interoperability and portability, reduce development costs, and allows developers from the open-source community to participate.

The operating system is a crucial link in IoT, and open source further promotes the openness and development of IoT. Currently, open-source operating systems are widely used in IoT and will play an increasingly important role in the future.

Top Ten Open Source Operating Systems for IoT

The mobile market has seen a dominance of Android and iOS, while in the IoT ecosystem, operating systems also exhibit diversity, and it is not possible for just one or two operating systems to support all IoT devices.

Therefore, today we will focus on introducing the top ten open-source operating systems for IoT. (Microsoft’s Windows 10 for IoT and Apple’s iOS, while powerful, are closed-source and will not be covered in this article.)

1.Android Things

Android Things is the IoT operating system recently launched by Google, an updated version of last year’s “Brillo” operating system, as a branch of the Android system, similar to Android Wear used for wearables and smartwatches (which is also a type of IoT operating system).

Understanding Open Source Operating Systems in IoT

(Image source: Google)

It uses a communication protocol called Weave to connect devices to the cloud and interact with services such as Google Assistant. Android Things is aimed at all Java developers, regardless of whether they have mobile development experience.

This operating system will support a range of IoT devices’ computing platforms, including Intel Edison, NXP’s Pico platform, and the “Raspberry Pi 3”.

2.Contiki

Contiki is an open-source, easily portable multitasking operating system designed for memory-constrained network tasks. The author of the Contiki project is Dr. Adam Dunkels from the Swedish Institute of Computer Science’s network embedded systems group.

Understanding Open Source Operating Systems in IoT

(Image source: contiki-os.org)

This system requires only a few thousand or a few hundred bytes of memory to provide a multitasking operating system environment and TCP/IP support. It has been ported and successfully run on embedded microcontroller platforms (TI MSP430, Atmel AVR) as well as computers, game consoles, and other platforms. It supports standard IPv6 and IPv4 protocols, as well as low-power network standards: 6lowpan, RPL, CoAP.

3.eLinux

Understanding Open Source Operating Systems in IoT

(Image source: elinux.org)

eLinux, also known as Embedded Linux, is an operating system based on the Linux kernel, which is a trimmed version of Linux for embedded systems, supporting a wide range of manufacturers, chips, and products. The wiki homepage of this operating system provides a range of related information about development, hardware, products, manufacturers, and communities.

4.FreeRTOS

FreeRTOS is a tiny real-time operating system kernel with functions including task management, time management, semaphores, message queues, memory management, logging, software timers, and coroutines, which can basically meet the needs of smaller systems.

Understanding Open Source Operating Systems in IoT

(Image source: freertos.org)

FreeRTOS is a fully open-source operating system, featuring open source code, portability, customizability, and flexible scheduling policies. Currently, this operating system is deployed on millions of devices and claims to be the “leading embedded real-time operating system in the market,” providing excellent solutions for microcontrollers and microprocessors.

5.mbed OS

Understanding Open Source Operating Systems in IoT(Image source: https://www.mbed.com/)

This operating system is developed by ARM and is specifically designed for IoT devices running ARM processors. It includes C++ application networks, and the company also provides other development tools and related device servers.

By default, the mbed operating system is an event-driven single-threaded architecture, rather than a multi-threaded (real-time operating system) environment. This ensures that it can scale to the smallest, lowest-cost, and lowest-power IoT devices.

ARM has a strong market share in mobile devices, so this operating system’s capabilities and prospects should not be underestimated.

6.Raspbian

Raspbian is an operating system based on Debian, designed for Raspberry Pi hardware. This operating system includes a series of basic programs and tools to ensure the operation of Raspberry Pi hardware.

Understanding Open Source Operating Systems in IoT

(Image source: http://raspbian.org)

7.RIOT

RIOT calls itself the “friendly IoT operating system,” dedicated to being developer-friendly, resource-friendly, and IoT-friendly. Key features include C/C++ support, multithreading, energy efficiency, and partial compliance with POSIX. The RIOT open-source community has been active since 2008. RIOT can run on a variety of platforms, including embedded devices, PCs, sensors, etc.

Understanding Open Source Operating Systems in IoT

(Image source: http://riot-os.org/)

8.Ubuntu Core

Ubuntu is currently the most popular version of Linux, and Ubuntu Core aims to bring Ubuntu to the IoT world. It can run on platforms such as Microsoft Azure, Google Compute Engine, Amazon Elastic Cloud Computing Services, and can also run on hardware such as BeagleBone Black and Raspberry Pi.

Understanding Open Source Operating Systems in IoT

(Image source: http://developer.ubuntu.com)

9.Huawei LiteOS

Huawei LiteOS is Huawei’s “unified IoT operating system and middleware software platform” designed for the IoT field, featuring lightweight (kernel less than 10k), low power consumption, interoperability, and security. Huawei LiteOS is currently mainly applied in smart home, wearables, vehicle networking, smart metering, and industrial internet IoT fields, and can interconnect with hardware within the LiteOS ecosystem to enhance user experience.

LiteOS features the lowest energy consumption, small size, and fast response, and has established an open-source community, supporting chips such as Hisilicon’s PLC chip HCT3911, media chip 3798M/C, IPCamera chip Hi3516A, and LTE-M chip.

10.Tizen

Tizen is an open-source operating system jointly developed by the Linux Foundation and LiMo Foundation, along with Intel and Samsung Electronics, designed to meet the needs of the IoT device ecosystem (including device manufacturers, mobile operators, application developers, and independent software service providers) and is used in phones, TVs, wearables, and other products.

Understanding Open Source Operating Systems in IoT

(Image source: tizen.org)

The underlying platform-related APIs of Tizen are made available in the form of HTML5, covering services such as communication, multimedia, camera, networking, and social media. Samsung has sold several products featuring this operating system and is its biggest supporter.

Understanding Open Source Operating Systems in IoT

Understanding Open Source Operating Systems in IoT

Previous Popular Articles (click the title to read directly):

  • [Heavyweight] IoT Industry Panorama Report, First Domestic IoT Industry Two-Dimensional Perspective Panorama

  • Interview with Academician Wu Hequan: Four Good News Indicating IoT Development is on the Right Track

  • China’s First Low-Power Wide-Area Network LPWAN Market Report Released: Where is the Next IoT Opportunity? [Text Version]

  • A Cartoon Explains: What is LoRa Behind NB-IoT, Which Everyone is Talking About?

  • A Cartoon Explains: Besides WiFi and Bluetooth, What Else Can the Recently Popular NB-IoT Do?

  • McKinsey’s Heavyweight Report: How Enterprises Can Tap into the Value of “Industry 4.0” (Collection Edition)

Understanding Open Source Operating Systems in IoT

Leave a Comment