From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GuW5t-0000UQ-MM for qemu-devel@nongnu.org; Wed, 13 Dec 2006 10:32:29 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GuW5r-0000Rb-U3 for qemu-devel@nongnu.org; Wed, 13 Dec 2006 10:32:28 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GuW5r-0000RI-J7 for qemu-devel@nongnu.org; Wed, 13 Dec 2006 10:32:27 -0500 Received: from [65.74.133.4] (helo=mail.codesourcery.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1GuW5r-0007qf-FM for qemu-devel@nongnu.org; Wed, 13 Dec 2006 10:32:27 -0500 From: Paul Brook Subject: Re: [Qemu-devel] qemu-system-* using mmap? Date: Wed, 13 Dec 2006 15:32:23 +0000 References: <10541fa50612130009s798a1587n4a3d2b8b51baa334@mail.gmail.com> <56d259a00612130526u214987e6kfbe926d8bba018f0@mail.gmail.com> <9cfca86c3aa677137448f7a0a85e3ccb@io.com> In-Reply-To: <9cfca86c3aa677137448f7a0a85e3ccb@io.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200612131532.24616.paul@codesourcery.com> 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 Cc: Tim Olson On Wednesday 13 December 2006 14:40, Tim Olson wrote: > I am using qemu 0.8.2 built from source. In the qemu technical > documentation for features under full system emulation, it says: > > "QEMU can either use a full software MMU for maximum portability or use > the host system call mmap() to simulate the target MMU." > > However, I cannot find a way to build a full system simulator which > does not define SOFTMMU -- in fact, the configure parameters > "--disable-system" and "--enable-system" directly control the softmmu > switch. There are some mmap() calls in the kqemu code, but to use that > requires full kqemu support code in the kernel. This is unrelated. > I think there is a big performance hit using the software mmu, as each > target load or store instruction is expanded into 20-30 host > instructions to perform the translation. Is there a way to build the > qemu-system-* emulators using the mmap() feature mentioned in the > documentation? No. That feature was removed some time ago. It only worked with modified guest OS. Once you start doing that you generally may as well use UML or Xen. It's actually more like 10 instructions to do the translation. Paul