2014-04-29 29 views

回答

1

追蹤所有操作系統/外部條件來實現實際應用程序中真正的死鎖預防算法會很困難,可能不太可行。現代操作系統(當我們不談論RT-aware系統時)傾向於不使用這種算法,因爲它們的複雜性和昂貴性非常高。

換句話說,您可以擺脫Windows的死鎖,在最壞的情況下,只需簡單的重啓即可。鑑於這種情況發生了多少次,它在桌面操作系統市場上並不算是一個巨大的問題。

因此,我建議寫與虛擬應用程序的簡單測試用例要麼

  • 你有用
  • 讓你確切地知道什麼正在使用您的應用程序,讓您管理的複雜性

作爲旁註:應用如Notepad.exe的或類似不是實時處理即使您在Windows任務管理器中給予他們「實時」優先級(甚至不是軟實時)。真正的實時流程有時間限制(即期限),他們必須遵守。這在任何桌面操作系統中都是不正確的,因爲它們只是用一種不同的概念(時間共享)構建而成。 Linux有一些RT修補程序(例如Xenomai)來使內核中的調度算法實時實時,但我現在不知道該修補程序的狀態。