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

主站蜘蛛池模板: 亚洲精品不卡午夜精品| 亚洲香蕉伊综合在人在线| 国产精品无码影视久久久久久久| 综合五月天网| 国产99热| 午夜天堂视频| 99久久精品视香蕉蕉| 日韩欧美中文在线| 一级毛片高清| 亚洲第一极品精品无码| 欧美一区二区啪啪| 日韩av电影一区二区三区四区| 激情综合图区| 一级香蕉人体视频| 久久综合色天堂av| 99热最新网址| 五月婷婷综合网| 99re66精品视频在线观看| 蜜桃视频一区| 无码国产偷倩在线播放老年人| 亚洲国产中文精品va在线播放 | 亚洲伊人电影| 国产成人福利在线| 精品欧美一区二区三区久久久| 久久国产拍爱| 国产成人区在线观看视频| 欧美亚洲日韩不卡在线在线观看| 国产女人喷水视频| 国产香蕉国产精品偷在线观看| 亚洲日本一本dvd高清| 國產尤物AV尤物在線觀看| 91网址在线播放| 香蕉eeww99国产在线观看| 58av国产精品| 亚洲成人黄色在线| 亚洲男人的天堂久久精品| 欧美国产日韩一区二区三区精品影视| 欧美精品1区2区| 亚洲国内精品自在自线官| 亚洲AⅤ波多系列中文字幕| 成年人国产视频| 国产欧美精品专区一区二区| 欧美三级日韩三级| 999国内精品视频免费| 99热国产这里只有精品无卡顿"| 亚洲国产午夜精华无码福利| a级毛片网| 亚洲国产系列| 青草视频久久| 日韩人妻精品一区| 在线日本国产成人免费的| 国产黄网永久免费| 久久综合婷婷| 国产理论最新国产精品视频| 久久99国产综合精品1| 波多野结衣在线se| 国产丝袜91| 在线无码九区| www.狠狠| 日韩福利在线观看| 99色亚洲国产精品11p| Jizz国产色系免费| jizz亚洲高清在线观看| 国产中文在线亚洲精品官网| 免费国产不卡午夜福在线观看| 亚洲青涩在线| 色国产视频| 中文天堂在线视频| 2021亚洲精品不卡a| 日韩精品中文字幕一区三区| 欧美日本二区| 青青草原国产精品啪啪视频| 国产在线观看高清不卡| 91色综合综合热五月激情| 国产成+人+综合+亚洲欧美| 午夜国产精品视频| 亚洲婷婷丁香| 色噜噜中文网| 久久久久亚洲Av片无码观看| 国产AV无码专区亚洲精品网站| 一级一毛片a级毛片| 高h视频在线|