gabriel rosenkoetter on Sat, 2 Jun 2001 22:24:36 -0400 |
On Sat, Jun 02, 2001 at 07:56:58PM -0400, Bill Jonas wrote: > bj@morpheus:~$ file /bin/ls > /bin/ls: OpenBSD/i386 demand paged executable > > I'm not exactly sure what the file type means, but I'm pretty sure it's > not ELF. ;) Although all three BSDs (to my knowledge) can run Linux > binaries as a sort of emulation mode. Ewww. OpenBSD is still using a.out (that's what that is, btw) on their i386 port? What's the uname -a for that machine? Yech, well, they're still using in in 2.8 (see below), and the 2.9 (which just came out) release notes say nothing of a move to ELF format. Oh well, just one more justification for all the folks who say that Theo is just a megalomaniac blowhard (as if more reasons were needed after the recent IPF fracas). NetBSD's i386 port moved to ELF binaries with 1.4, and nearly every other port is using ELF these days (including both macppc and mac68k too, finally with 1.5.1, which should be out within a couple of months at the most). Standouts are the really weird stuff like, if memory serves, the sh3 port (the chip used in the mmeye digital camera/webserver and also the chip in the dreamcast). > From my Linux box, if that sheds any light on the matter: > bj@epoch:~$ scp morpheus:/bin/ls . > ls 100% |*****************************| 164 KB 00:01 > bj@epoch:~$ file ls > ls: NetBSD/i386 demand paged executable This is, of course, because OpenBSD is basically Theo de Raadt's toy based on NetBSD's source tree. I doubt even NetBSD's magic file could tell the difference between the two, as I expect the file format is the same. Though, I can check... spatula:~% uname -a OpenBSD spatula 2.8 conf#3 i386 spatula:~% file `which ls` /bin/ls: OpenBSD/i386 demand paged executable grappa:~% uname -a NetBSD grappa 1.5V NetBSD 1.5V (GRAPPA) #0: Sun May 6 14:22:19 EDT 2001 gr@grappa:/usr/src/sys/arch/i386/compile/GRAPPA i386 grappa:~% file `which ls` /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped uriel:~% uname -a NetBSD uriel.eclipsed.net 1.5 NetBSD 1.5 (URIEL) #0: Thu Jan 25 15:27:28 EST 2001 gr@uriel.eclipsed.net:/usr/src/sys/arch/macppc/compile/URIEL macppc uriel:~% file `which ls` /bin/ls: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1, statically linked, stripped [Just proof that NetBSD/i386 and /macppc really is using ELF these days, if you care.] grappa:~% scp spatula:/bin/ls ./openbsd-ls ls 100% |*****************************| 164 KB 00:02 grappa:~% file openbsd-ls openbsd-ls: NetBSD/i386 demand paged executable Yeah, that's what I figured. (Running this just dumps core on my NetBSD/i386 machine, of course, because I don't have a.out emulation set up, but if I did have have it set up, I expect it would work fine.) > BTW, I think this is a rather interesting discussion we're having here. > Totally on-topic. ;-) I mean, the executable file format is pretty > basic to the functioning of any system... While it's probably true you > can get better answers to some of these questions elsewhere, don't feel > as though it's off-topic here. I definitely agree. LUGs, despite the Linux in their title, strike me as precisely the place to learn about open source (and free software, no, I'm not going to argue about whether or not they're the same thing) operating systems' innards. I could expound at great length about the executable format (and the odd additions to it) on the powerpc, as I've been trying to make some modifications to gcc work there so that loadable kernel modules are actually useable on the NetBSD/macppc port, but the details are about as interesting as watching water evaporate even for me, so... ~ g r @ eclipsed.net ______________________________________________________________________ Philadelphia Linux Users Group - http://www.phillylinux.org Announcements-http://lists.phillylinux.org/mail/listinfo/plug-announce General Discussion - http://lists.phillylinux.org/mail/listinfo/plug
|
|