247 lines
3.6 KiB
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
|
|
> </P
|
|
></LI
|
|
></UL
|
|
> </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
|
|
> |