linux開(kai)發工程師(shi)教(jiao)程 如何一(yi)步一(yi)步成為大(da)神
時間:2018-01-30 來源:未知(zhi)
想要當一(yi)(yi)個linux開發(fa)工程(cheng)師大(da)神,需(xu)要一(yi)(yi)步(bu)一(yi)(yi)步(bu)去(qu)實現(xian),并不是一(yi)(yi)蹴而就(jiu)的。如果你(ni)(ni)想成(cheng)為(wei)linux開發(fa)大(da)神,請看以下linux開發(fa)工程(cheng)師教程(cheng),教你(ni)(ni)如何一(yi)(yi)步(bu)一(yi)(yi)步(bu)成(cheng)為(wei)大(da)神。
我(wo)們先來了解(jie)linux開發具(ju)體要開發什么:
1.開發linux本身,以(yi)及(ji)linux下(xia)的設備驅動(dong)。比(bi)如大家現在用的手機,很多(duo)linux的或者是linux變種的系統,都需要編寫驅動(dong)。
2.linux下(xia)(xia)的(de)應用程(cheng)序(xu)。linux下(xia)(xia)用的(de)各種程(cheng)序(xu),和windows一樣(yang)(yang),比如OPEN OFFICE和MS OFFICE一樣(yang)(yang),用來(lai)辦公(gong)的(de)。
3.開(kai)發維(wei)護服(fu)務器(qi)。現在各大公司的(de)(de)(de)服(fu)務器(qi),基本都是(shi)用linux,比(bi)如百度、新(xin)浪等(deng)。他(ta)們的(de)(de)(de)服(fu)務器(qi)跑(pao)的(de)(de)(de)linux,而且根據需要,他(ta)們還(huan)自(zi)己更改服(fu)務自(zi)己要求的(de)(de)(de)linux,linux是(shi)開(kai)源的(de)(de)(de)嘛,可以(yi)隨便改。
4.開發網絡設(she)備,目前(qian)想路由器什么的,也很(hen)多跑(pao)的linux,用(yong)來處理和轉發數據包,執行(xing)路由協議。
后,你問你平(ping)時使(shi)用的(de)(de)(de)什么是(shi)在linux下開發(fa)的(de)(de)(de),因(yin)(yin)為(wei)你平(ping)時肯定是(shi)使(shi)用windows,所以不(bu)會用到(dao)linux下的(de)(de)(de)東西。因(yin)(yin)為(wei)兩個操作(zuo)系統上的(de)(de)(de)軟件是(shi)不(bu)兼容的(de)(de)(de)。不(bu)過你用的(de)(de)(de)MP3、手機、或者家里上網(wang)用路(lu)由器,你訪問的(de)(de)(de)網(wang)站都可能(neng)用到(dao)linux。后,IT工程師用的(de)(de)(de)比較多,用來開發(fa)各種服務器軟件和嵌入式軟件。

linux開發(fa)工程(cheng)師的學習(xi)路線:
起步從系(xi)統管理(li)走(zou)起。建議的書(shu)是《linux系(xi)統管理(li)技術手冊》,雖(sui)然你想(xiang)走(zou)底(di)層路線,但我(wo)想(xiang)基(ji)本(ben)的系(xi)統管理(li)知識還是要掌握的。
進階:熟悉命(ming)令模(mo)式,會寫(xie)shell編(bian)程(cheng),配合系統管理完成一些簡(jian)單(dan)的功能(neng)。shell雖然在底層說(shuo)來沒什么太大用處。但掌握(wo)這些基(ji)礎應用還(huan)是有(you)必(bi)要的。推薦《Linux與unix shell編(bian)程(cheng)指南》。
以上的(de)(de)知識都很簡單,屬(shu)于(yu)系統管理的(de)(de)范疇,雖然和你的(de)(de)底層關(guan)系并(bing)(bing)不(bu)是(shi)(shi)很大。但個人認為是(shi)(shi)必須(xu)掌握的(de)(de)基本(ben)技(ji)巧(qiao)。下面(mian)的(de)(de)就開始(shi)有難度了。首先打好(hao)C語言基礎(chu),書就太簡單了《The programming c language》除了這本(ben)我(wo)也(ye)想不(bu)起其它(ta)的(de)(de)來了。(個人感覺語言是(shi)(shi)工具,這本(ben)書不(bu)用從頭到尾看完,我(wo)一般拿它(ta)當(dang)技(ji)術手冊(ce)使用,但后期一些關(guan)節的(de)(de)知識點還是(shi)(shi)要知道,比(bi)如說流,進程,socket網絡套接字等概(gai)念(nian),但這些并(bing)(bing)不(bu)屬(shu)于(yu)語言內容,每門語言都有對應的(de)(de)章節,要理清楚這些概(gai)念(nian))。
接下來,一些基礎知識(shi)要打(da)牢,數據結(jie)構(gou),操(cao)作系統,好(hao)還帶(dai)上微機(ji)原(yuan)理(或是計算機(ji)組成原(yuan)理)。沒有這些基礎,看內核將非常吃力。
找本介(jie)紹linux內(nei)核(he)的(de)書,比如說《linux情景分析(xi)》,照著linux源代碼慢慢學習,很多(duo)地方(fang)很難,多(duo)看(kan)(kan)。到(dao)這(zhe)里,或許你的(de)linux內(nei)核(he)看(kan)(kan)的(de)并(bing)不是(shi)很懂(dong),但那不要(yao)緊(jin)。天(tian)才會很容易理解(jie),但大部(bu)分人不是(shi)天(tian)才。接下來你就可(ke)以開始看(kan)(kan)linux驅動(dong)編程了。
以(yi)上(shang)的(de)步驟不(bu)是非要(yao)一(yi)步一(yi)步的(de)走。系統管(guan)理(li)的(de)知識只是我推薦(jian)的(de),你完全可以(yi)選擇不(bu)看(kan)。但基礎理(li)論要(yao)牢固,所(suo)以(yi)數據結構,操作(zuo)系統,微機(ji)原理(li)好打(da)牢。做(zuo)驅(qu)動開發并不(bu)要(yao)求你非常精通內核,但在了解內核后,你寫(xie)驅(qu)動程(cheng)序將會如虎添翼。后希望你成功(gong)。
以上linux開發工程師教程目(mu)前就(jiu)寫這么多,想成為(wei)(wei)大神,必須要一步一步的累計經驗(yan),因為(wei)(wei)所(suo)有的成功都(dou)不是(shi)一蹴而就(jiu)的。

