CPS-Xen: A Virtual Execution Environment for Cyber-Physical Applications
The range of applications for virtualization technology grows continually. The possibility of workload consolidation, the facilitated system administration, the fault-tolerance properties and cost reduction are what renders this technique so interesting. Thus, it stands to reason to expand its field of application to the domain of Cyber-Physical Systems (CPSs). Unfortunately, the integration of multiple CPS on a single server by means of virtualization is not a straightforward task. In this domain, real-time constraints of critical tasks have to be satisfied, in order to avoid damage or even a catastrophe, and virtualization was initially not designed to cope with such requirements. In this article we present CPS-Xen, a platform for executing virtualized safety-critical CPS applications. CPS-Xen is based upon the Xen-Hypervisor - a popular open-source Virtual Machine Monitor (VMM). We extend the VMM with a real-time scheduler implementing the rate-monotonic (RM) scheduling policy and show that optimizing the VMM-scheduler alone is not enough, as the I/O-scheduling introduces delays and priority inversion in the scheduling of the VMs. In order to solve this issue, we propose an architecture that synergizes the work of both schedulers. Finally, throughout an extensive set of experiments the proposed architecture is shown to fulfill – even under high CPU load and up to 36 concurrent VMs – the hard real-time requirements of CPS applications.
KeywordsVirtualization Cyber-physical systems Power systems Real-time systems
Unable to display preview. Download preview PDF.
- 2.Govindan, S., Nath, A.R., Das, A., Urgaonkar, B., Sivasubramaniam, A.: Xen and co.: communication-aware cpu scheduling for consolidated xen-based hosting platforms. In: VEE 2007. ACM, New York (2007)Google Scholar
- 3.IEC TC57: Iec 61850: Communication networks and systems for power utility automationGoogle Scholar
- 4.Ingram, D.M., Schaub, P., Taylor, R.R., Campbell, D.A.: Network Interactions and Performance of a Multifunction IEC 61850 Process Bus. IEEE Transactions on Industrial Electronics (September 2012)Google Scholar
- 6.Masrur, A., Pfeuffer, T., Geier, M., Drössler, S., Chakraborty, S.: Designing vm schedulers for embedded real-time applications. In: CODES+ISSS, pp. 29–38. ACM, New York (2011)Google Scholar
- 7.Paoloni, G.: How to benchmark code execution times on intel ia-32 and ia-64 instruction set architectures (2010)Google Scholar
- 8.Salim, J.H., Olsson, R., Kuznetsov, A.: Beyond softnet. In: Proceedings of the 5th Annual Linux Showcase & Conference, ALS 2001, vol 5. USENIX Association, Berkeley (2001)Google Scholar
- 9.Xi, S., Xu, M., Lu, C., Phanm, L.T.X., Gill, C., Sokolsky, O., Lee, I.: Real-Time Multi-Core Virtual Machine Scheduling in Xen. EMSOFT 2014 (October 2014)Google Scholar
- 10.Xi, S., Li, C., Lu, C., Gill, C.D.: Prioritizing local inter-domain communication in xen. In: IWQoS, pp. 73–82. IEEE (2013)Google Scholar