Hi All,
How about having a generic Virtio-based machine for emulating a virtual
desktop ?
I know folks have already thought about this and probably also tried
something or other on this front but, it will be good to know the downsides.
Virtio-desktop can be a separate specification describing a virtual
desktop.
Of-course we cannot avoid few architecture dependent virtual devices in but
the Virtio-desktop specification will try to keep minimum possible
architecture dependent devices.
As per our thoughts, a Virtio-desktop will have two kinds of devices:
1. Architecture dependent devices: This devices will be emulated in-kernel
by architecture specific code of KVM or Xen or Some other hypervisor.
a) Virtualized CPU
b) Virtualized PIC (i.e. in-kernel architecture specific emulation of
irqchip)
c) Virtualized Timer (i.e. in-kernel architecture specific emulation of
timer chip)
2. Architecture independent devices: This are Virtio-based devices which
are usually required by a desktop virtual machine.
a) Virtio-blk (storage)
- Already available
b) Virtio-net (network)
- Already available
c) Virtio-fb (display)
- It seems some work has been already done for Virtio frame buffer but
I did not find drivers/fb/virtio-fb.c in latest kernel
(http://thread.gmane.org/gmane.comp.emulators.kvm.devel/42720)
- Is Virtio-fb work still in-progress ??
d) Virtio-input (keyboard/mouse/multi-touch)
- Currently not available
- It will provide keyboard input events
- It will provide mouse input events
- It will provide multi-touch input events
e) Virtio-power (reset/shutdown/enumeration)
- It can provides info about the entire virtual machine including CPU,
PIC, Timer, available Virtio devices, etc.
- It can also provide CPU and Virtio-device hot-plugging
- Its primary purpose would be to provide reset and shutdown of CPU
and Virtio devices.
- There will be only one instance of this device and its location will
be fixed for each architecture.
The Virtio-desktop specification may also describe a recommended memory map
of for each architecture.
Right now, only missing devices seems to be Virtio-fb, Virtio-input, and
Virtio-power, which some of us are willing to take-up.
IMHO, If we have something like Virtio-desktop specification then all
possible guest OSes can have support for it and different hypervisor can
emulate it without worrying about guest support.
Best Regards,
Anup
_______________________________________________
linaro-dev mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/linaro-dev