NEWS, EVENTS & BLOG
Operating Systems for Embedded Applications
Press Office, VersaLogic Corporation, 06/16/21
The OS and associated hardware drivers normally sit directly on top of the computer hardware. Specific applications may interact directly with the OS or may do so via an application programing interface (API) as shown in the diagram below.
Knowing what an OS does and where it fits, let’s turn our attention to the various types of OS.
Operating System Types
Broadly speaking operating systems fall into three categories: general purpose, real time (RTOS), and server-focused.
- General Purpose:
This is the type of OS that can run on a desktop machine or an industrial embedded SBC that is operating as a single machine. It is not designed to manage a system that is configured as a number of virtual machines (VM).
As with many VersaLogic x86 SBCs, the Lion is compatible with Windows, Linux, VxWorks and QNX
Although it is managed as a single machine, general purpose OSs are often used with multicore processors. The OS will manage an application so that it can run across the multiple CPU cores and will balance the workload by moving tasks between processors when needed. Windows and various Linux-based distributions such as Red Hat Enterprise Linux (RHEL), CentOS, and Ubuntu are examples of this type of OS. Android, based on a modified version of the Linux kernel, is another example.
The Swordtail, along with other VersaLogic Arm-based SBCs, is compatible with Linux and Android
- Real Time OS (RTOS):
There are some applications that are very time-critical. That is, they are sensitive to certain I/O signals responding within a very small window. Depending on how time-sensitive the application is, an RTOS may be needed.Unlike a general purpose OS, an RTOS is designed to prioritize I/O processing and respond within a known period of time. It may also provide pre-emptive task scheduling that the application programmer can control. This supports fast response to time-critical events. VersaLogic partners with Wind River Systems whose VxWorks is an example of an RTOS.
A version of the Fox running VxWorks is used in a time-critical defense system
- Server Operating Systems:
Servers, whether deployed in a data center or in a harsh edge environment, present some special OS requirements. These additional requirements might include some or all of the following:
- Out of band management capability
- More restrictive security settings
- Enabling of hybrid cloud-edge operations
- File server capability
Windows Server is an example of a server OS.
Closely allied with operating systems is a form of software called a hypervisor. This runs on a single host computer and creates a number of virtual machines (VM). It permits multiple instances of the same or different operating systems to run concurrently, each hosting its own set of application programs.
The ability to run several virtual machines on a single host computer has several advantages which can be particularly important in an edge deployment situation, including:
- Reduced space requirements.
- Energy savings and associated heat generation reduction
- Reduced maintenance requirements
There are two types of hypervisor: Type 1 bare metal and Type 2 hosted hypervisor. As its name suggests, a bare metal hypervisor runs directly on the host computer hardware whereas a hosted hypervisor runs on top of a host OS.
Type 1 vs. Type 2 Hypervisors
Bare metal hypervisors ensure that problems with one VM or Guest OS do not affect other VMs and associated operating systems. Hosted Hypervisors may allow for better specification of policies, but at the cost of a problem with the host OS affecting all virtual machines. VMware’s ESXi is an example of a bare metal hypervisor. VMware Workstation Pro is a hosted hypervisor that runs on top of Windows or Linux.
The Grizzly is a 16 core rugged edge server that runs both Windows Server2019 and VMware ESXi
VMware Inc. has resources that provide more information on hypervisors.
Pre-Installation of Operating Systems
Many industrial embedded computers users prefer to install the OS themselves when doing development work, but this is usually impractical in production environments due to the installation time. Pre-installation of an OS is just one of the service options available under VersaLogic’s Modified Commercial Off The Shelf (MCOTS) program.
An MCOTS version of the Raven is supplied with a Windows 10 Pro pre-installed on an mSATA card
For more information, VersaLogic’s Operating System Compatibility Chart shows which SBCs have been tested or verified with a given OS. However, new OS and SBC combinations are being checked constantly. To learn more about VersaLogic’s range of embedded products and OS compatibilities, let’s start a conversation.