嵌入式開發(fā)就是指在嵌入式操作系統(tǒng)下進行開發(fā),一般常用的系統(tǒng)有WinCE,ucos,vxworks,linux,android等。另外,用c,c++或匯編開發(fā);用高級處理器,arm7,arm9,arm11,powerpc,mips,mipsel等,或加上操作系統(tǒng)也屬于嵌入式的開發(fā)。
嵌入式系統(tǒng)(Embedded System)是指以應用為中心、以計算機技術為基礎,軟件硬件可裁剪、適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。舉例來說,大到油田的集散控制系統(tǒng)和工廠流水線,小到家用VCD機或手機,甚至組成普通PC終端設備的鍵盤、鼠標、硬盤、Modem等均是由嵌入式處理器控制的。
嵌入式系統(tǒng)無疑是當前最熱門最有發(fā)展前途的IT應用領域之一。嵌入式系統(tǒng)用在一些特定專用設備上,通常這些設備的硬件資源(如處理器、存儲器等)非常有限,并且對成本很敏感,有時對實時響應要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。
像我們平常見到的手機、PDA、電子字典、可視電話、VCD/DVD/MP3 Player、數(shù)字相機(DC)、數(shù)字攝像機(DV)、U-Disk、機頂盒(Set Top Box)、高清電視(HDTV)、游戲機、智能玩具、交換機、路由器、數(shù)控設備或儀表、汽車電子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設備等等都是典型的嵌入式系統(tǒng)。
第一部分:Linux平臺搭建與環(huán)境熟悉了解linux系統(tǒng);區(qū)分各種版本的Linux系統(tǒng),以便于拓展 Linux視野。
1、Linux 簡介;
2、Linux 系統(tǒng)的主要特點;
3、Linux 的組成;
4、主要的 Linux 版本;
5、嵌入式 Linux簡介與發(fā)展
第二部分:虛擬機安裝和LINUX系統(tǒng)安裝1、虛擬機安裝;
2、Linux系統(tǒng)的安裝;
3、Linux系統(tǒng)的常用軟件的安裝;
4、Linux快速入門
5、 熟悉運用 Linux環(huán)境下,常用命令的操作與系統(tǒng)設置,如常用的 Shell;掌握基本的Shell 應用
第三部分:嵌入式LINUX環(huán)境搭建1、 建立嵌入式 Linux開發(fā)環(huán)境
2、 熟悉嵌入式開發(fā)平臺
3、 嵌入式 Linux開發(fā)工具
4、 Linux下的調試技巧
5、 MAKE工程管理器
6、 硬件環(huán)境的搭建;arm-linux-gcc與 gcc安裝配置
第四部分: U-Boot
了解 U-Boot 的作用及工作流程;了解Bootloader 的代碼結構、編譯過程;移植U-Boot;掌握常用的U-Boot命令。
1、 Bootloader介紹
2、 u-boot工程介紹
3、 u-boot的編譯使用
4、 u-boot源碼分析
5、 u-boot資源分配
6、 配置編譯u-boot
7、 u-boot移植過程
8、 u-boot常用命令操作
9、 添加u-boot新命令
10、設置u-boot環(huán)境變量
11、 u-boot驅動添加如網(wǎng)卡:DM9000
第五部分:LINUX內核移植熟悉內核的原碼結構和kbuild Makefile語法;掌握和內核、驅動模塊編譯相關的原理及方法。
1、Linux內核介紹
2、Linux內核特點
3、Linux內核源代碼結構
4、Linux內核選項解析
5、Linux內核編譯鏈接
6、內核模塊編譯、使用方法
第六部分:LINUX根文件系統(tǒng)1、busybox 包移植、編譯
2、Linux跟文件系統(tǒng)制作過程
3、根文件系統(tǒng)介紹
4. nfs文件服務器系統(tǒng)搭建
第七部分:LINUX應用學習嵌入式Linux應用開發(fā)和系統(tǒng)開發(fā)是嵌入式Linux中最重要的一部分,也是企業(yè)人才需求最廣的一部分。
主要目標是精通嵌入式Linux下的程序設計,熟練掌握嵌入式Linux的開發(fā)環(huán)境、系統(tǒng)編程以及網(wǎng)絡編程,熟悉C++、QT編程并且深刻體會整個嵌入式Linux項目開發(fā)流程,強化學員對Linux應用開發(fā)的能力。
1、Linux系統(tǒng)中的進程的概念,在應用程序中線程與父子進程的創(chuàng)建與應用
2、線程之間、進程之間的通信
3、進程間通信基本概念
4、管道(PIPE)
5、信號(SIGNAL)
6、內存映射(MAPPED MEMORY)
7、消息隊列(MESSAGE QUEUE)
8、信號量(SEMAPHORE)
9、共享內存(SHARE MEMORY)@
10、tcPip協(xié)議在應用程序中的編程開發(fā)(SOCKET套接字編程開發(fā))
10.1. ISO/OSI七層協(xié)議模型與IP網(wǎng)絡四層模式
10.2.TCP/IP協(xié)議簇
10.3. 基于嵌入式Linux的TCP/IP網(wǎng)絡結構
10.4. 基于嵌入式Linux的SOCKET編程
10.5.UDP與TCP的區(qū)別
10.6. UDP SERVER-CLIENT關系程
11、文件讀寫與存儲
嵌入式設計應具備的基本技能1、Linux 基礎
安裝Linux操作系統(tǒng)
Linux文件系統(tǒng)
Linux常用命令
Linux啟動過程詳解
熟悉Linux服務能夠獨立安裝Linux操作系統(tǒng),能夠熟練使用Linux系統(tǒng)的基本命令
認識Linux系統(tǒng)的常用服務安裝Linux操作系統(tǒng)
Linux基本命令實踐
設置Linux環(huán)境變量
定制Linux的服務Shell
編程基礎使用vi編輯文件
使用Emacs編輯文件
使用其他編輯器
2、Shell 編程基礎
Shell簡介
認識后臺程序Bash編程
熟悉Linux系統(tǒng)下的編輯環(huán)境
熟悉Linux下的各種Shell
熟練進行shell編程熟悉vi基本操作
熟悉Emacs的基本操作
比較不同shell的區(qū)別
編寫一個測試服務器是否連通的shell腳本程序
編寫一個查看進程是否存在的shell腳本程序
編寫一個帶有循環(huán)語句的shell腳本程序
3、Linux下的C編程基礎
linux c語言環(huán)境概述
Gcc使用方法
Gdb調試技術
AutoconfAutomake Makefile代碼優(yōu)化
熟悉Linux系統(tǒng)下的開發(fā)環(huán)境
熟悉Gcc編譯器
熟悉Makefile規(guī)則編寫Hello,World程序
使用 make命令編譯程序
編寫帶有一個循環(huán)的程序
調試一個有問題的程序
4、嵌入式系統(tǒng)開發(fā)基礎
嵌入式系統(tǒng)概述
交叉編譯
配置TFTP服務
配置NFS服務
下載Bootloader和內核
嵌入式Linux應用軟件開發(fā)流程熟悉嵌入式系統(tǒng)概念以及開發(fā)流程
建立嵌入式系統(tǒng)開發(fā)環(huán)境制作cross_gcc工具鏈
編譯并下載U-boot
編譯并下載Linux內核
編譯并下載Linux應用程序
5、嵌入式系統(tǒng)移植
Linux內核代碼
平臺相關代碼分析
ARM平臺介紹
平臺移植的關鍵技術
移植Linux內核到 ARM平臺
了解移植的概念
能夠移植Linux內核移植Linux2.6內核到ARM9開發(fā)板
6、嵌入式 Linux 下串口通信
串行I/O的基本概念
嵌入式Linux應用軟件開發(fā)流程
Linux系統(tǒng)的文件和設備
與文件相關的系統(tǒng)調用
配置超級終端和MiniCOM
能夠熟悉進行串口通信
熟悉文件I/O
編寫串口通信程序
編寫多串口通信程序
7、嵌入式系統(tǒng)中多進程程序設計
Linux系統(tǒng)進程概述
嵌入式系統(tǒng)的進程特點
進程操作
守護進程
相關的系統(tǒng)調用了解Linux系統(tǒng)中進程的概念
能夠編寫多進程程序編寫多進程程序
編寫一個守護進程程序
sleep系統(tǒng)調用任務管理
同步與通信Linux任務概述任務調度
管道 信號 共享內存 任務管理 API
了解Linux系統(tǒng)任務管理機制
熟悉進程間通信的幾種方式
熟悉嵌入式Linux中的任務間同步與通信編寫一個簡單的管道程序實現(xiàn)文件傳輸
編寫一個使用共享內存的程序
8、嵌入式系統(tǒng)中多線程程序設計
線程的基礎知識
多線程編程方法
線程應用中的同步問題了解線程的概念
能夠編寫簡單的多線程程序編寫一個多線程程序
-
嵌入式
+關注
關注
5150文章
19665瀏覽量
317414 -
Linux
+關注
關注
87文章
11509瀏覽量
213740
原文標題:十年資深嵌入式大神:教你如何從零開始學習路線解析
文章出處:【微信號:elecfans,微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
想要自學搭建嵌入式Linux開發(fā)環(huán)境搭建的同學有福利了。
Linux平臺搭建與環(huán)境熟悉
Linux的Swift開發(fā)環(huán)境搭建
一文了解LVGL的學習路線
如何搭建linux內核實驗平臺
linux系統(tǒng)的環(huán)境搭建方法
怎樣去搭建基于rk3288的android(和linux)平臺軟件運行環(huán)境呢
如何在Linux環(huán)境下實現(xiàn)Python環(huán)境的搭建

Linux內核學習的環(huán)境搭建和內核編譯
esp8266學習筆記(番外)——linux下環(huán)境的搭建

評論