Reorganize the Developer's Handbook.

* Add chapter on kernel debugging (repo-copied from the Handbook)
  * Change "Introduction" part with 4 empty chapters to a
    "Introduction" chapter with 4 mostly empty <sect1>s.
  * Combine many of the different <part>s that contain only one empty
    <chapter> into larger <part>s.
  * Add * in front of unfinished chapter names so its very clear what
    needs to be worked on.
  * Added some <filename> tags where appropriate.
This commit is contained in:
Murray Stokely 2001-07-19 22:06:06 +00:00
parent 474756bf03
commit d78ef2bfe3
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=9977
8 changed files with 307 additions and 541 deletions
en_US.ISO8859-1/books
arch-handbook
developers-handbook

View file

@ -1,5 +1,5 @@
#
# $FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/Makefile,v 1.5 2001/06/22 08:49:10 murray Exp $
# $FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/Makefile,v 1.6 2001/06/23 04:57:31 murray Exp $
#
# Build the FreeBSD Developers' Handbook.
#
@ -25,6 +25,7 @@ IMAGES= sockets/layers.eps sockets/sain.eps sockets/sainfill.eps sockets/sainlsb
# SGML content
SRCS= book.sgml
SRCS+= introduction/chapter.sgml
SRCS+= tools/chapter.sgml
SRCS+= secure/chapter.sgml
SRCS+= locking/chapter.sgml
@ -37,6 +38,7 @@ SRCS+= scsi/chapter.sgml
SRCS+= x86/chapter.sgml
SRCS+= vm/chapter.sgml
SRCS+= dma/chapter.sgml
SRCS+= kerneldebug/chapter.sgml
# Entities

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/book.sgml,v 1.21 2001/06/22 08:49:10 murray Exp $
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/book.sgml,v 1.22 2001/06/23 04:57:31 murray Exp $
-->
<!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
@ -46,184 +46,37 @@
sites</ulink>.</para>
</abstract>
</bookinfo>
<part id="introduction">
<title>Introduction</title>
<chapter id="developmentplatform">
<title>Developing on FreeBSD</title>
<para>This will need to discuss FreeBSD as a development
platform, the vision of BSD, architectural overview, layout of
/usr/src, history, etc.</para>
<para>Thank you for considering FreeBSD as your development
platform! We hope it will not let you down.</para>
</chapter>
<chapter id="bsdvision">
<title>The BSD Vision</title>
<para></para>
</chapter>
<chapter id="archoverview">
<title>Architectural Overview</title>
<para></para>
</chapter>
<chapter id="sourcelayout">
<title>The Layout of /usr/src</title>
<para>The complete source code to FreeBSD is available from our
public CVS repository. The source code is normally installed in
<filename class=directory>/usr/src</filename> which contains the
following subdirectories.</para>
<para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Directory</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename class=directory>bin/</filename></entry>
<entry>Source for files in
<filename>/bin</filename></entry>
</row>
<row>
<entry><filename class=directory>contrib/</filename></entry>
<entry>Source for files from contributed software.</entry>
</row>
<row>
<entry><filename class=directory>crypto/</filename></entry>
<entry>DES source</entry>
</row>
<row>
<entry><filename class=directory>etc/</filename></entry>
<entry>Source for files in <filename
class=directory>/etc</filename></entry>
</row>
<row>
<entry><filename class=directory>games/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/games</filename></entry>
</row>
<row>
<entry><filename class=directory>gnu/</filename></entry>
<entry>Utilities covered by the GNU Public License</entry>
</row>
<row>
<entry><filename class=directory>include/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/include</filename></entry>
</row>
<row>
<entry><filename
class=directory>kerberosIV/</filename></entry>
<entry>Source for Kerbereros version IV</entry>
</row>
<row>
<entry><filename
class=directory>kerberos5/</filename></entry>
<entry>Source for Kerbereros version 5</entry>
</row>
<row>
<entry><filename class=directory>lib/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/lib</filename></entry>
</row>
<row>
<entry><filename class=directory>libexec/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/libexec</filename></entry>
</row>
<row>
<entry><filename
class=directory>release/</filename></entry>
<entry>Files required to produce a FreeBSD release</entry>
</row>
<row>
<entry><filename class=directory>sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>secure/</filename></entry>
<entry>FreeSec sources</entry>
</row>
<row>
<entry><filename class=directory>share/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>sys/</filename></entry>
<entry>Kernel source files</entry>
</row>
<row>
<entry><filename class=directory>tools/</filename></entry>
<entry>Tools used for maintenance and testing of
FreeBSD</entry>
</row>
<row>
<entry><filename
class=directory>usr.bin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/bin</filename></entry>
</row>
<row>
<entry><filename
class=directory>usr.sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/sbin</filename></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</chapter>
</part>
<part id="Basics">
<title>Basics</title>
&chap.introduction;
&chap.tools;
&chap.secure;
</part>
<part id="ipc">
<title>Interprocess Communication</title>
<chapter id="signals">
<title>* Signals</title>
<para>Signals, pipes, semaphores, message queues, shared memory,
ports, sockets, doors</para>
</chapter>
&chap.sockets;
&chap.ipv6;
</part>
<part id="kernel">
<title>Kernel</title>
<chapter id="kernelhistory">
<title>History of the Unix Kernel</title>
<title>* History of the Unix Kernel</title>
<para>Some history of the Unix/BSD kernel, system calls, how do
processes work, blocking, scheduling, threads (kernel),
@ -233,83 +86,42 @@
</chapter>
&chap.locking;
</part>
<part id="memory">
<title>Memory Management</title>
&chap.vm;
&chap.dma;
<!-- <para>VM, paging, swapping, allocating memory, testing for
memory leaks, mmap, vnodes, etc.</para> -->
</part>
<part id="iosystem">
<title>I/O System</title>
&chap.kerneldebug;
<chapter id="ufs">
<title>UFS</title>
<title>* UFS</title>
<para>UFS, FFS, Ext2FS, JFS, inodes, buffer cache, labeling,
locking, metadata, soft-updates, LFS, portalfs, procfs,
vnodes, memory sharing, memory objects, TLBs, caching</para>
</chapter>
</part>
<part id="ipc">
<title>Interprocess Communication</title>
<chapter id="signals">
<title>Signals</title>
<para>Signals, pipes, semaphores, message queues, shared memory,
ports, sockets, doors</para>
</chapter>
</part>
<part id="networking">
<title>Networking</title>
&chap.sockets;
&chap.ipv6;
</part>
<part id="networkfs">
<title>Network Filesystems</title>
<chapter id="afs">
<title>AFS</title>
<title>* AFS</title>
<para>AFS, NFS, SANs etc]</para>
</chapter>
</part>
<part id="terminal">
<title>Terminal Handling</title>
<chapter id="syscons">
<title>Syscons</title>
<title>* Syscons</title>
<para>Syscons, tty, PCVT, serial console, screen savers,
etc</para>
</chapter>
</part>
<part id="sound">
<title>Sound</title>
<chapter id="oss">
<title>OSS</title>
<chapter id="compatibility">
<title>* Compatibility Layers</title>
<para>OSS, waveforms, etc</para>
<sect1 id="linux">
<title>* Linux</title>
<para>Linux, SVR4, etc</para>
</sect1>
</chapter>
</part>
@ -324,12 +136,19 @@
&chap.usb;
<chapter id="newbus">
<title>NewBus</title>
<title>* NewBus</title>
<para>This chapter will talk about the FreeBSD NewBus
architecture.</para>
</chapter>
<chapter id="oss">
<title>* Sound subsystem</title>
<para>OSS, waveforms, etc</para>
</chapter>
</part>
<part id="architectures">
@ -338,7 +157,7 @@
&chap.x86;
<chapter id="alpha">
<title>Alpha</title>
<title>* Alpha</title>
<para>Talk about the architectural specifics of
FreeBSD/alpha.</para>
@ -350,7 +169,7 @@
</chapter>
<chapter id="ia64">
<title>IA-64</title>
<title>* IA-64</title>
<para>Talk about the architectural specifics of
FreeBSD/ia64.</para>
@ -358,29 +177,6 @@
</chapter>
</part>
<part id="debuggingpart">
<title>Debugging</title>
<chapter id="truss">
<title>Truss</title>
<para>various descriptions on how to debug certain aspects of
the system using truss, ktrace, gdb, kgdb, etc</para>
</chapter>
</part>
<part id="compatibility">
<title>Compatibility Layers</title>
<chapter id="linux">
<title>Linux</title>
<para>Linux, SVR4, etc</para>
</chapter>
</part>
<part id="appendices">
<title>Appendices</title>

View file

@ -6,58 +6,58 @@
Chapters should be listed in the order in which they are referenced.
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/chapters.ent,v 1.8 2001/06/22 08:49:10 murray Exp $
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/chapters.ent,v 1.9 2001/06/23 04:57:32 murray Exp $
-->
<!-- Part one -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part two -->
<!ENTITY chap.introduction SYSTEM "introduction/chapter.sgml">
<!ENTITY chap.tools SYSTEM "tools/chapter.sgml">
<!ENTITY chap.secure SYSTEM "secure/chapter.sgml">
<!-- Part three -->
<!-- Part two -->
<!ENTITY chap.locking SYSTEM "locking/chapter.sgml">
<!-- Part four -->
<!-- Part three -->
<!ENTITY chap.vm SYSTEM "vm/chapter.sgml">
<!ENTITY chap.dma SYSTEM "dma/chapter.sgml">
<!-- Part four -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part five -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part six -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part seven -->
<!ENTITY chap.sockets SYSTEM "sockets/chapter.sgml">
<!ENTITY chap.ipv6 SYSTEM "ipv6/chapter.sgml">
<!-- Part seven -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part eight -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part nine -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part ten -->
<!-- No significant material yet, still in book.sgml -->
<!ENTITY chap.kerneldebug SYSTEM "kerneldebug/chapter.sgml">
<!-- Part eleven -->
<!-- Part ten -->
<!ENTITY chap.driverbasics SYSTEM "driverbasics/chapter.sgml">
<!ENTITY chap.isa SYSTEM "isa/chapter.sgml">
<!ENTITY chap.pci SYSTEM "pci/chapter.sgml">
<!ENTITY chap.scsi SYSTEM "scsi/chapter.sgml">
<!ENTITY chap.usb SYSTEM "usb/chapter.sgml">
<!-- Part twelve -->
<!-- Part eleven -->
<!ENTITY chap.x86 SYSTEM "x86/chapter.sgml">
<!-- Part twelve -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part thirteen -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part fourteen -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part fifteen (appendices) -->
<!-- Part fourteen (appendices) -->
<!ENTITY chap.bibliography SYSTEM "bibliography/chapter.sgml">
<!ENTITY chap.index SYSTEM "index.sgml">

View file

@ -1,5 +1,5 @@
#
# $FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/Makefile,v 1.5 2001/06/22 08:49:10 murray Exp $
# $FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/Makefile,v 1.6 2001/06/23 04:57:31 murray Exp $
#
# Build the FreeBSD Developers' Handbook.
#
@ -25,6 +25,7 @@ IMAGES= sockets/layers.eps sockets/sain.eps sockets/sainfill.eps sockets/sainlsb
# SGML content
SRCS= book.sgml
SRCS+= introduction/chapter.sgml
SRCS+= tools/chapter.sgml
SRCS+= secure/chapter.sgml
SRCS+= locking/chapter.sgml
@ -37,6 +38,7 @@ SRCS+= scsi/chapter.sgml
SRCS+= x86/chapter.sgml
SRCS+= vm/chapter.sgml
SRCS+= dma/chapter.sgml
SRCS+= kerneldebug/chapter.sgml
# Entities

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/book.sgml,v 1.21 2001/06/22 08:49:10 murray Exp $
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/book.sgml,v 1.22 2001/06/23 04:57:31 murray Exp $
-->
<!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
@ -46,184 +46,37 @@
sites</ulink>.</para>
</abstract>
</bookinfo>
<part id="introduction">
<title>Introduction</title>
<chapter id="developmentplatform">
<title>Developing on FreeBSD</title>
<para>This will need to discuss FreeBSD as a development
platform, the vision of BSD, architectural overview, layout of
/usr/src, history, etc.</para>
<para>Thank you for considering FreeBSD as your development
platform! We hope it will not let you down.</para>
</chapter>
<chapter id="bsdvision">
<title>The BSD Vision</title>
<para></para>
</chapter>
<chapter id="archoverview">
<title>Architectural Overview</title>
<para></para>
</chapter>
<chapter id="sourcelayout">
<title>The Layout of /usr/src</title>
<para>The complete source code to FreeBSD is available from our
public CVS repository. The source code is normally installed in
<filename class=directory>/usr/src</filename> which contains the
following subdirectories.</para>
<para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Directory</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename class=directory>bin/</filename></entry>
<entry>Source for files in
<filename>/bin</filename></entry>
</row>
<row>
<entry><filename class=directory>contrib/</filename></entry>
<entry>Source for files from contributed software.</entry>
</row>
<row>
<entry><filename class=directory>crypto/</filename></entry>
<entry>DES source</entry>
</row>
<row>
<entry><filename class=directory>etc/</filename></entry>
<entry>Source for files in <filename
class=directory>/etc</filename></entry>
</row>
<row>
<entry><filename class=directory>games/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/games</filename></entry>
</row>
<row>
<entry><filename class=directory>gnu/</filename></entry>
<entry>Utilities covered by the GNU Public License</entry>
</row>
<row>
<entry><filename class=directory>include/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/include</filename></entry>
</row>
<row>
<entry><filename
class=directory>kerberosIV/</filename></entry>
<entry>Source for Kerbereros version IV</entry>
</row>
<row>
<entry><filename
class=directory>kerberos5/</filename></entry>
<entry>Source for Kerbereros version 5</entry>
</row>
<row>
<entry><filename class=directory>lib/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/lib</filename></entry>
</row>
<row>
<entry><filename class=directory>libexec/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/libexec</filename></entry>
</row>
<row>
<entry><filename
class=directory>release/</filename></entry>
<entry>Files required to produce a FreeBSD release</entry>
</row>
<row>
<entry><filename class=directory>sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>secure/</filename></entry>
<entry>FreeSec sources</entry>
</row>
<row>
<entry><filename class=directory>share/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>sys/</filename></entry>
<entry>Kernel source files</entry>
</row>
<row>
<entry><filename class=directory>tools/</filename></entry>
<entry>Tools used for maintenance and testing of
FreeBSD</entry>
</row>
<row>
<entry><filename
class=directory>usr.bin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/bin</filename></entry>
</row>
<row>
<entry><filename
class=directory>usr.sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/sbin</filename></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</chapter>
</part>
<part id="Basics">
<title>Basics</title>
&chap.introduction;
&chap.tools;
&chap.secure;
</part>
<part id="ipc">
<title>Interprocess Communication</title>
<chapter id="signals">
<title>* Signals</title>
<para>Signals, pipes, semaphores, message queues, shared memory,
ports, sockets, doors</para>
</chapter>
&chap.sockets;
&chap.ipv6;
</part>
<part id="kernel">
<title>Kernel</title>
<chapter id="kernelhistory">
<title>History of the Unix Kernel</title>
<title>* History of the Unix Kernel</title>
<para>Some history of the Unix/BSD kernel, system calls, how do
processes work, blocking, scheduling, threads (kernel),
@ -233,83 +86,42 @@
</chapter>
&chap.locking;
</part>
<part id="memory">
<title>Memory Management</title>
&chap.vm;
&chap.dma;
<!-- <para>VM, paging, swapping, allocating memory, testing for
memory leaks, mmap, vnodes, etc.</para> -->
</part>
<part id="iosystem">
<title>I/O System</title>
&chap.kerneldebug;
<chapter id="ufs">
<title>UFS</title>
<title>* UFS</title>
<para>UFS, FFS, Ext2FS, JFS, inodes, buffer cache, labeling,
locking, metadata, soft-updates, LFS, portalfs, procfs,
vnodes, memory sharing, memory objects, TLBs, caching</para>
</chapter>
</part>
<part id="ipc">
<title>Interprocess Communication</title>
<chapter id="signals">
<title>Signals</title>
<para>Signals, pipes, semaphores, message queues, shared memory,
ports, sockets, doors</para>
</chapter>
</part>
<part id="networking">
<title>Networking</title>
&chap.sockets;
&chap.ipv6;
</part>
<part id="networkfs">
<title>Network Filesystems</title>
<chapter id="afs">
<title>AFS</title>
<title>* AFS</title>
<para>AFS, NFS, SANs etc]</para>
</chapter>
</part>
<part id="terminal">
<title>Terminal Handling</title>
<chapter id="syscons">
<title>Syscons</title>
<title>* Syscons</title>
<para>Syscons, tty, PCVT, serial console, screen savers,
etc</para>
</chapter>
</part>
<part id="sound">
<title>Sound</title>
<chapter id="oss">
<title>OSS</title>
<chapter id="compatibility">
<title>* Compatibility Layers</title>
<para>OSS, waveforms, etc</para>
<sect1 id="linux">
<title>* Linux</title>
<para>Linux, SVR4, etc</para>
</sect1>
</chapter>
</part>
@ -324,12 +136,19 @@
&chap.usb;
<chapter id="newbus">
<title>NewBus</title>
<title>* NewBus</title>
<para>This chapter will talk about the FreeBSD NewBus
architecture.</para>
</chapter>
<chapter id="oss">
<title>* Sound subsystem</title>
<para>OSS, waveforms, etc</para>
</chapter>
</part>
<part id="architectures">
@ -338,7 +157,7 @@
&chap.x86;
<chapter id="alpha">
<title>Alpha</title>
<title>* Alpha</title>
<para>Talk about the architectural specifics of
FreeBSD/alpha.</para>
@ -350,7 +169,7 @@
</chapter>
<chapter id="ia64">
<title>IA-64</title>
<title>* IA-64</title>
<para>Talk about the architectural specifics of
FreeBSD/ia64.</para>
@ -358,29 +177,6 @@
</chapter>
</part>
<part id="debuggingpart">
<title>Debugging</title>
<chapter id="truss">
<title>Truss</title>
<para>various descriptions on how to debug certain aspects of
the system using truss, ktrace, gdb, kgdb, etc</para>
</chapter>
</part>
<part id="compatibility">
<title>Compatibility Layers</title>
<chapter id="linux">
<title>Linux</title>
<para>Linux, SVR4, etc</para>
</chapter>
</part>
<part id="appendices">
<title>Appendices</title>

View file

@ -6,58 +6,58 @@
Chapters should be listed in the order in which they are referenced.
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/chapters.ent,v 1.8 2001/06/22 08:49:10 murray Exp $
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/chapters.ent,v 1.9 2001/06/23 04:57:32 murray Exp $
-->
<!-- Part one -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part two -->
<!ENTITY chap.introduction SYSTEM "introduction/chapter.sgml">
<!ENTITY chap.tools SYSTEM "tools/chapter.sgml">
<!ENTITY chap.secure SYSTEM "secure/chapter.sgml">
<!-- Part three -->
<!-- Part two -->
<!ENTITY chap.locking SYSTEM "locking/chapter.sgml">
<!-- Part four -->
<!-- Part three -->
<!ENTITY chap.vm SYSTEM "vm/chapter.sgml">
<!ENTITY chap.dma SYSTEM "dma/chapter.sgml">
<!-- Part four -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part five -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part six -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part seven -->
<!ENTITY chap.sockets SYSTEM "sockets/chapter.sgml">
<!ENTITY chap.ipv6 SYSTEM "ipv6/chapter.sgml">
<!-- Part seven -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part eight -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part nine -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part ten -->
<!-- No significant material yet, still in book.sgml -->
<!ENTITY chap.kerneldebug SYSTEM "kerneldebug/chapter.sgml">
<!-- Part eleven -->
<!-- Part ten -->
<!ENTITY chap.driverbasics SYSTEM "driverbasics/chapter.sgml">
<!ENTITY chap.isa SYSTEM "isa/chapter.sgml">
<!ENTITY chap.pci SYSTEM "pci/chapter.sgml">
<!ENTITY chap.scsi SYSTEM "scsi/chapter.sgml">
<!ENTITY chap.usb SYSTEM "usb/chapter.sgml">
<!-- Part twelve -->
<!-- Part eleven -->
<!ENTITY chap.x86 SYSTEM "x86/chapter.sgml">
<!-- Part twelve -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part thirteen -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part fourteen -->
<!-- No significant material yet, still in book.sgml -->
<!-- Part fifteen (appendices) -->
<!-- Part fourteen (appendices) -->
<!ENTITY chap.bibliography SYSTEM "bibliography/chapter.sgml">
<!ENTITY chap.index SYSTEM "index.sgml">

View file

@ -0,0 +1,168 @@
<!--
The FreeBSD Documentation Project
$FreeBSD$
-->
<chapter id="introduction">
<title>Introduction</title>
<para>This chapter was written by &a.murray;.</para>
<sect1>
<title>* Developing on FreeBSD</title>
<para>This will need to discuss FreeBSD as a development platform,
the vision of BSD, architectural overview, layout of /usr/src,
history, etc.</para>
<para>Thank you for considering FreeBSD as your development
platform! We hope it will not let you down.</para>
</sect1>
<sect1>
<title>* The BSD Vision</title>
<para></para>
</sect1>
<sect1>
<title>* Architectural Overview</title>
<para></para>
</sect1>
<sect1>
<title>The Layout of <filename class="directory">/usr/src</filename></title>
<para>The complete source code to FreeBSD is available from our
public CVS repository. The source code is normally installed in
<filename class=directory>/usr/src</filename> which contains the
following subdirectories.</para>
<para>
<informaltable frame="none">
<tgroup cols="2">
<thead>
<row>
<entry>Directory</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><filename class=directory>bin/</filename></entry>
<entry>Source for files in
<filename>/bin</filename></entry>
</row>
<row>
<entry><filename class=directory>contrib/</filename></entry>
<entry>Source for files from contributed software.</entry>
</row>
<row>
<entry><filename class=directory>crypto/</filename></entry>
<entry>DES source</entry>
</row>
<row>
<entry><filename class=directory>etc/</filename></entry>
<entry>Source for files in <filename
class=directory>/etc</filename></entry>
</row>
<row>
<entry><filename class=directory>games/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/games</filename></entry>
</row>
<row>
<entry><filename class=directory>gnu/</filename></entry>
<entry>Utilities covered by the GNU Public License</entry>
</row>
<row>
<entry><filename class=directory>include/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/include</filename></entry>
</row>
<row>
<entry><filename
class=directory>kerberosIV/</filename></entry>
<entry>Source for Kerbereros version IV</entry>
</row>
<row>
<entry><filename
class=directory>kerberos5/</filename></entry>
<entry>Source for Kerbereros version 5</entry>
</row>
<row>
<entry><filename class=directory>lib/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/lib</filename></entry>
</row>
<row>
<entry><filename class=directory>libexec/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/libexec</filename></entry>
</row>
<row>
<entry><filename
class=directory>release/</filename></entry>
<entry>Files required to produce a FreeBSD release</entry>
</row>
<row>
<entry><filename class=directory>sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>secure/</filename></entry>
<entry>FreeSec sources</entry>
</row>
<row>
<entry><filename class=directory>share/</filename></entry>
<entry>Source for files in <filename
class=directory>/sbin</filename></entry>
</row>
<row>
<entry><filename class=directory>sys/</filename></entry>
<entry>Kernel source files</entry>
</row>
<row>
<entry><filename class=directory>tools/</filename></entry>
<entry>Tools used for maintenance and testing of
FreeBSD</entry>
</row>
<row>
<entry><filename
class=directory>usr.bin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/bin</filename></entry>
</row>
<row>
<entry><filename
class=directory>usr.sbin/</filename></entry>
<entry>Source for files in <filename
class=directory>/usr/sbin</filename></entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</sect1>
</chapter>

View file

@ -1,7 +1,7 @@
<!--
The FreeBSD Documentation Project
$FreeBSD: doc/en_US.ISO8859-1/books/handbook/kerneldebug/chapter.sgml,v 1.32 2001/06/17 12:29:19 schweikh Exp $
$FreeBSD: doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug/chapter.sgml,v 1.33 2001/07/06 13:03:01 dd Exp $
-->
<chapter id="kerneldebug">
@ -12,20 +12,22 @@
<sect1>
<title>Debugging a Kernel Crash Dump with <command>gdb</command></title>
<para>Here are some instructions for getting kernel debugging working on a
crash dump. They assume that you have enough swap space for a crash
dump. If you have multiple swap partitions and the first one is too
small to hold the dump, you can configure your kernel to use an
alternate dump device (in the <literal>config kernel</literal> line), or
you can specify an alternate using the
&man.dumpon.8; command. The best way to use &man.dumpon.8; is to set
the <literal>dumpdev</literal> variable in
<filename>/etc/rc.conf</filename>. Typically you want to specify one of
the swap devices specified in <filename>/etc/fstab</filename>. Dumps to
non-swap devices, tapes for example, are currently not supported. Config
your kernel using <command>config <option>-g</option></command>. See <link
linkend="kernelconfig">Kernel Configuration</link> for details on
configuring the FreeBSD kernel.</para>
<para>Here are some instructions for getting kernel debugging
working on a crash dump. They assume that you have enough swap
space for a crash dump. If you have multiple swap partitions
and the first one is too small to hold the dump, you can
configure your kernel to use an alternate dump device (in the
<literal>config kernel</literal> line), or you can specify an
alternate using the &man.dumpon.8; command. The best way to use
&man.dumpon.8; is to set the <literal>dumpdev</literal> variable
in <filename>/etc/rc.conf</filename>. Typically you want to
specify one of the swap devices specified in
<filename>/etc/fstab</filename>. Dumps to non-swap devices,
tapes for example, are currently not supported. Config your
kernel using <command>config <option>-g</option></command>. See
<ulink url="http://www.FreeBSD.org/handbook">The FreeBSD
Handbook</ulink> for details on configuring the FreeBSD
kernel.</para>
<para>Use the &man.dumpon.8; command to tell the kernel where to dump to
(note that this will have to be done after configuring the partition in
@ -312,8 +314,8 @@
<programlisting>options DDB</programlisting>
to your config file, and rebuild. (See <link
linkend="kernelconfig">Kernel Configuration</link> for details on
to your config file, and rebuild. (See <ulink
url="http://www.FreeBSD.org/handbook">The FreeBSD Handbook</ulink> for details on
configuring the FreeBSD kernel.</para>
<note>