嵌入式參考書籍-列表【轉】

「Curriculum of Open Source University」
   三百六十行,各行亦有各行的書櫃,一些瞧過的書,Linux嵌入式方向,年底了,寫個讀後感大集合,若對大夥兒有用,鼓個掌,龍年攢人品。都是些我的觀點,如有不當,看官一笑了之。
   
第一階段:
  
《鳥哥的私房菜》
     淺顯易懂,邊讀邊實踐,近距離認識linux。
     目標:掌握shell;
          擺脫Windows的思惟束縛。
      
《c陷阱和缺陷》/《c與指針》
     在一個菜鳥自覺得是的時候,此書給予的當頭一棒可謂是輕重適中。
     對本身的c能力及編程能力等級給予從新認定。
     同時也是面試衝刺必備。
《高質量c_c++編程》
     編程是門藝術:本身的思惟要清晰,更要讓讀者看得舒服。
     逐漸造成一套規範的編程風格。
  
《Linux內核設計與實現》
     無數人士推薦的內核入門手冊,簡單易懂。
     「麻雀雖小,五臟俱全」,先把握內核總體,便於之後各部分的深刻理解。
  
《嵌入式Linux應用開發徹底手冊》
     嵌入式有「硬」又有」軟」,一本由硬件角度出發的驅動手冊,從單片機的視角瞭解ARM驅動編程。
     內容貼近datasheet,就是IC老了點。s3c2440做爲一款經典的嵌入式入門IC已被s3c6410取代。雖然s3c6410被視爲入門級,相比s3c2440性能升級了很多,複雜度也大爲增長。隨着處理器的不斷升級,只能苦了往後還在丫丫學步的菜鳥們。
  
《Linux設備驅動開發詳解》
     從軟件視角認識驅動的一本書,一樣講究實用。單就s3c2440驅動入門,此書+《嵌入式Linux應用開發徹底手冊》足矣。
  
  
課外閱讀:
  
」Linux c編程系列「
     不論是google仍是baidu 字段「Linux c編程」,都能搜出相關書籍一胡片,咱們的山寨能力不只體如今手機、平板,在圖書出版業更是爐火純青。內容大同小異,目錄千篇一概。
     大致能夠分爲三部分:環境搭建+工具的使用,shell+gun c+arm彙編基礎,linux API(文件操做、同步異步IO、多進程線程、IPC、socket通訊等)。
     內容組織看上去比較系統,涉及面廣,注重實用性,個別深度亦有。雖是山寨,捧上一本,邊讀邊敲,一趟下來也是獲益匪淺。
  
《Advanced Linux Programming》
     若是你是一位反對盜版,厭惡山寨的正義人事,那麼推薦此書。不過,咱們的山寨早已成熟多年,讀罷,也未發現有何精妙之筆。
  
《Red Hat Enterprise Linux 6.0系統管理》
     一本linux運維的LJ書。說其徹底沒用,但多少能有點幫助,充其量就是本手冊,趁rhel6發佈不久先賺筆錢之流。一樣的58元人民幣,相比其餘,不值啊不值。
     相似書籍至關氾濫。
  
《Advanced Bash-Scripting Guide》
     高級bash腳本編程手冊,對於linux服務器運維的朋友這東東是須要看幾遍di。
     而對於我這號,掌握三四十條shell命令,應付蝦兵蟹將足以,若不行,則求助谷歌,度娘。
  
      
  
第二階段:
  
《Git權威指南》
     一本有點小廢話的字典。
     cvs等上古鎧甲,在現代戰爭中已不堪一擊。若是你熱愛開源,那麼,你須要這麼一套裝備。雖然上手有點小困難,但對於立志成爲「海賊王」男人的你,拿下它是必須di。「vim+ctags+git」將成爲你的黃金聖衣。
     對於Git,引用做者的一句話:「我很是後悔沒有在學習編程的第一天就開始使用版本控制」。
  
《熟悉binutils工具集》
     一個pdf,僅僅20頁,但實用性很強,可見做者之用心。
     認識編譯器鮮爲人知的用法,爲以後的深刻理解打好基礎。
  
《Linux設備驅動開發》
     同《Linux內核設計與實現》同樣, 「內核四庫全書」之一,無數達人推薦的內核驅動必備書籍。
     06年出版,苦苦等不到第四版出爐,多是過於經典,不必更新的緣故。
  
《Unix環境高級編程》
     linux環境編程的神裝,從事linux編程事業的碼農必備,也是上述 Linux c編程系列各山寨的原版。厚如辭海,經典到掉渣。
     對於靠網絡終端編程吃飯的碼農們,大神Stevens的另外兩套書籍《TCP/IP詳解》、《UNIX網絡編程》是最好膜拜一下。
     只惋惜英年早逝,是真的昇天成了仙,但留下的著做也算是永垂不朽。
     放於桌前,菜鳥只能燒香膜拜,入門者謂之字典,過檻者稱其練習冊。
  
  
課外閱讀:
  
《Linux內核API徹底參考手冊》
     內核不只是改革開放的,也是與時俱進的。「一日patch幾千行,兩週出個小版本」,膽敢有人出書分析內核api?
     一瞧內容,原是特定版本的個別分析。「手冊」一詞還算恰當,這個「徹底」嘛就沒有了「實事求是」的做風。
     不過有一點我非常喜歡,書裏不只有api的講解,並且有短小幹練的代碼實例。API的學習不是簡單的講幾句就能掌握,關鍵仍是實踐。杯具的是代碼能夠網上下載,直接make,insmod就OK。
  
  
  
第三階段:
  
《深刻理解Linux內核》
     內核不是隻有driver,還有fs,mm等。此書帶給你的不是量變而是質變。
     代碼敲的再多隻是不斷量變的過程,編程也不會上升爲藝術;驅動看的再多也不會讓你擁有敲出驅動代碼的能力。
     內核是個「牽一髮而動全身」的禁地,從總體上把握內核運行機制,以全面的視角審視內核的內在機理,才能真正清楚驅動在內核中的地位,明白總體與局部的辯證關係。
     讀完此書,比如」八門遁甲「開了景門的「朝孔雀」,內存管理,文件系統,調度算法等,各個表明着一個研究方向,每個方向都會有無數論文等着你去觀摩,真是百花齊放,精彩繽紛。
     選擇一個方向,開「驚門」,使「 晝虎」,在一個研究領域打出精彩一擊。
  
《Linker && Loader》
     若是c語言表明底層,它即是底層中的底層。古老的課題,古老的書,古老卻有時並不意味着落伍,掌握這種古老,即是「大牛」的畢業證。
     直接讀此書,只會越讀越困難,難免有挫敗感。內容更偏向學術研究,針對linux平臺,不如先找幾篇有關elf文件格式的論文研讀一番,好比:《ELF文件格式分析》(滕啓明),再讀便有豁然開朗之感。
     實用性可能不強,重在精神境界的昇華。
  
《ARM嵌入式系統開發——軟件設計與優化》
     編譯器原理表明着碼農們的底層,而此書表明的就是苦逼嵌入式工程師的底層。
     「從事ARM嵌入式系統軟件開發的每一位工程師的桌上都應該擺着這本書。對於初學者來講,他是一本詳盡、透徹的使用指南;對於ARM專家來講,它則是一本有益的參考書。」
     一本看似複雜,讀來卻有輕鬆之感的佳做,足見做者之功底。在學好《計算機組成原理》,有必定的ARM彙編經驗的基礎上研讀此書,真是愛不釋手,百看不膩。讀過此書,一些亂七八糟的東西彷佛開始有了調理,對ARM處理器的認識更是受益不淺。
  
      
課外閱讀:
  
《精通Linux設備驅動開發》
     「印度阿三」的做品,內容涉及普遍,講解有點簡單。但內容廣了天然就不可能太詳細,對於內核驅動的老手們來講,簡單的一句提示足矣,因此,謂之手冊。
     一樣是手冊,人家寫的咋就覺的好嘞。
  
《深刻Linux內核架構》
     同爲「字典」一本。多是由於《深刻理解Linux內核》遲遲不更新的緣故,德國人坐不住了。四年的發展內核已經是面目全非,進程調度算法,內核數據結構等變化不小,不能老是抱着一本老古董啃不是?!
     該書很好的詮釋了德國人嚴謹的做風,內容豐富詳盡,印刷不錯,捧來倍覺厚實之感。讀罷《深刻理解Linux內核》再讀此書,非常親切。
  
《see MIPS run》
     地球上的嵌入式處理器可不僅ARM一種,單一的關注ARM有點狹隘主義,至少在多媒體處理方面,mips仍然是技高一籌。
     一本《計算機組成原理》的mips版,有空多看看,擴展視野,以避免被ARM思想壟斷。
  
《Linux內核源代碼情景分析》
     下了個電子檔,1500+頁,內容詳細到代碼實例剖析,雖是2.4的內核,但仍是頗有啓發,對做者也是心懷崇敬。
     參考爲宜。
  
《Understanding the Linux Virtual Memory Manager》
     純粹學術性的東東,基本就是《深刻理解Linux內核》內存管理部分的《情景分析》。
     研究內存管理達人們的必備。
  
《深刻理解Linux網絡技術內幕》
     若是說《深刻理解Linux內核》支撐着《Unix環境高級編程》,那麼此書便支撐着《TCP/IP詳解》和《UNIX網絡編程》。
     128元人民幣,加上最後的做者介紹和O'REILLY圖書廣告,整整一千頁!
     書寫的很詳細且圖文並茂,讀完不只要有網絡功底,也確實須要些時日。
  
  
  
第四階段:
  
《我是USB》
     fudan_abc的佳做,對usb的分析具體到代碼,語言詼諧,文筆不錯。同《Git權威指南》,不免有點小廢話,技術類圖書仍是直截了當,圖文並茂的好。整體來講仍是給予確定,將枯燥的代碼聊得似小說,可見做者對技術的理解已由理性認識上升爲感性,足見功底之深厚。
  
《S3C2440A 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
     初級datasheet,不到600頁,每一章節介紹一模塊,模塊都很基礎,功能單一,天生充當教材的材料。
  
課外閱讀:
  
《S3C6410X 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
     在讀過S3C2440A UM以後,與之對比便對處理器的功能進化有直觀體會。多媒體處理能力明顯加強,相應的多媒體模塊從目錄中便可看出其複雜化。1300+頁,看完彷佛不太現實。
      
《s5pV210 32-BIT CMOS MICROCONTROLLER USER'S MANUAL》
     做爲當前正火的IC,內容架構有較大變化,功能強大,模塊太多,因此目錄分爲幾大章的結構。不只是量的增長,內容的小有改變,例如gpio的配置會有些許不一樣。
     頁數突破2K,讀完彷佛不太可能。基本是用哪看哪。
  
《Android應用開發解密》
     一本應用開發入門書,談不上好壞,僅僅是api介紹,重在實用。書中實例代碼有下,已入門者瞧瞧代碼便可。
  
《Android技術內幕:系統卷》
     大體的介紹了android的中間層和底層。不少地方限於篇幅,說一點不如不說。講解貌似很深,但讀來不知所云,內容基本網上都有,有借鑑各家博客後整理之嫌,但此風氣在android各種國產書中已經是司空見慣,能整理好爲讀者所接收也屬不易。
     至於對android的理解,在看過上述圖書以後,android也不過只是個app而已。android的難點在於虛擬機和進程間通訊的實現,而其核心就是NDK。
相關文章
相關標籤/搜索