|
|
這些嵌入式Linux系統(tǒng)基礎(chǔ)知識(shí)你應(yīng)該知道!
一、嵌入式Linux系統(tǒng)的構(gòu)成
1、硬件
2、內(nèi)核
3、應(yīng)用程序(形成根文件系統(tǒng))
二、構(gòu)建嵌入式Linux系統(tǒng)的主要任務(wù)
1、內(nèi)核部分
2、應(yīng)用程序部分
嵌入式Linux的開發(fā)大致可分為三個(gè)層次:引導(dǎo)裝載內(nèi)核、構(gòu)造文件系統(tǒng)和圖形用戶界面。作為操作系統(tǒng)重要組成部分的文件系統(tǒng),決定了操作系統(tǒng)本身的信息和用戶的數(shù)據(jù)在存儲(chǔ)設(shè)備上的組織形式。對(duì)嵌入式文件系統(tǒng)的研究、設(shè)計(jì)和開發(fā)也逐漸成為嵌入式系 統(tǒng)研究領(lǐng)域的一個(gè)方向。
三、內(nèi)核精簡(jiǎn)
在精簡(jiǎn)內(nèi)核在編譯內(nèi)核之前,首先要明確需要哪些驅(qū)動(dòng)和模塊,然后只選擇需要的驅(qū)動(dòng)和模塊,
例如,如果系統(tǒng)不需要網(wǎng)絡(luò)支持,則可以去掉網(wǎng)絡(luò)模塊 。
內(nèi)核一般是以壓縮方式存放的,在系統(tǒng)啟動(dòng)時(shí)會(huì)自行解壓。
內(nèi)核都是常駐內(nèi)存的,當(dāng)需要調(diào)用應(yīng)用程序時(shí),再把需要的程序從磁盤調(diào)入內(nèi)存運(yùn)行。
四、嵌入式系統(tǒng)的組成
1、嵌入式硬件(嵌入式處理器和嵌入式外圍設(shè)備)
2、嵌入式操作系統(tǒng)
3、嵌入式應(yīng)用軟件
嵌入式處理器
嵌入式系統(tǒng)的核心是各種類型的嵌入式處理器,嵌入式處理器與通用處理器最大的不同點(diǎn)在于,嵌入式CPU大多工作在為特定用戶群所專門設(shè)計(jì)的系統(tǒng)中,它將通用CPU中許多由板卡完成的任務(wù)集成到芯片內(nèi)部,從而有利于嵌入式系統(tǒng)在設(shè)計(jì)時(shí)趨于小型化,同時(shí)還具有很高的效率和可靠性。
嵌入式處理器的體系結(jié)構(gòu)經(jīng)歷了從CISC(復(fù)雜指令集)至RISC(精簡(jiǎn)指令集)和Compact RISC的轉(zhuǎn)變,位數(shù)則由4位、8位、16位、32位逐步發(fā)展到64位。目前常用的嵌入式處理器可分為低端的嵌入式微控制器(Micro Controller Unit,MCU)、中高端的嵌入式微處理器(Embedded Micro Processor Unit,EMPU)、用于計(jì)算機(jī)通信領(lǐng)域的嵌入式DSP處理器(Embedded Digital Signal Processor,EDSP)和高度集成的嵌入式片上系統(tǒng)(System On Chip,SOC)。
目前幾乎每個(gè)半導(dǎo)體制造商都生產(chǎn)嵌入式處理器,并且越來越多的公司開始擁有自主的處理器設(shè)計(jì)部門,據(jù)不完全統(tǒng)計(jì),全世界嵌入式處理器已經(jīng)超過1000多種,流行的體系結(jié)構(gòu)有30多個(gè)系列。
嵌入式外圍設(shè)備
在嵌入系統(tǒng)硬件系統(tǒng)中,除了中心控制部件(MCU、DSP、EMPU、SOC)以外,用于完成存儲(chǔ)、通信、調(diào)試、顯示等輔助功能的其他部件,事實(shí)上都可以算作嵌入式外圍設(shè)備。目前常用的嵌入式外圍設(shè)備按功能可以分為存儲(chǔ)設(shè)備、通信設(shè)備和顯示設(shè)備三類。
存儲(chǔ)設(shè)備主要用于各類數(shù)據(jù)的存儲(chǔ),常用的有靜態(tài)易失型存儲(chǔ)器(RAM、SRAM)、動(dòng)態(tài)存儲(chǔ)器(DRAM)和非易失型存儲(chǔ)器(ROM、EPROM、EEPROM、FLASH)三種,其中FLASH憑借其可擦寫次數(shù)多、存儲(chǔ)速度快、存儲(chǔ)容量大、價(jià)格便宜等優(yōu)點(diǎn),在嵌入式領(lǐng)域內(nèi)得到了廣泛應(yīng)用。
目前存在的絕大多數(shù)通信設(shè)備都可以直接在嵌入式系統(tǒng)中應(yīng)用,包括RS-232接口(串行通信接口)、SPI(串行外圍設(shè)備接口)、IrDA(紅外線接口)、I2C(現(xiàn)場(chǎng)總線)、USB(通用串行總線接口)、Ethernet(以太網(wǎng)接口)等。
由于嵌入式應(yīng)用場(chǎng)合的特殊性,通常使用的是陰極射線管(CRT)、液晶顯示器(LCD)和觸摸板(Touch Panel)等外圍顯示設(shè)備。
嵌入式操作系統(tǒng)
為了使嵌入式系統(tǒng)的開發(fā)更加方便和快捷,需要有專門負(fù)責(zé)管理存儲(chǔ)器分配、中斷處理、任務(wù)調(diào)度等功能的軟件模塊,這就是嵌入式操作系統(tǒng)。嵌入式操作系統(tǒng)是用來支持嵌入式應(yīng)用的系統(tǒng)軟件,是嵌入式系統(tǒng)極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)程序、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形用戶界面(GUI)等。
嵌入式操作系統(tǒng)具有通用操作系統(tǒng)的基本特點(diǎn),如能夠有效管理復(fù)雜的系統(tǒng)資源,能夠?qū)τ布M(jìn)行抽象,能夠提供庫(kù)函數(shù)、驅(qū)動(dòng)程序、開發(fā)工具集等。但與通用操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)性、硬件依賴性、軟件固化性以及應(yīng)用專用性等方面,具有更加鮮明的特點(diǎn)。
嵌入式操作系統(tǒng)根據(jù)應(yīng)用場(chǎng)合可以分為兩大類:一類是面向消費(fèi)電子產(chǎn)品的非實(shí)時(shí)系統(tǒng),這類設(shè)備包括個(gè)人數(shù)字助理(PDA)、移動(dòng)電話、機(jī)頂盒(STB)等;另一類則是面向控制、通信、醫(yī)療等領(lǐng)域的實(shí)時(shí)操作系統(tǒng),如WindRiver公司的VxWorks、QNX系統(tǒng)軟件公司的QNX等。
實(shí)時(shí)系統(tǒng)(Real Time System)是一種能夠在指定或者確定時(shí)間內(nèi)完成系統(tǒng)功能,并且對(duì)外部和內(nèi)部事件在同步或者異步時(shí)間內(nèi)能做出及時(shí)響應(yīng)的系統(tǒng)。在實(shí)時(shí)系統(tǒng)中,操作的正確性不僅依賴于邏輯設(shè)計(jì)的正確程度,而且與這些操作進(jìn)行的時(shí)間有關(guān),也就是說,實(shí)時(shí)系統(tǒng)對(duì)邏輯和時(shí)序的要求非常嚴(yán)格,如果邏輯和時(shí)序控制出現(xiàn)偏差將會(huì)產(chǎn)生嚴(yán)重后果。
實(shí)時(shí)系統(tǒng)主要通過三個(gè)性能指標(biāo)來衡量系統(tǒng)的實(shí)時(shí)性,即響應(yīng)時(shí)間(Response Time)、生存時(shí)間(Survival Time)和吞吐量(Throughput):
響應(yīng)時(shí)間
是實(shí)時(shí)系統(tǒng)從識(shí)別出一個(gè)外部事件到做出響應(yīng)的時(shí)間。
生存時(shí)間
是數(shù)據(jù)的有效等待時(shí)間,數(shù)據(jù)只有在這段時(shí)間內(nèi)才是有效的。
吞吐量
是在給定的時(shí)間內(nèi)系統(tǒng)能夠處理的事件總數(shù),吞吐量通常比平均響應(yīng)時(shí)間的倒數(shù)要小一點(diǎn)。
嵌入式應(yīng)用軟件
嵌入式應(yīng)用軟件是針對(duì)特定應(yīng)用領(lǐng)域,基于某一固定的硬件平臺(tái),用來達(dá)到用戶預(yù)期目標(biāo)的計(jì)算機(jī)軟件,由于用戶任務(wù)可能有時(shí)間和精度上的要求,因此有些嵌入式應(yīng)用軟件需要特定嵌入式操作系統(tǒng)的支持。嵌入式應(yīng)用軟件和普通應(yīng)用軟件有一定的區(qū)別,它不僅要求其準(zhǔn)確性、安全性和穩(wěn)定性等方面能夠滿足實(shí)際應(yīng)用的需要,而且還要盡可能地進(jìn)行優(yōu)化,以減少對(duì)系統(tǒng)資源的消耗,降低硬件成本。
五、如何構(gòu)建嵌入式Linux系統(tǒng)的設(shè)計(jì)步驟
嵌入式系統(tǒng)目前主要有:Windows CE、VxWorks、QNX等,它們都具較好的實(shí)時(shí)性、系統(tǒng)可靠性、任務(wù)處理隨機(jī)性等優(yōu)點(diǎn)。但是它們的價(jià)格普遍偏高,很多開發(fā)商承受不起。因而,Linux操作系統(tǒng)成為嵌入式操作系統(tǒng)的首選。
六、 Linux操作系統(tǒng)成為嵌入式操作系統(tǒng)首選的原因
在精簡(jiǎn)內(nèi)核在編譯內(nèi)核之前,首先要明確需要那些驅(qū)動(dòng)和模塊,然后只選擇需要的驅(qū)動(dòng)和模塊,例如,如果系統(tǒng)不需要網(wǎng)絡(luò)支持,則可以去掉網(wǎng)絡(luò)模塊 。內(nèi)核一般是以壓縮方式存放的,在系統(tǒng)啟動(dòng)時(shí)會(huì)自行解壓。內(nèi)核都是常駐內(nèi)存的,當(dāng)需要調(diào)用應(yīng)用程序時(shí),再把需要的程序從磁盤調(diào)入內(nèi)存運(yùn)行。
想要了解嵌入式、物聯(lián)網(wǎng)相關(guān)技術(shù)的可以聯(lián)系宋工企鵝號(hào)三五二四六五九零八八Tel:173--1795--1908
試聽C語(yǔ)言、電子、PCB、STM32、Linux、FPGA、JAVA、安卓等。
想學(xué)習(xí)的你和我聯(lián)系預(yù)約就可以免費(fèi)聽課了。
宋工企鵝號(hào):三五二四六五九零八八手機(jī)號(hào)173--1795--1908
|
|