The Case for Running Chromium OS on IoT Devices

The concept of Chromium OS for IoT was presented by Linaro Veteran Khasim Syed Mohammed at Linaro Connect 2019,  In his presentation, he talked about the possibilities and advantages of using Chromium OS for IoT devices. This approach looks promising since it’s running on a Linux Kernel base, and Chromium OS uses a lightweight graphics stack that relies on Linux DRM APIs. This may help to create an IoT device with a graphics interface, without consuming too many hardware resources.

Why Chromium OS

From the architecture front, chromium OS has impressive advantages compared to other lightweight Linux operating systems, such as Direct Rendering Manager, support for web-based applications, etc…

Chromium OS

Graphics Stack

In  Linux-based operating systems, most of the time the graphics/display stack is handled by the X-Window system (Xserver and clients). This increases the complexity of development, consumes a large number of hardware resources and increases the product development life cycle.  So to have a very basic GUI for an IoT device,  I always prefer to utilize the frame-buffer capabilities of video hardware. Chromium OS helps us to do it in a much easier way, and as a result, the Chromium OS approach will help to design a product with a small and beautiful display, which consumes less power, CPU, and RAM. As Khasim mentioned in his slide, it will also offer various  UI capabilities such as – Rich UI experience, Multi Window graphics, and improved touch and stylus experience.

Peripherals Support, and Network/Wireless Connectivity

Chromium OS network stack supports wired and wireless LAN, Bluetooth by using newblue, USB and NFC. The beauty of the chromium stack is that we can easily interact with these devices through a web application, which increases the flexibility and easiness of the developer.

Security

From the architecture stand-point, Chromium OS is a well secured operating system. This been achieved through operating system hardening, process isolation (sandboxing) and web-security improvements for web-apps, secure auto-update, verified boot, encryption and intuitive account management.  So in case any vulnerability is found, an update and reboot will take the system to its last good state.

Chromium OS IoT Device

Application Development

Since Chromium OS supports web-based applications, apps can easily be developed using standard web development stacks – HTML, CSS, and JavaScript or by using PWA (Progressive Web) tool kits that also allow the developer to store data locally or push to a remote location (Cloud). For local storage, Chromium OS supports either database (SQLite), Keystore (LevelDB) or standard file systems.

References

Support CNX Software - Donate via PayPal or become a Patron on Patreon

Leave a Reply

avatar
  Subscribe  
Notify of