想要當一個linux開發工程師大神,需要一步一步去實現,并不是一蹴而就的。如果你想成為linux開發大神,請看以下linux開發工程師教程,教你如何一步一步成為大神。
我們先來了解linux開發具體要開發什么:
1.開發linux本身,以及linux下的設備驅動。比如大家現在用的手機,很多linux的或者是linux變種的系統,都需要編寫驅動。
2.linux下的應用程序。linux下用的各種程序,和windows一樣,比如OPEN OFFICE和MS OFFICE一樣,用來辦公的。
3.開發維護服務器。現在各大公司的服務器,基本都是用linux,比如百度、新浪等。他們的服務器跑的linux,而且根據需要,他們還自己更改服務自己要求的linux,linux是開源的嘛,可以隨便改。
4.開發網絡設備,目前想路由器什么的,也很多跑的linux,用來處理和轉發數據包,執行路由協議。
后,你問你平時使用的什么是在linux下開發的,因為你平時肯定是使用windows,所以不會用到linux下的東西。因為兩個操作系統上的軟件是不兼容的。不過你用的MP3、手機、或者家里上網用路由器,你訪問的網站都可能用到linux。后,IT工程師用的比較多,用來開發各種服務器軟件和嵌入式軟件。
linux開發工程師的學習路線:
起步從系統管理走起。建議的書是《linux系統管理技術手冊》,雖然你想走底層路線,但我想基本的系統管理知識還是要掌握的。
進階:熟悉命令模式,會寫shell編程,配合系統管理完成一些簡單的功能。shell雖然在底層說來沒什么太大用處。但掌握這些基礎應用還是有必要的。推薦《Linux與unix shell編程指南》。
以上的知識都很簡單,屬于系統管理的范疇,雖然和你的底層關系并不是很大。但個人認為是必須掌握的基本技巧。下面的就開始有難度了。首先打好C語言基礎,書就太簡單了《The programming c language》除了這本我也想不起其它的來了。(個人感覺語言是工具,這本書不用從頭到尾看完,我一般拿它當技術手冊使用,但后期一些關節的知識點還是要知道,比如說流,進程,socket網絡套接字等概念,但這些并不屬于語言內容,每門語言都有對應的章節,要理清楚這些概念)。
接下來,一些基礎知識要打牢,數據結構,操作系統,好還帶上微機原理(或是計算機組成原理)。沒有這些基礎,看內核將非常吃力。
找本介紹linux內核的書,比如說《linux情景分析》,照著linux源代碼慢慢學習,很多地方很難,多看。到這里,或許你的linux內核看的并不是很懂,但那不要緊。天才會很容易理解,但大部分人不是天才。接下來你就可以開始看linux驅動編程了。
以上的步驟不是非要一步一步的走。系統管理的知識只是我推薦的,你完全可以選擇不看。但基礎理論要牢固,所以數據結構,操作系統,微機原理好打牢。做驅動開發并不要求你非常精通內核,但在了解內核后,你寫驅動程序將會如虎添翼。后希望你成功。
以上linux開發工程師教程目前就寫這么多,想成為大神,必須要一步一步的累計經驗,因為所有的成功都不是一蹴而就的。