新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于APIC時鐘的嵌入式Linux內核實時化研究

        基于APIC時鐘的嵌入式Linux內核實時化研究

        作者: 時間:2010-10-05 來源:網絡 收藏


        上面調用invoke_softirq()函數執行軟中斷使本文修改的重點,修改中斷向量表,對向量表中所有軟中斷和中斷進行排序,提前硬中斷的時間片,這樣使當前處于pending狀態的軟中斷被屏蔽和懸掛,直到硬中斷處理完成為止。將invoke_softirq()函數修改為:

        每個處理器時間片上能夠處理的中斷只有一個,通過更新當前任務時間片,使硬中斷在第一時間獲得CPU的響應,此時軟中斷將被屏蔽,這就保證了硬中斷能夠得到的響應。
        由于采用8254完成時序分配,8254需要保留以保證系統的穩定性。這樣的話,8254定時器和必須共存,對于硬應用,可采用進行計時。在8254中斷過程中,如果產生中斷,采用通過本文的方琺必須對優先對APIC進行響應,會出現8254中斷被搶占,此時上下文切換等操作可能導致不可預料的錯誤。解決問題的方法可采取在APIC相應中斷期間,關閉軟中斷,只有當APIC中斷執行完畢后,8254軟中斷才能夠被響應。

        3 實時性能測試與分析
        實驗條件1:CPU:PⅢ300 MHz,內存為128 MB,硬盤為5 400轉的15 GB臺式機硬盤,操作系統為Fedora2.6.18。環境一(vd-d1)采用原版,環境二(vd-d2)采用改進型。測試方法為通過測試內核的上、下文切換、內存延遲及模擬外部中斷來評價改造前后的性能。統計測試結果,如圖2、圖3所示。

        本文引用地址:http://www.104case.com/article/151459.htm


        從實驗結果可知,在上、下文切換中I/0讀/寫和文件打開和關閉,改進型內核的實時性能都有明顯提高,模擬TCP通道子項,改進型內核性能提高了約6倍,但在對中斷響應要求不是很高的null call測試中,中斷響應時間幾乎相同。改進型內核中斷響應速度始終穩定在微妙級。在處理器負荷較輕時原始內核有著良好的內存延遲,隨著處理器負荷的進一步加重,原始內核的內存延遲急劇增加。在最差情況下,系統響應速度較慢,延遲時間達到5μs。而改進型內核在處理器負荷變化時,系統的響應速度變化不明顯,而且中斷響應速度始終穩定在2μs以下,性能穩定。
        實驗條件2:采用改進型內核,環境一(vd-d2)CPU:PIII 300 MHz,環境二(vd-d3)CPU降頻為200 MHz(接近ARM9)。統計測試結果,獲得它們的文件系統延遲結果見圖4。圖4反映了同樣采用改進型內核,將CPU降頻前后,測試結果差距在10μs以內,可看出在文件系統延遲中,處理器頻率的較小差距對內核的影響不大。如采用高主頻的處理器,實驗結果差距較大。



        4 結語
        本文通過修改APIC,可顯著地改進系統的實時性能,通過對比試驗可看出改進型內核具有良好的實時性能,滿足了系統實時性和穩定性要求。本文方法使得系統在高實時性領域中得到實際的應用。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
        光電開關相關文章:光電開關原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 淅川县| 濉溪县| 西林县| 靖边县| 南皮县| 溧阳市| 游戏| 满城县| 定远县| 宝清县| 沁水县| 商南县| 阳江市| 高青县| 望都县| 黄石市| 全南县| 凤山市| 凤山县| 鸡西市| 红河县| 陵水| 肇州县| 滨州市| 北川| 鸡西市| 安阳市| 花垣县| 玛多县| 嘉峪关市| 汾西县| 汉沽区| 托里县| 滦南县| 迁安市| 红原县| 丰县| 正安县| 南昌市| 秦皇岛市| 乌苏市|