Linux 系統(tǒng)開發(fā)
基于 linux 操作系統(tǒng)來開發(fā)我們的產(chǎn)品叫 linux系統(tǒng)開發(fā)。此開發(fā)的編程方式和裸機(jī)開發(fā)的編程方式是截然不同的。裸機(jī)開發(fā)的編程方式是直接運(yùn)行在硬件之上,不與任何操作系統(tǒng)關(guān)聯(lián)。
操作系統(tǒng)的存在勢(shì)必要求設(shè)備驅(qū)動(dòng)附加更多的代碼和功能,把單一的“驅(qū)使硬件設(shè)備行動(dòng)”變成了操作系統(tǒng)內(nèi)與硬件交互的模塊, 它對(duì)外呈現(xiàn)為操作系統(tǒng)的API,不再給應(yīng)用軟件工程師直接提供接口。由此可見,當(dāng)系統(tǒng)中存在操作系統(tǒng)的時(shí)候,驅(qū)動(dòng)變成了連接硬件和內(nèi)核的橋梁。
linux 系統(tǒng)開發(fā)框架如下圖所示,最上層的是應(yīng)用軟件,下面是操作系統(tǒng),再下面是驅(qū)動(dòng)程序,最后是我們的硬件。
舉個(gè)例子:linux 系統(tǒng)可以跑到不同的硬件上面如 pc 機(jī)或者 arm 開發(fā)板上面。如果 linux 操作系統(tǒng)跑到 PC 機(jī)上,那么驅(qū)動(dòng)就要適配PC 機(jī);如果 linux 操作系統(tǒng)跑到 arm 開發(fā)板上面, 那么驅(qū)動(dòng)就要適配 arm 開發(fā)板;所以說不同的硬件架構(gòu)都可以跑linux,但是它的驅(qū)動(dòng)程序是不同的,那么 linux操作系統(tǒng)源碼都是一樣的,唯一不一樣的就是驅(qū)動(dòng)程序了。也就是說同一個(gè)操作系統(tǒng)可以跑到不同的硬件上面,但是驅(qū)動(dòng)程序是有差異的,因?yàn)轵?qū)動(dòng)程序是操作系統(tǒng)和硬件連接的一個(gè)橋梁。
-
嵌入式
+關(guān)注
關(guān)注
5141文章
19525瀏覽量
314817 -
Linux
+關(guān)注
關(guān)注
87文章
11456瀏覽量
212760 -
開發(fā)
+關(guān)注
關(guān)注
0文章
372瀏覽量
41342
發(fā)布評(píng)論請(qǐng)先 登錄
ARM嵌入式Linux系統(tǒng)開發(fā)從入門到精通
《嵌入式Linux系統(tǒng)開發(fā)技術(shù)詳解--基于ARM(完整版)》電子版
ARM嵌入式Linux系統(tǒng)開發(fā)詳解
《嵌入式LINUX系統(tǒng)開發(fā)教程_賀丹丹編》高清pdf下載鏈接
嵌入式Linux系統(tǒng)開發(fā)基礎(chǔ)

Linux嵌入式系統(tǒng)開發(fā)平臺(tái)選型探討

ARM嵌入式Linux系統(tǒng)開發(fā)(完整版)
ARM嵌入式Linux系統(tǒng)開發(fā)詳解PPT
Linux+嵌入式實(shí)時(shí)操作系統(tǒng)開發(fā)與應(yīng)用

(網(wǎng)盤)ARM嵌入式Linux系統(tǒng)開發(fā)詳解

嵌入式系統(tǒng)設(shè)計(jì)--課堂總結(jié)(嵌入式Linux系統(tǒng)開發(fā))

評(píng)論