  Recently, embedded systems have not only requirements for hard real-time
behavior and reliability, but also diversified functional demands, such as
network functions. To satisfy these requirements, virtualization using
hypervisors is promising for embedded systems. However, as most of existing
hypervisors are designed for general-purpose information processing systems,
they rely on large system stacks, so that they are not suitable for mixed
criticality embedded real-time systems. Even in hypervisors designed for
embedded systems, their schedulers do not consider the diversity of real-time
requirements and rapid change in scheduling theory.
  We present the design and implementation of T-Visor, a hypervisor specialized
for mixed criticality embedded real-time systems. T-Visor supports ARM
architecture and realizes full virtualization using ARM Virtualization
Extensions. To guarantee real-time behavior, T-Visor provides a flexible
scheduling framework so that developers can select the most suitable scheduling
algorithm for their systems. Our evaluation showed that it performed better
compared to Xen/ARM. From these results, we conclude that our design and
implementation are more suitable for embedded real-time systems than the
existing hypervisors.
