<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>Linux 2.4.x Initialization for IA-32 HOWTO: Introduction</TITLE> <LINK HREF="Linux-Init-HOWTO-2.html" REL=next> <LINK HREF="Linux-Init-HOWTO.html#toc1" REL=contents> </HEAD> <BODY> <A HREF="Linux-Init-HOWTO-2.html">Next</A> Previous <A HREF="Linux-Init-HOWTO.html#toc1">Contents</A> <HR> <H2><A NAME="s1">1. Introduction</A></H2> <P> <P>Portions of this text come from comments in the kernel source files (obviously). I have added annotations in many places. I hope that this will be useful to kernel developers -- either new ones or experienced ones who need more of this type of information. However, if there's not enough detail here for you, "Use the Source." <P> <H2><A NAME="ss1.1">1.1 Overview</A> </H2> <P> <P>This description is organized as a brief overview which lists the sections that are described later in more detail. <P>The description is in three main sections. The first section covers early kernel initialization on IA-32 (but only after your boot loader of choice and other intermediate loaders have run; i.e., this description does not cover loading the kernel). This section is based on the code in "linux/arch/i386/boot/setup.S" and "linux/arch/i386/boot/video.S". <P>The second major section covers Linux initialization that is x86- (or i386- or IA-32-) specific. This section is based on the source files "linux/arch/i386/kernel/head.S" and "linux/arch/i386/kernel/setup.c". <P>The third major section covers Linux initialization that is architecture-independent. This section is based on the flow in the source file "linux/init/main.c". <P>See the References section for other valuable documents about booting, loading, and initialization. <P> <H2><A NAME="ss1.2">1.2 This document</A> </H2> <P> <P>This document describes Linux 2.4.x initialization on IA-32 (or i386 or x86) processors -- after one or more kernel boot loaders (if any) have done their job. <P>You can format it using the commands (for example): <P> <BLOCKQUOTE><CODE> <PRE> % sgml2txt ia32_init_240.sgml </PRE> </CODE></BLOCKQUOTE> or <BLOCKQUOTE><CODE> <PRE> % sgml2html ia32_init_240.sgml </PRE> </CODE></BLOCKQUOTE> <P>This will produce plain ASCII or HTML files respectively. You can also produce LaTeX, GNU, and RTF info by using the proper sgmltool (man sgmltools). <P> <H2><A NAME="ss1.3">1.3 Contributions</A> </H2> <P> <P>Additions and corrections are welcome. Please send them to me (rddunlap@ieee.org). Contributions of section descriptions that are used will be credited to their author(s). <P> <H2><A NAME="ss1.4">1.4 Trademarks</A> </H2> <P> <P>All trademarks are the property of their respective owners. <P> <H2><A NAME="ss1.5">1.5 License</A> </H2> <P> <P>Copyright (C) 2001 Randy Dunlap. <P>This document may be distributed only subject to the terms and conditions set forth in the LDP (Linux Documentation Project) License at "http://www.linuxdoc.org/COPYRIGHT.html". <P> <HR> <A HREF="Linux-Init-HOWTO-2.html">Next</A> Previous <A HREF="Linux-Init-HOWTO.html#toc1">Contents</A> </BODY> </HTML>