Linux 2.6 源碼學習-概述

來源:互聯網
上載者:User

linux 2.6 是當前比較主流的作業系統核心,一直想花時間系統的學習一遍。回顧之前研究的核心源碼經曆,ucos作為一個嵌入式作業系統,其版本2的總代碼不超過5K,如果一個有研發經驗、作業系統基礎的工程師2,3周就可以深入的過一遍。linux 0.11版本就要複雜的多,雖然程式碼也不超過15K,並且單個檔案也沒有超過1K(映像是大的也就7,800),但由於保護模式、裝置驅動、檔案系統、段頁式記憶體管理以及大量彙編代碼的加入,其理解的難度相比較於ucos,我認為差不多要花費5倍的時間。這還多虧可以參考趙炯博士的完全分析一書,真心敬佩這樣一絲不苟的技術大拿。

我原本以為在分析了ucos和linux 0.11後在2.6版本中會輕鬆不少,但真正開啟代碼後還是倒吸一口涼氣。且不說總代碼量以數十萬計,光一個reschedule.c檔案就蹦著10K去了,其代碼實現(應該是考慮多CPU支援、多核的緣故)也複雜的多。對於這個版本的源碼,即使去掉CPU結構、各類驅動、網路通訊協定、各類檔案系統,其工作量也不可能像linux 0.11 那樣達到完全學習,因此今年計劃目標如下:

  1. 參考深入理解核心、情景分析、核心分析及編程三本書,針對版本為2.6.11;
  2. 對linux的主幹內容進行代碼走讀,並輸出博文,走讀內容分類如;
  3. kvm虛擬化部分作為重點學習對象(該部分2.6.11版本尚未支援,參考2.6.43版本),爭取做到源碼完全分析;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.