需要多久才能看完linux內(nèi)核源碼?
linux 0.11的內(nèi)核源碼,結(jié)合下面這本書,我花了大概一個(gè)寒假(1個(gè)半月),看了一遍。
然而,現(xiàn)在的內(nèi)核已經(jīng)膨脹的不成樣子了,以還不算最新的linux-4.9.229為例:
整個(gè)內(nèi)核源碼一共約 801M:
驅(qū)動(dòng)代碼占了大概一半,大約407M:
體系相關(guān)的代碼大約164M:
網(wǎng)路子系統(tǒng)相關(guān)的代碼29M:
文件系統(tǒng)相關(guān)的代碼38M:
linux內(nèi)核核心代碼大約7.7M:
但是就這7.7M,其實(shí)你要完全看完看懂也不容易。linux內(nèi)核代碼涉及c語言、硬件組成原理、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)和算法等,這些基礎(chǔ)知道你都具備了嗎?如果沒有具備,即使看完linux內(nèi)核源碼,你也看不懂liux內(nèi)核的精髓。
linux內(nèi)核源碼大而全,一個(gè)人,即使再聰明、再有精力,也不可能完全看完、看懂所有的linux內(nèi)核源碼。你得選擇一個(gè)主線進(jìn)行深入研究,這些主線可以是:
linux內(nèi)核啟動(dòng)過程研究linux驅(qū)動(dòng)架構(gòu)的學(xué)習(xí)和研究linux網(wǎng)絡(luò)子系統(tǒng)的研究linux內(nèi)存管理機(jī)制的研究linux調(diào)度器的學(xué)習(xí)和研究linux進(jìn)程管理的學(xué)習(xí)和研究linux虛擬機(jī)制(kvm)的學(xué)習(xí)和研究linux內(nèi)核實(shí)時(shí)化技術(shù)的研究沿著某一個(gè)主線,深入進(jìn)去,在研究清楚這個(gè)主線的同時(shí),向其他的主線擴(kuò)展、滲透和學(xué)習(xí)。由點(diǎn)到線、由線到面、由面到體,層層深入、不斷精進(jìn),是學(xué)習(xí)linux內(nèi)核源碼的一個(gè)有效的方法。
關(guān)注”技術(shù)簡說“,帶你由淺入深學(xué)習(xí)linux內(nèi)核源碼。linux內(nèi)核開發(fā)100講免費(fèi)教程,每周二、周四晚上9點(diǎn)更新視頻,每周一、周三晚9點(diǎn)更新文章,敬請(qǐng)收看。進(jìn)我主頁點(diǎn)”視頻“欄目即可觀看。