2. Design Goals

RT-Xen is based on two core principles:

(1) Design for scheduling guarantee, not latency reduction. The system must guarantee the real-time scheduling property, but not necessarily I/O-related latency.

(2) Design for RTOS (Real-time OS) support, not GPOS (General-purpose OS) support. The system must incorporate RTOS which supports hard real-time, but it does not guarantee RT for GPOS with RT extension.

From the first principle, we are not seeking the complete solution for all real-time problems. However, RT-Xen provide a solid foundation for real-time scheduling in a virtual machine system. From the second principle, we focus on hard real-time system's problems, rather than soft real-time support. Some GPOSs with RT extension try to achieve real-time performance using their best-effort strategy, but they are not based on thorough scheduling theoretical foundation. Consequently, it is very difficult to guarantee the real-time scheduling properties over such OSs. We believe that guest OS has a sound scheduling behavior, and doesn't need to be analyzed anymore.

The practical impact of these principle is substantial, both positively and negatively. On positive side, it allows us to define an architecture with the minimal engineering cost. We focus on scheduling problems, and it simply guarantees the real-time performance for every task in RTOS. On negative side, our solution does not guarantee all real-time problems especially on I/O related latency issues. As examples, consider a RT task that periodically performs disk read and write. RT-Xen can guarantee to schedule the task to run disk read or write, but does not guarantees whether the I/O has been finished or not.

There are several alternative architectures to support real-time guests. Like others, our design reflects tradeoffs among performance, compatibility, complexity and completeness. Section 3.6 describes our current limitations. Some limitations are architectural, while others are induced by the current implementation. Despite these limitations, we provide a solid scheduling foundation for virtual machine system,which has a considerable implication and value.

2.1 Goals

Given the preceding principles, the RT-Xen seeks to achieve three major goals:

(1) Real-time performance. The architecture must guarantee real-time performance for all tasks in RT guest. Namely, it must guarantee the physical deadlines of all the tasks in real-time guest OS.

(2) Performance isolation. It should not affect any harmful performance degradation to other guest VMs, and the performance should be analyzable in predictable way.

(3) Equivalent timing. Although the physical time flow is different from that of the virtual time, the real-time property should be preserved in terms of physical time.