The web developers also have option to avail NodeOS, a lightweight operating system designed based on Node.js. The project was initially introduced by Jacob Groundwater in 2013. Jacob Groundwater has already made release candidates of NodeOS available to developers for testing and bug detection. Hence, the developers will soon have option to use version 1.0 of NodeOS in production environments. However, it is also important for the developers to understand the key features and technologies that make NodeOS different from other operating systems.
Overview of Key Features of NodeOS
Developed on top of Linux Kernel
The lightweight operating system in designed on top of the Linux kernel. It uses the Linux critical to accomplish a variety of performance critical tasks including hardware interactions. The developers can run the applications written by targeting Linux operating system on NodeOS with minimal changes.
Uses Node.js as Its Primary Runtime
Uses npm as Its Primary Package Manager
NodeOS further aims to extend and enhance the functionality of npm as a robust package manager. As the operating system uses npm as its primary package mangers, the developers can use any npm package as a NodeOS package. Hence, the users have option to use more than 244,180 packages. Also, they can easily avail the new npm packages being updated by other developers on a regular basis.
Different Layers of the Operating System
The core NodeOS is divided into a number of layers including barebones, initramfs, rootfs and usersfs. Each layer has its own structure and file system. Barebones include the custom Linux kernel and initramfs. As the initram file system, initramfs facilitates mounting of users partitions and booting the system and Node.js REPL. At the same time, rootfs includes the read-only partition images require for hosting the Linux kernel and initramfs files, whereas usersfs contains the multi-user file system used by conventional operating systems.
Keeps the System Secure
NodeOS allows each user to work with isolated file systems. Each user can further use a distinct file system hierarchy to install the packages globally. When a hacker accesses the operating system through a specific user account or profile, he will be able to access only the partition of the specific user. He will lack all options to access the partition of other users. Hence, no hacker can completely affect the security of the entire system.
Aims to Run on Many Platforms
The developers of NodeOS aim to make the lightweight operating system run on many devices and platforms. Hence, users will have option to run NodeOS on their personal computers and other real hardware. At the same time, they can also run the operating system on virtual machines, cloud platforms, containers and PaaS providers.