支持Xenomai內(nèi)核的實(shí)時(shí)系統(tǒng)有buildroot,debian和ubuntu。在buildroot系統(tǒng)中自帶 cyclictest ,如果是ubuntu系統(tǒng)或者debian系統(tǒng),可以在開(kāi)發(fā)板聯(lián)網(wǎng)之后,使用apt安裝,輸入以下命令: apt-get install rt-tests 在燒寫(xiě)非實(shí)時(shí)內(nèi)核的buildroot鏡像之后,使用cyclictest測(cè)試,執(zhí)行以下命令: cyclictest -S -p 99 -m ![]() 在上圖中,T:0~7 表示序號(hào)為0~7的線(xiàn)程,P:99 表示線(xiàn)程的優(yōu)先級(jí)是99 ,C:857213表示計(jì)數(shù)器。線(xiàn)程的時(shí)間間隔每達(dá)到一次,計(jì)數(shù)器加一;I:4500表示時(shí)間間隔為4500微秒;Min表示最小延時(shí)(us);Act表示最近一次的延時(shí)(us);Avg表示平均延時(shí)(us); Max表示最大延時(shí)(us)。 在實(shí)際使用環(huán)境中,如果沒(méi)有適當(dāng)?shù)呢?fù)載,運(yùn)行cyclictest所得到的延遲統(tǒng)計(jì)數(shù)據(jù)不準(zhǔn)確,為了模擬一些負(fù)載類(lèi)型,我們可以采用官方提供的 hackbench工具。然后基于這個(gè)負(fù)載,我們運(yùn)行cyclictest軟件來(lái)測(cè)試系統(tǒng)在事件發(fā)生時(shí)的響應(yīng)時(shí)間。輸入以下命令: hackbench -l -1 -g 15 -f 25 -P & cyclictest -S -p 99 -m ![]() 然后燒寫(xiě)迅為提供的Xenomai實(shí)時(shí)內(nèi)核鏡像,輸入以下命令空載測(cè)試,測(cè)試1小時(shí),如下圖所示: cyclictest -S -p 99 -m ![]() 在實(shí)際使用環(huán)境中,如果沒(méi)有適當(dāng)?shù)呢?fù)載,運(yùn)行cyclictest所得到的延遲統(tǒng)計(jì)數(shù)據(jù)不準(zhǔn)確,為了模擬一些負(fù)載類(lèi)型,我們可以采用官方提供的 hackbench工具。然后基于這個(gè)負(fù)載,我們運(yùn)行cyclictest軟件來(lái)測(cè)試系統(tǒng)在事件發(fā)生時(shí)的響應(yīng)時(shí)間。輸入以下命令: hackbench -l -1 -g 15 -f 25 -P & cyclictest -S -p 99 -m ![]() 在這里,我們重點(diǎn)比較三組數(shù)據(jù)的最大延遲(max)參數(shù),因?yàn)橄到y(tǒng)的實(shí)時(shí)性能取決于最大延遲時(shí)間。通過(guò)比較打?qū)崟r(shí)系統(tǒng)前后的測(cè)試,可以明顯看到延遲下降明顯,實(shí)時(shí)效果顯著提升。 下表列舉了不同情況下的延遲參數(shù)。 ![]() |