📄 linux系统初始化过程解析.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://www.heblinux.org/view.php?skin=art&ID=2753 -->
<HTML><HEAD><TITLE>linuxbyte</TITLE>
<META http-equiv=Content-Language content=zh-cn>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>A:link {
COLOR: #000000; TEXT-DECORATION: none
}
A:visited {
COLOR: #000000; TEXT-DECORATION: none
}
A:hover {
TEXT-DECORATION: underline
}
BODY {
FONT-SIZE: 12px; SCROLLBAR-ARROW-COLOR: #395d81; BACKGROUND-COLOR: #ffffff
}
TABLE {
BORDER-RIGHT: #889093 1px solid; BORDER-TOP: #889093 1px solid; FONT-SIZE: 9pt; BORDER-LEFT: #889093 1px solid; COLOR: #000000; BORDER-BOTTOM: #889093 1px solid
}
TEXTAREA {
BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT-WEIGHT: normal; FONT-SIZE: 12px; BORDER-LEFT: #666666 1px solid; COLOR: #000000; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: Verdana, Tahoma, Arial; BACKGROUND-COLOR: #f8f8f8
}
INPUT {
BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; FONT-WEIGHT: normal; FONT-SIZE: 12px; BORDER-LEFT: #666666 1px solid; COLOR: #000000; BORDER-BOTTOM: #666666 1px solid; FONT-FAMILY: Verdana, Tahoma, Arial; BACKGROUND-COLOR: #f8f8f8
}
SELECT {
FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #000000; FONT-FAMILY: Tahoma, Verdana; BACKGROUND-COLOR: #f8f8f8
}
.nav {
FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Tahoma, Verdana
}
.header {
FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #ffffff; FONT-FAMILY: Tahoma, Verdana; BACKGROUND-COLOR: #698cc3
}
.category {
FONT-SIZE: 11px; COLOR: #000000; FONT-FAMILY: Tahoma, Verdana; BACKGROUND-COLOR: #efefef
}
.multi {
FONT-SIZE: 11px; COLOR: #003366; FONT-FAMILY: Tahoma, Verdana
}
.smalltxt {
FONT-SIZE: 11px; FONT-FAMILY: Tahoma, Verdana
}
.mediumtxt {
FONT-SIZE: 12px; COLOR: #000000; FONT-FAMILY: Tahoma, Verdana
}
.bold {
FONT-WEIGHT: bold
}
</STYLE>
</STYLE>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY leftMargin=0 background=LINUX系统初始化过程解析.files/bg.gif topMargin=0
rightMargin=0>
<TABLE
style="BORDER-RIGHT: #656b6d 1px solid; TABLE-LAYOUT: fixed; BORDER-TOP: #656b6d 1px solid; BORDER-LEFT: #656b6d 1px solid; BORDER-BOTTOM: #656b6d 1px solid; WORD-WRAP: break-word"
cellSpacing=0 cellPadding=0 width="98%" align=center bgColor=#ffffff border=0>
<TBODY>
<TR height=0>
<TD width="25%"></TD>
<TD width="65%"></TD>
<TD width="10%"></TD></TR>
<TR height=26>
<TD vAlign=center align=right width="100%"
background=LINUX系统初始化过程解析.files/topbg.jpg colSpan=3>
<FORM action=search.php method=post><SELECT name=radiobutton> <OPTION
value=news selected>-- 新闻搜索 --</OPTION> <OPTION value=articles>-- 文章搜索
--</OPTION> <OPTION value=software>-- 软件搜索 --</OPTION></SELECT><INPUT
size=15 name=Search> <INPUT type=image src="LINUX系统初始化过程解析.files/go.gif"
border=0> </FORM></TD></TR>
<TR>
<TD align=left width="20%"><IMG src="LINUX系统初始化过程解析.files/logo.jpg"
border=0></TD>
<TD align=middle width="60%"><IMG src="LINUX系统初始化过程解析.files/logo2.jpg"
border=1></TD>
<TD align=middle width="20%">::<A
href="http://www.heblinux.org/news.php">网站新闻</A>::<BR>::<A
href="http://www.heblinux.org/articles.php">技术文献</A>::<BR>::<A
href="http://www.heblinux.org/softs.php">软件中心</A>::<BR>::<A
href="http://www.heblinux.org/bbs/index.php" target=_blank>讨论区</A>::
</TD></TR>
<TR>
<TD background=LINUX系统初始化过程解析.files/tabledi.jpg colSpan=3 height=6></TD></TR>
<TR>
<TD background=LINUX系统初始化过程解析.files/titlebg.jpg colSpan=3 height=22>
<CENTER> <B><A href="http://www.heblinux.org/index.php">首页</A></B> ||
<B><A href="http://www.heblinux.org/bbs/index.php" target=new>讨论区</A></B>
|| <B><A href="http://www.heblinux.org/news.php">新闻中心</A></B> || <B><A
href="http://www.heblinux.org/articles.php">技术文献</A></B> || <B><A
href="http://www.heblinux.org/softs.php">软件中心</A></B> || <B><A
href="http://www.heblinux.org/about.php">关于本站</A></B> || <B><A
href="mailto:oneteam@mail.linuxbyte.net">联系本站</A></B>||</CENTER></TD></TR></TBODY></TABLE>
<TABLE
style="TABLE-LAYOUT: fixed; BORDER-COLLAPSE: collapse; WORD-WRAP: break-word"
cellSpacing=0 cellPadding=0 width="98%" align=center bgColor=#ffffff border=1>
<TBODY>
<TR><!--第二列-->
<TD vAlign=top align=left width="75%"><BR> <A
href="http://www.heblinux.org/index.php">首页</A><< <A
href="http://www.heblinux.org/articles.php">技术文献</A><< <B>LINUX系统初始化过程解析
</B><BR><BR>
<UL> <BR>作者:jackold <BR><BR><BR><BR>文章摘要:
<BR> 本文将着眼LINUX系统初始化的两个部分,初步解析LINUX的特点。 <BR><BR><BR><BR><BR>一、 概况
<BR><BR> 系统的引导和初始化是操作系统实现控制的第一步,也是集中体现系统优劣的重要部分。LINUX作为一个免费的准UNIX操作系统,在众多业余爱好者以及小型商业处理市场表现不俗,成为继WINDOWS系列后的另一个主流。了解LINUX系统的初始化,对于进一步掌握UNIX系统是十分有帮助的。
<BR>通常,LINUX系统的初始化可以分为两部分:内核部分和init程序部分。内核主要完成系统的硬件检测和初始化,init程序则主要完成系统的各项配置。
<BR> 本文将着眼LINUX系统初始化的两个部分,初步解析LINUX的特点。 <BR><BR>二、 初始化详解 <BR><BR>1.内核部分
<BR><BR> 通常情况下,计算机首先用LILO程序引导内核的一部分(这部分没有被压缩),以此来引导内核的其他部分。LILO程序是最常用的、也是比较完善的LINUX系统引导器,PC机通常从硬盘的引导扇区读取这部分程序。关于LILO程序的详细内容可以参照其他资料。
<BR> 内核被解压缩并装入内存后,开始初始化硬件和设备驱动程序。下面是内核初始化系统的具体步骤(各个版本之间会有一定的差异,下面是2.2.16-22版本的一个例子):
<BR>(1) 检测CPU的主频和控制台的显示类型,并对CPU速度用Bogo MIPS程序进行估算。 <BR>(2)
此后内核通过外设显示系统内存信息:如131072k(128M),127820k剩余,使用的具体情况为:1048k内核代码,412k保留,1728k数据等。尔后是各类hash
table的信息。 <BR>(3) 内核加载磁盘空间限量支持,完成CPU检测(包括检查数学协处理器),以及POSIX适应性检测。 <BR>(4)
初始化PCI BIOS,检测系统的PCI设备,并加载TCP/IP网络支持。 <BR>(5)
内核开始检测其他各种硬件设备:如PS/2端口设备,串行口设备,硬盘,软盘,SCSI等。
<BR>此后,内核将启动init程序,形成系统的第一个进程。下面是dmesg记录的内核初始化信息(部分): <BR><BR>Detected
499845 kHz processor. <BR>Console: colour VGA+ 80x25 <BR>Calibrating
delay loop... 996.15 BogoMIPS <BR>Memory: 127820k/131072k available
(1048k kernel code, 412k reserved, 1728k data, 64k init, 0k bigmem)
<BR>Dentry hash table entries: 262144 (order 9, 2048k) <BR>Buffer cache
hash table entries: 131072 (order 7, 512k) <BR>Page cache hash table
entries: 32768 (order 5, 128k) <BR>VFS: Diskquotas version dquot_6.4.0
initialized <BR>CPU: Intel Celeron (Mendocino) stepping 05 <BR>Checking
386/387 coupling... OK, FPU using exception 16 error reporting.
<BR>Checking hlt instruction... OK. <BR>POSIX conformance testing by
UNIFIX <BR>mtrr: v1.35a (19990819) Richard Gooch (<A
href="mailto:rgooch@atnf.csiro.au">rgooch@atnf.csiro.au</A>) <BR>PCI:
PCI BIOS revision 2.10 entry at 0xfb190 <BR>PCI: Using configuration
type 1 <BR>PCI: Probing PCI hardware <BR>Linux NET4.0 for Linux 2.2
<BR>…… <BR>Starting kswapd v 1.5 <BR>Detected PS/2 Mouse Port.
<BR>Serial driver version 4.27 with MANY_PORTS MULTIPORT SHARE_IRQ
enabled <BR>ttyS00 at 0x03f8 (irq = 4) is a 16550A <BR>ttyS01 at 0x02f8
(irq = 3) is a 16550A <BR>pty: 256 Unix98 ptys configured <BR>apm: BIOS
version 1.2 Flags 0x07 (Driver version 1.13) <BR>Real Time Clock Driver
v1.09 <BR>RAM disk driver initialized: 16 RAM disks of 4096K size <BR>……
<BR>hda: QUANTUM FIREBALLlct10 15, ATA DISK drive <BR>hdd: ASUS
CD-S400/A, ATAPI CDROM drive <BR>ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
<BR>ide1 at 0x170-0x177,0x376 on irq 15 <BR>hda: QUANTUM FIREBALLlct10
15, 14324MB w/418kB Cache, CHS=1826/255/63 <BR>Floppy drive(s): fd0 is
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -