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

Linux的實時性研究

2009-12-31 00:00:00孫晶華
商場現代化 2009年11期

[摘要] Linux已經成為當今最流行的操作系統之一,對嵌入式Linux進行實時性改進是嵌入式操作系統領域的一個研究熱點。本文分析了標準Linux實時性,為以后進一步提高Linux操作系統的實時性打下基礎。

[關鍵詞] Linux實時性

一、Linux簡介

1991年底,Linus Torvalds首次在Internet上發布了基于Intel386平臺的Linux源代碼。之后,在眾多Linux愛好者包括許多UNIX專家的努力下,Linux逐漸成長為一個穩定可靠、功能完善的操作系統。一些軟件公司,如Red Hat、InfoMagic等也不失時機地推出了自己的以Linux為核心的操作系統版本,這大大推動了Linux的商品化。在一些大的計算機公司的支持下,Linux還被移植到Alpha、PowerPC和Sparc等平臺上。Linux的使用日益廣泛,版本更新很快,目前的最新版本是2.6。

Linux具有UNIX的所有基本特征:Linux完全支持-POSIX1003.1標準,UNIX上的應用程序可以很容易地移植到Linux上來;Linux支持多用戶訪問和多任務編程;Linux采用段頁式存儲管理機制;Linux支持動態鏈接,節省了內存空間并提高了效率;Linux 支持EXT3等13種文件系統;Linux支持TCP/IP和PPP。

二、標準Linux內核制約實時性的因素

標準Linux有幾個機制嚴重地影響了實時性。

1.內核不可搶占

在Linux 2.4和以前的版本,內核是不可搶占的,也就是說,如果當前任務運行在內核態,即使當前有更緊急的任務需要運行,當前任務也不能被搶占。因此那個緊急任務必須等到當前任務執行完內核態的操作返回用戶態后或當前任務因需要等待某些條件滿足而主動讓出CPU才能被考慮執行,這很明顯嚴重影響搶占延遲。

在Linux 2.6中,內核已經可以搶占,因而實時性得到了加強。但是內核中仍有大量的不可搶占區域,如由自旋鎖 (spinlock)保護的臨界區,以及一些顯式使用preempt_disable失效搶占的臨界區。中斷服務程序不能被其他進程搶占。

2.中斷關閉

Linux在一些同步操作中使用了中斷關閉指令,中斷關閉將增大中斷延遲,降低系統的實時性。

3.共享資源的互斥訪問

Linux操作系統一般采用信號量機制來解決共享資源的互斥訪問問題。如果任務調度采用基于優先級的方式,則傳統的信號量機制在系統運行時很容易造成優先級倒置問題,即當一個高優先級任務通過信號量機制訪問共享資源時,該信號量已被一低優先級任務占有,而這個低優先級任務在訪問共享資源時可能又被其他一些中等優先級的任務搶先,因此造成高優先級任務被許多具有較低優先級的任務阻塞,實時性難以得到保證。

4.中斷總是最高優先級的

在Linux中,中斷(包括軟中斷)是最高優先級的,不論在任何時刻,只要產生中斷事件,內核將立即執行相應的中斷處理函數以及軟中斷,等到所有掛起的中斷和軟中斷處理完畢有才執行正常的任務。因此在標準的Linux系統上,實時任務根本不可能得到實時性保證。例如,假設在一個標準Linux系統上運行了一個實時任務(即使用了SCHED_FIFO調度策略并且設定了最高的實時優先級),但是該系統有非常繁重的網絡負載和I/O負載,那么系統可能一直處在中斷處理狀態而沒有機會運行任何任務,這樣實時任務將永遠無法運行,搶占延遲將是無窮大。因此,如果這種機制不改,實時Linux將永遠無法實現。

5.調度算法和調度點

在Linux 2.4和以前的版本,調度器的時間復雜度是O(n)的,而且在SMP的情況下性能低,因為所有的CPU共享一個任務鏈表,任何時刻只能有一個調度器運行。因此,搶占延遲很大程度上以來于當前系統的任務數,具有非常大的不確定性和不可預測性。

在2.6內核中引入的O(1)調度器很好地解決了這些問題。此外,即使內核是可搶占的,也不是在任何地方可以發生調度,例如在中斷上下文,一個中斷處理函數可能喚醒了某一高優先級進程,但是該進程并不能立即運行,因為在中斷上下文不能發生調度,中斷處理完了之后內核還要執行掛起的軟中斷,等它們處理完之后才有機會調度剛才喚醒的進程。在標準Linux內核中,調度點(有意安排的執行任務調度的點)并不多,對2.4和2.6內核測試的結果表明,缺乏調度點是影響Linux實時性的一個因素。

三、結論

由于Linux本身基于通用目的操作系統的設計,其實時性能并不是很強。但通過一定的改進爭強其實時性能,就可以用于實時的應用場合。本文分析了標準Linux實時性,為以后進一步提高Linux操作系統的實時性打下基礎。

參考文獻:

[1]Labrosse J:UC/OS-II-源代碼公開的實時嵌入式操作系統[M].北京:中國電力出版社,2001

[2]陳莉君康華等:Linux操作系統原理和應用[M].北京:清華大學出版社,2004

[3]王田苗:嵌入式系統設計與實例開發. 清華大學出版社, 2003

[4]毛德操胡希明:Linux內核源代碼情景分析[M].浙江:浙江大學出版社,2002

[5] http://www.linuxforum.net/docnew/index.php[OB/OL], 2006

[6]鄭靈翔:嵌入式系統設計與應用開發[M].北京:北京航空航天大學出版社,2006

主站蜘蛛池模板: 久久国产精品波多野结衣| 亚洲二三区| 国产成人综合在线视频| 亚洲日韩欧美在线观看| 欧美日韩福利| 欧洲av毛片| 久久永久精品免费视频| 99精品福利视频| 国产AV无码专区亚洲精品网站| 在线播放91| 超碰精品无码一区二区| 丁香五月婷婷激情基地| 久久国产高清视频| 婷婷综合在线观看丁香| 四虎影视国产精品| 亚洲精品中文字幕无乱码| 国产成人亚洲精品蜜芽影院| 亚洲第一成人在线| 538精品在线观看| 中国国产A一级毛片| a毛片在线免费观看| 色悠久久综合| 不卡无码网| 亚洲国产av无码综合原创国产| 一本视频精品中文字幕| 91破解版在线亚洲| 国产欧美中文字幕| 亚洲国产成人超福利久久精品| 国产免费好大好硬视频| 亚洲精品你懂的| 欧美三级日韩三级| 亚洲男人的天堂在线观看| 人妻21p大胆| 日本免费一级视频| 国产成人亚洲精品无码电影| 美女国内精品自产拍在线播放| 国产乱子精品一区二区在线观看| 九月婷婷亚洲综合在线| 亚洲中文字幕无码爆乳| 亚洲一区精品视频在线| 欧美A级V片在线观看| 国产精品三级av及在线观看| 九九视频在线免费观看| 亚洲一区二区三区国产精华液| 一区二区自拍| 四虎永久免费在线| 亚洲精品欧美日本中文字幕| 久久人与动人物A级毛片| 国产97区一区二区三区无码| 91福利在线看| 国产精品所毛片视频| 欧美a在线看| 免费全部高H视频无码无遮掩| 亚洲第一中文字幕| 国产欧美日韩18| 欧美国产日韩一区二区三区精品影视| 精品精品国产高清A毛片| 91啪在线| 日韩av资源在线| 日本妇乱子伦视频| 国产精品无码翘臀在线看纯欲| 四虎永久在线视频| 亚洲欧洲国产成人综合不卡| 国产精品综合久久久 | 日韩在线视频网站| 国产福利拍拍拍| 国产欧美日韩va另类在线播放| 国产打屁股免费区网站| 亚洲第一精品福利| 亚洲无码视频一区二区三区| 亚洲中文字幕日产无码2021| 国产在线97| 99久久成人国产精品免费| 日韩在线永久免费播放| 亚洲无码视频喷水| 欧美亚洲一区二区三区在线| 人人看人人鲁狠狠高清| 亚洲成人在线网| 国产丝袜啪啪| 国产肉感大码AV无码| 538精品在线观看| 欧美在线视频a|