日韩高清亚洲日韩精品一区二区三区,成熟人妻av无码专区,国产又A又黄又潮娇喘视频,男女猛烈无遮挡免费视频在线观看

嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)

一、為什么要學(xué)習(xí)嵌入式Linux?

學(xué)習(xí)嵌入式Linux的原因,歸納起來有以下三個(gè):

  • 興趣:興趣是學(xué)習(xí)東西最好的導(dǎo)師;
  • 職業(yè)發(fā)展:嵌入式Linux開發(fā)有好的公司和好的職業(yè)發(fā)展;
  • 高收入:嵌入式開發(fā)比平常的軟件開發(fā)有更高的收入;

二、學(xué)習(xí)對(duì)象,是否適合我?

并不是任何人都適合來學(xué)習(xí)嵌入式Linux,要想學(xué)習(xí)嵌入式Linux,必須是計(jì)算機(jī)相關(guān)的學(xué)生或者畢業(yè)生,或者對(duì)計(jì)算機(jī)有強(qiáng)烈愛好并具有基本計(jì)算機(jī)知識(shí)的同學(xué)。

當(dāng)前大學(xué)畢業(yè)生應(yīng)具有的技能有:演算技能、交際能力、創(chuàng)新能力、與人合作、信息處理、外語應(yīng)用、自我提高、解決問題及核心技能。

三、如何學(xué)好嵌入式Linux?

選擇學(xué)習(xí)嵌入式Linux道路之后,要如何才能學(xué)好嵌入式Linux呢?要明白以下兩點(diǎn):

  • 學(xué)什么?
  • 如何學(xué)?

四、學(xué)什么?

嵌入式Linux所涵蓋的知識(shí)面很廣,需要按步驟、不間斷的努力深入學(xué)習(xí),才能有所成就。學(xué)習(xí)嵌入式Linux需要學(xué)習(xí)如下5大知識(shí)(按照學(xué)習(xí)步驟):

  1. 嵌入式處理器(ARM)與裸機(jī)程序開發(fā);
  2. Linux系統(tǒng)管理;
  3. Linux應(yīng)用程序開發(fā);
  4. Linux驅(qū)動(dòng)程序開發(fā);
  5. Linux內(nèi)核開發(fā)與系統(tǒng)移植。

五、如何學(xué)?

5.1 第一大知識(shí)結(jié)構(gòu)——嵌入式微處理器與邏輯程序開發(fā)時(shí),需要學(xué)懂一下幾點(diǎn)

  1. ARM微處理器的兩種工作模式(ARM模式和Thumb模式);
  2. ARM系統(tǒng)寄存器;
  3. ARM尋址方式;
  4. ARM匯編指令集;
  5. ARM環(huán)境C語言程序編程
  6. ==ARM中斷與異常==
  7. ADS(或其他)集成開發(fā)環(huán)境;
  8. ==裸機(jī)程序開發(fā)(如串口、LCD、時(shí)鐘、LED、按鍵、網(wǎng)卡驅(qū)動(dòng)、音頻驅(qū)動(dòng)、flash驅(qū)動(dòng)等)==

以上8點(diǎn)鐘,第6和8點(diǎn)是非常重要的,而前5點(diǎn)則是基礎(chǔ)。在這個(gè)階段推薦看的書籍有:

  1. 語言編程類:
  • ==《C語言程序設(shè)計(jì)》==——譚浩強(qiáng)
  • 《C語言深度解剖》
  • ==《C陷阱與缺陷》==
  • ==《C專家編程》==
  • ==《C Primer puls》==第五版——Slephen Prala
  • 《高質(zhì)量C編程指南》
  • ==《程序員面試寶典》==
  1. ARM微處理器類:
  • ==《ARM嵌入式系統(tǒng)開發(fā)——軟件設(shè)計(jì)與優(yōu)化》==——斯洛斯(Sloss,A.N.)

然后就是各種驅(qū)動(dòng)程序編寫時(shí),用到什么樣的芯片就查閱相關(guān)的芯片手冊(cè),如網(wǎng)卡DM9000,音頻的UDA1341等。

5.2 第二大知識(shí)結(jié)構(gòu)——Linux系統(tǒng)管理時(shí),需要學(xué)懂一下幾點(diǎn)

  1. Linux定制安裝
  2. Linux命令詳解(會(huì)熟練的運(yùn)用)
  3. samba、nfs、tftp等服務(wù)器的配置與使用,以及Wireshark、Source Insight、Xshell、Ultraedit等軟件的使用;
  4. Shell編程。

其中第2和第4點(diǎn)是最重要的,它將是學(xué)習(xí)以后的知識(shí)的一個(gè)最基礎(chǔ)的技能。學(xué)會(huì)這些東西可以看一下兩本書:

  • 《Linux標(biāo)準(zhǔn)學(xué)習(xí)教材》——IT同路人
  • 《Linux系統(tǒng)管理技術(shù)手冊(cè)》——奈米斯,斯奈德,海因

5.3 第三大知識(shí)結(jié)構(gòu)——Linux應(yīng)用程序開發(fā)時(shí),需要學(xué)懂一下幾點(diǎn)

  1. GCC、GDB、Makefile;
  2. 文件、時(shí)間編程;
  3. 多進(jìn)程、多線程程序設(shè)計(jì);
  4. 進(jìn)程間通訊;
  5. 網(wǎng)絡(luò)編程;
  6. ==QT圖形化應(yīng)用程序開發(fā)==;
  7. == Android圖形化應(yīng)用程序開發(fā)==。

這個(gè)階段的知識(shí)點(diǎn)都特別的重要,個(gè)人覺得除了第一點(diǎn)外,其他六點(diǎn)都需要下苦功夫?qū)W習(xí),而第7和第8是這個(gè)階段的最后兩個(gè)也是最重要的,以后也可以直接應(yīng)用于工程開發(fā)中。這個(gè)階段可以學(xué)習(xí)一下兩本書:

  • 《Linux程序設(shè)計(jì)》第四版——馬修(Matthew,N.),斯通斯(Stones,R.)
  • 《UNIX環(huán)境高級(jí)編程》第二版——史蒂文斯,拉戈

5.4 第四大知識(shí)結(jié)構(gòu)——Linux內(nèi)核開發(fā)時(shí),需要學(xué)習(xí)一下幾點(diǎn)

  1. Linux內(nèi)核配置與裁剪;
  2. Linux內(nèi)核模塊開發(fā);
  3. 根文件系統(tǒng)的制作;
  4. ==進(jìn)程子系統(tǒng)==;
  5. ==內(nèi)存子系統(tǒng)==;
  6. ==Proc和sys文件系統(tǒng)==;
  7. ==系統(tǒng)調(diào)用==;
  8. ==內(nèi)核定時(shí)器==;
  9. ==內(nèi)核異常分析==;

這個(gè)階段的知識(shí)非常的難,看書有時(shí)看上四五遍都無法理解,建議多去各種論壇上面看看,學(xué)習(xí)大家的經(jīng)驗(yàn)。本知識(shí)中從第4點(diǎn)到第9點(diǎn)是Linux內(nèi)核子系統(tǒng)的知識(shí)。這個(gè)階段可以看一下兩本書:

  • 《深入理解LINUX內(nèi)核》第三版——博韋,西斯特
  • 《Linux內(nèi)核源代碼情景分析》

5.5 第五大知識(shí)結(jié)構(gòu)——Linux驅(qū)動(dòng)程序開發(fā)時(shí),需要學(xué)習(xí)一下幾點(diǎn)

  1. 字符設(shè)備驅(qū)動(dòng)程序;
  2. 總線、設(shè)備、驅(qū)動(dòng)模型;
  3. 硬件訪問技術(shù);
  4. 中斷處理;
  5. Input設(shè)備驅(qū)動(dòng);
  6. Platform驅(qū)動(dòng)程序;
  7. PCI、USB驅(qū)動(dòng)程序;
  8. 網(wǎng)卡驅(qū)動(dòng)程序;
  9. 觸摸屏驅(qū)動(dòng)程序;
  10. 串口驅(qū)動(dòng)程序。

這個(gè)階段所學(xué)習(xí)的驅(qū)動(dòng)程序與第一階段學(xué)習(xí)的驅(qū)動(dòng)程序有本質(zhì)的區(qū)別:第一個(gè)階段學(xué)習(xí)的是裸機(jī)驅(qū)動(dòng)程序,重在了解硬件,而這個(gè)階段是在編寫內(nèi)核驅(qū)動(dòng)模塊,同時(shí)也是硬件驅(qū)動(dòng)程序,它存在于操作系統(tǒng)內(nèi)核當(dāng)中,并給應(yīng)用程序編程提供統(tǒng)一的編程界面,同時(shí)基本脫離硬件的具體操作。

這個(gè)階段可學(xué)習(xí)如下書籍:

  • 《Linux驅(qū)動(dòng)開發(fā)入門與實(shí)戰(zhàn)》——鄭強(qiáng)
  • 《LINUX設(shè)備驅(qū)動(dòng)程序》——科波特
  • 《精通Linux設(shè)備驅(qū)動(dòng)程序開發(fā)》——溫卡特斯瓦蘭

至此,嵌入式Linux五大知識(shí)體系就學(xué)習(xí)完成了。

六、學(xué)習(xí)順序?

由于嵌入式Linux知識(shí)架構(gòu)非常多,也非常難,為了達(dá)到學(xué)習(xí)的真正效果,建議按照以下順序進(jìn)行學(xué)習(xí):

  • 嵌入式處理器與裸機(jī)程序開發(fā);
  • Linux系統(tǒng)管理;
  • Linux應(yīng)用程序開發(fā);
  • Linux內(nèi)核開發(fā)基礎(chǔ);
  • 嵌入式Linux環(huán)境搭建;
  • Linux驅(qū)動(dòng)程序開發(fā);
  • 深入學(xué)習(xí)Linux內(nèi)核;

這里將學(xué)習(xí)的過程分為三個(gè)重要的階段,大家可以根據(jù)自身的情況調(diào)整學(xué)習(xí)的時(shí)間和進(jìn)度。

嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)

image

圖1 嵌入式學(xué)習(xí)第一階段

嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)

image

圖2 嵌入式學(xué)習(xí)第二階段

嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)

image

圖3 嵌入式學(xué)習(xí)第三階段

當(dāng)然,就目前形式來說,一般的第三個(gè)階段的學(xué)習(xí)轉(zhuǎn)為了Java程序語言的學(xué)習(xí)和Android系統(tǒng)的開發(fā)上面了,這個(gè)根據(jù)個(gè)人的興趣愛好分享發(fā)展,但是前面兩個(gè)階段是必須要熟練掌握的。

七、注意

根據(jù)個(gè)人的學(xué)習(xí)經(jīng)驗(yàn),得出如下幾點(diǎn)需要注意:

  1. 這五大知識(shí)體系是相互穿插,相互依賴的。大家學(xué)習(xí)的時(shí)候一定要==按照先后順序?qū)W習(xí)==,如果后面學(xué)習(xí)的東西有不懂或不能理解的,一定要回頭查閱以前學(xué)過的知識(shí),或者上相關(guān)論壇與大蝦們探討;
  2. 在每個(gè)知識(shí)點(diǎn)中,我都羅列了至少兩本書籍,但并不是每本書大家都必須去看,去研究,而是大家==選擇其中一本進(jìn)行深入研究即可==,知識(shí)我列出來的書相比較于其他書籍較好而已;另外每個(gè)部分的書籍是按照從易到難的順序羅列的,大家可根據(jù)自己的具體情況進(jìn)行學(xué)習(xí);
  3. 學(xué)習(xí)過程是艱苦的,大家如果確定要學(xué)習(xí)嵌入式Linux,就必須下狠心,多努力,不能“三天打漁兩天曬網(wǎng)”,至少應(yīng)該==保證一個(gè)階段學(xué)完一個(gè)知識(shí)體系==;另外還要注重==多實(shí)踐==。

更多l(xiāng)inux免費(fèi)視頻資料獲取 后臺(tái)私信【架構(gòu)】

嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)嵌入式Linux七大學(xué)習(xí)步驟,你了解幾個(gè)呢?(嵌入式linux基礎(chǔ)教程)

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號(hào)
公眾號(hào)
在線咨詢
分享本頁
返回頂部