學(xué)習(xí)嵌入式linux的人可能都有過這樣的經(jīng)歷,想要想把linux內(nèi)核原理弄明白,于是從圖書館借了本linux內(nèi)核,可是看了沒幾天終于看不下去了,學(xué)習(xí)linux的熱情是好的,也要有一個(gè)正確的學(xué)習(xí)方法。今天就和大家簡(jiǎn)單說說才是正確的學(xué)習(xí)linux的路線(只代表個(gè)人觀點(diǎn)只供參考,每個(gè)人都有適合自己的學(xué)習(xí)方法,不一定都千篇一律,不過適合大多的初學(xué)者)。
ARM+LINUX路線主攻嵌入式Linux操作系統(tǒng)及其上應(yīng)用軟件開發(fā)目標(biāo):
1
掌握主流嵌入式微處理器的結(jié)構(gòu)與原理,可以arm9或者arm11,arm9資料豐富便于學(xué)習(xí),arm11逐漸成為主流,所以學(xué)習(xí)arm11也是一個(gè)不錯(cuò)的選擇,不過在很多的方面還是大同小異的,也有相通的地方。所以無論是2440還是6410都可以成為學(xué)習(xí)的對(duì)象。
2
必須掌握一個(gè)較新版本嵌入式l操作系統(tǒng),學(xué)習(xí)linux版本最好選擇一個(gè)比較新的,穩(wěn)定的版本,因?yàn)樾碌拇a修復(fù)了很多以前的bug,一些好的機(jī)制也被引入,不好的機(jī)制也會(huì)被去掉。所以我們學(xué)習(xí)
3
必須熟悉嵌入式軟件開發(fā)流程并至少做一個(gè)嵌入式軟件項(xiàng)目。從開頭先學(xué)習(xí)一個(gè)簡(jiǎn)單的程序,比如led的點(diǎn)亮,驅(qū)動(dòng)是如何加入的,應(yīng)用程序是如何編譯的,如何放到開發(fā)板中而運(yùn)行的,怎么調(diào)用底層驅(qū)動(dòng)的。其實(shí)這個(gè)過程是很簡(jiǎn)單的,并不復(fù)雜,只要有一個(gè)人指導(dǎo),用不了半天就都弄明白了,然后慢慢地深入由簡(jiǎn)單到復(fù)雜,不知不覺中就成為大師了。
4
如果想學(xué)上層的圖形界面的應(yīng)用,那么學(xué)習(xí)一下QT,編一個(gè)我們最開始學(xué)習(xí)的helloworld,放到開發(fā)板中運(yùn)行,或者做一個(gè)led燈的,畫一個(gè)button,然后一點(diǎn)就實(shí)現(xiàn)led燈的亮滅,這都不難的,不要認(rèn)為這個(gè)太簡(jiǎn)單以后用不到,我們可以把這個(gè)led看成是一個(gè)開發(fā)量,一個(gè)繼電器,那樣就可以實(shí)現(xiàn)按一下就打開和關(guān)閉設(shè)備了。以后的工程項(xiàng)目也是這樣的一個(gè)個(gè)小程序疊加起來的。
5
現(xiàn)在的android系統(tǒng)很火,大家有目共睹,這個(gè)也是基于linux的,看看飛凌的android2.3.4的代碼,就會(huì)明白android是如何實(shí)現(xiàn)按一個(gè)button點(diǎn)亮led的,雖然是一個(gè)很小的工程,可是會(huì)讓大家認(rèn)清android的結(jié)構(gòu)框架。每一層是如何調(diào)用的,如何注冊(cè)的服務(wù),如何調(diào)用服務(wù),如何通過java調(diào)用C++的程序。
從事嵌入式軟件開發(fā)的好處是:
1
目前國(guó)內(nèi)外這方面的人都很稀缺。這一領(lǐng)域入門門檻較高,所以非專業(yè)IT人員很難切入這一領(lǐng)域;另一方面,是因?yàn)檫@一領(lǐng)域較新,目前發(fā)展太快,大多數(shù)人無條件接觸。
2
與企業(yè)計(jì)算等應(yīng)用軟件不同,嵌入式領(lǐng)域人才的工作強(qiáng)度通常低一些(但收入不低)。做嵌入式軟件開發(fā)的薪水是普通工人工資的2-5倍。這也是嵌入式火的一個(gè)原因。
3
哪天若想創(chuàng)業(yè),搞自已的產(chǎn)品,嵌入式不像應(yīng)用軟件那樣容易被盜版。硬件設(shè)計(jì)一般都是請(qǐng)其它公司給訂做(這叫“貼牌”:OEM),都是通用的硬件,我們只管設(shè)計(jì)軟件就變成自己的產(chǎn)品了。
4
興趣所在,做嵌入式的人都有一股熱情,就是愛好,喜歡這個(gè)行業(yè),喜歡做這個(gè),每天都會(huì)遇到問題,解決問題,這個(gè)過程中會(huì)有一種成就感。
興趣的由來:
1、成功觀念不同,不虛度此生,就是我的成功。
2、喜歡思考,挑戰(zhàn)邏輯思維。
方法步驟:
1、基礎(chǔ)知識(shí):
目的:能看懂硬件工作原理,但重點(diǎn)在嵌入式軟件,特別是操作系統(tǒng)級(jí)軟件,那將是優(yōu)勢(shì)。語(yǔ)言基本功能扎實(shí)2、學(xué)習(xí)嵌入式linux:目的:掌握嵌入式處理器其及系統(tǒng).
方法:
1、嵌入式微處理器結(jié)構(gòu)與應(yīng)用:直接arm原理及匯編即可,不要重復(fù)x86。2、嵌入式操作系統(tǒng)類:ucOS/II簡(jiǎn)單,開源,可供入門。而后深入研究uClinux。3、必須有塊開發(fā)板(arm9以上),F(xiàn)L2440 TX2416 OK6410開發(fā)板的資料和代碼都非常的豐富,現(xiàn)在的開發(fā)板也便宜,幾百元就可以買個(gè)開發(fā)板,還有技術(shù)支持。比報(bào)一個(gè)班便宜多了,現(xiàn)在報(bào)一個(gè)班怎么也得上萬,太貴了而且效果也不太好
3、深入學(xué)習(xí):
A、數(shù)字圖像壓縮技術(shù):主要是應(yīng)掌握MPEG、mp3等編解碼算法和技術(shù)。B、通信協(xié)議及編程技術(shù):TCP/IP協(xié)議、802.11,Bluetooth,GPRS、GSM、CDMA等。C、網(wǎng)絡(luò)與信息安全技術(shù):如加密技術(shù),數(shù)字證書CA等。D、DSP技術(shù):DigitalSignalProcess,DSP處理器通過硬件實(shí)現(xiàn)數(shù)字信號(hào)處理算法。
按照工作需要和自己的興趣來有選擇的學(xué)習(xí),不要期望把所有的都學(xué)會(huì),那是不可能的事情,要有自己的行長(zhǎng),要精而不要雜,有一技之長(zhǎng)要好過每個(gè)都會(huì)一點(diǎn)點(diǎn)的。
-
嵌入式
+關(guān)注
關(guān)注
5086文章
19141瀏覽量
305932 -
Linux
+關(guān)注
關(guān)注
87文章
11314瀏覽量
209774 -
C++
+關(guān)注
關(guān)注
22文章
2110瀏覽量
73691
原文標(biāo)題:打造完美Linux 嵌入式學(xué)習(xí)路線
文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論