Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Aug 1999 10:39:26 -0400 (EDT)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        "Brian F. Feldman" <green@FreeBSD.org>
Cc:        Warner Losh <imp@village.org>, Poul-Henning Kamp <phk@critter.freebsd.dk>, Marcel Moolenaar <marcel@scc.nl>, current@FreeBSD.org
Subject:   Re: Q: Extending the sysctl MIB for Linuxulator variables 
Message-ID:  <14264.6988.898174.676708@grasshopper.cs.duke.edu>
In-Reply-To: <Pine.BSF.4.10.9908160034430.92799-100000@janus.syracuse.net>
References:  <199908160431.WAA27173@harmony.village.org> <Pine.BSF.4.10.9908160034430.92799-100000@janus.syracuse.net>

next in thread | previous in thread | raw e-mail | index | archive | help

Brian F. Feldman writes:
 > On Sun, 15 Aug 1999, Warner Losh wrote:
 > 
 > > In message <Pine.BSF.4.10.9908151314510.80813-100000@janus.syracuse.net> "Brian F. Feldman" writes:
 > > : I suppose, but wouldn't the proper place be under machdep? I agree that
 > > : a linux top-level MIB would be easiest to remember.
 > > 
 > > Linux isn't machdep.  It is MI since we could have Linux/Alpha or
 > > Linux/MIPS emulators...
 > 
 > Well then, we need to move it a directory level and take out machine
 > dependencies, and make it machine independent.
 > 

Linux is actually a little bit machdep:  we can't move it all up a
directory level because most of the syscall numbers, as well as many
flags (to mmap, ioctl, etc) are different between linux/i386 &
linux/alpha.  They bootstrapped themselves off of osf/1 & never
reverted back to their own flags/syscall numbers, they just grew a new
set instead. So I'd suggest moving everything but linux.h & the
syscall related files up a level.  There will need to be some ifdefs
in the code, but not many.

I've been working a little on getting the Linuxulator running on
FreeBSD/alpha.  Because linux is such a bloody cludge (the syscall &
flags differences), its a bit more difficult that I initially thought
it would be.  The also call some functions (osf1_setsysinfo, for
example) which are really osf/1 calls.  Luckily, I have my osf/1
compat code which I'm using to field these.

Right now it works well enough to install linux_base from ports (good
job in keeing it MI, Marcel!) & run things like ls, uname, etc.
However, its not useful for anything real just yet.  My goal is to get
em86 (the x86 emulator that lets linux/alpha run linux/i386 binaries)
running, as well as the Compaq compilers.

Drew

PS: Is anybody interested in reviewing my osf/1 compat code so that it
can be comitted?  It works quite well (SimOS, Netscape, Mathematica,
Matlab, S-Plus, emacs, etc all run), but I'd really like somebody to
look it over before I commit it. I've left it at 
http://www.freebsd.org/~gallatin/osf1.tar.gz

------------------------------------------------------------------------------
Andrew Gallatin, Sr Systems Programmer	http://www.cs.duke.edu/~gallatin
Duke University				Email: gallatin@cs.duke.edu
Department of Computer Science		Phone: (919) 660-6590










To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14264.6988.898174.676708>