《Linux嵌入式實時應用開發實戰(原書第3版)》—— 導讀

前 言
使用minix的朋友們,大家好!
我正在為386(486)AT係列編寫一個(免費的)操作係統(這僅僅是業餘愛好,不會太大,也不會像GNU那樣專業)。我從4月份開始醞釀,現在快準備好了。我希望得到任何關於minix的反饋,包括你們在使用過程中喜歡和不喜歡的地方。因為我的操作係統和它多少有點類似(比如文件係統具有相同的物理布局(出於實用的原因))。
我目前已經移植了bash(1.08)和gcc(1.40),而且進展好像很順利。這意味著我將在未來幾個月內把這個係統推向應用,所以我想知道大多數人希望係統具有什麼特性。歡迎任何建議,但是我不能保證都能實現∶-)
Linus(torvalds@kruuna.helsinki.fi)
補充一下,任何minix代碼都是免費的,而且具有多線程的文件係統。
它不是便攜的(如使用386任務切換等),很可能永遠不能支持除了AT硬盤以外的東西,這就是我目前能達到的狀態∶-(
在當時剛出現的隻能處理文字的互聯網上,Linus Torvalds,一個芬蘭的大學生,用這則信息開啟了一場革命。當我在2011年年末寫下這些文字時,Linux已經慶祝了它的20周年紀念日。我懷疑,Linus當時並沒有想到他的“愛好”項目會很快變成一個功能強大的32位和後來的64位操作係統,甚至可以與微軟有力地競爭。
毫無疑問,20年來,Linux走過了很長的一段路。1991年9月17日首次發布的0.01版本包含88個文件,總共278KB。最新發布的Linux版本包括近40 000個文件,超過400MB。據說,全球幾千個程序員都不同程度地參與到了Linux的開發中。
自2006年本書的第2版出版以來,Linux世界又發生了很多變化,這也是本書再版的一個直接原因。Linux內核持續改進,為了慶祝20周年,最近提高到了3.0版。2007年年底,穀歌引入了安卓係統。據統計,截至2011年8月,安卓占有智能手機市場48%的份額,每天有500 000台設備被激活。
在本書第1版的前言中我就承認,我沒有真正喜歡過UNIX,因為它有意設計得晦澀而且很難使用。一開始,Linux在這方麵幾乎沒做任何改變,我也仍然堅持這種幾分喜愛幾分討厭的態度。
但是,當Linux逐漸開始為桌麵處理世界的黃金時代做好準備時,它在我工作的嵌入式領域和網絡服務器方麵都取得了顯著的成就。2007年,LinuxDevices.com報道了Linux正用於近50%的嵌入式項目,到2012年將有超過70%的相關發布產品。甚至微軟公司也承認全球有60%的網絡服務器運行Linux操作係統,與此同時隻有40%運行Windows。
Linux確實很複雜,除非你已經是一個UNIX高手,學習起來才會很快。相關信息就在網上,但是通常它們既不易找到也不易讀懂。市場上有數百本已出版的Linux書籍,覆蓋了從初學者指南到內核內部工作原理的各個方麵。目前為止甚至有不少書討論過嵌入式和實時應用領域的Linux。
我決定學習Linux,一部分是因為我看到了這個新興的市場機會,另一部分是因為這種開源的開發模式激勵了我。僅僅是出於對它的興趣,全世界程序員的創意都對這個高度成熟的操作係統做出了貢獻。擁有完整的源代碼不僅允許你隨自己意願進行改動,也讓你(至少在理論上)能理解代碼是怎麼工作的。
開源有潛力成為社會商業模式轉換方麵的一個重要範例,因為它表明在解決問題方麵,合作可以和競爭同樣有效。而且就在我懷疑是否有人能通過Linux得到驚人的財富時,許多公司已經證明針對Linux建立一個賺錢的商業模式是可能的。
讀者和閱讀準備
我寫本書的目的是寫一本在我初學Linux時渴望擁有的書。因此,基於這樣的想法,本書是直接麵向兩種不同讀者的:
1)主要讀者是嵌入式程序員,他們需要得到在嵌入式領域的Linux指導。這也是我初學Linux時的狀況和我開始學習Linux的原因,因此,這似乎是架構本書的一個合理方法。
2)另一類讀者是Linux程序員,他們需要得到嵌入式和實時編程概念的指導。
因此,盡管本書采用了一個新的角度,但每類讀者都很可能看到一些熟悉的內容。
目 錄
第一部分 入 門 指 導
第1章 嵌入式和實時空間
1.1 什麼是嵌入式
1.2 什麼是實時
1.3 為什麼Linux適用
1.4 哪裏用嵌入式Linux
1.5 開源協議
1.6 資源
第2章 安裝Linux
2.1 發行版
2.2 硬件需求
2.3 安裝方案
2.4 DVD 還是激活CD
2.5 安裝過程
2.6 資源
第3章 Linux入門
3.1 運行Linux——KDE
3.2 Linux屬性
3.3 保護模式架構
3.4 Linux進程模型
3.5 Linux文件係統
3.6 係統配置
3.7 shell
3.8 獲得幫助
3.9 資源
最後更新:2017-07-07 15:03:36