閱讀時間:2015年11月2日
閱讀技巧:閱讀書的目錄
閱讀筆記:



boot/目錄下的三個匯編程序,其中包括磁盤引導(dǎo)程序 bootsect.s、32 位運行啟 動代碼程序 head.s 和獲取 BIOS 中參數(shù)的 setup.s 匯編程序。

init/目錄中內(nèi)核系統(tǒng)的初始化程序 main.c。它是內(nèi)核完成所有初始化工作并進入 正常運行的關(guān)鍵地方。在介紹該程序時將需要查看其所調(diào)用的其它程序,因此對后續(xù)章節(jié)的閱讀可以按 照這里調(diào)用的順序進行。當你能真正看懂直到 main.c 程序為止的所有程序時,你應(yīng)該已經(jīng)對 Linux 內(nèi)核 有了一定的了解,可以說已經(jīng)有一半入門了?,但你還需要對文件系統(tǒng)、系統(tǒng)調(diào)用、各種驅(qū)動程序等進 行更深一步的閱讀。

kenel/目錄中的所有程序。

內(nèi)核源代碼 fs/目錄中的文件系統(tǒng)程序,在看這章內(nèi)容時建議你能夠暫停一下而去閱讀 Andrew S. Tanenbaum 的《操作系統(tǒng)設(shè)計與實現(xiàn)》一書中有關(guān) minix 文件系統(tǒng)的章節(jié),因為最初的 Linux 系統(tǒng)是只支持 minix 一種文件系統(tǒng),Linux 0.11 版也不例外。

mm/目錄中的內(nèi)存管理程序。要透徹地理解這方面的內(nèi)容,需要對 Intel 80X86 微處理 器的保護模式運行方式有足夠的理解,因此本章在適當?shù)牡胤桨休^為完整的有關(guān) 80X86 保護模式運 行方式的說明,這些知識基本上是從 Intel 80386 程序員編程手冊(Intel 80386 Programmer's Reference Manual) 中摘錄下來的,但在此是以源代碼中的運用實例為對象進行解說的,因此應(yīng)該能更好地理解它 的原理。

include/目錄中的所有頭文件進行詳細說明,基本上對每一個定義、每一個常量或數(shù)據(jù) 結(jié)構(gòu)都進行了詳細注釋。為了便于在閱讀時參考查閱,本書在附錄中還對一些經(jīng)常要用到的重要的數(shù)據(jù) 結(jié)構(gòu)和變量進行了歸納注釋,但這些內(nèi)容其實都能在這一章中找到。

Linux 0.11 版內(nèi)核源代碼中 lib/目錄中的所有文件。由于這個版本較低,所以這里的 內(nèi)容并不是很多,可以很快地看完。這也是我們?yōu)槭裁催x擇 0.11 版的原因之一。

tools/目錄下的 build.c 程序。這個程序并不會包括在編譯生成的內(nèi)核映像(image)文 件中,它僅用于將內(nèi)核中的磁盤引導(dǎo)程序塊與其它主要內(nèi)核模塊連接成一個完整了內(nèi)核映像(kernel image)文件。