Return to BSD News archive
Newsgroups: comp.unix.bsd Path: sserve!manuel.anu.edu.au!munnari.oz.au!sgiblab!swrinde!elroy.jpl.nasa.gov!usc!snorkelwacker.mit.edu!bloom-picayune.mit.edu!athena.mit.edu!eichin From: eichin@athena.mit.edu (Mark W. Eichin) Subject: Re: 386BSD or LINUX? In-Reply-To: elmar@gulasch.hanse.de's message of Wed, 4 Nov 1992 20:17:21 GMT Message-ID: <EICHIN.92Nov4224548@tsx-11.mit.edu> Sender: news@athena.mit.edu (News system) Nntp-Posting-Host: tsx-11.mit.edu Organization: Massachusetts Institute of Technology References: <Nov.2.20.33.38.1992.18690@remus.rutgers.edu> <1992Nov4.201721.1036@gulasch.hanse.de> Date: Thu, 5 Nov 1992 03:46:01 GMT Lines: 136 In article <1992Nov4.201721.1036@gulasch.hanse.de> elmar@gulasch.hanse.de (Elmar Folba) writes: >>Newsgroups: comp.unix.bsd >>From: elmar@gulasch.hanse.de (Elmar Folba) >>References: <Nov.2.20.33.38.1992.18690@remus.rutgers.edu> >>Date: Wed, 4 Nov 1992 20:17:21 GMT >>Not necessarily. Who, do you think, has significant and comparable experience >>with both systems? >>And: what is 'better'? Better suited to which purpose? "significant and comparable experience"? I certainly do... I got a 486 machine in January, immediately put linux 0.10 up on it, hacked with that for a while, then 386BSD 0.0 came out, so I blew everything away and put that up instead. When 0.1 came out, I took the kernel sources (since there hadn't really been major changes to anything else, and the install program didn't impress me...) and worked with those for a while... and then I needed (for work reasons) to get a DOS partition again, to run djgcc/go32, so I put linux (SLS 0.98) up and started hacking on the networking code. There are various ways to compare the two systems. It would be impolite to treat them as being in competition; I'll merely try to list things that "make a difference" between the two. 1) Networking. 386BSD has had TCP/IP support (Ethernet and SLIP) in kernel since 0.0 (after all, the socket interface was originally developed as part of BSD.) Just about everything you or your sysadmin knows about configuring unix networking will apply, which makes the setup seem fairly easy. Linux has had TCP support in the form of the KA9Q networking package, though I seem to recall this is only "free" for educational or ham radio use, since the early days; the 0.98 release actually has in kernel TCP, which is still a bit rough, but serves a useful purpose as an independent implementation. Great if you want to hack (like I do) but not quite up for heavy use; this is changing rapidly. 2) File Systems. 386BSD has the Berkeley Fast File System; you can read research papers on the implementation and design. It is quite robust, and fsck can fix most problems due to sudden shutdown. There is a VFS layer, but not many alternate disk-based file systems as of yet (NFS for both TCP and UDP are included, though, and mostly work as of 0.1.) Linux started with the Minix filesystem, but now has a VFS layer and several additional filesystem types, most popularly the Extended Filesystem (just stretch the Minix entries by a factor of two, but it does work...) and the MSDOS filesystem type (a *major* win - none of the inconvenience of mtools, just mount the floppy or hard drive and use cp/mv/emacs and it just works.) There is also a /proc filesystem (at least I think it is done as a filesystem type, haven't looked at the code.) 3) Utilities. 386BSD has the various Berkeley utilities included, as well as groff, gcc (based on 1.39); it is easy to get most of the GNU utilities up (and for some things it is necessary -- /bin/sh is a crippled shell that doesn't handle quoting well enough to run Configure, so you'll probably replace it with BASH right away.) Linux comes with mostly GNU utilities, and what it doesn't come with usually configures and builds cleanly. The "standard" gcc (at the moment) is gcc 2.2.2d (lots of patches from 2.2.2) and I expect 2.3.1 to work with little effort. 4) Shared Libraries Linux has them; BSD doesn't. This means that Linux can be installed rather completely on a much smaller system (I've done kernel builds on an AST 386sx/20Mh/2Mram/40Mdisk from inside of emacs, with everything important installed... no X, no TeX, but there was room left for at least one of those.) 5) Hardware support Linux seems to have more support for "low budget" hardware, contributed by people who have it. There is a good deal of cross-breeding here, however, with some people working on drivers on both sides (since, after all, the *hard* part is actually talking to the hardware, not talking to the O/S.) My personal experience has been that Linux boots from scratch on more machines than 386BSD does. 6) Development "Life Cycle" Bill and Lynne Jolitz manage the entire release very closely; this reults in reasonable quality control, but a long cycle between releases (if I recall correctly, 0.0 came out in March, 0.1 over the summer, and submissions for 0.2 are solicited now though no date is even hinted at for a release.) It is also reported that the Jolitz' have not been able to keep up with NetNews since Septmber 1. Linus Torvalds keeps a very close eye on the kernel -- in fact, he rewrites many submissions (though not all) to meet his coding standards, improving them in the process. Other people handle the release of installable systems, moving at various paces. Linus also participates very actively in discussions on both comp.os.linux and comp.unix.bsd. Improvements to the kernel come out at a rapid pace; I was recently off at a conference for a week, and am about two revisions behind on the kernel, to give you some idea of the pace -- the changes mostly involve the networking code, which is in active flux right now, so this is a feature for developers who want it (and those who don't simply stay with older versions.) 7) License and Politics Linux is released under the GNU Copyleft; this means that if you sell it to someone, you have to include sources with it. (I think this is a great idea :-) BSD is released under the various Berkeley copyrights which say that you can do what you want as long as you don't hold the Regents liable; also, the Jolitz' have asked for donations to some charity (their "CareWare" program) if you wish to make them. They have also said that BSD is simply not *ready* for commercial use, and advise against making commercial use of it, simply for technical reasons. There is also a pending lawsuit (AT&T vs. BSDI and UCB) which may affect the ownership of the 4.3net2 release which 386BSD is based on. However, no actual action has been taken by a court in this matter, although UCB and CMU have apparently reacted to it anyway (UCB by no longer shipping tapes of 4.3net2, and CMU by no longer releasing the BNR2SS single-server for Mach.) 8) Availability Linux and 386BSD are both available for anonymous ftp from numerous sites; Austin Codeworks apparently resells both in source form; FTP Software Inc was giving away a CDrom at Interop Fall 92 with 386BSD source and binaries (as well as X11R5, the Crynwr Packet Drivers, and the RFC's and IEN's) as a promotion. Linux has been uploaded to a number of BBS'es around the world. I'm sure other forms are available, essentially if you want it you can probably get it. In summary, there are numerous differences between Linux and 386BSD; it is entirely up to you whether they "make a difference" in your situation. _Mark_ <eichin@athena.mit.edu> MIT Student Information Processing Board Cygnus Support <eichin@cygnus.com> ps. This posting ignores other 386 Operating Systems since, after all, we're only discussing Free ones here. Also, I'm sure it is clear to you that these are my opinions from my experience, and not meant to represent those of MIT or Cygnus Support (although some of them certainly coincide) particularly regarding any lawsuits in progress.