為什麼Windows 98常出現藍色畫面?

為什麼Windows 98常出現藍色畫面?

與Windows XP很少出現藍色畫面不同,我記得當我使用Windows 98時,它經常出現藍色畫面。

Windows 98 是否有什麼問題導致其特別不穩定?

答案1

BSOD 的主要原因是驅動程式中未處理的異常,系統無法從中復原。事情改變的主要原因是新的驅動系統(波分複用)比舊系統(驅動程式)在處理邊緣情況時。現在,您將在事件日誌中看到錯誤,而不是驅動程式中的錯誤導致 BSOD,而該錯誤還沒有嚴重到導致系統崩潰。

另一個因素是微軟推出了更多資源供開發人員用來編寫更好的程式碼。

第三個因素(billc.cn讓我想起了,這可能比驅動程式問題更常見)從Windows XP開始,存取另一個正在運行的程式的RAM要困難得多。通常,正常的編寫不佳的程式可能會在其他程式的記憶體空間中覆蓋它們想要的任何內容,如果該其他程式是 Windows 的關鍵部分…藍屏死機。

這就是為什麼 BSOD 不太常見的原因。

當然如果你真的很懷念 BSOD 集Ctrl 滾動時崩潰若要 1,請按住右 Ctrl 鍵並按 Scroll Lock 兩次。 (嘗試之前儲存所有開啟的程式)

答案2

  • 有時,這只是報告非致命錯誤的特定方式。實際上,您可以按 Enter 鍵從此類藍色畫面中恢復。
  • Windows 98 沒有任何有用的記憶體保護和存取控制,因此一個進程很容易破壞其他進程的記憶體。沒有簡單的方法來恢復核心或系統進程損壞,因此它只能向您顯示 BSoD 並重新啟動。自 Windows NT 以來,已經實施了嚴格的記憶體保護,因此藍色畫面的頻率較低(僅可能由於核心空間錯誤而發生)。
  • Windows 保留了 DOS 相容性,因此您可以擁有各種奇怪的東西,例如 16 位元驅動程式。他們可能有太多的駭客攻擊,以至於他們只是等待發生的 BSoD。
  • 一般來說,Windows 98 包含許多有缺陷的程式碼。

答案3

導致 BSoD 的另一件事是調度演算法。如果您不知道什麼是調度程序,那麼調度程序是決定多任務系統中接下來要執行哪個應用程式的核心部分。調度程序的主要目的是能夠運行處於「進程」狀態的每個應用程序,並防止這些進程永遠佔用系統資源。每個進程都需要記憶體、CPU 或 I/O 等系統資源,並且在使用後必須釋放這些資源。如果一個行程正在等待另一個行程佔用的資源,則該等待行程將無法繼續運作並會缺乏該資源。假設我們有兩個正在運行的進程p1和p2,以及兩個系統資源r1和r2,並且p1持有r1,p2持有r2。如果進程 p2 進入資源 r1 的等待狀態,且進程 p1 進入資源 r2 的等待狀態,則係統將自身鎖定,且這些 p1 和 p2 進程無法退出等待狀態且無法繼續執行。這種狀態稱為「死鎖」。完全死鎖的系統只能透過重新啟動來恢復。

Win98的調度演算法無法避免死鎖想要的。因此,BSoD 在 win98 中比 winXP 更頻繁,因為 winXP 具有更先進、更強大的調度程式和資源管理器。

答案4

重點已經提到了:Windows XP 有一個新的驅動程式子系統,並且 Windows XP 有更嚴格的記憶體保護。

第三個重要點還沒提到:從Windows XP開始,微軟要求所有硬體+驅動程式都經過一定程度的相容性測試(世界品質實驗室)為了承擔“與Windows相容”貼紙。這強制執行了一定程度的品質保證,而這在以前是不存在的。

相關內容