India - Flag India

Please confirm your currency selection:

Indian Rupee
Incoterms:FCA (Shipping Point)
Duty, customs fees and taxes are collected at time of delivery.
Payment accepted in Credit cards only

US Dollars
Incoterms:FCA (Shipping Point)
Duty, customs fees and taxes are collected at time of delivery.
All payment options available

Are you sure you want to log out of your MyMouser account?
Bench Talk for Design Engineers

Bench Talk

rss

Bench Talk for Design Engineers | The Official Blog of Mouser Electronics


Linux and IoT M. Tim Jones

Linux began life as a hobbyist operating system (OS) designed for PCs using 80386 processors. But since its introduction in 1991, it has grown into a broadly used OS, running on PCs, servers, mainframes, and Internet of Things (IoT) devices. A majority of the top supercomputers in the world run on Linux.

Linux’s range of support is impressive. From the smallest of devices to the largest mainframes and supercomputers, many run a variation of this popular operating system. The reasons for Linux’s popularity are dependent on the usage; in some cases, it’s the open-source aspect, and in others, it’s the scale of device support and the spectrum of processors and platforms.

Let’s now dig into some of the key reasons for Linux’s popularity in the IoT market.

Linux Architecture

Linux is an open-source operating system that scales from small resource-constrained computers to the largest supercomputer. Its source is portable, meaning it runs on a variety of different processor architectures (Intel®, Arm, IBM PowerPC, etc.). 

Linux features a stack architecture (Figure 1). The top-level of Linux houses the user space where applications reside (along with tools, libraries, shells, etc.). The kernel-space holds the Linux kernel and the device drivers. The Linux kernel provides scheduling, process and memory management, and a core set of features. Device drivers comprise the largest amount of code within the Linux operating system, given the scope of devices that are supported. When building an IoT device or gateway, Linux makes it easy to take advantage of peripherals (network or wireless interfaces, display interfaces, etc.) and to use them within their desired context.

Figure 1: High-Level Stack Architecture of Linux. 

In traditional firmware development, the developer builds code for a target system and then downloads the code to the target for testing. Linux can host all development tools on the target system, making it very easy to develop and test code using Linux.

Linux Security

Security is a key issue in IoT design. Linux provides a secure platform for IoT applications in a number of ways. First, Linux is an open-source operating system, which means defects that could lead to exploits are discovered and fixed quickly (as compared to closed-source operating systems that have fewer eyes scrutinizing them). Second, Linux incorporates many security features; from a security module framework (that supports various security implementations like AppArmor) to in-kernel features that promote security (such as randomization of address space layout).

Linux Distributions for IoT

Linux has become so popular as the software platform for IoT that you can find not one but many Linux distributions to address IoT designs. Table 1 lists the most popular Linux distributions for IoT.

Table 1: Popular Linux Distributions for Linux.

Distribution

Description

AndroidThings

Android-based OS with support for Android APIs and Google services.

Debian Tinker

Debian blend for small devices.

OpenWrt

Linux-based distribution for embedded devices (used primarily in wireless router devices).

Raspbian

Raspbian is a derivative of the Debian Linux operating system that runs on Raspberry Pi hardware (includes over 35K packages).

Tizen

Samsung’s embedded Linux stack that powers much of Samsung’s consumer and IoT devices.

Ubuntu Core

Ubuntu Core is an embedded version of Ubuntu that runs on minimal resource systems (such as Pi).

Yocto

Yocto isn’t itself a distribution, but an open-source project that helps create custom Linux distributions for embedded and IoT devices.

 

Conclusion

Linux is at the heart of the IoT ecosystem, from the smallest of IoT devices, to edge gateways and the cloud. A recent online survey sponsored by the Eclipse IoT Working Group, AGILE IoT, IEEE, and the Open Mobile Alliance found that among IOT developers, approximately 72 percent of respondents used Linux for their IoT devices. Factors such as its open-source operating system, scalability, security features, and a wide range of distributions, make Linux a popular choice for IoT development.

Key Points:

  • Linux powers the IoT ecosystem, from the smallest devices to the most massive supercomputers.
  • Linux offers several distributions to support IoT designs.
  • Linux security features protect IoT devices.


« Back


M. Tim Jones is a veteran embedded firmware architect with over 30 years of architecture and development experience.  Tim is the author of several books and many articles across the spectrum of software and firmware development.  His engineering background ranges from the development of kernels for geosynchronous spacecraft to embedded systems architecture and protocol development. 




Comments are closed.

All Authors

Show More Show More
View Blogs by Date