From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=47686 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OqmPZ-0002h4-3h for qemu-devel@nongnu.org; Wed, 01 Sep 2010 08:27:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OqmPX-0006P4-RZ for qemu-devel@nongnu.org; Wed, 01 Sep 2010 08:27:29 -0400 Received: from mail-bw0-f45.google.com ([209.85.214.45]:56629) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OqmPX-0006Op-N4 for qemu-devel@nongnu.org; Wed, 01 Sep 2010 08:27:27 -0400 Received: by bwz3 with SMTP id 3so5624124bwz.4 for ; Wed, 01 Sep 2010 05:27:26 -0700 (PDT) Message-ID: <4C7E46AB.1010006@gmail.com> Date: Wed, 01 Sep 2010 13:27:23 +0100 From: Robin Randhawa MIME-Version: 1.0 Subject: Re: [Qemu-devel] Qemu as Instruction Set Simulator without any OS References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anitha Boyapati Cc: qemu-devel@nongnu.org Hi Anitha. Anitha Boyapati wrote: > Hi All, > > Having gone through the documentation (developers) and source code, I > couple of questions: > > 1. For a microcontroller which doesn't have any OS support, can QEMU be > ported without any OS ? Not sure I understand. If you want to run qemu natively on the microcontroller (in order to dynamically translate code _on_ the microcontroller) than that would be a daunting task in the absence of a rich execution environment on the microcontroller. On the other hand, if your question could be rephrased as 'I want to add support for a new microcontroller to qemu but I only want to run "bare-metal" (not an OS or an application under an OS) software on the model', I think that is certainly possible. > 2. Can QEMU be used as a simple instruction set simulator with probably > gdb support for remote debugging? My guess is this would require a > bootloader to load the application to run the application program (full > system emulation mode or just machine emulation if there is something > like that). If yes, what else can be the blocker to have gdb support? IMHO, gdb support if available, is available irrespective of the type and nature of the software being run on qemu. For example, you can create a bare-metal application that executes from the reset vector for say, the ARM or the MIPS models and have gdb support right from the outset. There is no explicit need for running boot firmware and/or a loader to load an application program. Not sure if that's what you were after. This does require system-mode emulation support as opposed to user-mode emulation for your microcontroller to be implemented. HTH, Robin