《Linux那些事兒之我是USB》之 前言

曾經有不少網友問我們什麼時候能出紙質的,也曾經有若干出版社聯繫過出版,但都由於裏面的一些內容過於的娛樂了而不了了之。本來在寫的時候就沒想着去出版,只是娛樂自己的同時娛樂娛樂大家而已,不過最終博文視點還是決定出了,在這裏感謝孫編輯、王編輯。當然裏面去掉了若干敏感的內容,但大家喜歡的精粹還在,風格也沒變,呵呵。這本內容上是u盤、hub、uhci、core、sysfs五個部分的合訂本,增加了內容導讀,內核版本統一更新到22內核,同時也添加了若干新貨色。

網上購買鏈接爲:china-pub

*****************************************

 

  1992年,那是一個春天。不過其實1991年又何嘗不是一個春天呢,因爲正是在那一年,Linux誕生了。又因爲開放源代碼的緣故,十幾年來Linux是越來越火,熊熊火焰也燒到了華夏大地。諸多高校開始開設Linux相關的課程,諸多企業開始招聘Linux相關的人才。市面上關於Linux的書籍也層出不窮,而這其中大致分爲兩類,一類是應用方面的,比如介紹如何組建各種服務器啊,另一類是內核方面的,主要都是對內核源代碼的進行分析,這方面的書籍則以《Linux設備驅動程序》和《深入理解Linux內核》爲經典代表。而從眼下國內的人才市場來看,懂Linux內核的找工作肯定不用發愁。事實上,可以不誇張的說,當代大學生,如果能夠看完以上這兩本書,並且能夠看懂,那麼在北京在上海在深圳這些一線城市,很容易就能找到一份體面的技術類工作。

那麼爲什麼我們還要另起爐竈再寫一本Linux內核方面的書籍呢?因爲Linux內核包含大量的代碼,以上面兩本書爲代表的很多Linux內核的書籍涵蓋的內容太廣,大多數書籍都是把Linux內核中的各個部分逐一的進行介紹和分析,然而實際情況是沒有任何一個人能夠對Linux內核的各個部分都很精通,包括Linus Torvalds本人,一個對Linux開發感興趣的人也不一定需要並且也沒有足夠的時間對Linux的每個部分都去深入理解,而另一方面來說,很多對Linux內核感興趣的朋友常常被一個問題所困擾,那就是Linux內核那麼龐大的代碼量,對於初學者來說,應該從哪裏學起呢?關於這一點,其實《Linux設備驅動程序》給出了很好的答案,學習驅動程序代碼是最有效的入門方法。第一是因爲在龐大的Linux內核源代碼中,大約超過87.53%是各種驅動程序代碼,其重要性可想而知,第二是因爲相比較來說,驅動程序的代碼其難度是比較低的,很少涉及複雜高深的算法,所以適合初學者研讀。

然而網友永不墮落曾經問過我們,既然已經有了《Linux設備驅動程序》,爲什麼你們還要寫一本Linux設備驅動程序相關的書呢?你們這樣做是不是行爲藝術呢?這裏我們想說的是,雖然《Linux設備驅動程序》這本書很好很強大,把各種類型的設備驅動程序都給介紹了一番,可是當一些讀者讀完這本書之後,他們敢說自己會寫Linux設備驅動程序了嗎?他們敢說自己完全瞭解一個真實的Linux設備驅動程序是怎麼寫的嗎?至少本書作者當年在看完這本書之後,雖然覺得獲益匪淺,可是仍然不太清楚真實的Linux設備驅動程序是怎麼寫的,仍然不敢很傻很天真的以爲自己就會寫Linux設備驅動程序了。這纔有了後來決定親自選擇一個子系統進行研究,並在研究好了之後把研究心得寫出來,與大家進行分享。最終我們選擇的是USB子系統,原因很簡單,USB總線以及連接在USB總線上的各種USB設備已經廣泛的出現在了當代計算機上,廣大計算機用戶,尤其是高校學生,接觸得最多的設備也正是USB設備,所以研究和分析USB總線以及它上面的各種USB設備應該能讓大家感到很親切很真實並且具有相當的實用價值和懷舊意義。畢竟,子曾經曰過:USB總線就像一條河,左岸是我無法忘卻的回憶,右岸是我值得緊握的璀璨年華,中間流淌的,是我年年歲歲淡淡的感傷!

本書的編寫得到了許多人的幫助,我們向他們致以誠摯的謝意。首先感謝孫學瑛編輯,沒有她的努力,這本書的內容將會一直偏居網絡一隅,將不可能被出版從而去幫助更多需要的人。然後要感謝很多在技術上給予我們指導與幫助的老師和朋友,特別是USB這邊的maintaner之一,Alan Stem大俠對我們的問題的耐心解答與回覆。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章