国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

VxWorks系統概念妙喻

發布時間:2010-9-25 11:45    發布者:eetech
關鍵詞: VxWorks , 概念 , 系統
當前嵌入式系統已無所不在,應用于各行各業。在嵌入式系統中,有一類很重要的成員,即實時嵌入式系統,其中,WindRiver公司的VxWorks是目前軟件工程師采用最多的,用于開發實時嵌入式系統的商用實時嵌入式操作系統,以其可靠性及強大的工具支持著稱。很多程序開發人員由Windows編程轉向嵌入式編程時感到困難,因為在Windows的API函數中有不少操作系統內核機制都進行了封裝(如信號量、消息等),往往不必了解這些概念,而優秀的VxWorks編程者則需要更加了解與內核相關的概念。下面通過現實生活中的一些事例進行類比來說明這些概念,即使是初學者也能輕松領悟。

1 實時性與非實時性

VxWorks作為實時操作系統,實時性指的是對外部事件的響應在規定的時間內完成。舉個工作中的例子,有一解決,因而當接到投訴時,你馬上去往客戶處交涉并解決問題。另一種情況:公司在收到客戶投訴后,并不馬上解決,而是在一段時間后匯總并根據客戶所在地集中解決。第一種情況就好比實時系統,在規定時間內對外部事件進行響應;第二種情況好比非實時系統。很可能出現的一種情形就是,剛解決好一個客戶的問題后回公司,得知又一位同一地點的客戶要求你去,因此懊悔不已,接到投訴后不如不馬上行動。同樣,非實時系統也需要付出額外的代價,因此不能簡單地說哪種系統效率更高或性能更好。第一種公司制度更讓客戶滿意,因為它能在規定時間內給客戶反饋,雖然效率不一定最高。具體選用哪一種管理制度應該結合實際經營情況而定,同理,實時系統也有它適合的應用。比如汽車控制設備、國防系統中,不在預定時間內對外部隨機事件作出響應是很不合理的;而在Windows系統中,鼠標點擊在系統繁忙時可能好幾秒才響應過來。

2 多任務與單任務

多任務好比一個團隊的多個人分工合作完成一項工作,而單任務則是一個人獨立完成一項工作。假如這項工作就是去郵局郵寄一份文件,那么一個人足以勝任,多個人反而顯得多余。假如這項工作包括去郵局郵寄文件,收取客戶Email并及時回復,接聽電話,那么一個人就顯得雜亂無章,不能及時回復郵件,或錯過電話。如果安排兩個人完成此項工作就容易得多,一人去郵寄文件,一人留單位接聽電話并收取Email。從程序設計角度來說,單任務或多任務都沒有絕對優勢,因此應用程序是采用何種任務劃分,需根據具體應用而定。

還有一個問題,畢竟CPU資源是固定的,如果同時運行多個任務,那么每個任務的處理能力都降低了,整體性能是否提高了呢?假如需要將兩個文件從A地分別送往B地和C地,如圖1所示。一個行走速度極快的運動員從A地到B地需要10min,交接文件需10min,從B地返回A地需10min,再從A地到C地需15min,交接文件需10min,總共花費55min。而兩個行走較慢的人共同完成該任務,一人從A地到B地需20min,交接文件10min,30min完成;另一人從A地往C地需30min,交接文件需10min,總共也就40min。交接文件時間越長,兩個人的優勢越明顯。在程序中等待慢設備的應答信號就是這種情況,不能將整個CPU的時間花費在等待中。但假如任務就是將文件從A送到B,那么多個行走慢的人就不如一個速度快的人了。

3 信號量(semaphore)

VxWorks系統中,信號量包括可斥信號量、二進制信號量和計數信號量,其他操作系統基本上也是如此。按作用劃分為同步和互斥機制。通過信號量的同步和互斥機制可以方便、高斂地協調任務。互斥方式的功能是不同任務可以利用信號量互斥地訪問臨界資源。現實生活中也是如此,比如單位會議室只有一個,可能有多個部門使用會議室,單位采取如下管理方式:使用前向負責人申請,若會議室空閑就可以使用,會議結束后通知負責人;否則,等待負責人通知。這里的會議室就好比臨界資源,申請和通知這種方式就好比信號量的互斥機制,如圖2所示。

信號量的同步機制有所不同,提供的任務同步功能是指一個任務可以利用信號量控制自己的執行進度,使自己同步于一組外部事件。好比甲等待乙的電話再一起吃飯。甲接電話之前沒有任何行動,好比這個任務阻塞;接到電話好比獲取信號量(乙打電話好比釋放信號量);去吃飯就好比繼續執行任務。

計數信號量與二進制信號量都可以用于任務之間的同步與互斥,不同之處在于,計數信號量能夠記錄信號量釋放的次數,可以用來監視某一資源的使用狀況。好比存錢與消費:存入的金額計數累加(釋放信號量計數),消費時金額減少(獲取信號量計數減少),只要金額不為零就還有消費能力(信號量可用),金額為零就只能等待存入(獲取信號量但無信號量可用只能等待其他任務釋放信號量)。

4 消息機制

僅通過信號量的同步、互斥是無法提供完善的響應式交互信息的。消息(message)機制通過消息隊列保存多個消息,一般來說,消息是按照FIFO的順序通過消息隊列的。信號量好比是兩人相互約定,電話鈴響,不用接聽,直接出門迎接;而消息機制發送就是,接聽電話并根據電話內容執行相應操作。接聽電話并根據電話內容辦理相應事情,比電話鈴響就按約定辦理事情多花費時間,同樣,消息機制比信號量更耗費時間;但接聽電話后根據電話內容辦事比前者更加靈活,適應更多的場合,同樣,消息機制的使用比信號量更加靈活,并且電話內容可以是臨時增加的,類似消息內容的可擴展性。

5 信 號

信號(signal)與信號量聽起來很相似,其實是完全不同的兩種機制,一定需要明確區分。信號是一種由事件觸發的軟件中斷,它可以異步地改變信號接收任務的執行流程,使其轉向對應的信號處理程序執行。即使該任務當前處于阻塞狀態,一旦接收信號后就會處于準備執行狀態,但是當信號處理程序執行之后繼續處于阻塞狀態。舉個例子,上班時你可以隨意安排你的工作,就好比任務中程序的順序執行;單位出現突發事件需要你立刻解決,當前工作被打斷,就好比該任務接收到信號,當前程序被打斷;處理完突發事件后繼續工作,就好比信號處理程序執行完返回原來被打斷的地方繼續執行。這個突發事件就好比一個信號,該信號影響的任務立刻跳轉到指定的程序;這個突發事件是隨機、不可預料的,就好比信號接收的不可預料性,在程序中信號機制常用于異常處理。不同于信號量用顯式語句表示何時需要獲取或釋放信號量,信號機制允許程序在任何地方被信號中斷而轉向相應的處理程序。

以上是對VxWorks操作系統一些相關概念的理解和總結,在技術交流中很容易被接受,希望能分享給更多的朋友。
本文地址:http://m.qingdxww.cn/thread-29027-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 视频在线观看40分钟免费| 处女座历史名人| 蜜柚影院在线观看免费高清中文 | 在线久色| 国产精品18久久久久久欧美| 蜜芽国产在线精品欧美| 婷婷综合激情| 青青草手机在线视频| 在线 色| 亚洲精品午夜国产va久久| 国产精品7777人妻精品冫| 亚洲AV蜜桃永久无码精品无码网 | 狠狠狠色丁香婷婷综合久久| 伊人久久精品99热超碰| 天天插天天操| 天堂中文在线网| 婷婷 综合网站| 在英语课上强插英语课代表的网站| 国产免费啪嗒啪嗒视频看看| 亚洲精品久久久久AV无码林星阑| 色影影院| 日本a级网站| 双性受合不垅腿3p| 在线精品国内外视频| 欧美精品熟妇乱| 亚洲涩色| 日韩黄色在线观看| 香蕉国产成版人视频在线观看| 富婆夜店找黑人猛男BD在线| 日本少妇内射视频播放舔| 亚洲国产35p| 日韩一区二三区无| 四虎成人国产精品视频| xxx365| 桥本有菜护士| 亚洲欧美一区二区三区九九九| 性xxx视频在线观看| 亚洲bt欧美bt高清bt777| www色小姐| 亚洲高清一区二区三区电影| 亚洲欧洲中文|