[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] plugins
From: |
Gianni Tedesco |
Subject: |
Re: [Qemu-devel] plugins |
Date: |
Fri, 09 Jul 2004 14:48:48 +0100 |
On Fri, 2004-07-09 at 15:35 +0200, Bartosz Fabianowski wrote:
> > With a plugin system (all it takes is 2 files: an text/XML file which
> > contains the info on this plugin, and a .so file which is the plugin
>
> Binary plugins, especially closed source ones, always create the problem
> of binary compatibility. QEMU's 0.5 version number already indicates
> that although it works very well already, it is nowhere near finished.
> Features change very quickly in CVS, just think about how pci was an
> experimental option a short while back and now it's the default.
Adding PCI could easily have been binary backwards compatible. Anyway,
we're not talking about necissarily having a stable or backwards
compatible ABI, just an API which makes developing new code simpler and
makes each module more flexible. It doesn't have to be there to
encourage out-of-tree development at all.
> I think
> it would be really hard to come up with an API that would remain stable
> for multiple releases at this point. Also, the need to maintain
> backwards compatibility would hamper QEMU's development. And finally,
> creating and maintaining an API would drain lots of resources from QEMU
> development while benefiting only very few people who want to distribute
> closed source plugins.
No developing and maintaining a stable or backwards compatible ABI would
do that. An API that doesn't have to be stable or backwards compatible
won't.
> Maybe at a much later stage, when QEMU is stable
> and mature, binary plugins will make sense. But for now, it seems like
> the source code extensibility QEMU offers is good enough.
No, I think plugins should be built from the main qemu source and
external developers would ideally release new plugins as source
distributions to compile against your qemu core. Anything else requires
maintaining an ABI.
Another benefit of DSO based plugins is saving memory and virtual
address space, only loading the plugins which are required. It would
also save on disk space as common code can be shared amongst the various
qemu targets.
--
// Gianni Tedesco (gianni at scaramanga dot co dot uk)
lynx --source www.scaramanga.co.uk/scaramanga.asc | gpg --import
8646BE7D: 6D9F 2287 870E A2C9 8F60 3A3C 91B5 7669 8646 BE7D
signature.asc
Description: This is a digitally signed message part
- Re: [Qemu-devel] RFC for new features, (continued)
- Re: [Qemu-devel] RFC for new features, Jean-Michel POURE, 2004/07/08
- Re: [Qemu-devel] RFC for new features, Brad Watson, 2004/07/08
- Re: [Qemu-devel] RFC for new features, Jan Dittmer, 2004/07/08
- [Qemu-devel] (Before) RFC for new features, Hetz Ben Hamo, 2004/07/08
- Re: [Qemu-devel] plugins, Gianni Tedesco, 2004/07/09
[Qemu-devel] Re: RFC for new features, Emmanuel Charpentier, 2004/07/09
- Re: [Qemu-devel] Re: RFC for new features, Antony T Curtis, 2004/07/09
- Re: [Qemu-devel] Re: RFC for new features, Derek Fawcus, 2004/07/09
- [Qemu-devel] 3Dfx... Just guessing, Natalia Portillo, 2004/07/09
- Re: [Qemu-devel] 3Dfx... Just guessing, Fabrice Bellard, 2004/07/10
- RE: [Qemu-devel] 3Dfx... Just guessing, Natalia Portillo, 2004/07/11
- RE: [Qemu-devel] 3Dfx... Just guessing, Ishwar Rattan, 2004/07/11
- RE: [Qemu-devel] 3Dfx... Just guessing, Natalia Portillo, 2004/07/11
Re: [Qemu-devel] 3Dfx... Just guessing, Jim C. Brown, 2004/07/10