歡迎您光臨本站 註冊首頁

理解Linux內核註釋

←手機掃碼閱讀     火星人 @ 2014-03-26 , reply:0

   內核是Linux的心臟,它是在引導時裝入的程序,用來提供用戶層程序和硬體之間的介面,執行發生在多任務系統中的實際任務轉換,處理讀寫磁碟的需求,處理網路介面,以及管理內存。一般情況下,自動安裝的內核無需任何改動就可以在機器上運行,但若要為新的設備添加支持程序或削減內核支持的設備列表,以降低內存需求,則需要配置內核。

   通常,內核源代碼樹以一個名為linux-X.X.XX.tar.gz的文件出現,X.X.XX為內核的版本號。內核的版本號分為三部分(以2.0.35為例):

   1、主版本號:此內核是2。它表明對內核的重大改進,很少改變。

   2、次版本號:此內核是0。它表明內核的穩定性。偶數號(如0、2、4等)的內核是穩定的產品版本。而奇數號(如1、3、5等)的內核是處於開發過程中的內核,一般包含著最近開發的試驗性代碼,它不太穩定,有時可能包含著致命的錯誤。

   3、修訂號:此內核是35。它表明這一發布版本的增補級。

   下面我們來看看如何升級內核(以2.0.35版為例):

   1、獲取源代碼樹:linux-2.0.35.tar.gz。

   2、解開內核:

   cd /usr/src/ (進入到目錄 /usr/src/)

   rm -rf /usr/src/linux (將舊的內核源代碼刪除,也可以將其移走)

   cp linux-2.0.35.tar.gz /usr/src/ (將新的內核文件拷貝到剛才的目錄)

   tar xzf linux-2.0.35.tar.gz (將內核文件解壓縮,產生新目錄/usr/src/linux)

   3、創建符號鏈接:

   cd /usr/include (進入到目錄 /usr/include)

   rm -rf linux asm scsi (刪除所有的老的頭文件)

   ln -s /usr/src/linux/include/linux linux ln -s /usr/src/linux/include/asm-i386 asm ln -s /usr/src/linux/include/scsi scsi (創建符號鏈接將你的系統指向包含有新內核代碼的新的頭文件)

   cd /usr/src/linux (進入目錄 /usr/src/linux)

   make mrproper (清除任何將引起問題的附加額外的源代碼)

4、配置內核:

   cd /usr/src/linux (進入目錄 /usr/src/linux)

   make menuconfig (用菜單形式配置內核。根據自己的要求,配置內核,不確定的用預設配置。另有make config----文本界面,make xconfig----圖形界面命令可選。此外注意保存配置)

   5、創建內核(在目錄 /usr/src/linux下):

   make dep (此命令用來分析內核的配置並創建相應的相關樹,決定那些內容該編譯,那些內容不該編譯)

   make clean (此命令用來清楚所有以前編譯的痕迹)

   make zImage (編譯內核,如果內核較大,用make bzImage)

   make modules (編譯模塊)

   make modules_install (安裝模塊)

   cp /usr/src/linux/arch/i386/boot/zImage /boot/zImage (將zImage拷貝到/boot)

   6、把新內核放入lilo:

   vi /etc/lilo.conf (用vi編輯/etc/lilo.conf)

   寫清/image=/boot/zImage 保存退出。

   lilo (執行lilo命令)

   7、起用新內核注意,以上工作需以root身份完成。

[火星人 ] 理解Linux內核註釋已經有427次圍觀

http://coctec.com/docs/linux/show-post-182971.html