- 一步步寫嵌入式操作系統(tǒng)
- 李無言著
- 1754字
- 2018-12-29 16:24:52
前言
本書作者多年的嵌入式領域研發(fā)、管理和教學經(jīng)驗,促成了本書的誕生。
本書的目的
操作系統(tǒng)是一個古老的話題,它的出現(xiàn)和發(fā)展,對于計算機技術來說,意義非凡。這種發(fā)展不僅僅體現(xiàn)在傳統(tǒng)的計算機中,在強調(diào)精簡、高效率和實時性的嵌入式領域,操作系統(tǒng)也發(fā)揮著不可替代的作用。
熟悉嵌入式技術的讀者朋友多少都能列舉出一些典型的嵌入式操作系統(tǒng),如ECOS、UCOS、Linux、VxWorks,等等,這些操作系統(tǒng)憑借自身的優(yōu)勢,在嵌入式領域的各種應用中安營扎寨,各占據(jù)了一席之地,國內(nèi)基于這些嵌入式操作系統(tǒng)的書籍也是琳瑯滿目、層出不窮。
本書寫作的一個根本目的是能夠體現(xiàn)出嵌入式操作系統(tǒng)的基本原理和結(jié)構(gòu)特點,于是,本書力求從嵌入式操作系統(tǒng)的實現(xiàn)方法這一角度出發(fā),去講解嵌入式系統(tǒng)的基本原理,為大家展示一個嵌入式操作系統(tǒng)的全貌,不拘泥于某款具體的操作系統(tǒng),不局限在操作系統(tǒng)上的應用程序這一范疇。
一次跟Android領軍人物高煥堂先生聊天時,他的一番話讓我感觸頗深。他說,國外先進的開發(fā)工具、平臺和操作系統(tǒng)就好比是武器,而中國人喜歡拿著別人給的先進武器去打仗(做應用層開發(fā)),一旦有一天我們跟外國人打起來,人家拿走我們的武器,我們就真的是一籌莫展了。
這句話很有道理,中國計算機技術整體水平的提高需要以大量自主研發(fā)的開發(fā)工具、平臺架構(gòu)以及操作系統(tǒng)為基礎。不過,目前我們離這樣的一個目標還相去甚遠。
本書強調(diào)實踐,力求能夠幫助讀者編寫出屬于自己的嵌入式操作系統(tǒng)。如果讀者以本書為基礎(或者哪怕從中得到了一絲靈感)開發(fā)出一些優(yōu)秀的嵌入式操作系統(tǒng),那將會是非常令人高興的事情!
本書的特點
目前,市面上與操作系統(tǒng)理論相關的書有很多,與這些書相比,本書特點十分鮮明。
第一,本書的內(nèi)容立足于嵌入式技術,以目前最流行的ARM體系結(jié)構(gòu)為基礎,為您展示出嵌入式環(huán)境下操作系統(tǒng)的基本原理和實現(xiàn)方法。這是一本學習嵌入式技術,尤其是系統(tǒng)級技術的首選教材。
第二,本書是以實踐的方式講述全書內(nèi)容的,重視理論聯(lián)系實際。操作系統(tǒng)涉及的每一個角落,如進程、內(nèi)存、中斷、文件系統(tǒng)、驅(qū)動程序,都有若干段代碼供讀者實踐。實際上,讀者只需要將書中的代碼拼接起來,就可以構(gòu)成一個結(jié)構(gòu)完整的操作系統(tǒng)內(nèi)核。
第三,涉獵廣泛。為了讓讀者能夠全方位地理解操作系統(tǒng)的理論和實現(xiàn)方法,書中涉及了高級C語言編程、匯編語言、算法、ARM體系結(jié)構(gòu)等諸多領域,分析研究了包括freeRTOS、uCOSII、u-boot、Linux、Minix等在內(nèi)的操作系統(tǒng)和引導程序的源代碼。這些必備的知識和概念都將成為您深入研究任何一款操作系統(tǒng)的絕佳入門內(nèi)容。
第四,本書語言通俗易懂。書中在描述各種操作系統(tǒng)概念或原理時,力求使用通俗的語言淺顯地說明問題,這與一些學術性質(zhì)的操作系統(tǒng)讀物有明顯的不同。
誰適合讀這本書
本書是寫給那些想了解操作系統(tǒng)原理的人,也適合那些想要學習ARM技術的開發(fā)者。當然,對于那些致力于開發(fā)屬于自己的嵌入式操作系統(tǒng)的讀者們來說,本書是一部絕佳的入門指南。
當然,我們也希望本書的讀者至少具備一些基本的C語言編程基礎。除了C語言之外,如果您對微機原理之類的知識也略知一二,那么在閱讀本書的時候,將會覺得更加輕松。本書不需要讀者了解嵌入式技術,因為這些知識在書中都會涉及,但如果您也知道一些關于ARM的事,那么無論是重寫書中的代碼還是深入理解書中所講述的操作系統(tǒng)原理,都會水到渠成。
學習本書的方法
本書在知識的寬度和篇幅上做了平衡。希望展示給讀者一個操作系統(tǒng)的全貌,保證讀者能夠自己動手完成操作系統(tǒng)的編寫,而這些都需要我們在開發(fā)的過程中不斷學習書中所涉獵的知識點。毫無疑問,這些內(nèi)容是相當龐大的。
為了避免在書中羅列各種技術手冊的細節(jié),在本書的編寫過程中,我們遵循了只對用到的知識深入講解的原則。這樣做的弊端是,讀者會對很多知識點有深入的理解,但卻不全面。
因此,我們推薦閱讀本書的最佳方法是,以本書為主線,以其他本書中未提到的相關知識、參考資料為輔助。當然,如果讀者的確是時間有限,那么單憑書中所涉獵的知識,也足以完成讀者學習和實踐的過程了。
另外,這里還想強調(diào)的是,一定要多多實踐,實踐將成為您快速掌握一門新技術的不二選擇。
為了方便讀者獲取書中涉及的相關資料和工具,我們開設了一個網(wǎng)站,讀者朋友可以去訪問www.leeos.org以獲取幫助。
最后,希望所有的讀者在讀完本書之后,都能夠有所收獲,希望每位讀者都能編寫出屬于自己的嵌入式操作系統(tǒng)!