A Paper on IRIX Binary Compatibility in NetBSD
jschauma writes "'IRIX Binary
Compatibility', the first paper of a series on IRIX binary compatibility
on NetBSD by Emmanuel Dreyfus has been published by ONLamp.com. The paper goes into the details
of the implementation in the NetBSD kernel. As it explains how things are
implemented, the paper documents various kernel susbsystems and reverse
engineering techniques."
Wahahaha, I take TopSpace!!!
I claim this thread for uiuc.test!
Now in a while the others will port it and OpenBSD will have Irix compatibility as well. If emulation works well, the software base just got larger.
How will this help me bootstrap a fresh kernel on my toaster?
Sure this is really cool, but does anyone actually need it?
;)
I still occassionally have to use SGI hardware, but that's only to run legacy software. Okay, so at first glance this might be useful. Unfotunately (to the best of my knowledge) you can't get the hardware without IRIX. So why not just stick with that?
I won't believe for a second that NetBSD performs as well on that hardware as IRIX does (assuming that NetBSD is compiled with gcc, and with the performance difference I see between the MIPSPro compiler vs. gcc on MIPS CPUs with my code).
Please tell me I'm completely wrong.
This does look really cool though -- maybe the basis of an IRIX emulator? I'd love to ditch those ugly SGI boxes
IRIX is bundled with SGI hardware, but it's not free (gratis). OS licenses, Plex licenses, compiler licenses, on and on...
Binary compatibility under NetBSD would allow SGI shops to replace IRIX (and it's costs) without giving up their software investment. Also good for hobbyists -- many used SGI boxes have an old IRIX license, or none at all.
It stinks in here. Did something die?
But seriously, you're confusing Cost of Software with Cost of Ownership. An OS can be free to download, or free with the hardware, but that doesn't mean it's free period. If that were so, companies like Red Hat and SuSE would not exist, and the customer service arm of SGI wouldn't be the only part of the company that turns a profit. If you're going to run platform X, you're going to need access to somebody with expertise in platform X, be they an internal admin, an outside contractor, or the X-corp customer service organization. Few of these work for free.
For example, suppose your company has a bunch of x86s running NetBSD. You'd have to have access to some kind of NetBSD expertise, if only one particular employee who shares his knowledge with the rest of the NetBSD user community and gets help in return. But that doesn't mean you're equipped to run IRIX, at least for anything non-trivial. So if you have some SGI hardware you just can't do without, and nobody in house can make sense of XVM commands, or cluster nodes, or any of those other IRIX-specific thingees, you have a couple choices. One is to spend the bucks necessary to get the necessary IRIX expertise. The other is to find a way to run IRIX apps under an OS you're already expert on.
One more crippling bombshell hit the already beleaguered *BSD community when IDC confirmed that *BSD market share has dropped yet again, now down to less than a fraction of 1 percent of all servers. Coming on the heels of a recent Netcraft survey which plainly states that *BSD has lost more market share, this news serves to reinforce what we've known all along. *BSD is collapsing in complete disarray, as fittingly exemplified by failing dead last in the recent Sys Admin comprehensive networking test.
You don't need to be a Kreskin to predict *BSD's future. The hand writing is on the wall: *BSD faces a bleak future. In fact there won't be any future at all for *BSD because *BSD is dying. Things are looking very bad for *BSD. As many of us are already aware, *BSD continues to lose market share. Red ink flows like a river of blood.
FreeBSD is the most endangered of them all, having lost 93% of its core developers. The sudden and unpleasant departures of long time FreeBSD developers Jordan Hubbard and Mike Smith only serve to underscore the point more clearly. There can no longer be any doubt: FreeBSD is dying.
Let's keep to the facts and look at the numbers.
OpenBSD leader Theo states that there are 7000 users of OpenBSD. How many users of NetBSD are there? Let's see. The number of OpenBSD versus NetBSD posts on Usenet is roughly in ratio of 5 to 1. Therefore there are about 7000/5 = 1400 NetBSD users. BSD/OS posts on Usenet are about half of the volume of NetBSD posts. Therefore there are about 700 users of BSD/OS. A recent article put FreeBSD at about 80 percent of the *BSD market. Therefore there are (7000+1400+700)*4 = 36400 FreeBSD users. This is consistent with the number of FreeBSD Usenet posts.
Due to the troubles of Walnut Creek, abysmal sales and so on, FreeBSD went out of business and was taken over by BSDI who sell another troubled OS. Now BSDI is also dead, its corpse turned over to yet another charnel house.
All major surveys show that *BSD has steadily declined in market share. *BSD is very sick and its long term survival prospects are very dim. If *BSD is to survive at all it will be among OS dilettante dabblers. *BSD continues to decay. Nothing short of a miracle could save it at this point in time. For all practical purposes, *BSD is dead.
Fact: *BSD is dying
Yes, it's needed. And it's OK if the reason isn't blatantly clear. The NetBSD crowd is very much anti-hype. So a lot of its features aren't done to be cool, impress OSS mavens, make any headlines, or even to allow stingy people to avoid paying for commercial software.
NetBSD is a research OS. See:
http://www.netbsd.org/gallery/research.html
NetBSD itself isn't a research project per se, but a baseline OS for conducting generic computer science research, whatever kind of research that may be. So, if you want to do your Comp Sci PhD on a revolutionary new implentation of virtual memory, use NetBSD. You don't have to waste any time writing your own OS, and NetBSD will run on almost any 16+ bit computer you can find. That old Sun, DEC, SGI, PowerMac, or wierd PC clone can become your test bed or workstation, and it just might support more hardware than the original OS. (Nowadays, you'd probably do better to buy/get a slightly obsolete PC, but for some projects old gear has advantages, like SCSI, RISC CPU(s), good SMP, a quality real-time clock, better hardware security, etc.)
For example, if you find bought/found/stole a Sun Ultra, Dec Alpha, or a PowerPPC box with PCI slots, you will have a much easier time getting almost any PCI card to work with NetBSD than with Solaris, VMS, Tru64, AIX, or MacOS X/Darwin. You will have to learn to like those two little words: No drivers. Or learn to write/port your own. Hey, it beats getting any real work done on your thesis, right?
Not to mention, you may not have those OSes laying around, or the cash to buy them, or the time to wait for the vendor to mail it to you (ahem, Sun?). Or the patience to put up with the BS required to qualify for a "hobby" version (ahem, HPaq?) that only allows you to use OS in what is essentially single user mode and has a license key that will expire annually, and will need a new key (annually) that will require you to reregister with company, even after the company ceases to exist.
<SARCASM>What a great deal!? Now I can fire up that microVAX in the garage and type my letters in EVE! At long last!!! Honey, shut down the NT box for good, cause we've found the way out!</SARCASM>
And they wonder why the hobbyiest version of VMS hasn't taken the world by storm... Sheesh.
This doesn't have anything to do with whether Linux makes a good research platform. Lots of good, pure research is being done with Linux too. But Linux requires a little up-front work on your part before you can work on your original project (especially bootstrap or installation issues on non-x86 platforms). I've found installing NetBSD to be an almost trivial undertaking compared to Linux or even Windows NT. It's so distubingly straightforward, it should say so on a bumper sticker.
There's a lot of cool features in NetBSD that just came about because of basic computer science research. Binary compatability is one of them. It's just an experiment into finding ways to make the OS more useful. If it would be more useful than less for NetBSD to be able to run binaries from a platform's vendor OS, then that's exactly the sort of thing NetBSD should be able to do.
That's why.
Democracy. Whiskey. Sexy. Pick any two.
Imagine a Beowolf Cluster of THESE!!!
First off, I've been using unix since the late 80s. I've installed and administered linux, solaris, aix, and freeBSD.
Sendmail is my first grudge. Even if you set sendmail not to run, the default rc.conf script sets the mta_script (sendmail.rc), and sendmail starts up! sendmail is a known security risk, and unless you really need it, you shouldn't be running it.
The second problem was the security level. It asks what security level you want, but beglects to mention that XWindows won't run unless the security level is -1. Maybe you should give a warning when installing XWindows with a security level set?
The third (and biggest) was XWindows 4.2 I've never had a problem getting XWindows to run. But there's a first time for everything. First there was the security level problem. Then, I couldn't get it configured right.
Previous xconfigurators had a monitor and video card database, so I could just pick and from the menu. This xf86cfg only listed video cards by manufacturer/chipset. And only listed monitors by resolution/refresh rate. Starting up xfree86 hung my computer, and nothing short of a reboot would fix it.
Eventually, I got it to create a configuration file (it recognized my video card properly), and was able to run in 1-bit mode, 640x400 display. After digging around I found my monitor's manual and set the horizontal/vertical rates and was able to get the proper display size.
Other papers on IRIX binary compatibility won't have near as catchy a title I'll wager.