基于RTAI的嵌入式Linux硬實(shí)時(shí)性能的研究與實(shí)現(xiàn)
rtai_sched_module模塊主要實(shí)現(xiàn)一個(gè)實(shí)時(shí)的任務(wù)調(diào)度,調(diào)度器基于優(yōu)先級(jí)且為可搶占式的;rtai_fifos_module是管道先入先出模塊,負(fù)責(zé)實(shí)時(shí)應(yīng)用與Linux應(yīng)用之間的通訊;rtai_shm_module模塊實(shí)現(xiàn)共享內(nèi)存的通訊方式;rtai_lxrt_module允許在用戶空間使用RTAI的系統(tǒng)服務(wù)和調(diào)度期。
3 嵌入式Linux的實(shí)時(shí)性實(shí)驗(yàn)測(cè)試與分析
3.1 電能質(zhì)量監(jiān)控實(shí)驗(yàn)平臺(tái)
電能質(zhì)量問題在電能的生產(chǎn)以及消費(fèi)單位越來(lái)越得到關(guān)注,這就要求有更加先進(jìn)的電能質(zhì)量監(jiān)測(cè)、控制裝置與其配套。在線式電能質(zhì)量監(jiān)測(cè)設(shè)備更多的投入了使用,這些設(shè)備大多采用嵌入式的系統(tǒng)結(jié)構(gòu),在惡劣的條件下完成現(xiàn)場(chǎng)數(shù)據(jù)采集、運(yùn)算、控制以及通訊等一系列的任務(wù)。這些任務(wù)必須滿足嚴(yán)格的時(shí)序關(guān)系,并且需要有很高的響應(yīng)速度,因此對(duì)于系統(tǒng)實(shí)時(shí)性提出了很高的要求。一個(gè)典型的基于嵌入式Linux的在線式電能質(zhì)量監(jiān)控器硬件結(jié)構(gòu)框圖如圖2所示:
圖2 在線式電能質(zhì)量監(jiān)控系統(tǒng)結(jié)構(gòu)圖
Fig2 Architecture of an online power quality monitoring and control system
實(shí)驗(yàn)平臺(tái)選用Freescale的MCF5249嵌入式微處理器完成了一套如圖2所示的在線式電能質(zhì)量監(jiān)控系統(tǒng),微處理器內(nèi)部工作頻率為120Mhz,性能達(dá)125 Dhrystone 2.1 MIPS,外配4M FLASH和8M SDRAM存儲(chǔ)器。軟件方面,成功移植RTAI-uClinux雙內(nèi)核系統(tǒng)至此硬件平臺(tái),并且針對(duì)實(shí)際應(yīng)用對(duì)系統(tǒng)的實(shí)時(shí)性進(jìn)行了測(cè)試和分析。
3.2 時(shí)間分辨率測(cè)試
電能質(zhì)量監(jiān)控系統(tǒng)需要周期性的對(duì)A/D轉(zhuǎn)換芯片進(jìn)行采樣,并且某些實(shí)時(shí)性較強(qiáng)的控制算法要求核心任務(wù)被重新調(diào)度的周期很短,因此系統(tǒng)對(duì)周期性實(shí)時(shí)任務(wù)的支持非常重要。
進(jìn)行實(shí)驗(yàn)如下:分別在uClinux和RTAI-uClinux下利用定時(shí)函數(shù)設(shè)計(jì)周期性的高優(yōu)先級(jí)任務(wù),每一周期切換一次I/O口的電平,找出各自可分辨的穩(wěn)定的最小任務(wù)周期。
在處理器中等負(fù)荷條件下,實(shí)驗(yàn)結(jié)果如表1所示:
操作系統(tǒng) | 方波最小周期 | 任務(wù)的最小周期約 |
uClinux | 40.002 ms | 20 ms |
RTAI/uClinux雙內(nèi)核 | 110.19 us | 55 us |
表1 時(shí)間分辨率實(shí)驗(yàn)結(jié)果分析表
Table1 Analysis of the time resolution experiment
例如,在RTAI-uClinux系統(tǒng)中在不同的定時(shí)周期下的實(shí)驗(yàn)波形圖如圖3圖4所示。當(dāng)定時(shí)周期較大時(shí)系統(tǒng)穩(wěn)定運(yùn)行,而過小的定時(shí)周期(50us)會(huì)使系統(tǒng)運(yùn)行變得不穩(wěn)定。
評(píng)論