From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1BitvQ-0000wE-8U for qemu-devel@nongnu.org; Fri, 09 Jul 2004 07:52:20 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1BitvO-0000w2-Jz for qemu-devel@nongnu.org; Fri, 09 Jul 2004 07:52:20 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BitvO-0000vz-Gs for qemu-devel@nongnu.org; Fri, 09 Jul 2004 07:52:18 -0400 Received: from [194.90.9.29] (helo=mxout5.netvision.net.il) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Bitsy-0000jp-FT for qemu-devel@nongnu.org; Fri, 09 Jul 2004 07:49:48 -0400 Received: from [10.0.0.150] ([212.235.101.134]) by mxout5.netvision.net.il (iPlanet Messaging Server 5.2 HotFix 1.21 (built Sep 8 2003)) with ESMTPA id <0I0L00GP726YE5@mxout5.netvision.net.il> for qemu-devel@nongnu.org; Fri, 09 Jul 2004 14:49:47 +0300 (IDT) Date: Sat, 10 Jul 2004 14:49:54 +0300 From: Hetz Ben Hamo In-reply-to: Message-id: <40EFD7E2.7000607@witch.dyndns.org> MIME-version: 1.0 Content-type: text/plain; charset=us-ascii; format=flowed Content-transfer-encoding: 7BIT References: <40ED8EF0.1040501@bellard.org> <40EF1357.1000600@witch.dyndns.org> Subject: [Qemu-devel] plugins Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, Johannes.Schindelin@gmx.de > There is already a plugin system. It requires you to recompile everytime > you add a new piece of hardware, though. I don't think this is a problem > as most likely you will have to recompile anyway to make sure the plugin > uses the same header files as qemu's core. Yes, but this plugin method is not very usefull for 3rd party plugins.. Many people don't realize one thing about QEMU which differs it from ANY other emulator: For the first time, you can create a "hardware card", write drivers for it and test it on guest OS's (Windows, Linux, *BSD, etc) and test it on other platforms (PPC, Sparc, ARM, once their core is matured). Think about it: You can create a new PCI card without buying those all expensive software to simulate it, write drivers to test it and if it works well for your customer(s), you can do the real PCI card! Go try that with VMWare (you can't), BOCHS (good luck hacking their code, and see the speed difference), and I'm not even mentioning PPC, ARM or Sparc... 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 itself) both closed source and open source developers can add lots of hardware to QEMU which can be used for driver development on Linux and on Windows (as well other guest OS's) without having the real hardware. Have you ever thought to write driver for Linux for some hardware (which someone can writes a plugin) without having it? now you (potentially) can.. Just my thoughts... Thanks, Hetz