old-www/HOWTO/Bootdisk-HOWTO/x1440.html

247 lines
3.6 KiB
HTML

<HTML
><HEAD
><TITLE
>The Linux boot process</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
"><LINK
REL="HOME"
TITLE="The Linux Bootdisk HOWTO"
HREF="index.html"><LINK
REL="UP"
TITLE="Resources and pointers"
HREF="a1376.html"><LINK
REL="PREVIOUS"
TITLE="Ramdisk usage"
HREF="x1434.html"><LINK
REL="NEXT"
TITLE="LILO boot error codes"
HREF="a1483.html"></HEAD
><BODY
CLASS="SECT1"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>The Linux Bootdisk HOWTO</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="x1434.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>A. Resources and pointers</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="a1483.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="AEN1440"
>A.5. The Linux boot process</A
></H1
><P
>For more detail on the Linux boot process, here are some pointers:
<P
></P
><UL
><LI
><P
>The <A
HREF="http://linuxdoc.org/LDP/sag/index.html"
TARGET="_top"
><I
CLASS="CITETITLE"
>Linux
System Administrators' Guide</I
></A
> has a section on booting.</P
></LI
><LI
><P
>The <A
HREF="http://www.ibiblio.org/pub/Linux/system/boot/lilo/lilo-t-21.ps.gz"
TARGET="_top"
>LILO ``Technical overview''</A
> has the definitive technical, low-level
description of the boot process, up to where the kernel is started.</P
></LI
><LI
><P
> The source code is the ultimate guide. Below are some kernel
files related to the boot process. If you have the Linux kernel source code,
you can find these under <TT
CLASS="FILENAME"
>/usr/src/linux</TT
> on your machine;
alternatively, Shigio Yamaguchi (shigio at tamacom.com) has a very nice <A
HREF="http://www.tamacom.com/tour/linux/index.html"
TARGET="_top"
>hypertext kernel
browser</A
> for reading kernel source files. Here are some relevant files
to look at:
<P
></P
><DIV
CLASS="VARIABLELIST"
><DL
><DT
><TT
CLASS="FILENAME"
>arch/i386/boot/bootsect.S</TT
> and
<TT
CLASS="FILENAME"
>setup.S</TT
></DT
><DD
><P
>Contain assembly code for the bootsector itself.</P
></DD
><DT
><TT
CLASS="FILENAME"
>arch/i386/boot/compressed/misc.c</TT
></DT
><DD
><P
>Contains code for uncompressing the kernel.</P
></DD
><DT
><TT
CLASS="FILENAME"
>arch/i386/kernel/</TT
></DT
><DD
><P
>Directory containing kernel initialization code.
<TT
CLASS="FILENAME"
>setup.c</TT
> defines the ramdisk word.</P
></DD
><DT
><TT
CLASS="FILENAME"
>drivers/block/rd.c</TT
></DT
><DD
><P
>Contains the ramdisk driver. The procedures
<B
CLASS="COMMAND"
>rd_load</B
> and <B
CLASS="COMMAND"
>rd_load_image</B
> load blocks from a device into a
ramdisk. The procedure
<B
CLASS="COMMAND"
>identify_ramdisk_image</B
> determines what
kind of filesystem is found and whether it is compressed.</P
></DD
></DL
></DIV
>&#13;</P
></LI
></UL
>&#13;</P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="x1434.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="a1483.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Ramdisk usage</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="a1376.html"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>LILO boot error codes</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>