Changes between Version 9 and Version 10 of Developer/Projects/Obsolete/Hypervisor
- Timestamp:
- 10/27/11 22:13:14 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Developer/Projects/Obsolete/Hypervisor
v9 v10 7 7 8 8 This project is just an idea at this point. You can make of it what you will. Be creative. Some ideas are captured here. No idea is more important than the others. 9 10 = Tailoring RTEMS to support hypervisor/virtual machine = 11 12 13 The idea of this project is to ease the integration of RTEMS with hypervisor/supervisor/IMA platforms. At this time, some projects already provide software to isolate different RTEMS instance in a virtual machine (for example, Xtratum). It needs to tailor RTEMS for their own needs and adapt it to communicate with the underlying hypervisor. However, this approach requires to tailor RTEMS for each hypervisor, which can be hard, especially because this adaption efforts are not shared and duplicate code. This project aims at defining a generic adaptation layer to ease the tailoring of RTEMS to hypervisor and provide an open-source/free software hypervisor implementation example. So, it consists in two parts : one to design an adaptation layer to ease the tailoring of RTEMS with hypervisors and another that would consist in providing an hypervisor to execute RTEMS instances. For the second part, existing hypervisor/virtual machine can be used (such as POK or Xtratum) but the solution has to be released under free-software license so that everybody can use it at his convenience. 14 15 As a result, this project would really use the integration of RTEMS into IMA architectures and would enable the design of ARINC653 systems with inter-partitions services. 9 16 = L4 = 10 17 11 18 12 19 RTEMS has been run on the L4 hypervisor so that should be a strong foundation for some types of hypervisor work. 20 = ARINC653 API support = 13 21 14 = Concept 1: RTEMS Virtual Machine Monitor = 22 23 The goal is to provide a minimal ARINC653 layer that support only intra-partition services. As inter-partitions would be managed by an underlying hypervisor, they must be integrated as a second step for ARINC653 services integration. The idea here would be to provide an API that support the first part of ARINC653 services so that ARINC653 application can compile with RTEMS and intra-partition services would work. 24 This implies to add a new API support in RTEMS. The project would enable the following services to be interfaces with the regular RTEMS API: tasks, intra-partition (blackboard/event/semaphore/buffer) and time service. For inter-partition services (queueing/sampling ports), we expect to provide the definition of the function but leave it blank so that an ARINC653 partition would compile but the behaviour would have to be implemented in the future. 25 = RTEMS Virtual Machine Monitor = 15 26 16 27 … … 18 29 19 30 RTEMS based RT-VMM (Real-Time Virtual Machine Monitor). Current RTEMS can not support to run another OS (such as Linux or uClinux). We want to add hypervisor (or Virtual Machine Monitor) function on RTEMS, then RTEMS has the power like XEN that can run Linux or other OS, but RTEMS also maintain original hard Real-Time funtions. First, we will try to make RTEMS run uClinux on ARM simulator SkyEye ( http://www.skyeye.org ), then we will try to make RTEMS run ARM Linux on XSCALE CPU based board or SkyEye simulator. We consider virtualization techs on Embedded RTOS area has potential value. (from chyyuu@gmail.com) 20 = ARINC653 API support =21 22 23 The goal is to provide a minimal ARINC653 layer that support only intra-partition services. As inter-partitions would be managed by an underlying hypervisor, they must be integrated as a second step for ARINC653 services integration. The idea here would be to provide an API that support the first part of ARINC653 services so that ARINC653 application can compile with RTEMS and intra-partition services would work.24 This implies to add a new API support in RTEMS. The project would enable the following services to be interfaces with the regular RTEMS API: tasks, intra-partition (blackboard/event/semaphore/buffer) and time service. For inter-partition services (queueing/sampling ports), we expect to provide the definition of the function but leave it blank so that an ARINC653 partition would compile but the behaviour would have to be implemented in the future.25 = Concept 2 - ARINC-653 Compliant Hypervisor =26 27 31 28 32 I am VERY fond of the idea of a free hypervisor that provides the real-time features required by ARINC 653. --[wiki:User:JoelSherrill Dr. Joel] 23:18, 25 January 2010 (UTC).