Designers usually add a second computer as a dedicated real-time component to balance the flexibility of Windows with the deterministic requirements of embedded applications. However, this "dual-computer dual-OS" solution can add substantial cost of goods, manufacturing complexity, and system-to-system coordination issues.
A "single-computer dual-OS" system, where one CPU hosts both the Windows XP Embedded system and the real-time OS (RTOS), significantly reduces the cost of goods and complexity, and simplifies the coordination of Windows with real-time processes. It can also reduce design costs, measured in the time and effort spent on engineering tools and staff.
Fischer notes, "by running the real-time operating system in one of the virtual machines, the 'dual-computer dual-OS' architecture is converted into a 'single-computer dual-OS' solution."
TenAsys' INtime RTOS running in a virtual machine alongside Windows XP Embedded achieves the single-computer dual-OS solution. The INtime RTOS virtual machine makes it possible to extend Windows applications into the real-time domain by providing a separate hard real-time virtual machine on which the real-time components of an application reside.
"A complete real-time Windows application consists of both non-real-time Windows processes and threads, and real-time processes and threads," explains Fischer. "Real-time processes typically handle time-critical data acquisition and control, while non-real-time processes handle the human interface, network communications, and data storage."