From comp.unix.bsd Mon Mar 30 09:10:22 1992
Path: hcshh!unido!math.fu-berlin.de!iraun2!ira.uka.de!yale.edu!spool.mu.edu!uunet!nuchat!sugar!karl
From: karl@NeoSoft.com (Karl Lehenbauer)
Newsgroups: comp.unix.bsd
Subject: FAQ for 386BSD (last updated 28-Mar-92)
Message-ID: <1992Mar29.000151.20818@NeoSoft.com>
Date: 29 Mar 92 00:01:51 GMT
Expires: Sat, 11 Apr 1992 00:00:00 GMT
Organization: NeoSoft Communications Services -- (713) 684-5900
Lines: 400

Contents:

    PURPOSE
    AUDIENCE
    DISCLAIMER
    WHAT IT IS
    WARNING * WARNING * WARNING
    CURRENT STATE OF THE SOFTWARE
    REQUIRED HARDWARE
    OPTIONAL HARDWARE
    FTP SITES (obsolete)
    PATCHES
    COMPATIBILITY
    BOOTING HINTS
    QUESTIONS AND ANSWERS
    BUGS
    JOB JAR


PURPOSE
=======

The purpose of this document is to collate some of the most important
information about 386BSD in one place, creating a concise document 
containing the essential information, and make it widely available.
The hyper-intense interest this software is generating is causing a
lot of redundant requests for information to be posted, mailed, etc.


AUDIENCE
========

The audience for this document is anyone who wants to work with 386BSD,
a port of the free Net-2 release of the Berkeley 4.3 BSD operating system,
with the missing pieces filled in by William and Lynne Jolitz, along
with the contributions of hundreds of other people who, over the years,
produced many of the utilities used to fill in for pieces of 4.3 BSD
that were still proprietary to AT&T.

This FAQ does not compete with another FAQ that contains info more
generic to Berkeley Unix.


DISCLAIMER
==========

I am not involved in this project other than as yet another person interested
in seeing it fly.  (Thanks to NeoSoft for sparing me the time to work on this.)

I have assembled this information from the same sources almost everyone else 
has access to, the comp.unix.bsd newsgroup, the 386BSD mailing list, and 
poking around the various FTP sites.

I solicit updates for this posting, and will continue to produce it as long
as there is a need and I have the time.  If someone more officially involved
would like to take over, please feel free to do so.

If you have a problem with anything involving 386BSD other than *this*
message, please do *not* contact me.

Regards,
Karl Lehenbauer
karl@NeoSoft.com


WHAT IT IS
==========

(culled from Bill Jolitz's release notes)

386BSD Release 0.0, the first edition from the 386BSD project.  It comprises 
an entire and complete UNIX-like operating system for the Intel 80386/486-
based IBM PC, and is based almost entirely on the NET/2 release from the
University of California, which contained much of the earlier freely 
redistributable and modifiable 386BSD source code done by William F. Jolitz
and contributed to the University of California at Berkeley for distribution.

386BSD is freely redistributable and includes complete source code.


CURRENT STATE OF THE SOFTWARE
=============================

Release 0.0 is in a totally alpha state.  Don't bother unless you know how, 
or want to learn how, to debug a kernel and work with a buggy, unreliable 
operating system.

386BSD is nonetheless a full 32-bit POSIX-compliant operating system and
development environment, and we all have high hopes for its future.

Although it is fairly easy to crash, an extraordinary range of software
is included, and most of it actually works.  Support for TCP/IP over
ethernet and QIC-02 compatible tape drives is included, among other
things.


WARNING * WARNING * WARNING
===========================

Do not even test-boot 386BSD from floppy with a hard disk present on
the system if you do not want to risk trashing your hard disk!

If 386BSD crashes, it may write a core dump on your hard disk!


REQUIRED HARDWARE
=================

You must currently have the following listed hardware to run 386BSD.

Please do not post to the net or to the mailing list asking for 
compatibility with obviously desirable equipment such as SCSI devices, 
unlisted ethernet boards, floating point support without a coprocessor,
and so forth -- if it's not in the release notes, it doesn't exist yet.  
Keep monitoring comp.unix.bsd for updates.

Here is a quick list of things that you must have to run
386BSD right now:

	o ISA bus-based IBM PC or compatible with Intel 80386, 
	    80386SX, 80486, 80486SX processor or equivalent.

	o 80387 Floating Point Coprocessor (386, 386SX or 486SX only)
		   (some BIOSes have 387 emulation capabilities, and
		    that might work, but it is untested.)

	o 3.5" (1.44 MB) or 5.25" (1.2 MB) high-density floppy disk drive

	o at least 2 MB RAM

	o ST-506, ESDI or IDE disk drive and controller of at least
	   70 megabytes (i.e., SCSI is *not* supported.)  
	   (Future releases will accomodate smaller drives.)

	o A disk drive *solely* for 386BSD
		(There is no support for disk partitioning in 386BSD.)

	o An MDA, CGA, VGA or HGC video card.


OPTIONAL HARDWARE
=================

Serial ports:

    The standard COM port, although it is apparently somewhat unreliable.

Ethernet boards:

Western Digital WD 8003EB, 8003EBT,  8003S, WD8003SBT, 8013EBT, and Novell 
NE2000.  

Tape drives:

Tape drive support is available for QIC-02 controllers, allowing use of 3M 
cartridges of QIC-60 through QIC-150 format.



DOWNLOAD RECOMMENDATIONS
========================

Before downloading 20+ megabytes worth of stuff, only to find out that
you can't use it, gather and read all of the documentation, the
little README and INSTALLATION file(s) in the top-level directory and
various subordinate ones, then download the boot floppy only and see if
you can boot it on your machine.  (Remember, even test-booting the floppy
can trash your hard disk!)  If it appears to work, go ahead and download
everything else.

Nothing is guaranteed.  Even if you have all of the above, do not
be surprised if it doesn't work.


FTP SITES
=========

The FTP SITES section of this document is being discontinued as others
are maintaining more complete lists and posting them periodically.
I have included my smaller list for now for people who may only have
this document and not seen the others.  Please try to find one of the
more complete FTP lists and download from a site that is logically
close to you.

North America:

gatekeeper.dec.com
~ftp/pub/micro/386bsd

dsuvax.dsu.edu
directory /pub/os.

agate.berkeley.edu
~ftp/pub/386BSD

banjo.concert.net
~ftp/pub/386BSD.

United Kingdom:

src.doc.ic.ac.uk
unix/386bsd-public

Finland:

nic.funet.fi
/pub/unix/4.3bsd/i386-jolitz

Australia:

ftp.ee.mu.OZ.AU [128.250.1.80]
pub/386bsd

Sweden:

ftp.stacken.kth.se (130.237.237.3)
~ftp/pub/OS/386bsd.


PATCHES
=======

pub/386BSD/patches/0.0/1

This is a source code patch to the kernel to fix a bug in handling
387 contexts, so beware of floating point until fixed.  Someone
care to post a binary patch, please?


COMPATIBILITY
=============

cgd@agate.berkeley.edu (Chris Demetriou)
    Toshiba 5200/100 with WE8003 Ethernet card

Bill Jolitz:

Toshiba laptop clone, 386SX/387SX, 3MB RAM, VGA LCD(Cirrus),
     Megahertz T2LL Ethernet, Conners CP3100 IDE 100MB drive.

Compaq DeskPro, 386/387, 9MB RAM, Compaq VGA, ESDI Maxtor 8380 drive(type 38),
     WD8003EBT Ethernet, Compaq QIC-150 cartridge drive.


Karl Lehenbauer:
    GENE II clone motherboard with DTK BIOS, Conner 200 MB IDE drive,
    no-name VGA & IDE controller, WD8003.


BOOTING HINTS
=============

It can be quite depressing to download 386BSD and find that it will not
work on your system.  Anyone who has run PC Unix systems on clones,
particularly a few years ago, is familiar with this problem -- just
because a machine can run DOS doesn't mean it can run Unix.

Although over time 386BSD is likely to support more and more different
variants of PC clones, it will probably never support as many, or as
many different kinds of hardware, as, say, Unix from SCO or Interactive.

In any case, here are a few things to try if you can't get it to boot:

1.  Get a 387.  I know I just told you about ten times that you have to
    have a 387 unless you have a 486DX, but you tried it anyway, didn't
    you?  Well, it doesn't work, so get a 387 or forget it (for now).

2.  Remove all extraneous hardware.  Since 386BSD doesn't have any
    built-in support for your whiz-bang fax modem, voicemail card,
    Soundblaster, and so forth, unplug them from your system.

3.  Trouble has been reported with Hercules mono clone cards.  Try a 
    different card.

4.  It has been reported that it is sometimes possible to boot by
    disconnecting (uncabling) the hard drive, booting off the floppy,
    then connecting the hard drive while the system is powered up.
    This operation may void your warranty.  Don't do this unless you
    know what you're doing.

5.  Substitute a different BIOS.  If you can find one, we've seen this
    make some systems work that otherwise wouldn't.  Remember to make
    sure you can boot and run DOS first.

6.  Make absolutely certain you've gotten your disktab entry right.
    If you got one from someone else, it must match your drive --
    don't guess, because if it's not perfect it about for sure will
    not work.

7.  Try a different machine.

8.  RTFM!!!!!  Read the release notes with a fine-tooth comb.  Print
    them out, write on them, and have them next to you while you're
    trying to install.  A lot of the questions in the newsgroup are
    clearly answered in the release notes.  Shame on those of you who
    are dinking with something clearly labelled "guru and apprentice
    guru only" and not even reading the release notes!

Remember, don't just try booting 386BSD on a brand-new machine configuration.  
Eliminate unknowns by at least making sure you can install and boot DOS from 
your hard disk.  Better yet if you know you can actually boot and run a 
commercial Unix on that system.  If it won't run DOS, for sure it won't run 
386BSD.  If it won't run SCO or Interactive, about for sure it won't run 
386BSD.  If it will run DOS and SCO or Interactive, no guarantees, but at 
least you have a chance...


QUESTIONS AND ANSWERS
=====================

Q: I have a 486, do I need a 387 or 487?

A: If you have a "genuine 486", also known as a 486DX, you do not need
   a floating point coprocessor.  If you have a 486SX, you do need one.

Q: It hangs on the "<color>" part of the boot message, does this mean
   something's wrong with my video card?

A: There seem to be a lot of different problems that cause this result.
   It is not inherently indicative of a video problem, although you could
   try a different video card.


BUGS
====

A lot of hangs can be worked through.  "more" hangs the first time it
is executed; a 'control-Z f g' seems to clear it from then on.

Control-C seems to clear some apparent hangs.

Slow machines may take a long time to do things.  Hook up your drive
activity LED.  During compiles of big C files with optimization you may 
think the system has hung when actually it hasn't.

Some hangs seem to be caused by the shell itself crashing -- of course
it's not the original Bourne shell.

GNU bash works pretty well but requires an original control-C to
get it going.  This seems to be a 386BSD problem, as subsequent
invocations do not require the control-C.

The author of the FAQ has seen mysterious hangs more often coinciding
with having the network up -- the lack of "ps" is glaring in terms of
making determining what's going on much, much more difficult.

The "make" program seems a bit fragile.

There is a strong correlation between OS panics and large command lines.
For example, "cd /usr/include;grep foo * */*" is a panic.  Consequently
xargs with big file lists fed in seems to cause panics pretty reliably.


JOB JAR
=======

This sections lists things that are missing for 386BSD and need to be
done.  Rather than trying to establish some clearinghouse for
coordinating this work, pick something and work on it.  If you get
beyond the fantasy stage, post to the net and see who else is working
on it, and maybe work with them.

These just reflect Karl's opinion of what needs to be done.

    Floating point support without requiring an FPU.

    SCSI device driver.

    Any bug fixes to improve stability.

    5.25" 1.2 MB install set.   (DONE!)

    Tape install.

    Network install.

    Definitive, integrated installation notes.

    "ps" program.  (There is sps from comp.sources.unix archives, and
		  "ps" on the Net-2 tape, but severam kvm routines
		  appear to be missing.)

    "init" program.

    Friendly disktab editor.  

    Tools!  Tools!  Tools!

    X11R5.

    Good instructions for firing up NFS.


Pie in the sky:

    A boot prom for ethernet cards to enable a diskless boot of 386BSD
    from a server.
-- 
-- Email info@NeoSoft.com for info on getting Internet access.
     "Trust me.  I know what I'm doing." -- Sledge Hammer

