新手学习嵌入式系统
很多新手學習嵌入式系統(tǒng),不清楚那么多方向舵知識和參考書,該從哪里開始學習。入手了,卻又在該先學習什么后學習什么上失去方向。這里有你想要的答案,幫你指點迷經(jīng)。?
這是我在ITjob培訓網(wǎng)上找到的課程大綱,覺得作為嵌入式系統(tǒng)開發(fā)的學習步驟,按部就班地去施行和學習,到不失為一種好的學習方法:)就算是作為參考也是有很好的價值的!?
隨著現(xiàn)代社會信息化進程的加快,嵌入式系統(tǒng)被廣泛的地應用于軍事、家用、工業(yè)、商業(yè)、辦公、醫(yī)療等社會各個方面,表現(xiàn)出很強的投資價值。從國際范圍來看, 作為數(shù)字化電子信息產(chǎn)品核心的嵌入式系統(tǒng)目前其硬件和軟件開發(fā)工具市場已經(jīng)突破2000億美元,嵌入式系統(tǒng)帶來的全球工業(yè)年產(chǎn)值更是達到了一萬億美元,隨 著全球經(jīng)濟的持續(xù)增長以及信息化的加速發(fā)展,嵌入式系統(tǒng)市場必將進一步增長。?
本課程是為了適應目前發(fā)展迅速的嵌入式Linux需求而設計,課程目標是讓學員達到適應嵌入式應用軟件開發(fā)、嵌入式系統(tǒng)開發(fā)或嵌入式驅(qū)動開發(fā)的 基本素質(zhì)。課程循序漸進的帶領您嵌入式開發(fā)的世界,采用了目前應用最廣泛的軟硬件開發(fā)平臺(Linux和Arm),可以保證您盡量貼近目前企業(yè)需求。?
學習步驟如下:(一步步來哦:)?
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調(diào)試技術?
Autoconf?
Automake?
Makefile?
代碼優(yōu)化 熟悉Linux系統(tǒng)下的開發(fā)環(huán)境?
熟悉Gcc編譯器?
熟悉Makefile規(guī)則編寫Hello,World程序?
使用 make命令編譯程序?
編寫帶有一個循環(huán)的程序?
調(diào)試一個有問題的程序?
4、嵌入式系統(tǒng)開發(fā)基礎?
嵌入式系統(tǒng)概述?
交叉編譯?
配置TFTP服務?
配置NFS服務?
下載Bootloader和內(nèi)核?
嵌入式Linux應用軟件開發(fā)流程?
熟悉嵌入式系統(tǒng)概念以及開發(fā)流程?
建立嵌入式系統(tǒng)開發(fā)環(huán)境制作cross_gcc工具鏈?
編譯并下載U-boot?
編譯并下載Linux內(nèi)核?
編譯并下載Linux應用程序?
5、嵌入式系統(tǒng)移植?
Linux內(nèi)核代碼?
平臺相關代碼分析?
ARM平臺介紹?
平臺移植的關鍵技術?
移植Linux內(nèi)核到 ARM平臺 了解移植的概念?
能夠移植Linux內(nèi)核移植Linux2.6內(nèi)核到 ARM9開發(fā)板?
6、嵌入式 Linux 下串口通信?
串行I/O的基本概念?
嵌入式Linux應用軟件開發(fā)流程?
Linux系統(tǒng)的文件和設備?
與文件相關的系統(tǒng)調(diào)用?
配置超級終端和MiniCOM 能夠熟悉進行串口通信?
熟悉文件I/O 編寫串口通信程序?
編寫多串口通信程序?
7、嵌入式系統(tǒng)中多進程程序設計?
Linux系統(tǒng)進程概述?
嵌入式系統(tǒng)的進程特點?
進程操作?
守護進程?
相關的系統(tǒng)調(diào)用了解Linux系統(tǒng)中進程的概念?
能夠編寫多進程程序編寫多進程程序?
編寫一個守護進程程序?
sleep系統(tǒng)調(diào)用任務管理、同步與通信 Linux任務概述?
任務調(diào)度?
管道?
信號?
共享內(nèi)存?
任務管理 API 了解Linux系統(tǒng)任務管理機制?
熟悉進程間通信的幾種方式?
熟悉嵌入式Linux中的任務間同步與通信?
編寫一個簡單的管道程序?qū)崿F(xiàn)文件傳輸?
編寫一個使用共享內(nèi)存的程序?
8、嵌入式系統(tǒng)中多線程程序設計?
線程的基礎知識?
多線程編程方法?
線程應用中的同步問題了解線程的概念?
能夠編寫簡單的多線程程序編寫一個多線程程序?
9、嵌入式 Linux 網(wǎng)絡編程?
網(wǎng)絡基礎知識?
嵌入式Linux中TCP/IP網(wǎng)絡結(jié)構(gòu)?
socket 編程?
常用 API函數(shù)?
分析Ping命令的實現(xiàn)?
基本UDP套接口編程?
許可證管理?
PPP協(xié)議?
GPRS 了解嵌入式Linux網(wǎng)絡體系結(jié)構(gòu)?
能夠進行嵌入式Linux環(huán)境下的socket 編程?
熟悉UDP協(xié)議、PPP協(xié)議?
熟悉GPRS 使用socket 編寫代理服務器?
使用socket 編寫路由器?
編寫許可證服務器?
指出TCP和UDP的優(yōu)缺點?
編寫一個web服務器?
編寫一個運行在 ARM平臺的網(wǎng)絡播放器?
10、GUI 程序開發(fā)?
GUI基礎?
嵌入式系統(tǒng)GUI類型?
編譯QT?
進行QT開發(fā)熟悉嵌入式系統(tǒng)常用的GUI?
能夠進行QT編程使用QT編寫“Hello,World”程序?
調(diào)試一個加入信號/槽的實例?
通過重載QWidget 類方法處理事件?
11、Linux 字符設備驅(qū)動程序?
設備驅(qū)動程序基礎知識?
Linux系統(tǒng)的模塊?
字符設備驅(qū)動分析?
fs_operation結(jié)構(gòu)?
加載驅(qū)動程序了解設備驅(qū)動程序的概念?
了解Linux字符設備驅(qū)動程序結(jié)構(gòu)?
能夠編寫字符設備驅(qū)動程序編寫Skull驅(qū)動?
編寫鍵盤驅(qū)動?
編寫I/O驅(qū)動?
分析一個看門狗驅(qū)動程序?
對比Linux2.6內(nèi)核與2.4內(nèi)核中字符設備驅(qū)動的不同?
Linux 塊設備驅(qū)動程序塊設備驅(qū)動程序工作原理?
典型的塊設備驅(qū)動程序分析?
塊設備的讀寫請求隊列了解Linux塊設備驅(qū)動程序結(jié)構(gòu)?
能夠編寫簡單的塊設備驅(qū)動程序比較字符設備與塊設備的異同?
編寫MMC卡驅(qū)動程序?
分析一個文件系統(tǒng)?
對比Linux2.6內(nèi)核與2.4內(nèi)核中塊設備驅(qū)動的不同?
12、文件系統(tǒng)?
虛擬文件系統(tǒng)?
文件系統(tǒng)的建立?
ramfs內(nèi)存文件系統(tǒng)?
proc文件系統(tǒng)?
devfs 文件系統(tǒng)?
MTD技術簡介?
MTD塊設備初始化?
MTD塊設備的讀寫操作了解Linux系統(tǒng)的文件系統(tǒng)?
了解嵌入式Linux的文件系統(tǒng)?
了解MTD技術?
能夠編寫簡單的文件系統(tǒng)為 ARM9開發(fā)板添加 MTD支持?
移植JFFS2文件系統(tǒng)?
通過proc文件系統(tǒng)修改操作系統(tǒng)參數(shù)?
分析romfs 文件系統(tǒng)源代碼?
創(chuàng)建一個cramfs 文件系統(tǒng)
這是我在ITjob培訓網(wǎng)上找到的課程大綱,覺得作為嵌入式系統(tǒng)開發(fā)的學習步驟,按部就班地去施行和學習,到不失為一種好的學習方法:)就算是作為參考也是有很好的價值的!?
隨著現(xiàn)代社會信息化進程的加快,嵌入式系統(tǒng)被廣泛的地應用于軍事、家用、工業(yè)、商業(yè)、辦公、醫(yī)療等社會各個方面,表現(xiàn)出很強的投資價值。從國際范圍來看, 作為數(shù)字化電子信息產(chǎn)品核心的嵌入式系統(tǒng)目前其硬件和軟件開發(fā)工具市場已經(jīng)突破2000億美元,嵌入式系統(tǒng)帶來的全球工業(yè)年產(chǎn)值更是達到了一萬億美元,隨 著全球經(jīng)濟的持續(xù)增長以及信息化的加速發(fā)展,嵌入式系統(tǒng)市場必將進一步增長。?
本課程是為了適應目前發(fā)展迅速的嵌入式Linux需求而設計,課程目標是讓學員達到適應嵌入式應用軟件開發(fā)、嵌入式系統(tǒng)開發(fā)或嵌入式驅(qū)動開發(fā)的 基本素質(zhì)。課程循序漸進的帶領您嵌入式開發(fā)的世界,采用了目前應用最廣泛的軟硬件開發(fā)平臺(Linux和Arm),可以保證您盡量貼近目前企業(yè)需求。?
學習步驟如下:(一步步來哦:)?
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調(diào)試技術?
Autoconf?
Automake?
Makefile?
代碼優(yōu)化 熟悉Linux系統(tǒng)下的開發(fā)環(huán)境?
熟悉Gcc編譯器?
熟悉Makefile規(guī)則編寫Hello,World程序?
使用 make命令編譯程序?
編寫帶有一個循環(huán)的程序?
調(diào)試一個有問題的程序?
4、嵌入式系統(tǒng)開發(fā)基礎?
嵌入式系統(tǒng)概述?
交叉編譯?
配置TFTP服務?
配置NFS服務?
下載Bootloader和內(nèi)核?
嵌入式Linux應用軟件開發(fā)流程?
熟悉嵌入式系統(tǒng)概念以及開發(fā)流程?
建立嵌入式系統(tǒng)開發(fā)環(huán)境制作cross_gcc工具鏈?
編譯并下載U-boot?
編譯并下載Linux內(nèi)核?
編譯并下載Linux應用程序?
5、嵌入式系統(tǒng)移植?
Linux內(nèi)核代碼?
平臺相關代碼分析?
ARM平臺介紹?
平臺移植的關鍵技術?
移植Linux內(nèi)核到 ARM平臺 了解移植的概念?
能夠移植Linux內(nèi)核移植Linux2.6內(nèi)核到 ARM9開發(fā)板?
6、嵌入式 Linux 下串口通信?
串行I/O的基本概念?
嵌入式Linux應用軟件開發(fā)流程?
Linux系統(tǒng)的文件和設備?
與文件相關的系統(tǒng)調(diào)用?
配置超級終端和MiniCOM 能夠熟悉進行串口通信?
熟悉文件I/O 編寫串口通信程序?
編寫多串口通信程序?
7、嵌入式系統(tǒng)中多進程程序設計?
Linux系統(tǒng)進程概述?
嵌入式系統(tǒng)的進程特點?
進程操作?
守護進程?
相關的系統(tǒng)調(diào)用了解Linux系統(tǒng)中進程的概念?
能夠編寫多進程程序編寫多進程程序?
編寫一個守護進程程序?
sleep系統(tǒng)調(diào)用任務管理、同步與通信 Linux任務概述?
任務調(diào)度?
管道?
信號?
共享內(nèi)存?
任務管理 API 了解Linux系統(tǒng)任務管理機制?
熟悉進程間通信的幾種方式?
熟悉嵌入式Linux中的任務間同步與通信?
編寫一個簡單的管道程序?qū)崿F(xiàn)文件傳輸?
編寫一個使用共享內(nèi)存的程序?
8、嵌入式系統(tǒng)中多線程程序設計?
線程的基礎知識?
多線程編程方法?
線程應用中的同步問題了解線程的概念?
能夠編寫簡單的多線程程序編寫一個多線程程序?
9、嵌入式 Linux 網(wǎng)絡編程?
網(wǎng)絡基礎知識?
嵌入式Linux中TCP/IP網(wǎng)絡結(jié)構(gòu)?
socket 編程?
常用 API函數(shù)?
分析Ping命令的實現(xiàn)?
基本UDP套接口編程?
許可證管理?
PPP協(xié)議?
GPRS 了解嵌入式Linux網(wǎng)絡體系結(jié)構(gòu)?
能夠進行嵌入式Linux環(huán)境下的socket 編程?
熟悉UDP協(xié)議、PPP協(xié)議?
熟悉GPRS 使用socket 編寫代理服務器?
使用socket 編寫路由器?
編寫許可證服務器?
指出TCP和UDP的優(yōu)缺點?
編寫一個web服務器?
編寫一個運行在 ARM平臺的網(wǎng)絡播放器?
10、GUI 程序開發(fā)?
GUI基礎?
嵌入式系統(tǒng)GUI類型?
編譯QT?
進行QT開發(fā)熟悉嵌入式系統(tǒng)常用的GUI?
能夠進行QT編程使用QT編寫“Hello,World”程序?
調(diào)試一個加入信號/槽的實例?
通過重載QWidget 類方法處理事件?
11、Linux 字符設備驅(qū)動程序?
設備驅(qū)動程序基礎知識?
Linux系統(tǒng)的模塊?
字符設備驅(qū)動分析?
fs_operation結(jié)構(gòu)?
加載驅(qū)動程序了解設備驅(qū)動程序的概念?
了解Linux字符設備驅(qū)動程序結(jié)構(gòu)?
能夠編寫字符設備驅(qū)動程序編寫Skull驅(qū)動?
編寫鍵盤驅(qū)動?
編寫I/O驅(qū)動?
分析一個看門狗驅(qū)動程序?
對比Linux2.6內(nèi)核與2.4內(nèi)核中字符設備驅(qū)動的不同?
Linux 塊設備驅(qū)動程序塊設備驅(qū)動程序工作原理?
典型的塊設備驅(qū)動程序分析?
塊設備的讀寫請求隊列了解Linux塊設備驅(qū)動程序結(jié)構(gòu)?
能夠編寫簡單的塊設備驅(qū)動程序比較字符設備與塊設備的異同?
編寫MMC卡驅(qū)動程序?
分析一個文件系統(tǒng)?
對比Linux2.6內(nèi)核與2.4內(nèi)核中塊設備驅(qū)動的不同?
12、文件系統(tǒng)?
虛擬文件系統(tǒng)?
文件系統(tǒng)的建立?
ramfs內(nèi)存文件系統(tǒng)?
proc文件系統(tǒng)?
devfs 文件系統(tǒng)?
MTD技術簡介?
MTD塊設備初始化?
MTD塊設備的讀寫操作了解Linux系統(tǒng)的文件系統(tǒng)?
了解嵌入式Linux的文件系統(tǒng)?
了解MTD技術?
能夠編寫簡單的文件系統(tǒng)為 ARM9開發(fā)板添加 MTD支持?
移植JFFS2文件系統(tǒng)?
通過proc文件系統(tǒng)修改操作系統(tǒng)參數(shù)?
分析romfs 文件系統(tǒng)源代碼?
創(chuàng)建一個cramfs 文件系統(tǒng)
總結(jié)
- 上一篇: 设计模式 - 装饰模式
- 下一篇: 阿里巴巴网站运营模式