Hello,

I have found that the bootstrapping section of the manual is sorely lacking.

Attached is a patch that adds more information to the manual regarding
the bootstrap procedure on the Hurd.  I have also removed some of the
deprecated serverboot documentation.

If I have missed anything, let me know.

regards,

Ben
--- using_gnuhurd.texi.orig	2007-03-09 15:48:30.000000000 -0500
+++ using_gnuhurd.texi	2007-03-09 15:47:59.000000000 -0500
@@ -1043,76 +1043,26 @@
 
 @node Server Bootstrap, Shutdown, Installing GRUB, Bootstrap
 @section Server Bootstrap
[EMAIL PROTECTED] serverboot
 
-The @code{serverboot} program has been deprecated.  Newer GNU Mach 
-kernels support processing the bootscript parameters and boot 
-the Hurd directly.
+As can be seen from the GRUB configuration, the Hurd is bootstrapped by executing bootscript parameters.  A close look at the bootscript parameters shows that it starts precisely two programs: the root filesystem, and the exec server.
 
-The @code{serverboot} program is responsible for loading and executing
-the rest of the Hurd servers.  Rather than containing specific
-instructions for starting the Hurd, it follows general steps given in a
-user-supplied boot script.
+In this case the translator responsible for implementing the root filesystem is ext2fs.  The @code{--multiboot-command-line} option tells ext2fs that it is a root filesystem, which triggers it to run @code{/hurd/init} as PID 1.  @code{/hurd/init} starts the proc and auth servers.  After the servers are launched @code{/hurd/init} starts the @code{/libexec/runsystem.sh} script to finish booting.
 
-To boot the Hurd using @code{serverboot}, the microkernel must start
[EMAIL PROTECTED] as its first task, and pass it appropriate arguments.  
[EMAIL PROTECTED] has a counterpart, called @code{boot}, which can be invoked 
-while the Hurd is already running, and allows users to start their own complete
-sub-Hurds (@pxref{The Sub-Hurd}).
+After the Hurd has booted, the @code{boot} program is used to start a parallel Hurd (@pxref{The Sub-Hurd}) by passing it bootscript parameters in a file.
 
 @menu
-* Invoking serverboot::         Starting a set of interdependent servers.
 * Boot Scripts::                Describing server bootstrap relationships.
 * The Sub-Hurd::                Running a Hurd under another Hurd.
 * Invoking boot::               How to use the boot program.
 @end menu
 
[EMAIL PROTECTED] Invoking serverboot, Boot Scripts, Server Bootstrap, Server Bootstrap
[EMAIL PROTECTED] Invoking @code{serverboot}
-
-The @code{serverboot} program has the following synopsis:
[EMAIL PROTECTED]
-serverboot [EMAIL PROTECTED] [EMAIL PROTECTED] @var{device-port}] @var{root-name}]
[EMAIL PROTECTED] example
-
[EMAIL PROTECTED] FIXME: serverboot should accept --help and --version, for consistency
-Each @var{switch} is a single character, out of the following set:
[EMAIL PROTECTED] @samp
[EMAIL PROTECTED] a
-Prompt the user for the @var{root-name}, even if it was already supplied
-on the command line.
[EMAIL PROTECTED] d
-Prompt the user to strike a key after the boot script has been read.
[EMAIL PROTECTED] q
-Prompt the user for the name of the boot script.  By default, use
[EMAIL PROTECTED]@var{root-name}:/boot/servers.boot}.
[EMAIL PROTECTED] table
-
-All the @var{switches} are put into the @[EMAIL PROTECTED]@}} script
-variable.
[EMAIL PROTECTED] and @var{device-port} are integers which represent the
-microkernel host and device ports, respectively (and are used to
-initialize the @[EMAIL PROTECTED]@}} and @[EMAIL PROTECTED]@}} boot
-script variables).  If these ports are not specified, then
[EMAIL PROTECTED] assumes that the Hurd is already running, and fetches
-the current ports from the procserver, which is documented in the 
-GNU Hurd Reference Manual.
-
[EMAIL PROTECTED] There was a @FIXME: xref here for the proc server, but I think 
[EMAIL PROTECTED] that can wait until _much_ later.
-
[EMAIL PROTECTED] is the name of the microkernel device that should be
-used as the Hurd bootstrap filesystem.  @code{serverboot} uses this name
-to locate the boot script (described above), and to initialize the
[EMAIL PROTECTED]@[EMAIL PROTECTED] script variable.
-
[EMAIL PROTECTED] Boot Scripts, The Sub-Hurd, Invoking serverboot, Server Bootstrap
[EMAIL PROTECTED] Boot Scripts, The Sub-Hurd, Server Bootstrap, Server Bootstrap
 @subsection Boot Scripts
 @pindex /boot/servers.boot
 @pindex servers.boot
 
 Boot Scripts are used to boot further Hurd systems in parallel to the
-first, and are parsed by @code{serverboot} to boot the Hurd.  See
+first, and are parsed by @code{boot} to boot the Hurd.  See
 @file{/boot/servers.boot} for an example of a Hurd boot script.
  
 
_______________________________________________
Bug-hurd mailing list
Bug-hurd@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-hurd

Reply via email to