Software Virtualization

Not All Virtualization Approaches are Suitable for Embedded Systems

Seite: 2/2

Anbieter zum Thema

This process, however, is difficult because it affects many parts of the OS and requires a substantial amount of verification effort to ensure that it works properly. For this reason, only a few OSes have been supported by this technique. A notable example is TenAsys’ INtime for Windows, which has been used to add real-time determinism to Windows-based systems for more than a decade.

Hardware support allows for easier virtualiziation

Now that some new processors contain hardware support for some of these memory relocation tasks, the job of implementing virtualized embedded systems has become much easier. For example, hardware-assisted virtualization features such as Intel’s VT-x architecture extensions, do away with the complexity of software memory relocation by providing hardware address translators built into the chipset that ensure that any memory address issued by a guest OS (either the RTOS or GPOS) is automatically adjusted by a load-offset.

Likewise, Intel’s hardware assisted virtualization feature called VT-d automatically adjusts the memory accesses generated by I/O devices according to the load-offset of the guest. (Note: Some processors support VT-x but don’t support VT-d. In those cases, paravirtualization techniques must still be used).

Another instance where paravirtualization has to be implemented is the re-routing of interrupts serviced by the Guest OS. These need to be altered by the VMM at load time according to rules setup by the user prior to load time.

The ideal embedded virtualization solution allows the hosting of guest operating systems without modification. For example, users of Microsoft Windows software should be able to work with an off-the-shelf copy of Windows that runs directly on the platform (bare-metal), supporting all of the latest devices and drivers that Windows employs. Likewise, since such as system also requires no modifications to the guest RTOS and its applications, legacy real-time software will also run on the new platform without modification.

A real-world example on embedded virtualization

TenAsys' embedded virtualization manager, eVM for Windows, is an example of such a solution to the embedded virtualization problem. Unlike multi-OS solutions that implement paravirtualization schemes, eVM for Windows does not require that any software modifications be made to guest operating systems, drivers, or application code. This avoids costly and risky modifications or rewrites, minimizes support costs and reduces the risk of system reliability problems.

Software services supplied by eVM for Windows run in hard real-time, allowing the guest OS to retain its native execution characteristics. In addition, there is no virtualization of Windows and hardware virtualization detracting from performance or functionality.

TenAsys has provided eVM for Windows with virtual communication channels, including a virtualized Ethernet interface, that enable the real-time and Windows applications to communicate, while an interactive eVM Device Manager controls the passing of resources, including real-time interfaces, from Windows to the RTOS.

eVM for Windows is as easy to install as a standard Windows application. All of the necessary installation/integration tools are included, including a Windows-based eVM control panel that can be used to assign interrupts, allocate I/O devices, and set up disk boot images. Using the control panel screen, multiple RTOS guest configurations can be set up and the RTOS guest can be started and stopped.

eVM for Windows has been tested and proven to work with many different RTOSes alongside Windows in the same system, including QNX, VxWorks, Linux, WindowsCE and T-Kernel (iTRON).

The advent of software virtualization technology presents new opportunities for system developers to reduce cost and improve performance by moving from a two-box system to a one-box system. While not all virtualization approaches work for embedded systems, new embedded virtual machine managers that leverage hardware support provided in new processors are making the task of building virtualized embedded systems a reality. With these systems which combine RTOS and GPOS, it’s now possible to support high-performance real-time and non-real-time applications simultaneously on the same system.

* *Kim Hartman... is VP of Sales & Marketing and Andreas Knape is Field Marketing Representative at TenAsys

Artikelfiles und Artikellinks

(ID:23993490)