資料介紹
Linux系統(tǒng)的版本那么多,為什么要分析Linux0.11這個(gè)超級(jí)低的版本呢?答案是簡(jiǎn)單。高版本的代碼量實(shí)在是讓人心寒,讀完有瞎子摸象的感覺。我之所以想分析操作系統(tǒng)是因?yàn)槲也焕斫馑幻靼啄敲炊嗖豢伤甲h的功能是如何實(shí)現(xiàn)的。想想看,我們用了這么多年的計(jì)算機(jī)操作系統(tǒng)是如何讓它啟動(dòng)起來的呢?都說現(xiàn)在的操作系統(tǒng)是分時(shí)的、并行的,它是如何實(shí)現(xiàn)的呢?讓一一個(gè)程序掛起,讓另-一個(gè)程序運(yùn)行可能! ?甚至-一個(gè)函數(shù)還可能返回兩個(gè)不同的值!原理課上說,操作系統(tǒng)真的是這么做的,我相信但是我不理解,因?yàn)槁犝f而已,未曾親見。當(dāng)我看完了進(jìn)程的管理之后,我認(rèn)為我應(yīng)該算是理解了。不能說理論課不重要,相反,理論課的學(xué)習(xí)是太重要了。沒有原理課上講的知識(shí),閱讀代碼的時(shí)候會(huì)發(fā)現(xiàn),僅僅知道代碼這么寫會(huì)執(zhí)行什么操作,但是不知道為什么要這么執(zhí)行,理解起來很是困難。
我認(rèn)為,對(duì)于學(xué)計(jì)算機(jī)專業(yè)的同學(xué)來說,看一遍操作 系統(tǒng)的源碼是非常非常有用的,它能為以后的學(xué)習(xí)打下非常好的基礎(chǔ)。以前,我用MFC寫過一-些 Windows的小小程序,有一種在云霧中行走的感覺,總是認(rèn)為自己寫的程序好像是正確的。當(dāng)時(shí)的感覺就是,編寫Windows的應(yīng)用程序與以往的程序編寫方法完全不同,好像在Windows中自己就失去了對(duì)計(jì)算機(jī)的控制能力,完全依偎在操作系統(tǒng)的懷里。有-本書《win32匯編語言程序設(shè)計(jì)》寫得很好,講解如何在Win32的環(huán)境下使用匯編語言。當(dāng)時(shí)認(rèn)為,實(shí)在是太高深沒測(cè)了。還有,當(dāng)時(shí)在聽嵌入式系統(tǒng)的設(shè)計(jì)的時(shí)候真是霧里看花,我不知道老師在將什么。因?yàn)椴欢膶?shí)在是太多了。
現(xiàn)在,我的感覺是,計(jì)算機(jī)的世界不再那么的神秘了,-切都好像變得有些透明了,就想粘了油的紙。同時(shí),分析操作系統(tǒng)使我對(duì)C語言和匯編語言也有了一個(gè)全新的認(rèn)識(shí),感覺自己好像理解了C語言。這一切我實(shí)在是無法用語言來描述,這是一種感覺,沒有讀過源碼的人是不會(huì)有的。我可以保證,只有你能夠比較認(rèn)真的閱讀代碼的話,動(dòng)手能力- -定會(huì)顯著的提高。看完了,Linux0.11 的代碼,你會(huì)說:“我終于入門了!”
如果時(shí)間允許,閱讀高版本的Linux自然是非常好的。但是,我認(rèn)為我來說這個(gè)性價(jià)比
太低了。如果我在這段時(shí)間里去分析Linux2.*. *的代碼,也許剛剛搞明白它的啟動(dòng)過程和系統(tǒng)的結(jié)構(gòu)。而Linux0.11卻讓我知道了什么是操作系統(tǒng)。不知道實(shí)際情況如何,但我現(xiàn)在的感覺是,如果給我2個(gè)月的時(shí)間,我也可以寫一個(gè)能夠運(yùn)行的操作系統(tǒng)的。
寫這本書的目的絕對(duì)絕對(duì)不是讓你不去讀源代碼,而是讓你讀代碼的效率大大的提高。如果不去閱讀代碼,這本書沒有任何的實(shí)際意義。由于,操作系統(tǒng)的實(shí)現(xiàn)涉及到了很多很多雜亂的知識(shí)。我當(dāng)時(shí)為此而在網(wǎng)上東奔西跑,走了很多彎路,固然浪費(fèi)了很多時(shí)間。為了節(jié)約你的時(shí)間,我將閱讀的時(shí)候遇到過的困難寫了下來。同時(shí),我為這本書建立了一個(gè)FTP服務(wù)器,將我參考過的文獻(xiàn)資料以及一些工具和試驗(yàn)的代碼共享了上面。
在網(wǎng)上關(guān)于高版本Linux的分析可以說是海量的,但是關(guān)于Linux0.11的我就知道一本,是中文的,叫做《Linux0.11版本完全分析》。因此我想在此感謝他為我們初學(xué)者做出的貢獻(xiàn)。
Linux操作系統(tǒng)的版本很多,0.11 版是Linus第一個(gè)正式發(fā)布的版本,代碼量在1萬行左右。它包括了進(jìn)程的管理、內(nèi)存管理、設(shè)備管理和文件管理。在這個(gè)操作系統(tǒng)上可以運(yùn)行.out格式的可執(zhí)行文件,甚至運(yùn)行批處理文件,支持多進(jìn)程。它利用了很多在原理課上提到的技術(shù)。但是,由于這個(gè)版本很低,因此也有許多技術(shù)它沒有使用。例如:線程、交換內(nèi)存、實(shí)現(xiàn)進(jìn)程同步和互斥的PV操作等。同時(shí),它僅僅支持Minix1.0的文件系統(tǒng),也沒有對(duì)網(wǎng)絡(luò)和虛擬文件系統(tǒng)的支持。但是,這些不足不會(huì)影響你對(duì)操作系統(tǒng)的入門的。
操作系統(tǒng)是非常的復(fù)雜的,但是在Linux0.11中又顯得那么的簡(jiǎn)單。對(duì)于用戶來說,操作系統(tǒng)的結(jié)構(gòu)是:
- STM32MP157 Linux系統(tǒng)移植開發(fā)篇7:Linux內(nèi)核目錄結(jié)構(gòu)詳解
- 嵌入式Linux的內(nèi)核編譯
- 嵌入式LINUX系統(tǒng)內(nèi)核和內(nèi)核模塊調(diào)試
- Linux內(nèi)核開發(fā)框架學(xué)習(xí)資料匯總 24次下載
- 華為鴻蒙系統(tǒng)內(nèi)核源碼分析上冊(cè) 17次下載
- Linux內(nèi)核GPIO操作函數(shù)的詳解分析 28次下載
- 鴻蒙內(nèi)核源碼分析 :內(nèi)核最重要結(jié)構(gòu)體 35次下載
- 鴻蒙內(nèi)核源碼分析: 虛擬內(nèi)存和物理內(nèi)存是怎么管理的 19次下載
- Linux的zImage內(nèi)核源碼詳細(xì)分析 15次下載
- Linux入門教程之Linux的內(nèi)核詳細(xì)資料概述 10次下載
- Linux 0.01版本內(nèi)核的源碼和注釋的詳細(xì)資料免費(fèi)下載 0次下載
- 基于Linux 2.6內(nèi)核Makefile分析 0次下載
- linux內(nèi)核啟動(dòng)內(nèi)核解壓過程分析 1次下載
- Android內(nèi)核分析
- Linux的內(nèi)核教程 0次下載
- AOSP源碼定制-內(nèi)核驅(qū)動(dòng)編寫 708次閱讀
- 獲取Linux內(nèi)核源碼的方法 514次閱讀
- Linux內(nèi)核自解壓過程分析 691次閱讀
- AOSP Android11系統(tǒng)源碼和內(nèi)核源碼簡(jiǎn)析 4850次閱讀
- Linux內(nèi)核系統(tǒng)調(diào)用概述及實(shí)現(xiàn)原理 2095次閱讀
- 為何要精讀鴻蒙內(nèi)核源碼? 1687次閱讀
- 鴻蒙內(nèi)核源碼分析:鴻蒙內(nèi)核的每段匯編代碼解析 4092次閱讀
- Linux:QEMU調(diào)試內(nèi)核的步驟 3040次閱讀
- 深入linux內(nèi)核架構(gòu) Linux內(nèi)核架構(gòu)分析解讀 3604次閱讀
- Linux 5.4.1內(nèi)核已經(jīng)發(fā)布你期待使用嗎 3193次閱讀
- Linux內(nèi)核與Android的關(guān)系 4504次閱讀
- 如何自行編譯一個(gè)Linux內(nèi)核的詳細(xì)資料概述 3128次閱讀
- Linux內(nèi)核地址映射模型與Linux內(nèi)核高端內(nèi)存詳解 3397次閱讀
- Linux內(nèi)核開發(fā)工具介紹 4641次閱讀
- 基于Android的Linux內(nèi)核的電源管理:概述 931次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多