Windows 10藍屏死機到底是如何造成的?
譯文【51CTO.com快譯】要解決Windows 10系統(tǒng)崩潰的問題,大家首先需要了解Windows 10藍屏死機的真正原因。
Windows 10在運行當中包含兩種模式,即內(nèi)核模式與用戶模式。其思路非常簡單; 內(nèi)核模式負責運行核心操作系統(tǒng)代碼與設備驅(qū)動程序,而用戶模式則負責運行軟件應用與用戶驅(qū)動。對于訪問操作系統(tǒng)服務與硬件的應用來說,其必須調(diào)用Windows服務并將其作為代理。因此,通過阻止用戶模式代碼直接訪問內(nèi)核模式,操作系統(tǒng)的運行將得到有效保護。
問題在于內(nèi)核模式代碼有些會出現(xiàn)差錯。在大多數(shù)情況下,這類問題存在于內(nèi)核模式中的第三方驅(qū)動程序處,即造成各類錯誤調(diào)用,例如不存在的存儲器或者覆蓋操作系統(tǒng)代碼。而且必須承認,Windows本身很少出現(xiàn)故障。
內(nèi)核模式軟件能夠完整且不受阻礙地訪問硬件。這一層面的軟件運行狀態(tài)擁有***受信水平,因為其能夠執(zhí)行任意指令并在系統(tǒng)中引用任何地址。內(nèi)核模式內(nèi)發(fā)生的崩潰完全屬于系統(tǒng)故障,且必須進行重啟以實現(xiàn)恢復??偠灾?,內(nèi)核模式中存放著操作系統(tǒng)內(nèi)核代碼與大部分驅(qū)動程序。
用戶模式軟件無法直接訪問硬件或者隨意引用任意地址。其必須通過指令——更為確切地說,利用請求——調(diào)用API。這種特性使得系統(tǒng)運營得到整體保護,而不會受到應用錯誤調(diào)用或者訪問不當?shù)刂返挠绊?。用戶模式下的崩潰通常是可以恢復的,即應用自身需要重新啟動,但整體系統(tǒng)不受影響。總而言之,用戶模式中運行著大部分常用軟件代碼,從微軟Word到瀏覽器再到部分驅(qū)動程序。
因此,目前大多數(shù)軟件運行在用戶模式當中,因此應用程序不太可能對系統(tǒng)級軟件造成影響。然而,內(nèi)核模式軟件并未受到其它內(nèi)核模式軟件的保護。舉例來說,如果某一視頻驅(qū)動程序訪問到被分配給其它程序的內(nèi)存地址部分(或者未被標記為驅(qū)動程序可訪問的內(nèi)存區(qū)域),則Windows即會停止整體系統(tǒng)的運行。
原文標題:What causes Blue Screen of Death in Windows 10?
原文作者:Dirk A.D. Smith
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】