2 <!-- The FreeBSD Documentation Project -->
5 <!DOCTYPE linuxdoc PUBLIC '-//FreeBSD//DTD linuxdoc//EN'>
6 <linuxdoc><book><chapt>foo
8 <sect><heading>About the current release<label id="relnotes"></heading>
10 <p>FreeBSD is a freely available, full source 4.4BSD-Lite
11 based release for Intel i386/i486/Pentium/PentiumPro (or
12 compatible) based PC's. It is based primarily on
13 software from U.C. Berkeley's CSRG group, with some
14 enhancements from NetBSD, 386BSD, and the Free Software
17 Since our release of FreeBSD 2.0 in January of 95, the
18 performance, feature set, and stability of FreeBSD has
19 improved dramatically. The largest change is a
20 revamped VM system with a merged VM/file buffer cache
21 that not only increases performance, but reduces
22 FreeBSD's memory footprint, making a 5MB configuration
23 a more acceptable minimum. Other enhancements include
24 full NIS client and server support, transaction TCP
25 support, dial-on-demand PPP, an improved SCSI
26 subsystem, early ISDN support, support for FDDI and
27 Fast Ethernet (100Mbit) adapters, improved support for
28 the Adaptec 2940 (WIDE and narrow) and many hundreds of
31 We have also taken the comments and suggestions of many
32 of our users to heart and have attempted to provide
33 what we hope is a more sane and easily understood
34 installation process. Your feedback on this
35 (constantly evolving) process is especially welcome!
37 In addition to the base distributions, FreeBSD offers a
38 new ported software collection with hundreds of commonly
39 sought-after programs. At the beginning of December 96 there were
40 more than 700 ports ! The list of ports ranges from
41 http (WWW) servers, to games, languages, editors and
42 almost everything in between. The entire ports collection
43 requires only 10MB of storage, all ports being expressed
44 as ``deltas'' to their original sources. This makes it
45 much easier for us to update ports, and greatly reduces
46 the disk space demands made by the older 1.0 ports
47 collection. To compile a port, you simply change to the
48 directory of the program you wish to install, type ``make
49 all'' followed by ``make install'' after successful
50 compilation and let the system do the rest. The full
51 original distribution for each port you build is retrieved
52 dynamically off of CDROM or a local ftp site, so you need
53 only enough disk space to build the ports you want.
54 (Almost) every port is also provided as a pre-compiled
55 "package" which can be installed with a simple command
56 (pkg_add) by those who do not wish to compile their own
59 A number of additional documents which you may find
60 very helpful in the process of installing and using
61 FreeBSD may now also be found in the
62 <bf>/usr/share/doc</bf> directory on any machine running
63 FreeBSD 2.1 or later. You may view the
64 manuals with any HTML capable browser with the
68 <tag>The FreeBSD handbook</tag>
69 <htmlurl url="file:/usr/share/doc/handbook/handbook.html">
71 <tag>The FreeBSD FAQ</tag>
72 <htmlurl url="file:/usr/share/doc/FAQ/FAQ.html">
75 You can also visit the master (and most frequently
76 updated) copies at <htmlurl
77 url="http://www.freebsd.org"
78 name="http://www.freebsd.org">.
80 The core of FreeBSD does not contain DES code which
81 would inhibit its being exported outside the United
82 States. There is an add-on package to the core
83 distribution, for use only in the United States, that
84 contains the programs that normally use DES. The
85 auxiliary packages provided separately can be used by
86 anyone. A freely (from outside the U.S.) exportable
87 European distribution of DES for our non-U.S. users
88 also exists and is described in the <htmlurl
89 url="../FAQ/FAQ.html" name="FreeBSD FAQ">.
91 If password security for FreeBSD is all you need, and
92 you have no requirement for copying encrypted passwords
93 from different hosts (Suns, DEC machines, etc) into
94 FreeBSD password entries, then FreeBSD's MD5 based
95 security may be all you require! We feel that our
96 default security model is more than a match for DES,
97 and without any messy export issues to deal with. If
98 you are outside (or even inside) the U.S., give it a
102 <p>Since our first release of FreeBSD 1.0 nearly two
103 years ago, FreeBSD has changed dramatically. Since
104 release 2.0, FreeBSD has been based on the Berkeley
105 4.4BSD-Lite code rather than the Net2 code used for
106 previous versions. In addition to clearing the legal
107 issues that surrounded the Net2 code, the port to 4.4
108 has also brought in numerous new features, filesystems
109 and enhanced driver support.
111 Since our release of FreeBSD 2.0 in November of 1994,
112 the performance, feature set, and stability of FreeBSD
113 has improved dramatically. The largest change is a
114 revamped Virtual Memory (VM) system with a merged
115 virtual memory and file buffer cache. This increases
116 performance while reducing FreeBSD's memory footprint,
117 making a system with 4 megabytes of RAM a more
118 acceptable minimum. Other enhancements include full
119 NIS client and server support, transaction TCP support,
120 dial on demand PPP, an improved SCSI subsystem, early
121 support for ISDN, support for FDDI and 100Mbit Fast
122 Ethernet adapters, improved support for the Adaptec
123 2940 and hundreds of bug fixes.
125 We have also taken the comments and suggestions of many
126 of our users to heart and have attempted to provide
127 what we hope is a more sane and easily understood
128 installation process. Your feedback on this constantly
129 evolving process is especially welcome!
131 In addition to the base distributions, FreeBSD offers a
132 new ported software collection with some 270 commonly
133 sought-after programs. The list of ports ranges from
134 World Wide Web (http) servers, to games, languages,
135 editors and almost everything in between. The entire
136 ports collection requires only 10MB of storage because
137 each port contains only the changes required for the
138 source code to compile on FreeBSD and the information
139 necessary to automatically retrieve the original
140 sources. The original distribution for each port you
141 build is automatically retrieved off of CD-ROM or a via
142 anonymous ftp, so you need only enough disk space to
143 build the ports you want. Each port is also provided
144 as a pre-compiled package which can be installed with
145 the <tt>pkg_add(1)</tt> command for those who do not
146 wish to compile their own ports from source. See <ref
147 id="ports" name="The Ports Collection"> for a more
148 complete description.
151 For a list of contributors and a general project
152 description, please see the file "CONTRIB.FreeBSD"
153 which should be bundled with your binary distribution.
155 Also see the "REGISTER.FreeBSD" file for information on
156 registering with the "Free BSD user counter". This
157 counter is for ALL freely available variants of BSD,
158 not just FreeBSD, and we urge you to register yourself
162 The core of FreeBSD does not contain DES code which
163 would inhibit its being exported outside the United
164 States. An add-on package, for use only in the United
165 States, contains the programs that normally use DES.
166 The auxiliary packages provided separately can be used
167 by anyone. A freely exportable European distribution
168 of DES for our non-U.S. users also exists and is
169 described in the <url
170 url="http://www.freebsd.org/FAQ" name="FreeBSD
171 FAQ">. If password security for FreeBSD is all you
172 need, and you have no requirement for copying encrypted
173 passwords from other hosts using DES into FreeBSD
174 password entries, then FreeBSD's MD5 based security may
175 be all you require. We feel that our default security
176 model is more than a match for DES, and without any
177 messy export issues to deal with.
179 FreeBSD 2.0.5 represents the culmination of 2 years of
180 work and many thousands of man hours put in by an
181 international development team. We hope you enjoy it!
183 <sect1><heading>New feature highlights</heading>
185 <p>The following features were added or substantially
186 improved between the release of 2.0 and this 2.0.5
187 release. In order to facilitate better
188 communication, the person, or persons, responsible
189 for each enhancement is noted. Any questions
190 regarding the new functionality should be directed to
193 <sect2><heading>Kernel</heading>
198 <tag>Merged VM-File Buffer Cache</tag> A merged
199 VM/buffer cache design greatly enhances overall
200 system performance and makes it possible to do
201 a number of more optimal memory allocation
202 strategies that were not possible before.
204 Owner: &a.davidg; and &a.dyson;
206 <tag>Network PCB hash optimization</tag> For
207 systems with a great number of active TCP
208 connections (WEB and ftp servers, for example),
209 this greatly speeds up the lookup time required
210 to match an incoming packet up to its
211 associated connection.
215 <tag>Name cache optimization</tag> The name-cache
216 would cache all files of the same name to the
217 same bucket, which would put for instance all
218 ".." entries in the same bucket. We added the
219 parent directory version to frustrate the hash,
220 and improved the management of the cache in
221 various other ways while we were at it.
223 Owner: &a.phk; and &a.davidg;
225 <tag>Less restrictive swap-spaces</tag> The need
226 to compile the names of the swap devices into
227 the kernel has been removed. Now
228 <tt>swapon(8)</tt> will accept any block
229 devices, up to the maximum number of swap
230 devices configured in the kernel.
232 Owner: &a.phk; and &a.davidg;
234 <tag>Hard Wired SCSI Devices</tag> Prior to
235 2.0.5, FreeBSD performed dynamic assignment of
236 unit numbers to SCSI devices as they were
237 probed, allowing a SCSI device failure to
238 possibly change unit number assignment. This
239 could cause filesystems other disks in the
240 system to be incorrectly mounted, or not
241 mounted at all. Hard wiring allows static
242 allocation of unit numbers (and hence device
243 names) to scsi devices based on SCSI ID and
244 bus. SCSI configuration occurs in the kernel
245 config file. Samples of the configuration
246 syntax can be found in the <tt>scsi(4)</tt> man
247 page or the LINT kernel config file.
251 Sources involved: <tt>sys/scsi/*</tt>
252 <tt>usr.sbin/config/*</tt>
254 <tag>Slice Support</tag> FreeBSD now supports a
255 <em>slice</em> abstraction which enhances
256 FreeBSD's ability to share disks with other
257 operating systems. This support will allow
258 FreeBSD to inhabit DOS extended partitions.
262 Sources involved: <tt>sys/disklabel.h</tt>
263 <tt>sys/diskslice.h</tt> <tt>sys/dkbad.h</tt>
264 <tt>kern/subr_diskslice.c</tt> <tt>kern/subr_dkbad.c</tt>
265 <tt>i386/isa/diskslice_machdep.c</tt> <tt>i386/isa/wd.c</tt>
266 <tt>scsi/sd.c</tt> <tt>dev/vn/vn.c</tt>
268 <tag>Support for Ontrack Disk Manager Version 6.0</tag>
269 Support has been added for disks
270 which use Ontrack Disk Manager. The fdisk
271 program does <em>not</em> know about it
272 however, so make all changes using the install
273 program on the boot.flp or the Ontrack Disk
274 Manager tool under MS-DOS.
278 <tag>Bad144 is back and working</tag> Bad144
279 works again, though the semantics are slightly
280 different than before in that the bad-spots are
281 kept relative to the slice rather than absolute
284 Owner: &a.bde; and &a.phk;
288 <sect2><heading>New device support</heading>
290 <sect3><heading>SCSI and CDROM devices</heading>
294 <tag>Matsushita/Panasonic (Creative) CD-ROM driver</tag>
295 The Matsushita/Panasonic CR-562 and
296 CR-563 drives are now supported when connected to
297 a Sound Blaster or 100% compatible host adapter.
298 Up to four host adapters are supported for a
299 total of 16 CD-ROM drives. The audio functions
300 are supported with the Karoke variable speed
305 Sources involved: <tt>isa/matcd</tt>
307 <tag>Adaptec 2742/2842/2940 SCSI driver</tag> The
308 original 274x/284x driver has evolved
309 considerably since the 2.0 release of FreeBSD.
310 We now offer full support for the 2940 series as
311 well as the Wide models of these cards. The
312 arbitration bug that caused problems with fast
313 devices has been corrected and
314 <em>experimental</em> tagged queuing support has
315 been added (kernel option
316 <tt>AHC_TAGENABLE</tt>). John Aycock has also
317 released the sequencer code under a Berkeley
318 style copyright making the driver entirely clean
323 Sources involved: <tt>isa/aic7770.c</tt> <tt>pci/aic7870.c</tt>
324 <tt>i386/scsi/*</tt> <tt>sys/dev/aic7xxx/*</tt>
326 <tag>NCR5380/NCR53400 SCSI (ProAudio Spectrum) driver</tag>
329 Submitted by: Serge Vakulenko (vak@cronyx.ru)
331 Sources involved: <tt>isa/ncr5380.c</tt>
333 <tag>Sony CDROM driver</tag> Owner: &a.core;
335 Submitted by: Mikael Hybsch (micke@dynas.se)
337 Sources involved: <tt>isa/scd.c</tt>
341 <sect3><heading>Serial devices</heading>
345 <tag>SDL Communications Riscom/8 Serial Board Driver</tag>
348 Sources involved: <tt>isa/rc.c</tt> <tt>isa/rcreg.h</tt>
350 <tag>Cyclades Cyclom-y Serial Board Driver</tag>
353 Submitted by: Andrew Werple
354 (andrew@werple.apana.org.au) and Heikki Suonsivu
357 Obtained from: NetBSD
359 Sources involved: <tt>isa/cy.c</tt>
361 <tag>Cronyx/Sigma sync/async serial driver</tag>
364 Submitted by: Serge Vakulenko
366 Sources involved: <tt>isa/cronyx.c</tt>
370 <sect2><heading>Networking</heading>
374 <tag>Diskless booting</tag> Diskless booting in 2.0.5
375 is much improved over previous releases. The boot
376 program is in <tt>src/sys/i386/boot/netboot</tt>,
377 and can be run from an MS-DOS system or burned into
378 an EPROM. WD, SMC, 3COM and Novell ethernet cards
379 are currently supported. Local swapping is also
382 <tag>DEC DC21140 Fast Ethernet driver</tag> This
383 driver supports any of the numerous NICs using the
384 DC21140 chipset including the 100Mb DEC DE-500-XA
389 Submitted by: Matt Thomas (thomas@lkg.dec.com)
391 Sources involved: <tt>pci/if_de.c</tt> <tt>pci/dc21040.h</tt>
394 <tag>DEC FDDI (DEFPA/DEFEA) driver</tag> Owner: &a.core;
396 Submitted by: Matt Thomas (thomas@lkg.dec.com)
398 Sources involved: <tt>pci/if_pdq.c</tt> <tt>pci/pdq.c</tt>
399 <tt>pci/pdq_os.h</tt> <tt>pci/pdqreg.h</tt>
402 <tag>3Com 3c505 (Etherlink/+) NIC driver</tag> Owner:
405 Submitted by: Dean Huxley (dean@fsa.ca)
407 Obtained from: NetBSD
409 Sources involved: <tt>isa/if_eg.c</tt>
412 <tag>Fujitsu MB86960A family of NICs driver</tag>
415 Submitted by: M.S. (seki@sysrap.cs.fujitsu.co.jp)
417 Sources involved: <tt>isa/if_fe.c</tt>
420 <tag>Intel EtherExpress driver</tag> Owner: Rodney
421 W. Grimes (rgrimes@FreeBSD.org)
423 Sources involved: <tt>isa/if_ix.c</tt> <tt>isa/if_ixreg.h</tt>
426 <tag>3Com 3c589 driver</tag> Owner: &a.core;
428 Submitted by: "HOSOKAWA Tatsumi"
429 (hosokawa@mt.cs.keio.ac.jp), Seiji Murata
430 (seiji@mt.cs.keio.ac.jp) and Noriyuki Takahashi
433 Sources involved: <tt>isa/if_zp.c</tt>
436 <tag>IBM Credit Card Adapter driver</tag> Owner: &a.core;
438 Submitted by: "HOSOKAWA Tatsumi"
439 (hosokawa@mt.cs.keio.ac.jp),
441 Sources involved: <tt>isa/pcic.c</tt> <tt>isa/pcic.h</tt>
444 <tag>EDSS1 and 1TR6 ISDN interface driver</tag>
447 Submitted by: Dietmar Friede
448 (dfriede@drnhh.neuhaus.de) and Juergen Krause
451 Sources involved: <tt>gnu/isdn/*</tt>
455 <sect2><heading>Miscellaneous drivers</heading>
459 <tag>Joystick driver</tag> Owner: &a.jmz;
461 Sources involved: <tt>isa/joy.c</tt>
463 <tag>National Instruments ``LabPC'' driver</tag> Owner:
466 Sources involved: <tt>isa/labpc.c</tt>
468 <tag>WD7000 driver</tag> Owner: Olof Johansson
471 <tag>Pcvt Console driver</tag> Owner: &a.joerg;
475 Sources involved: <tt>isa/pcvt/*</tt>
477 <tag>BSD-audio emulator for VAT driver</tag> Owner:
478 Amancio Hasty (ahasty@FreeBSD.org) and
481 Sources involved: <tt>isa/sound/vat_audio.c</tt>
482 <tt>isa/sound/vat_audioio.h</tt>
484 <tag>National Instruments AT-GPIB and AT-GPIB/TNT GPIB driver</tag>
487 Submitted by: Fred Cawthorne
488 (fcawth@delphi.umd.edu)
490 Sources involved: <tt>isa/gpib.c</tt> <tt>isa/gpib.h</tt>
491 <tt>isa/gpibreg.h</tt>
493 <tag>Genius GS-4500 hand scanner driver</tag> Owner:
496 Submitted by: Gunther Schadow
497 (gusw@fub46.zedat.fu-berlin.de)
499 Sources involved: <tt>isa/gsc.c</tt> <tt>isa/gscreg.h</tt>
501 <tag>CORTEX-I Frame Grabber</tag> Owner: &a.core;
503 Submitted by: Paul S. LaFollette, Jr. (
505 Sources involved: <tt>isa/ctx.c</tt> <tt>isa/ctxreg.h</tt>
508 <tag>Video Spigot video capture card</tag> Owner: Jim
513 <sect1><heading>Experimental features</heading>
517 <tag>UNIONFS and LFS</tag> The unionfs and LFS file
518 systems are known to be severely broken in FreeBSD
519 2.0.5. This is in part due to old bugs that we
520 have not had time to resolve yet and the need to
521 update these file systems to deal with the new VM
522 system. We hope to address these issues in a later
525 <tag>iBCS2 Support</tag> FreeBSD now supports running
526 iBCS2 compatible binaries. Currently SCO UNIX 3.2.2
527 and 3.2.4, and ISC 2.2 COFF are supported. The iBCS2
528 emulator is in its early stages and has not been
529 extensively tested, but it is functional. Most of
530 SCO's 3.2.2 binaries work, as does an old
531 INFORMIX-2.10 for SCO. Further testing is necessary
532 to complete this project. There is also work under
533 way for ELF and XOUT loaders, and most of the svr4
534 syscall wrappers are written.
536 Owner: &a.sos; and &a.sef;
538 Sources involved: <tt>sys/i386/ibcs2/*</tt> and misc
543 <sect1><heading>Reporting problems, making suggestions, submitting code</heading>
545 <p>Your suggestions, bug reports and contributions of code
546 are always valued - please do not hesitate to report any
547 problems you may find (preferably with a fix attached if
550 The preferred method to submit bug reports from a machine
551 with Internet mail connectivity is to use the send-pr
552 command. Bug reports will be dutifully filed by our
553 faithful bug-filer program and you can be sure that we will
554 do our best to respond to all reported bugs as soon as
557 If, for some reason, you are unable to use the send-pr
558 command to submit a bug report, you can try to send it
559 to: <tscreen>bugs@FreeBSD.org</tscreen> Otherwise, for
560 any questions or suggestions, please send mail to:
561 <tscreen>questions@FreeBSD.org</tscreen>
563 Additionally, being a volunteer effort, we are always
564 happy to have extra hands willing to help - there are
565 already far more enhancements to be done than we can ever
566 manage to do by ourselves! To contact us on technical
567 matters, or with offers of help, you may send mail to:
568 <tscreen>hackers@FreeBSD.org</tscreen>
570 Since these mailing lists can experience significant
571 amounts of traffic, if you have slow or expensive mail
572 access and you are only interested in keeping up with
573 significant FreeBSD events, you may find it preferable to
574 subscribe to: <tscreen>announce@FreeBSD.org</tscreen>
576 All but the freebsd-bugs groups can be freely joined by
577 anyone wishing to do so. Send mail to &a.majordomo
578 and include the keyword `help' on a
579 line by itself somewhere in the body of the message.
580 This will give you more information on joining the
581 various lists, accessing archives, etc. There are a
582 number of mailing lists targeted at special interest
583 groups not mentioned here, so send mail to majordomo and