基于Linux的嵌入式實時操作系統(tǒng)的研究方案
讀取FIFO設(shè)備,獲取最大值和最小值
在屏幕上打印出來
這種編程方法是進(jìn)行RT Linux編程的通用方法,將一個任務(wù)分為實時部分和非實時部分,在實時部分完成的是實時任務(wù);在非實時部分主要是完成顯示等不需要實時的功能。程序的體系結(jié)構(gòu)如下所示:
限于篇幅,程序代碼略。
(1)Linux的移植。如果Linux不支持選用的平臺,就需要把Linux內(nèi)核中與硬件平臺相關(guān)的部分改寫,使之支持所選用的平臺。
(2)內(nèi)核的裁剪。嵌入式產(chǎn)品的可用資源比較少,所以它的內(nèi)核相對嵌入式系統(tǒng)來說就顯得有點大,需要進(jìn)行剪裁到可利用的大小。
(3)桌面系統(tǒng)?,F(xiàn)代的操作系統(tǒng)如果沒有一個友好的界面是沒有說服力的?,F(xiàn)在的臺式機(jī)Linux系統(tǒng)使用了傳統(tǒng)的X-Window系統(tǒng)的模式—Client/Server結(jié)構(gòu)。和硬件有關(guān)的部分即是Server端,實現(xiàn)一個標(biāo)準(zhǔn)的顯示接口;應(yīng)用程序通過對Server的服務(wù)請求,實現(xiàn)程序的顯示。在此之上,實現(xiàn)窗口的管理功能。但X Window對于嵌入式系統(tǒng)來說顯得很龐大。現(xiàn)在國內(nèi)有MiniGUI,國外有MicroWindow,都在致力于嵌入式Linux GUI的開發(fā)。適用于嵌入式Linux上的X-Window的工作也在進(jìn)行。
(4)驅(qū)動程序的開發(fā)。Linux內(nèi)核更新的很快,許多最新的硬件驅(qū)動很快就被支持。但嵌入式系統(tǒng)應(yīng)用領(lǐng)域是多種多樣的,所選用的硬件設(shè)備也不同,并且不可能都有Linux的驅(qū)動程序,因此,設(shè)備驅(qū)動程序的開發(fā)也是重要的工作。
7.結(jié)束語
嵌入式系統(tǒng)的開發(fā)是剪裁與移植相結(jié)合的過程,開發(fā)者自己編寫的代碼并不多。筆者在智能交通監(jiān)控系統(tǒng)的設(shè)計中,通過對Linux適當(dāng)?shù)募舨茫x擇了RT-linux作為系統(tǒng)的開發(fā)平臺,對于提高系統(tǒng)的開發(fā)效率和降低開發(fā)成本取得較好的實效。當(dāng)然,嵌入式系統(tǒng)的發(fā)展對嵌入式操作系統(tǒng)提出了更高的要求,因此,對嵌入式操作系統(tǒng)的結(jié)構(gòu)、設(shè)計、用戶界面等諸多方面進(jìn)行深入研究,將有助于嵌入式系統(tǒng)的應(yīng)用和發(fā)展。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂) 電能表相關(guān)文章:電能表原理
評論