From: "J. Mayer" <l_indien@magic.fr>
To: thayne@c2.net, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RFC] linux-user (mostly syscall.c)
Date: Sun, 04 Nov 2007 02:35:25 +0100 [thread overview]
Message-ID: <1194140125.16781.580.camel@rapid> (raw)
In-Reply-To: <1194138960.2168.73.camel@phantasm.home.enterpriseandprosperity.com>
On Sat, 2007-11-03 at 19:16 -0600, Thayne Harbaugh wrote:
> On Sat, 2007-11-03 at 20:13 +0100, Fabrice Bellard wrote:
> > Thayne Harbaugh wrote:
> > > On Sat, 2007-11-03 at 13:52 +0100, J. Mayer wrote:
> > >> On Sat, 2007-11-03 at 01:21 +0000, Thiemo Seufer wrote:
> > >> [...]
> > >> But it could be great to group the syscalls by
> > >> categories, or so. For example, putting all POSIX compliant syscalls in
> > >> a single file and using a syscall table could make quite easy to develop
> > >> a BSD-user target (I did this in the past, not in Qemu though...). POSIX
> > >> compliant interfaces can mostly be shared with Linux ones and a lot of
> > >> other syscalls are common to the 3 BSD flavors (Net, Open and Free..).
> > >> Being able to add a BSD target sharing the same code would be a proof
> > >> the code is flexible and well organized; I guess large parts of the
> > >> Darwin user target could also be merged with a FreeBSD user target...
> > >
> > > That's a reasonable strategy as well. I've looked through some of the
> > > darwin code and have considered how common code could be merged.
> >
> > I am strongly against such merges.
> >
> > Different OS emulation must be handled in different directories (and
> > maybe even in different projects) as they are likely to have subtle
> > differences which makes impossible to test a modification made for one
> > OS without testing all the other OSes.
>
> Agreed.
If you take a close look, you'll find more variations between Linux ABIs
for different CPUs than between all BSD implementations: common syscalls
of all BSD flavors do the same thing (and have the same ABI whatever the
CPU...). You'll also find very few variations between the syscalls
common to BSD & Linux because most of those directly map POSIX defined
functions.
Then, following the given argument, we never should try to share any
code between linux-user for different targets, as the Linux ABI and
behavior is different for different CPUs...
--
J. Mayer <l_indien@magic.fr>
Never organized
next prev parent reply other threads:[~2007-11-04 1:35 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-03 0:05 [Qemu-devel] [RFC] linux-user (mostly syscall.c) Thayne Harbaugh
2007-11-03 1:21 ` Thiemo Seufer
2007-11-03 12:52 ` J. Mayer
2007-11-03 14:15 ` Thayne Harbaugh
2007-11-03 19:13 ` Fabrice Bellard
2007-11-04 1:16 ` Thayne Harbaugh
2007-11-04 1:35 ` J. Mayer [this message]
2007-11-04 1:51 ` Paul Brook
2007-11-04 7:49 ` J. Mayer
2007-11-03 17:24 ` TJ
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1194140125.16781.580.camel@rapid \
--to=l_indien@magic.fr \
--cc=qemu-devel@nongnu.org \
--cc=thayne@c2.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).