evm Virtualization Platform for Windows



Similar documents
TenAsys Real-time Hypervisor

Applying Multi-core and Virtualization to Industrial and Safety-Related Applications

Reducing Cost and Complexity with Industrial System Consolidation

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

Introduction to the NI Real-Time Hypervisor

Virtualization for Cloud Computing

Virtualization. Dr. Yingwu Zhu

Intel Virtualization Technology (VT) in Converged Application Platforms

Virtualization: Hypervisors for Embedded and Safe Systems. Hanspeter Vogel Triadem Solutions AG

Virtualization. Jukka K. Nurminen

Virtualization. Pradipta De

Embedded Virtualization & Cyber Security for Industrial Automation HyperSecured PC-based Control and Operation

print close Building Blocks

COS 318: Operating Systems. Virtual Machine Monitors

Solution Recipe: Improve PC Security and Reliability with Intel Virtualization Technology

Parallels Virtuozzo Containers

Virtual Machine Monitors. Dr. Marc E. Fiuczynski Research Scholar Princeton University

Full and Para Virtualization

WHITE PAPER Mainstreaming Server Virtualization: The Intel Approach

COM 444 Cloud Computing

Jukka Ylitalo Tik TKK, April 24, 2006

Achieving Real-Time Performance on a Virtualized Industrial Control Platform

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

Virtualization. Explain how today s virtualization movement is actually a reinvention

Virtualization for Hard Real-Time Applications Partition where you can Virtualize where you have to

VMware Server 2.0 Essentials. Virtualization Deployment and Management

Intel Virtualization Technology

Outline. Outline. Why virtualization? Why not virtualize? Today s data center. Cloud computing. Virtual resource pool

The Benefits of Virtualizing Citrix XenApp with Citrix XenServer

IBM Communications Server for Linux - Network Optimization for On Demand business

International Journal of Advancements in Research & Technology, Volume 1, Issue6, November ISSN

Chapter 5 Cloud Resource Virtualization

Virtualization in a Carrier Grade Environment

Virtualization and the U2 Databases

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

OPTIMIZING SERVER VIRTUALIZATION

GUEST OPERATING SYSTEM BASED PERFORMANCE COMPARISON OF VMWARE AND XEN HYPERVISOR

The Advantages of Multi-Port Network Adapters in an SWsoft Virtual Environment

A Superior Hardware Platform for Server Virtualization

Virtualization. Types of Interfaces

Hypervisors and Virtual Machines

The Microsoft Windows Hypervisor High Level Architecture

Introduction to Virtual Machines

Enhanced Virtualization on Intel Architecturebased

12. Introduction to Virtual Machines

Virtualization Technologies

Leveraging Virtualization in Aerospace & Defense Applications

Protecting Virtual Servers with Acronis True Image

Four Keys to Successful Multicore Optimization for Machine Vision. White Paper

Chapter 14 Virtual Machines

Eight Ways to Increase GPIB System Performance

TOP TEN CONSIDERATIONS

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

An Esri White Paper January 2010 ArcGIS Server and Virtualization

Building Docker Cloud Services with Virtuozzo

Multi-core Programming System Overview

Virtual Machines. COMP 3361: Operating Systems I Winter

Virtual Machines.

9/26/2011. What is Virtualization? What are the different types of virtualization.

EECatalog SPECIAL FEATURE

Cloud Computing CS

Developing a dynamic, real-time IT infrastructure with Red Hat integrated virtualization

Windows Server Virtualization An Overview

Parallels Virtuozzo Containers

Nested Virtualization

Networking for Caribbean Development

Chapter 1: Introduction. What is an Operating System?

Distributed and Cloud Computing

nanohub.org An Overview of Virtualization Techniques

COS 318: Operating Systems. Virtual Machine Monitors

Intel Embedded Virtualization Manager

WIND RIVER HYPERVISOR

What is virtualization

Parallels Virtuozzo Containers vs. VMware Virtual Infrastructure:

Lecture 2 Cloud Computing & Virtualization. Cloud Application Development (SE808, School of Software, Sun Yat-Sen University) Yabo (Arber) Xu

Hybrid Virtualization The Next Generation of XenLinux

Understanding Full Virtualization, Paravirtualization, and Hardware Assist. Introduction...1 Overview of x86 Virtualization...2 CPU Virtualization...

Intel Virtualization Technology FlexMigration Application Note

Hypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:

Virtual machines and operating systems

Virtualization and Other Tricks.

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

Basics of Virtualisation

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

IOS110. Virtualization 5/27/2014 1

How To Understand The Power Of A Virtual Machine Monitor (Vm) In A Linux Computer System (Or A Virtualized Computer)

Special FEATURE. By Heinrich Munz

Fault Tolerant Servers: The Choice for Continuous Availability on Microsoft Windows Server Platform

Fastboot Techniques for x86 Architectures. Marcus Bortel Field Application Engineer QNX Software Systems

Red Hat VDI. David Simmons

Developing an Enterprise Client Virtualization Strategy

Protecting Virtual Servers with Acronis True Image Echo

Virtualization Overview

System Virtual Machines

Operating Systems 4 th Class

What are the limits of traditional desktop virtualization? BLACK BOX

Virtualization in Linux KVM + QEMU

Virtualization. P. A. Wilsey. The text highlighted in green in these slides contain external hyperlinks. 1 / 16

KVM KERNEL BASED VIRTUAL MACHINE

Transcription:

B A C K G R O U N D E R evm Virtualization Platform for Windows Host your Embedded OS and Windows on a Single Hardware Platform using Intel Virtualization Technology April, 2008 TenAsys Corporation 1400 NW Compton Drive, #301 Beaverton, OR 97006 USA +1 503 748-4720 fax +1 503 748-4730 info@tenasys.com www.tenasys.com Copyright 2008, TenAsys Corp. TENASYS, INTIME, and IRMX are registered trademarks of TenAsys Corp. 080409 EVM is a trademark of TenAsys. Other trademarks and brand names are the property of their respective owners.

Executive Summary Starting from scratch is a luxury most embedded projects cannot afford. Development schedules are short, feature requirements are many, and the complexity of embedded systems continues to grow. Solutions built on a base of proven software are often the fastest and most reliable road to success. But how does a developer add features to existing realtime software, code built from years of effort in refinement and testing, without disturbing the underlying reliability and performance of that embedded software? Embedded virtualization manager provides the solution The TenAsys evm platform, an embedded virtual machine manager, built on Intel Virtualization Technology (Intel VT), hosts your legacy application and OS in an embedded virtual machine while simultaneously supporting the Microsoft Windows OS, on a single multi-core PC-compatible platform. By running embedded guests on dedicated CPU cores, the evm system provides a means to easily migrate from outdated hardware to modern embedded platforms. To ease the transition, legacy I/O can be emulated, in order to minimize rewriting proven software. For example, an obsolete ISA system can be migrated to a smaller and less expensive singleboard computer by redirecting access to ISA peripherals to equivalent on-board PCI devices. The evm platform accommodates your hardware (access to I/O) and timing (interrupt latency) needs by giving the embedded guest direct access to time-critical hardware. This is done by assigning I/O exclusively to each guest OS accommodating the use of existing native device drivers. The notion of assigning I/O exclusively to a virtual machine is essential to guaranteeing real-time responsiveness. Multi-core Intel VT processors support real-time virtualization By utilizing multi-core Intel VT processors to host your embedded guest alongside Microsoft Windows, evm software is able to partition resources, such as CPU cores, RAM, interrupts, and I/O, between multiple operating systems. Only shared and emulated resources need to be virtualized. Every operating system running on the platform has direct and full-speed access to its dedicated physical I/O, interrupts, RAM, and CPU cycles. Low interrupt latency, direct access to specialized and critical I/O, and guaranteed ownership of a CPU core deliver near native performance to embedded guests using the TenAsys evm solution without compromising the performance and features of Windows and its applications. Partitioning resources insures that only the authorized OS will have access to its timecritical I/O. For example, the evm system can insure that the main operator display is only accessible to Windows and that a fieldbus interface is only accessible to the guest RTOS. Consolidation reduces cost and increases performance The net gains for hosting your embedded application on the evm platform, alongside Windows, is the elimination of redundant computer and communication hardware, simpler and faster communication and coordination between embedded guests and Windows, improved reliability and robustness, re-use of proven application code, and simplified development and debugging. Systems that previously required multiple discrete computing platforms can be combined onto a single hardware platform at near native performance levels saving significant design, manufacturing, and maintenance costs. page 2 of 6 Copyright 2008, TenAsys Corporation www.tenasys.com April, 2008

Virtualization for the Embedded IA Platform Developers across the wide spectrum of embedded computing applications can benefit from the latest advances in multi-core processor technology. Intel Architecture (IA) processors with multiple CPU cores offer a solution to the need for combining new features with legacy code, and for combining multiple operating environments on a single system. By exploiting Intel Virtualization Technology (Intel VT), a highly-integrated system can be constructed from the combination of an embedded or real-time operating system (RTOS) and a generalpurpose OS (GPOS), such as Windows, each running on separate cores. Embedded virtualization manager enables the solution Building such a system requires a unique class of virtualization management software. The TenAsys evm platform is such a system and has been designed to host multiple operating systems without compromising performance or determinism. This is done by assigning critical I/O and CPU resources exclusively to a designated guest OS; in other words, by partitioning resources and virtualizing only those devices that are shared between guest operating systems or must be emulated, such as legacy I/O devices. By giving each guest OS direct access to its time-critical hardware and dedicated CPU core(s), the TenAsys evm solution is able to accommodate the hardware (access to I/O) and timing (interrupt latency and execution speed) needs of both an RTOS and a GPOS on a single hardware platform. This notion of assigning I/O and CPU resources exclusively to a virtual machine is essential to guaranteeing real-time responsiveness. Hosting an RTOS in a virtual machine is quite different from executing a real-time thread scheduler, in the form of a device driver or subsystem, inside the Windows kernel. Device drivers and subsystem solutions lack the context to apply Intel VT for the isolation, protection, and independence of operation needed between your embedded OS and the Windows operating system. Conventional VMM shortcomings Historically, virtual machine management (VMM) software has emulated an entire machine, providing a general-purpose set of I/O devices that are adequate for many server and desktop applications, at the expense of special-purpose I/O devices that may be unique to your embedded application. The general-purpose VMM handles all I/O transactions on the guest s behalf. Server VMM products are targeted at solving corporate IT network problems: they maximize the use of server resources and simplify the deployment and maintenance of hundreds of client desktops. The evm partitioning technique succeeds in a real-time embedded environment where the general-purpose server VMMs simply does not work. Like a general-purpose OS, such as Windows or Linux, a general-purpose VMM must share I/O resources among the virtual machines and, therefore, is not capable of supporting the deterministic scheduling and dedicated I/O requirements of real-time applications and their embedded operating systems. Exclusivity for real-time To maintain the determinism of a guest RTOS in a virtual machine environment, the TenAsys evm platform distinguishes between resources that can be multiplexed and those that are exclusive to an OS. For example, devices like a console, disk, and an enterprise Ethernet interface might be shared among all hosted operating systems. However, hardware that is specific to a control application, such as a video capture card or fieldbus interface Copyright 2008, TenAsys Corporation www.tenasys.com April, 2008 page 3 of 6

cannot be multiplexed between operating systems. Such specialized I/O needs to be dedicated to its embedded virtual machine, so the embedded guest OS and application using that I/O can maintain determinism and control. The TenAsys evm platform leverages Intel Virtual Technology to partition processor resources between guest operating systems. Similar arguments can be made regarding access to RAM. In a conventional VMM some or all of the memory in each virtual machine may be swapped to disk. An RTOS, and all of its real-time applications, can never be paged out. The TenAsys evm platform guarantees that each embedded OS is locked into dedicated physical RAM, with a dedicated CPU core, and is never swapped to disk. This is the only way to insure that every real-time event is serviced consistently and deterministically. Exclusivity for performance Exclusive access to hardware resources doesn t apply only to an embedded guest OS. Graphics intensive Windows applications and video drivers, for example, need access to real hardware to maximize functionality and performance. A virtual frame buffer is too slow and inadequate in its feature set to render complex 3D moving images; such applications require direct access to the frame buffer and its control I/O. The TenAsys evm virtualization platform provides Windows with direct access to all resources allocated to its device drivers and applications Windows runs unmodified, at full speed, without loss of features or access to real hardware. Dedicating the physical video frame buffer and respective control I/O to the Windows virtual machine guarantees optimum video features and performance for Windows applications and drivers. To accommodate the lack of a frame buffer for the embedded OS, a virtual serial console is included as part of the embedded guest virtual machine where the output is redirected to a standard Windows console, or text box. Intel Virtualization Technology Until the introduction of Intel Virtualization Technology (Intel VT) as part of the Intel Core microarchitecture, a software-only VMM had to overcome some significant challenges. Both the VMM and each guest OS expect to maintain supervisor-level control page 4 of 6 Copyright 2008, TenAsys Corporation www.tenasys.com April, 2008

over the hardware platform. Absent some form of cooperation between the VMM and each guest OS (usually referred to as para-virtualization), the VMM must resort to trickery. Supervisor-level control can be reliably maintained by only one entity, resulting in a conflict between the VMM and a guest OS. The tricks a VMM must use, without Intel VT, can include modifying the guest OS binary code and running each guest operating system at a ring levels for which they were not written. The downside to VMM trickery is a decrease in performance and limited guest OS compatibility. For example, binary files of a guest OS might be modified to trap supervisorlevel CPU instructions, requiring the VMM to emulate these instructions. Instruction emulation slows down the execution speed of the guest OS, and the need to fix up binary files limits your guest OS options to those that have been certified for use with the VMM. Likewise, problems exist in the area of address translation and interrupt masking where, again, pure software solutions invariably result in performance overhead that cannot be tolerated by many real-time and embedded applications. Intel Virtualization Technology is designed to overcome the problems described above. In those processors that include Intel VT an overarching operating-mode has been added, called VMX root, where the TenAsys evm software executes. evm software intercepts key operations executed by a guest OS without requiring a priori knowledge of the guest OS binaries or internal operational techniques. Intel VT also provides evm software with the means to implement virtual interrupts, essential for partitioning hardware resources. Intel Core microarchitecture processors, such as the Core 2 Duo, include multiple CPU cores on a single silicon die. (Image courtesy of Intel Corporation) Application Scenarios Intel multi-core processors combine the benefits of multiple execution cores on a single silicon die. The multi-core architecture delivers significantly greater performance at far lower heat dissipation than equivalent performance single-core processors. These gains are of particular benefit to applications requiring high performance in a small embedded form factor. Unlike the application of a conventional VMM to an IT server platform, the TenAsys evm platform is best suited for control and data acquisition applications that require determinism, performance, and security and would also benefit from the use of a generalpurpose operating system, such as Windows or Linux. Legacy RTOS support Many valuable and useful systems exist today that depend on embedded code written years ago. These legacy applications are in use because they work; they are proven, they are reliable, and they may even be certified for a specific application (e.g., medical, defense and aerospace). Unfortunately, these legacy applications may also be running on outdated expensive hardware, or be in need of a critical update, such as a modernized user interface or a requirement to be accessible over an enterprise network. Rewriting proven and/or certified applications is rarely desirable or economical. Copyright 2008, TenAsys Corporation www.tenasys.com April, 2008 page 5 of 6

The effort to migrate to new hardware or enhance existing embedded applications can be significantly reduced by hosting your legacy OS and its real-time application(s) on the TenAsys evm platform. Legacy I/O can be virtualized, to ease the migration from outdated hardware to a modern more cost-effective platform. Inter-process communication, facilitated by the evm system, can be used to augment system functionality with Microsoft Windows or another operating system. Usage examples Consider a manufacturer of machine tools that has spent over ten years developing real-time machine control software on QNX. Many of the original engineers that developed the software are no longer employed by the company. The machine tool manufacturer wants to upgrade the user interface by adding Windows, without risking changes to the real-time control software. The solution is to run the existing QNX software on one core of a multicore processor and implement the new user interface functionality on the remaining core(s). The evm system, in this case, partitions I/O, memory, and other resources to insure that only the machine control software has direct access to the motion control hardware and that it operates on a dedicated CPU core. This insures a separation between the RTOS and Windows, thereby protecting the timing loops managed by the real-time software from being violated by operations performed by the new Windows user interface software. A manufacturer of a robotic material handling system wants to lower the cost of their product built on multiple hardware computing platforms: an industrial PC running Windows and two custom PowerPC boards running vision and motion control software on the VxWorks RTOS. The vision and motion software use a library that is also available for Intel Architecture (x86) processors, and are recompiled to run as VxWorks tasks on dedicated cores of an IA quad-core processor, while the Windows-based operator interface runs on the remaining cores of the same processor board. What was previously an expensive, loosely coupled system of multiple discrete hardware boards is now a single, cost-effective, and highly integrated hardware platform. Conclusion The net gains from the application of the TenAsys evm virtualization platform on embedded Intel multi-core processor platforms are the elimination of redundant computer and communication hardware, faster communication and coordination between embedded OS and Windows subsystems, near native performance levels, improved reliability and robustness, re-use of proven code, and simplified development and debugging. Systems that previously required multiple discrete computing platforms can be combined onto a single hardware platform, saving costs in design, manufacturing, and maintenance. Multi-core processors can easily support multiple operating systems and high-performance, low-latency, real-time applications by dedicating a CPU core to the RTOS. The CPU instruction cycles of the RTOS core are available exclusively for use by the real-time applications. Contention for key resources, such as CPU cycles, pipelines, and the FPU, are avoided. TenAsys evm software uses Intel Virtualization Technology to eliminate resource contention by isolating and dedicating I/O devices for exclusive use by their respective guest OS. Hardware that can be shared, like keyboard, mouse, and enterprise network interfaces, are presented as virtual devices for use by all operating systems. page 6 of 6 Copyright 2008, TenAsys Corporation www.tenasys.com April, 2008