From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MJ7KI-00075j-9M for qemu-devel@nongnu.org; Tue, 23 Jun 2009 10:50:22 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MJ7KD-00070Z-Jp for qemu-devel@nongnu.org; Tue, 23 Jun 2009 10:50:21 -0400 Received: from [199.232.76.173] (port=60528 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MJ7KD-00070I-Bn for qemu-devel@nongnu.org; Tue, 23 Jun 2009 10:50:17 -0400 Received: from cerberus.snarc.org ([212.85.155.21]:58493) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MJ7KC-0003Jq-TC for qemu-devel@nongnu.org; Tue, 23 Jun 2009 10:50:17 -0400 Date: Tue, 23 Jun 2009 15:45:21 +0100 From: Vincent Hanquez Subject: Re: [Qemu-devel] [PATCH 01/11] QMP: Introduce specification file Message-ID: <20090623144521.GA614@snarc.org> References: <20090623012811.53a62493@doriath> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20090623012811.53a62493@doriath> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Luiz Capitulino Cc: aliguori@us.ibm.com, ehabkost@redhat.com, jan.kiszka@siemens.com, dlaor@redhat.com, qemu-devel@nongnu.org, avi@redhat.com On Tue, Jun 23, 2009 at 01:28:11AM -0300, Luiz Capitulino wrote: > This file contains detailed QMP description and definitions. > > Signed-off-by: Luiz Capitulino > --- > monitor-protocol-spec.txt | 180 +++++++++++++++++++++++++++++++++++++++++++++ > 1 files changed, 180 insertions(+), 0 deletions(-) > create mode 100644 monitor-protocol-spec.txt > > diff --git a/monitor-protocol-spec.txt b/monitor-protocol-spec.txt > new file mode 100644 > index 0000000..d20e3f9 > --- /dev/null > +++ b/monitor-protocol-spec.txt > @@ -0,0 +1,180 @@ > + QEMU Monitor Protocol Specification - Version 0.1 I think this is extremelly needed however inventing yet another RPC protocol make no sense in 2009, specially with all the limitations (no UTF-8, no quoted string ...). You should really look at what's already out there, so you don't have to concentrate on the marshalled protocol, but just the format. At this point my personal suggestion would be jsonrpc: - it's easy to parse (even in C) - it's text with markup - easy to generate - support utf-8 - quoted string - it's not ugly to read (compare to xml) - can be embedded directly (no more library dependancy for qemu) in the code - lots of language have json library making the interaction with the monitor easy from the other side However i'm sure other RPC "format" exists that suit all of these too, but again please don't do something from scratch .. -- Vincent