Building mixed-criticality infrastructure is a challenging task—especially when considering the diverse backgrounds of enterprise and operational technology stakeholders.
Solutions such as Wind River’s Helix Virtualization Platform simplify matters by enabling functional safety code and cloud-native applications to coexist (Figure 1).
“The Helix Virtualization Platform uses a hypervisor that was designed from the ground up to support not only embedded real-time applications, but also those needing to undergo safety certification,” said Paul Parkinson, Field Engineering Director at Wind River.
“[This] embedded virtualization platform is not only efficient and scalable, but also able to support mixed-criticality systems running on the same processor with multiple levels of safety.” Supported configurations include:
- Static Configuration for highly regulated, deterministic applications
- Dynamic Configuration for deployments that combine multiple uncertified workloads
- Mixed Criticality Configuration for a combination of both static and dynamic workloads
“Static configuration is used for systems containing at least one safety-critical application. The resources are allocated at system configuration and build time, and are utilized in a predictable and deterministic manner at runtime,” Parkinson explains.
“Dynamic configuration provides an alternative approach that can be used in systems requiring greater flexibility at runtime, including the ability to change the number and configuration of applications, and the resources allocated to the applications,” he adds. “This approach can be used to dynamically change system configuration and runtime operation in response to the external environment or mode of operation.”
The Type 1 Wind River Hypervisor at the root of the Helix Virtualization Platform can be certified to standards such as DO-178C for avionics, ISO/IEC-61508 SIL 3 for functional safety, and ISO 26262 for automotive.
Meanwhile, the Helix Virtualization Platform supports virtually any operating system (OS), including Wind River VxWorks, Wind River Linux, open-source Linux, Microsoft Windows, roll-your-own OSs, unmodified guest OSs, and even bare-metal code.
As a result, embedded engineers can maintain functional safety software in a deterministic partition, while enterprise developers are able to deploy cloud-native applications in another—all on the same hardware.
Under the Hood
A solution like the Wind River Helix Virtualization Platform depends, of course, on hardware that can be virtualized. While multicore processors are common in today’s world, having a compute platform that natively supports virtualization is crucial. Otherwise, modifications to guest OSs may be required to ensure it has access to system resources, even with a hypervisor running on a multicore processor.
Various flavors of virtualization technology from Intel® assist with this abstraction, helping maximize portability while maintaining safety and security:
- Intel® Virtualization Technology (Intel® VT-x) provides instruction set virtualization so that guest OSs can be migrated seamlessly into different virtual partitions.
- Intel® Virtualization Technology for Directed I/O (Intel® VT-d) regulates direct memory access (DMA) requests by guest OSs. This provides access to device drivers running in a partition. It also prevents illegal or unauthorized transfers.
Another feature of Intel processors that supports virtualized edge environments is extended page tables (EPTs). These optimize how the virtual addresses of a guest OS are translated to the physical addresses of the host OS. Because this translation uses less overhead and occurs more quickly, guest OSs can access resources faster and run more efficiently.
These features are available on select Intel processors, providing a scalable deployment infrastructure for Helix Virtualization Platform users.
An IoT Edge Environment for All
At first glance, the concept of cloud-native development at the edge can be troubling to industrial engineers and enterprise developers alike. After all, the architecture, which began in the data center, probably triggers thoughts of remote desktops in the minds of embedded developers. For IT developers, applying enterprise development practices to a foreign environment like the IoT edge probably makes them squeamish.
But the ROI of mixed-criticality systems is clear, as it can drastically reduce total cost of ownership (TCO) while enabling new products and services in existing applications. And when looked at through the lens of solutions like the Wind River Helix Virtualization Platform, it also benefits both IT and OT designers:
- Industrial engineers can retain their existing firmware and application code as is by running it in a separate, isolated virtual machine (VM). Despite the addition of enterprise functionality to the system, there is no need to rework code that has been performing well for years.
- Enterprise engineers can likewise proceed as normal by leveraging VMs of their own. This means cloud-native application development practices can continue without worries about broader system implications.
With off-the-shelf hardware and software solutions capable of satisfying the requirements of both domains, now is the time to accelerate the evolution of your IoT edge infrastructure.