[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC] Xen Virtual Framebuffer
On 12/5/05, Anthony Liguori <aliguori@xxxxxxxxxx> wrote: > Jon Smirl wrote: > > >After thinking about this for a while, wouldn't Xen be better off with > >a virtual VGA device instead of a virtual fbdev? The virtual VGA > >device will work for other operating systems as well as Linux. > >Implementing a VESA BIOS may be better than emulating VGA. > >http://www.vesa.org/public/VBE/vbecore3.pdf > > > > > This is how Qemu does it so it's what we do for VT. The VMI spec > (VMware paravirtual spec) assumes that you'll be doing device emulation > and calls for an emulated PCI bus. Xen achieves really good performance > though by avoiding device emulation. Native speed device emulation is > an active area of research though so this might not always be the case :-) > > We don't currently do that in Xen though so it would be a considerable > amount of work to emulate a PCI bus and a VGA device (not to mention an > emu86 to be able to run the BIOS). VGA devices don't live on the PCI bus, they are ISA legacy devices at fixed IO ports/RAM address. But VESA is a better solution than the VGA device. Does Xen supply a BIOS into the virtual machine? If so, just implement the VESA entry points. Most of the Xen-based VESA entry points will do nothing, but they can't return the not-implemented error. This is very similar to what you are doing with a virtual fbdev, but the VESA scheme will work for Windows too. Linux already has a vesafb driver that will use the entry points you provide. However, I am assuming that Windows/Linux will fallback to using VESA calls if they don't find a physical VGA device. There isn't a simple way to test this since every video card that implements VESA also implements VGA. If you want to get errors from Linux while it is still in real mode you need to implement the BIOS INT 10 interface. -- Jon Smirl jonsmirl@xxxxxxxxx _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |