<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式Linux實時化技術(shù)

          嵌入式Linux實時化技術(shù)

          作者:黃武陵 中科院自動化所 何小慶 北京麥克泰軟件技術(shù)有限公司 艾云峰 中科院研究生院 時間:2010-03-02 來源:電子產(chǎn)品世界 收藏

            ● 其他改進(jìn)

          本文引用地址:http://www.ex-cimer.com/article/106458.htm

            在用戶層支持性能良好的futex,實現(xiàn)原理類似于內(nèi)核優(yōu)先級繼承mutex,僅在產(chǎn)生競態(tài)時進(jìn)入內(nèi)核,提高了應(yīng)用程序性能。此外,實時搶占補(bǔ)丁內(nèi)核還提供mutex死鎖檢測、延遲跟蹤與測量、中斷關(guān)閉跟蹤與延遲測量、搶占延遲測量等內(nèi)核調(diào)試與診斷、內(nèi)核性能測量與調(diào)優(yōu)等工具、實時Trace支持( Ftrace)等支持。

            現(xiàn)階段實時化技術(shù)在各體系結(jié)構(gòu)上逐漸得到了支持,如表1所示。

            實時搶占內(nèi)核延遲

            現(xiàn)階段,實時搶占補(bǔ)丁技術(shù)仍處于完善過程中,其表現(xiàn)在以下幾點不足。

            ● 中斷延遲

            即使不發(fā)生中斷線程搶占,實時搶占內(nèi)核相對原來中斷服務(wù)機(jī)制額外增加一對上下文切換時間,用于喚醒中斷服務(wù)線程執(zhí)行和進(jìn)入睡眠狀態(tài)。此外,內(nèi)核中還存在少量用raw_spinlock鎖禁用中斷來保護(hù)的臨界區(qū),需要計算這些鎖造成的中斷延遲。

            ● 任務(wù)搶占延遲

            內(nèi)核搶占延遲主要是由于在內(nèi)核中使用各種鎖機(jī)制用于控制任務(wù)和中斷對臨界區(qū)的訪問所造成的,特別是實時搶占內(nèi)核中為了避免優(yōu)先級逆轉(zhuǎn)增加的鎖機(jī)制帶來了額外時間負(fù)載。

            ● 內(nèi)核模塊其他延遲

            在實時搶占補(bǔ)丁中,內(nèi)存管理模塊還需減少頁表錯誤引起的延遲,降低mlockall內(nèi)存鎖存造成的性能降級影響。實時搶占內(nèi)核中高精度定時器的使用導(dǎo)致了額外定時器管理時間負(fù)載。此外,內(nèi)核中一些驅(qū)動程序需要針對實時應(yīng)用進(jìn)行優(yōu)化來提高實時響應(yīng)。軟浮點處理和軟浮點內(nèi)核仿真需要和實時搶占補(bǔ)丁兼容,能耗管理子系統(tǒng)還需要具備實時系統(tǒng)感知能力。

            實時搶占內(nèi)核性能測試

            本文在Intel Pentium M 1.7GHz上進(jìn)行了測試。測試環(huán)境包括:內(nèi)核2.6.25.8最小配置;patch-2.6.25.8-rt7實時補(bǔ)丁;libc 2.5+和busybox-1.10.0構(gòu)建initrdfs方式的根文件系統(tǒng)。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          關(guān)鍵詞: 嵌入式 Linux 處理器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();