成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

火星探路者太空船上的軟件到底怎么了?

開發 項目管理
火星拓荒者(Mars Pathfinder)是一艘在1997年攜帶探測車登陸火星并建立基地的美國太空船。它包括命名為卡爾薩岡紀念站的登陸者,和一輛重量很輕 (10.6公斤/23磅),命名為旅居者號的輪型機器人火星車。

火星拓荒者(Mars Pathfinder)是一艘在1997年攜帶探測車登陸火星并建立基地的美國太空船。它包括命名為卡爾薩岡紀念站的登陸者,和一輛重量很輕 (10.6公斤/23磅),命名為旅居者號的輪型機器人火星車。這艘太空船于火星全球探勘者號發射一個月之后的1996年12月4日由德爾它 II發射,并于1997年7月4日于火星上稱為歐克西亞沼區的克里斯平原阿瑞斯谷著陸。

圖1:旅居者號火星車

火星拓荒者號著陸后﹐開始把數據傳送回地球。幾天后,信息和圖像傳送就被一系列的總系統復位所中斷。對于軟件工程師來說,這個問題是被如何診斷和解決的,仍然是一個引人入勝的故事。【1】

診斷問題

拓荒者號的應用程序是由 VxWorks 實時操作系統(RTOS)來調度。由于VxWorks提供優先級搶占的線程調度,依據相對緊迫性,具有優先級線程的任務會被執行。

氣象數據采集任務作為一個普通的、低優先級線程運行,并且使用互斥鎖定(mutexes)來同步的信息總線。其它高優先級的線程在必要時會獲得優先權,其中包括一個非常高優先級的總線管理任務,它也以互斥鎖定來訪問總線。不幸的是,在這種情形下,一個長期運行的、具有比氣象任務更高、但是比總線管理任務更低優先級的通信任務,阻止了總線管理任務的運行。

不久,一個看門狗定時器注意到總線管理任務已經很長時間沒有被執行了,一定是出了什么問題,所以強制總系統復位。(后來工程師們承認在飛行前測試時已經發現系統復位。他們把這些復位歸類于硬件故障,而去專注于關鍵任務――登陸軟件。)

尋求解決方案

工程師們瘋狂的工作在實驗室復制品上去診斷和解決這個問題,最終發現了優先級反轉。當一個高優先級任務間接地被一個“反轉”了相對優先級的中等優先級任務優先搶占時,則優先級反轉發生(見圖2)。這個顯然違反了優先級模型――高優先級任務只能被更高優先級的任務阻止運行,或者被能迅速完成共享資源使用的低優先級任務短暫地阻止運行。

 

 

 

圖2:優先級反轉

為了解決這個問題,他們開啟了一個布爾參數,來指示是否應該進行互斥鎖定的優先級繼承。 上述的互斥鎖定已經把該參數關閉;如果打開它,優先級反轉就能被阻止。

根據優先級繼承,當高優先級任務請求信號(semaphore)時,持有信號的任務優先級繼承高優先級任務的優先級。在圖2中,當任務“high”請求信號時,任務“low”將繼承任務“high”的優先級。這使得“low”能優先搶占“medium”。

造成問題(對其它兩個也可能造成同樣的問題)的互斥鎖定的初始化參數存儲在一個全局變量中,其地址放在發射軟件的符號表里。因為VxWorks包含一個C語言解釋器,允許開發人員輸入和執行C表達式和函數來進行系統調試。它可以給太空船上傳一個簡短的C程序。在解釋C程序時,可以改變這些變量的值從假(FALSE)到真(TRUE)。這就杜絕了系統復位問題。

工程師們學到了什么?

  • 只有對實際系統行為的詳細追蹤,才能捕獲和識別錯誤執行序列。而對一個不能追蹤的黑盒子來說,是無法診斷的;
  • 系統中具備調試工具是非常重要的。如果不能修改系統,則問題無法修正;
  • 花費額外的時間確保在測試階段的優先級繼承正確性,甚至犧牲一些本來非常寶貴的額外性能開銷。

解決方案來源

當主講人提到一份論文――它第一個識別優先級反轉問題,并且提出了解決方案。特別的事發生了――令人驚訝的是,作者們都在房間里,收到了熱情的接待。論文原文是:

L. Sha, R. Rajkumar, and J. P. Lehoczky. Priority Inheritance Protocols: An Approach to Real-Time Synchronization. In IEEE Transactions on Computers, vol. 39, pp. 1175-1185, Sep. 1990.

【1】本摘要根據麥克•瓊斯(Mike Jones)于1997年12月所記錄的風河系統(Wind River Systems)公司首席技術官大衛•維爾納(David Wilner)在IEEE實時操作系統研討會上的專題演講。

原文鏈接: rapita systems   翻譯: 伯樂在線 - 伯樂在線讀者投稿

譯文鏈接: http://blog.jobbole.com/42802/

責任編輯:林師授 來源: 伯樂在線
相關推薦

2022-10-31 10:40:07

MySQLPostgreSQL數據庫

2019-12-09 11:11:52

LoRaWi-Fi頻段

2023-11-14 07:40:36

阿里云服務中斷事件

2017-12-25 23:38:42

2012-06-08 09:57:25

2024-12-18 11:30:00

C++20比較運算符

2013-12-02 16:01:53

存儲

2021-12-21 10:49:21

Serverless亞馬遜云科技re:Invent

2016-11-21 20:41:06

2018-02-24 23:19:31

iOSbug蘋果

2021-12-14 18:34:54

芯片云計算亞馬遜云科技

2016-05-12 16:23:39

IBM

2022-01-25 10:11:10

紅綠屏蘋果BUG

2011-12-07 10:16:45

Firefox新聞

2016-12-02 08:36:33

蘋果三星科技新聞早報

2020-04-22 15:00:03

iPhone蘋果劉海

2017-05-05 11:18:08

2019-03-27 10:54:00

5G運營商設備制造商

2020-12-02 16:30:45

比特幣加密貨幣區塊鏈
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲午夜精品视频 | 18gay男同69亚洲网站 | 国产精品福利视频 | 最新中文字幕在线 | 天天色天天射天天干 | 男人的天堂久久 | 午夜激情国产 | 日韩毛片中文字幕 | h视频在线免费看 | 红桃视频一区二区三区免费 | 亚洲精品18| 亚洲国产精品视频 | 粉嫩国产精品一区二区在线观看 | 天堂一区在线 | 乱一性一乱一交一视频a∨ 色爱av | 黄色免费观看网站 | 久久青青| 精品国产视频在线观看 | 一区二区三区视频在线观看 | 精品国产亚洲一区二区三区大结局 | 紧缚调教一区二区三区视频 | 国产精品99久久久久久www | 国产精品精品视频 | 久久久久久国产精品久久 | av大片| av在线播放网站 | 欧美影院 | 久久久久久久久久一区 | 蜜桃视频在线观看免费视频网站www | av免费网站在线观看 | 欧洲尺码日本国产精品 | 日韩欧美在线观看 | 亚洲va国产日韩欧美精品色婷婷 | 亚洲精品免费在线 | 最近中文字幕第一页 | 国产精品亚洲成在人线 | 正在播放亚洲 | 亚洲精品视频在线播放 | 日韩视频三区 | 中文字幕一区在线观看视频 | 在线婷婷|