linux嵌入式學(xué)習(xí)路線(新版)_第1頁(yè)
linux嵌入式學(xué)習(xí)路線(新版)_第2頁(yè)
linux嵌入式學(xué)習(xí)路線(新版)_第3頁(yè)
linux嵌入式學(xué)習(xí)路線(新版)_第4頁(yè)
linux嵌入式學(xué)習(xí)路線(新版)_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、linux 嵌入式學(xué)習(xí)路線(新版 )嵌入式學(xué)習(xí)路線圖嵌入式開(kāi)發(fā)學(xué)習(xí)路線圖為什么選擇學(xué)習(xí)嵌入式?嵌入式系統(tǒng)無(wú)疑是當(dāng)前最熱門(mén)最有發(fā)展前途的 IT 應(yīng)用領(lǐng)域之一,同時(shí)也是當(dāng)今 IT 領(lǐng) 域僅存的幾個(gè)金領(lǐng)職位之一。當(dāng)前的中國(guó) IT 人才面臨嚴(yán)重的“后繼乏人”, 而且這種缺 口由于培訓(xùn)缺乏、教育模式等原因造成的,而缺口最大的,就是高級(jí)IT 人才。如果你從事的 IT 培訓(xùn)不專(zhuān)業(yè),面對(duì)競(jìng)爭(zhēng)越來(lái)越激烈的職場(chǎng),基本找不到 工作。據(jù)專(zhuān)家預(yù)測(cè),嵌入 式每年人才缺口在30 萬(wàn)左右。嵌入式行業(yè)平均薪資分布嵌入式職業(yè)發(fā)展講解視頻視頻中主要講解什么樣的人適合從事嵌入式行業(yè)、嵌入式行業(yè)從業(yè)人員需要具備哪些基本素質(zhì)、嵌入式行業(yè)

2、的特點(diǎn)以及嵌入式行業(yè)的現(xiàn)狀與發(fā)展。ARM+Linux 嵌入式底層內(nèi)核驅(qū)動(dòng)方向?qū)W習(xí)總體路線圖基礎(chǔ)學(xué)習(xí)I -Linux 入門(mén)目前嵌入式主要開(kāi)發(fā)環(huán)境有Linux、Wince等;Linux因其開(kāi)源、開(kāi)發(fā)操作便利而被廣泛采用。而Linux 操作系統(tǒng)也只是一個(gè)簡(jiǎn)單的操作系統(tǒng),簡(jiǎn)單的使用對(duì)于嵌入式開(kāi)發(fā)人員來(lái)說(shuō)價(jià)值并不很高,真正有價(jià)值的是掌握Linux 的基本服務(wù)和Linux 的設(shè)計(jì)理念、思想,這對(duì)于嵌入式開(kāi)發(fā)人員的長(zhǎng)期發(fā)展是很極其重要的。 Linux 系統(tǒng)有很多發(fā)行版,RedHat、Ubuntu 、 Fedora 等。作為嵌入式開(kāi)發(fā)人員,我們沒(méi)有必要把精力放到使用哪個(gè)Linux 發(fā)行版上,而是盡快把Linu

3、x 系統(tǒng)盡快安裝好。如果打算堅(jiān)持長(zhǎng)期學(xué)習(xí),那么建議您把自己的電腦做成雙系統(tǒng),而不要在虛擬機(jī)上安裝。Ubuntu 系統(tǒng)下載地址: A )經(jīng)典書(shū)籍推薦:決于對(duì)數(shù)據(jù)結(jié)構(gòu)的掌握程度。在數(shù)據(jù)結(jié)構(gòu)部分我們要把鏈表、樹(shù)、排序作為學(xué)習(xí)重點(diǎn)。而且我們也可以查看一些比較常見(jiàn)的函數(shù)(如 strcopy 、 strcat 、 printf 等)在內(nèi)核中是如何實(shí)現(xiàn)的,以及編寫(xiě)代碼模擬堆棧,這 不僅有利于編寫(xiě)代碼質(zhì) 量的提高,而且還可以初步了解Linux 內(nèi)核精髓,為今后工作打下堅(jiān)實(shí)的基礎(chǔ)。C+、QT在嵌入式開(kāi)發(fā)領(lǐng)域,是用來(lái)開(kāi)發(fā)圖形界面的,希望從事上層應(yīng)用開(kāi)發(fā)及圖形 界面,那么在C+、QT方面需要比較深入的學(xué)習(xí)。A )經(jīng)

4、典書(shū)籍推薦:C )經(jīng)典學(xué)習(xí)案例:1 、學(xué)員成績(jī)管理系統(tǒng)2、計(jì)算器3、電子詞典4、文件壓縮器基礎(chǔ)進(jìn)階 -Linux 應(yīng)用程序設(shè)計(jì)Linux的思想源于Unix。Linux繼承了 Unix的優(yōu)點(diǎn),但是沒(méi)有用 UNIX的代碼,所有程序都是重新編寫(xiě)的,而且Linux 與 Unix 的源碼級(jí)兼容。 Linux 是類(lèi) Unix 操作系統(tǒng)。Linux 不僅符合 POSIX 標(biāo)準(zhǔn),而且還包括其它 UNIX 標(biāo)準(zhǔn)的多種特性,例如, UNIX 的System V 接口文檔(System V Interface Document , SVID)和伯克利軟件發(fā)布 (Berkeley Software Distribut

5、ion , BSD 版本。Linux 采用了折衷的策略,包含了UNIX 幾個(gè)典型特性當(dāng)中最實(shí)用的一些功能:Linux 采用了 SVR4的進(jìn)程間通信(IPC)機(jī)制:共享內(nèi)存、消息隊(duì)列、信號(hào)。 Linux 支持 BSD Socket 網(wǎng)絡(luò)編程接口。許多 Linux 發(fā)行版采用 SysV init 機(jī)制,支持運(yùn)行級(jí)別。此階段的學(xué)習(xí)是從事嵌入式上層應(yīng)用開(kāi)發(fā)以及底層開(kāi)發(fā)人員的必修課程。進(jìn)程、線程、信號(hào)、文件鎖、 socket 是這部分內(nèi)容的重點(diǎn)。要把這些內(nèi)容學(xué)的透徹非要下些苦功夫不可。而且函數(shù)是系統(tǒng)提供給我們的,難免要對(duì)計(jì)算機(jī)系統(tǒng)深入理解一番。 TCP/IP 協(xié)議也是要涉及到的。有問(wèn)題建議用 Googl

6、e 搜索及登陸chinaunix 論壇。通過(guò)這個(gè)階段的學(xué)習(xí),我們就可以初步實(shí)現(xiàn)一些應(yīng)用程序的開(kāi)發(fā)了,如做自己的 shell 命令解析器、簡(jiǎn)單的聊天軟件、 視頻多播等。A )經(jīng)典書(shū)籍推薦:C )經(jīng)典學(xué)習(xí)案例:1 、串口監(jiān)聽(tīng)程序2、圖片瀏覽器3、MP3tt放器4、聊天程序5、即程序6 、音頻廣播程序 7、ping的實(shí)現(xiàn)8、DDos攻擊程序9、ARP攻擊程序嵌入式入門(mén)-ARM 體系結(jié)構(gòu)從這部分開(kāi)始,我們將真正進(jìn)入嵌入式開(kāi)發(fā)學(xué)習(xí)階段。首先我們要知道采用哪種處理器。目前通用嵌入式處理器有ARM MIPS PowerPG X86等。從市場(chǎng)產(chǎn)品占有率上看,ARMBS器遠(yuǎn)遠(yuǎn)領(lǐng)先于同類(lèi)其它處理器,并逐步掠奪傳統(tǒng)

7、51單片機(jī)和英特爾市場(chǎng)份額。據(jù)招聘網(wǎng)站統(tǒng)計(jì),目前用人單位在技術(shù)水平上要求開(kāi)發(fā)人員掌握ARM吸以上平臺(tái)的開(kāi)發(fā)技術(shù)。ARM公司在發(fā)布ARM11產(chǎn)品后,更改以往的數(shù)字標(biāo)記更新方式,轉(zhuǎn)為發(fā)布ARM Cortex但是 Cortex 并不是更高端,而是全新系列的處理器,比如 Cortex M3 ,它主要應(yīng)用于機(jī)械加工、工控領(lǐng)域,目的是取代以前的ARM砒理器。在開(kāi)始學(xué)習(xí)前,建議有一塊自己的開(kāi)發(fā)板,目前ARM9 2440的開(kāi)發(fā)板價(jià)格在400-600 元之間, ARM11 6410的開(kāi)發(fā)板價(jià)格要高一些,最便宜的也要1200 元以上。在此,提醒大3 ) ARMft系結(jié)構(gòu)與 Bootloader開(kāi)發(fā)C )經(jīng)典學(xué)習(xí)案

8、例:1. ARM 模擬器開(kāi)發(fā)2. Watchdog 控制程序 3. RTC 時(shí)鐘控制程序4. Uart 控制程序5. LCD 控制程序 6. 觸摸屏控制程序7. DMA 控制程序 8. 音頻控制程序9. 網(wǎng)卡控制程序 10. 文件系統(tǒng)制作11. ARM-Linux 移植嵌入式提升-Linux 內(nèi)核、驅(qū)動(dòng)眾所周知嵌入式開(kāi)發(fā)包含至少兩個(gè)級(jí)別,一個(gè)是嵌入式內(nèi)核驅(qū)動(dòng)級(jí)別,另外一個(gè)是嵌入式應(yīng)用層開(kāi)發(fā),而薪酬高的、最具價(jià)值的無(wú)疑是嵌入式內(nèi)核驅(qū)動(dòng)級(jí)別的開(kāi)發(fā)者。真正的嵌入式高手或者企業(yè)中的核心開(kāi)發(fā)人員,一定是嵌入式底層的內(nèi)核驅(qū)動(dòng)開(kāi)發(fā)工程師,這些工程師成長(zhǎng)比較緩慢,造成對(duì)內(nèi)核驅(qū)動(dòng)人才的大量需求,所以這些人才是真

9、正企業(yè)需要的香餑餑。掌握驅(qū)動(dòng)開(kāi)發(fā)會(huì)讓自己的核心能力有極大的飛躍,真正實(shí)現(xiàn)嵌入式最有價(jià)值的就業(yè)。由于 Linux 內(nèi)核更新速度很快,書(shū)籍和視頻不可能及時(shí)更新,所以我們?cè)倏磿?shū)和視頻后,要自己動(dòng)手下載內(nèi)核源碼包,去看內(nèi)核中的代碼,在這里可以充分檢驗(yàn)C語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)等基礎(chǔ)知識(shí)的掌握程度。而驅(qū)動(dòng)的編寫(xiě)還是要借助外設(shè)硬件電路原理圖和芯片手冊(cè)。內(nèi)核和驅(qū)動(dòng)的知識(shí)是讓我們根據(jù)不同的硬件,編寫(xiě)對(duì)應(yīng)的驅(qū)動(dòng)、合理剪裁內(nèi)核、制作文件系統(tǒng),并移植到硬件開(kāi)發(fā)板上。如果手里有ARM11 6410及以上的開(kāi)發(fā)板,可以試試在裸板上編寫(xiě)驅(qū)動(dòng)并移植Android 系統(tǒng)到開(kāi)發(fā)板上吧。B )經(jīng)典學(xué)習(xí)案例:1. GPIO 驅(qū)動(dòng) 2. RT

10、C 時(shí)鐘驅(qū)動(dòng) 3. WatchDog 驅(qū)動(dòng) 4. Udev 移植 5. 觸摸屏輸入設(shè)備 驅(qū)動(dòng)6. LCD 顯示設(shè)備驅(qū)動(dòng)7. DMA 驅(qū)動(dòng) 8. 音頻設(shè)備驅(qū)動(dòng)9. Nand Flash 塊設(shè)備驅(qū)動(dòng)10.網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)UEA- 嵌入式底層驅(qū)動(dòng)開(kāi)發(fā)者 V8.2 版 項(xiàng)目案例嵌入式開(kāi)發(fā)課程涉及領(lǐng)域非常廣泛。從硬件時(shí)序圖到體系機(jī)構(gòu)、從驅(qū)動(dòng)到各種協(xié)議規(guī)范、從操作系統(tǒng)內(nèi)核到應(yīng)用層開(kāi)發(fā)。整個(gè)過(guò)程觸及海量的系統(tǒng)開(kāi)發(fā)知識(shí)和少量硬件體系知識(shí)。嵌入式開(kāi)發(fā)分成應(yīng)用層開(kāi)發(fā)和底層驅(qū)動(dòng)開(kāi)發(fā)。伴隨著嵌入式領(lǐng)域如消費(fèi)電子、移動(dòng)設(shè)備、智能工控等行業(yè)應(yīng)用的興起,龐大的市場(chǎng)需求刺激了眾多企業(yè)紛紛投向嵌入式開(kāi)發(fā)行業(yè)。行業(yè)的迅猛增長(zhǎng)伴隨著人

11、才需求的極度短缺,國(guó)內(nèi)大學(xué)教育與實(shí)際需求脫軌的同時(shí),造成了人才斷層,所以一門(mén)好的嵌入式課程必須有足夠的嵌入式項(xiàng)目實(shí)踐做支撐。企業(yè)實(shí)際開(kāi)發(fā)項(xiàng)目?Linux 環(huán)境下的視頻點(diǎn)播系統(tǒng)?從零開(kāi)發(fā)ARM-Linux 嵌入式設(shè)備的 Bootloader ?Android 智能手機(jī)?ARM Cortex A9 雙核平板電腦1 、 Linux 環(huán)境下的視頻點(diǎn)播系統(tǒng)PPLIVE、PPS等網(wǎng)絡(luò)電視相對(duì)于傳統(tǒng)電視由于提供靈活的點(diǎn)播方式,倍受人們歡迎?;?C/S 架構(gòu)的網(wǎng)絡(luò)程序不僅用于網(wǎng)絡(luò)電視,同樣適用于嵌入式領(lǐng)域的網(wǎng)絡(luò)程序,如 QQ的服務(wù)端軟件、網(wǎng)絡(luò)游戲、銀行使用的排號(hào)機(jī)、餐廳的點(diǎn)餐系統(tǒng)等。而這些系統(tǒng)服務(wù)器端大多數(shù)

12、才用的是UNIX/LINUX 平臺(tái)的系統(tǒng)及網(wǎng)絡(luò)程序。通過(guò)該項(xiàng)目的演練,可以為目前最熱門(mén)的研發(fā)職業(yè)生涯打下堅(jiān)實(shí)的技術(shù)基礎(chǔ)。該項(xiàng)目目前用于尚觀內(nèi)部學(xué)員自習(xí)時(shí)間觀看教學(xué)視頻。項(xiàng)目說(shuō)明視頻2 、從零開(kāi)發(fā)ARM-Linux 嵌入式設(shè)備的 Bootloader一個(gè)嵌入式Linux 系統(tǒng)從軟件的角度看通??梢苑譃樗膫€(gè)層次: 引導(dǎo)加載程序、Linux 內(nèi)核、文件系統(tǒng)、用戶(hù)應(yīng)用程序。簡(jiǎn)單地說(shuō), BootLoader 就是在操作系統(tǒng)內(nèi)核運(yùn)行之前運(yùn)行的一段小程序。通過(guò)這段小程序,我們可以初始化硬件設(shè)備、建立內(nèi)存空間的映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適的狀態(tài),以便為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備好正確的環(huán)境。 通常

13、, BootLoader 是嚴(yán)重地依賴(lài)于硬件而實(shí)現(xiàn)的,所以就要求嵌入式開(kāi)發(fā)從業(yè)人員必須具備開(kāi)發(fā) Bootloader 的能力。尚觀要求學(xué)員具備從零首寫(xiě) Bootloader 的能力,這樣不僅能輕松勝任企業(yè)職位要求,對(duì)于掌握真正嵌入式開(kāi)發(fā)本質(zhì)具有強(qiáng)有力的幫助。3 、 Android 智能手機(jī)Google 的 Android 系統(tǒng)不僅取得了手機(jī)市場(chǎng)廣闊占有率,同時(shí)也被平板電腦廠商和其他智能終端以及大量的嵌入式設(shè)備生產(chǎn)廠商所采用。這主要?dú)w結(jié)于 Android 的開(kāi)源、可修改、可移植等特性。采用 Android 系統(tǒng)不僅能減少企業(yè)產(chǎn)品研發(fā)人力、財(cái)力的投入,還能幫助企業(yè)縮短研發(fā)周期增快產(chǎn)品上市速度,保證

14、產(chǎn)品具備先期競(jìng)爭(zhēng)實(shí)力。 Android 的普及勢(shì)必促使研發(fā)人員具備底層驅(qū)動(dòng)研發(fā)能力。尚觀以企業(yè)實(shí)際Android 手機(jī)研發(fā)為實(shí)例,基于 ARM11 6410平臺(tái)真實(shí)開(kāi)發(fā)底層驅(qū)動(dòng),移植Android 系統(tǒng),最終實(shí)現(xiàn)Android 智能手機(jī)。4 、 ARM Cortex A9 雙核平板電腦該項(xiàng)目直接在雙核 A9處理器上運(yùn)行主流的 Android系統(tǒng),學(xué)員需要憑借 ARM11的經(jīng)驗(yàn)再進(jìn)一步理解更新架構(gòu),在原來(lái)代碼的基礎(chǔ)上,重寫(xiě)基于 A9 的 Bootloader 及相關(guān)驅(qū)動(dòng),讓Android系統(tǒng)運(yùn)行在A9雙核處理器上。該平臺(tái)采用7寸平板顯示,擁有主流智能平板配置。技術(shù)強(qiáng)化真實(shí)案例1 、嵌入式 C 語(yǔ)

15、言強(qiáng)化部分案例? 自己設(shè)計(jì)一個(gè)指法練習(xí)的游戲程序? 自己設(shè)計(jì)一個(gè)漢諾塔游戲2 、數(shù)據(jù)結(jié)構(gòu)部分案例? 成績(jī)管理系統(tǒng)? 電子詞典? 文件壓縮器? 計(jì)算器3 、C+程序設(shè)計(jì)案例? 串口監(jiān)聽(tīng)程序? 模板庫(kù)的實(shí)現(xiàn)(MyTL) ? 編寫(xiě)自己的圖片瀏覽器4 、 Linux 系統(tǒng)程序設(shè)計(jì)案例 ? 串口監(jiān)聽(tīng)程序? 圖片瀏覽器? MP3播放器5 、 Linux 網(wǎng)絡(luò)程序設(shè)計(jì)案例 ? 聊天程序? ftp 程序? ping 的實(shí)現(xiàn)? DDos攻擊程序 ? ARP攻擊程序6 、ARMK入式開(kāi)發(fā)案例 ? ARM模擬器開(kāi)發(fā)? Watchdog控制程序? RTC時(shí)鐘控制程 序? Uart控制程序? LCD控制程序? DMA空制程序 ?音頻控制程序 ?網(wǎng)卡控制程序 ?觸摸屏

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論