Title :
Hardware-Assisted Reliability Enhancement for Embedded Multi-core Virtualization Design
Author :
Lin, Tsung-Han ; Kinebuchi, Yuki ; Courbot, Alexandre ; Shimada, Hiromasa ; Morita, Takushi ; Mitake, Hitoshi ; Lee, Chen-Yi ; Nakajima, Tatsuo
Author_Institution :
Dept. of Comput. Sci. & Eng., Waseda Univ., Tokyo, Japan
Abstract :
In this paper, we propose a virtualization architecture for the multi-core embedded system to provide more system reliability and security while maintaining the same performance without introducing additional special hardware supports or having to implement complex protection mechanism in the virtualization layer. Virtualization has been widely used in embedded systems, especially in consumer electronics, albeit itself is not a new technique, because there are various needs for both GPOS (General Purpose Operating System) and RTOS (Real Time Operating System). The surge of the multi-core platform in the embedded system also helps the consolidation of the virtualization system for its better performance and lower power consumption. Embedded virtualization design usually uses two kinds of approaches. The first one is to use the traditional VMM, but it is too complicated for use in the embedded environment if there is no additional special hardware support. The other is the use of the micro kernel which imposes a modular design. The guest systems, however, would suffer from considerable amount of modifications because the micro kernel lets the guest systems to run in user space. For some RTOSes and theirs applications originally running in kernel space, it makes this approach more difficult to work because a lot of privileged instructions are used in those codes. To achieve better reliability and keep the virtualization layer design light weighted, a common hardware component adopted in the multi-core embedded processors is used in this work. In the most embedded platforms, vendors provide additional on-chip local memory for each physical core and these local memory areas are private only to their cores. By taking this memory architecture´s advantage, we can mitigate above-mentioned problems at once. We choose to re-map the virtualization layer´s program called SPUMONE, which it runs all its guest systems in kernel space, on the local memory. By doing so, it can prov ide additional reliability and security for the entire system because the SPUMONE´s design in a multi-core platform has each instance being installed on a separated processor core which is different from the traditional virtualization layer design and the content of each SPUMONE is inaccessible to each others. We also achieve this goal without bringing any overhead to the overall performance.
Keywords :
embedded systems; multiprocessing systems; operating systems (computers); power aware computing; reliability; virtualisation; GPOS; RTOS; SPUMONE; embedded multicore virtualization design; general purpose operating system; hardware assisted reliability enhancement; multicore embedded system; multicore platform; protection mechanism; real time operating system; virtualization architecture; Embedded systems; Hardware; Kernel; Multicore processing; Program processors; Reliability; Virtual machine monitors; embedded system; local memory; virtualization;
Conference_Titel :
Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), 2011 14th IEEE International Symposium on
Conference_Location :
Newport Beach, CA
Print_ISBN :
978-1-61284-433-6
DOI :
10.1109/ISORC.2011.37