999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

嵌入式Linux操作系統的實時性能研究與改進

2010-01-01 00:00:00董彧先
智能計算機與應用 2010年2期

摘要:從三方面提出改善Linux實時性能的措施:為提高嵌入式應用響應時間精度,提出兩種細化Linux時鐘粒度方法:為增強系統內核對實時任務的響應能力,增強Linux內核的可搶占性,提出插入搶占方法:為擴展系統適用范圍,提出可支持多實時調度策略的調度方案。

關鍵詞:Linux 嵌入式系統 實時性 調度策略 搶占

中圖分類號:TP311.1 文獻標識碼:A

文章編號:1002-2422(2010)02-0090-02

1 Linux在實時應用中存在的技術障礙

1,1 Linux的實時性分析

Linux作為一個通用操作系統,主要考察的是調度的公平性和吞吐量等指標,然而并不能很好地滿足實時系統方面的需要。為了同時支持實時和非實時兩種進程,POSIX實時擴展部分逐漸被添加進來,如POSIX,1003.1b,引入了實時進程的概念,允許將一個進程的屬性確定為實時進程。Linux對實時進程和普通進程,采用不同的調度策略。

(1)實時進程。Linux提供兩種簡單的調度策略,即時間片輪轉調度和先來先服務調度。在SCHED_RR調度中,一旦時間片用完任務就被移動到優先級隊列的隊尾,并允許同一優先級的其它任務運行。如果同一優先級沒有其它任務,該任務將繼續運行下一個時間片。SCHED_FIFO是運行直至阻塞的策略。SCHED_FIFO任務按優先級調度,一旦開始就一直運行到結束或者阻塞在某種資源上。不像SCHED_RR任務那樣共享處理器。

(2)普通進程。Linttx采用類Unix的動態優先級調度。傳統的Unix操作系統屬分時系統,以高的吞吐量和公平性為追求目標,基本沒有考慮實時應用所應滿足的時間約束。

1,2 Linux在實時應用中的技術障礙

(1)缺少細粒度和多模式的定時器,Linux的系統時鐘精度太過粗糙,周期模式定時器頻率僅為100Hz,使得其時間粒度過大,加大了任務響應延遲。

(2)Linux下分用戶態和核心態兩種模式,當進程運行在用戶態時,可被優先級更高的進程搶占。但當進入核心態時,則其它用戶態進程優先級再高也不能搶占它。根本原因是Linux內核本身是不可搶占的。并且優先級反轉的現象使高優先級的實時進程可被低優先級的阻塞。

(3)Linux采用對臨界區操作時屏蔽中斷的方式,在中斷處理中不允許進行任務調度,從而抑制了系統及時響應外部操作的能力。

(4)缺乏有效的實時任務調度機制和調度算法。

2 改善嵌入式Linux實時性能方法

2,1細化時鐘粒度

時鐘粒度是制約內核實時性方面的主要因素之一,精確的計時是實時調度器正確操作所必須的,調度器通常要求在一個特定的時刻進行任務切換,計時的錯誤將導致背離計劃的調度,引起任務釋放抖動。標準Linux系統時鐘精度太過粗糙,時鐘中斷周期為10ms,不能滿足特定嵌入式應用領域中對于響應時間精度的要求。因此,在實時Linux應用中,需要細化其時鐘粒度,具體有兩種方式可以解決時鐘粒度問題:一是通過直接修改內核定時參數Hz的初值來細化時鐘粒度,如將標準Linux中內核定時參數HZ改為10000,則時鐘粒度可以達到100us,這種方式雖然會增加一些系統開銷,但在強周期性環境下,對定時器的設置只需初始化一次,在一定程度下保證了處理效率;二是通過對可編程中斷定時器進行編程或改換先進的可編程中斷控制器進行編程來改進Linux時鐘機制,以提高其時鐘的分辨率,使毫秒級的粗粒度定時器變成微秒級的細粒度定時器。

2,2增強Linux內核的搶占行

這里采用在內核中增加搶占點的方法。插入搶占點思想實質上是分析影響Linux實時性能的關鍵因素,找出影響實時性能的瓶頸位置,在其關鍵的代碼中插入調度語句,如:if(realtime_job_waiting)schedule():

這樣實時進程不必長時間等待低優先級進程的系統調用,當一個高優先級的實時進程競爭CPU時,核心只需要執行一小段代碼就可以被實時進程剝奪,當沒有實時進程等待CPU時,系統額外的工作只是執行的一個檢查標志。

插入檢查點方法簡單,修改內核的地方比較少,然而要在Linux內核適當的地方插入搶占點是一件不容易的事,In—go's Patch插入的搶占點多達46處,分布在各個模塊。

2,3改善Linux內核實時調度器的調度策略

目前,共享驅動的調度正越來越受到關注。在這種調度策略中,每個任務被分配了一定的共享資源,參與調度的系統中所有的實時任務按照一定比例共享計算機資源。將資源的共享作為調度策略考慮的一個因素,這在嵌入式系統中具有更重要的意義,因為嵌入式系統的CPU、帶寬、內存、磁盤等系統資源一般都是很有限的。

因此,提出要實現一種調度方案,使其同時支持以上所述的三類調度策略。其中,關于優先級驅動,提供優先級調度器負責在每個調度時機按優先級最高的原則從就緒隊列中提取任務:關于時間驅動的調度是在操作系統底層提供時間表支持,此時間表包括了每個任務的起止時間:關于共享驅動的調度是在操作系統底層提供任務的權值分配機制,該權值是針對CPU、帶寬、內存、磁盤等系統資源進行計算的。

總結以上實時調度策略所需的參數,為每個實時任務定義了三個調度屬性,分別是優先級屬性、時間表屬性、資源權值屬性。對于任務集則是優先級表、時間表和資源權值數組表,這樣,不同屬性的數據結構對應不同的調度策略,便于應用開發人員根據具體的情況靈活選擇。

這里建立一種調度器,用二階調度法來支持多調度鐿略。先在第一階段構造一個屬性的選擇模塊,完成屬性判斷,篩選出當前任務的調度屬性;然后是一個調度器選擇模塊,完成響應于當前的調度屬性的調度器的選擇。如圖1所示。

3 結束語

嵌入式技術具有廣泛的前景,把Linux自身固有的優越性融入嵌入式技術,是嵌入式技術發展的一個重要方向。

主站蜘蛛池模板: 国产精品三级专区| 免费观看国产小粉嫩喷水 | 亚洲综合极品香蕉久久网| 久久a毛片| 谁有在线观看日韩亚洲最新视频| 国产精品3p视频| 日韩天堂在线观看| 中文国产成人久久精品小说| 国产精品漂亮美女在线观看| 直接黄91麻豆网站| 中文字幕亚洲第一| 免费Aⅴ片在线观看蜜芽Tⅴ| 亚洲最大情网站在线观看| 日韩美女福利视频| 欧美中日韩在线| 久996视频精品免费观看| 萌白酱国产一区二区| 国内精品视频| 日本少妇又色又爽又高潮| 国产素人在线| 无码 在线 在线| 久久综合伊人 六十路| 深爱婷婷激情网| 午夜不卡视频| 岛国精品一区免费视频在线观看| 一本大道视频精品人妻| 日韩在线第三页| 丁香五月亚洲综合在线| 国产激情国语对白普通话| 精品国产自在在线在线观看| 成人亚洲天堂| 无码免费视频| 婷婷色一二三区波多野衣| 欧美福利在线观看| 91色综合综合热五月激情| 精品国产中文一级毛片在线看| 99中文字幕亚洲一区二区| 亚洲Av综合日韩精品久久久| 在线精品视频成人网| 激情综合网址| 中国精品久久| 亚洲精品午夜天堂网页| 欧美劲爆第一页| 久久毛片免费基地| 视频国产精品丝袜第一页| 四虎成人免费毛片| 久久亚洲综合伊人| 亚洲不卡影院| 久久精品人人做人人综合试看 | 成年A级毛片| julia中文字幕久久亚洲| 全部无卡免费的毛片在线看| 五月丁香伊人啪啪手机免费观看| 国产一区免费在线观看| 久久精品人人做人人| 中文字幕第4页| 91免费观看视频| 日韩无码一二三区| 久久天天躁狠狠躁夜夜2020一| 91无码视频在线观看| 国产精品999在线| 欧美日韩国产综合视频在线观看| 五月婷婷丁香综合| 国产香蕉97碰碰视频VA碰碰看| 日韩黄色大片免费看| 99re热精品视频国产免费| 97国产一区二区精品久久呦| 欧美亚洲网| 欧美性精品不卡在线观看| 最新加勒比隔壁人妻| 2021国产精品自产拍在线观看| 日韩欧美国产另类| 国产欧美日韩va另类在线播放| 亚洲一级毛片在线观播放| 最新国产网站| 久久夜色精品国产嚕嚕亚洲av| 国产不卡网| 久久9966精品国产免费| 在线高清亚洲精品二区| 久久伊人色| 九色视频最新网址| 国产本道久久一区二区三区|