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…
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.
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
An Entrepreneur, an Opensource Enthusiast and Researcher in the domain of Embedded Systems, Wireless and IoT – Has over 16+ years of experience in managing and contributing enterprise Research Projects, in Embedded Systems, Software Technologies, Product Conceptualizations and development, Telecommunication, Media and Entertainment and Consumer Electronics.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress