為什麼win10電腦藍屏後依然可以顯示中文?

我記得原來老師講,為什麼電腦藍屏全是英文,因為系統崩潰, 無法再使用漢字,就是到了太基礎的層面是沒有漢字的只有英文。可最近win10藍屏了,界面卻全是中文的,還有百分比變化表收集數據,它是怎麼做到系統崩潰以後依然可以顯示漢字的呢?漢字是從哪來的?


現在Windows都傾向於在第三方驅動出一點問題,在問題變嚴重之前馬上藍屏,整個系統其實還是好的。

其實藍屏很簡單的,只要驅動死鎖、用了被換頁在硬碟上的內存、等待一個更低優先順序的線程的資源等等,各種無關痛癢但是足以表現出驅動程序猿粗心大意的癥狀,馬上藍屏。


畢竟從win7到win8再到win10,微軟對業界最先進的防護系統的使用已愈發臻至了。

沒錯,這套系統就是

——主動式藍屏防護。

主動式藍屏防護。

不管是您使用了非WQHL的驅動,還是微軟主動更新的驅動和您的硬體不匹配。

不管是您使用三方工具修改了system文件,還是因為您「及時」地更新了微軟update。

不管是您用了電信的協同撥號器,還是因為更新了微軟對某些網卡「過於友好」的系統補丁。

……

所有這些,都是有可能讓您在未來使用電腦的某個時刻系統崩潰的。

一旦系統崩潰或者出現安全問題,將對您的數字信息、工作成果造成重大損失。

微軟本著對客戶負責的原則,主動將電腦藍屏,從根源上避免了這些問題的發生。

等到系統真的出了大問題才藍屏,您看到的可能就只是一段不知所云的代碼,可能連代碼都沒得看。

而進行了主動式藍屏,不僅可以用中文告訴您,您的電腦藍屏了,而且還能用您看得懂的文字給您敘述一段您看不懂的藍屏原因,並提供一段對於解決藍屏問題毫無幫助的特徵代碼。


漢字是從哪來的?

Windows 裡面有一組專門的、裁剪過的 boot font 給這種環境用,各個語言都有


請看文件夾:

%SystemRoot%BootFonts

這套字體的路徑已被winload.exe、winload.efi硬編碼保存。

所以新版Windows就算出了BSOD也能顯示中文。


系統崩潰也分怎麼崩潰的,出現藍屏其實並不是完全崩潰,還有一個最底層的程序來提供支撐藍屏的信息報錯功能。

這個時候,這個藍屏的控制界面,依然提供屏幕繪圖的支持,那麼就可以現實很多東西,不光是中文,圖片都可以顯示。所以你看 win10 的藍屏,居然還有二維碼。

其實顯卡很早就支持直接操作顯示內容了,你的程序能把文字轉換成對應的圖像信息,不需要其他操作,直接寫顯卡的內存就能實現中文的顯示。只是相對來說,以前的程序沒有預留這麼強的圖像處理功能呢,而是直接使用字母功能,字母的顯示處理,是 BIOS (顯卡也有 BIOS 的)自己來處理的。也可以認為,就是顯卡自己處理的英文的圖像化。

但是現在,即便 Linux 的字元界面,也大都改成幀緩衝了。幀緩衝就是一個比較通行的以最簡單的辦法,實現圖形功能。這就是直接操作顯卡進行顯示的。


因為win10其實沒真的出問題,它還有控制權,它其實是在裝病。。。。


連BIOS都可以顯示中文,藍屏是中文有什麼奇怪的嗎?


Windows 8以後的Bootmgr很操蛋,是在Windows啟動後咱看到的一個可以用滑鼠的,可以顯示漢字的界面,關鍵是字體,應該是雅黑吧。

而Win7時的漢字顯示就比較粗糙了。800x600等某些通用解析度下顯示當然粗糙。

而藍屏界面和那個引導界面蠻像的。最底層死了的話直接就黑了,還藍?

所以底層應該是有機會調用那個界面的

底層的語言應該是引導器傳過去的(引導記錄是某bcd文件),底層的引導器顯然可以用漢語,即使系統壞了(參見Win7的),他用的字體或許是引導器用的那個精簡版的字體,但肯定夠用。


電腦也不會英文啊

詳細點說,屏幕上顯示的都是像素點,當這些像素點組成英文字母的圖案的時候,你看到的就是英文,當這些像素點組成中文漢字圖案時,你看到的就是中文。

至於這些像素點是按照什麼規則顯示不同的圖案,由當前運行的程序決定。系統崩潰時,大部分系統進程都會失效,但會有一個響應崩潰的程序還在運行。通常來說這個崩潰響應程序會收集崩潰前的系統運行情況,寫入日誌,同時顯示必要的信息。這些任務完成後根據系統設置可能還需要重啟電腦。

我們在藍屏的時候看到的界面,就是由這個程序處理。以前的Windows,這個程序只實現了顯示英文的功能,並沒有實現中文顯示的功能,所以我們只能看到英文。Win10版本的這個程序實現了顯示中文的功能,自然我們就能看到中文了。

當然,如果這個程序本身也崩潰的話(例如硬體故障導致),那麼很有可能你根本就看不到藍屏,可能是電腦完全卡死在某個畫面,也可能是硬體層面自動重置重新啟動。


「因為系統崩潰, 無法再使用漢字」這種表述很奇怪。。


電腦:我去我為了照顧你看不懂英文費了辣么大的力氣顯示中文,居然還來知乎逼逼,氣死我了,下次藍屏就來英文,看你逼逼,哼


我記得原來老師講,為什麼電腦藍屏全是英文,因為系統崩潰, 無法再使用漢字,就是到了太基礎的層面是沒有漢字的只有英文。

也就是說Windows把對於基礎漢字的支持加入了Kernel的與藍屏相關部分而已。也不排除是一張圖片。。

太基礎的層面

這東西很難界定,你要把漢字字體嵌入BIOS/UEFI 的話也會有中文-事實上很多廠家都在這麼干。

它是怎麼做到系統崩潰以後依然可以顯示漢字的呢

我還遇到過收集到一半突然回到登陸界面的情況。。。。。。。 color{red}{點名批評}insider,幸好沒有什麼奇怪的副作用

Huge{color{blue}{藍屏是內核覺得應該罷工了,而不是它已經罷工了。}}

hook掉bugcheck還可以攔截藍屏。有什麼後果你猜猜


Win98哭爆,明明藍屏了還是中文的


說到底就是生產力提升了。當系統出現問題的時候,可以調動的資源一定小於平時,因此藍屏界面一定差於普通界面。但由於電腦性能資源的提升,可調動資源也變多了,因此藍屏也可以做的更加好看。

好比以前人打仗只有糠咽菜吃,一個月洗澡一次。現在打仗可以待在空調房裡按幾個按鈕就解決了。


你老實跟你講這個問題的時候,還沒出WIN10 甚至WIN8吧


為啥這個問題也邀請我啊……我認為是你們老師的知識太老舊了。


電腦藍屏無法顯示中文只是題主和題主老師一廂情願的見解吧,而且現在是7102年了,從來就沒有藍屏了不能顯示中文這種說法。


。。。。你老師學的不好。。


win10的藍屏是你老師說的那個藍屏么


卸載雷蛇驅動遇到的十幾次藍屏中的兩次,供參考。


大哥,你裝的是中文版的,引導當然也是中文了。

醉。


以前bios都是英文,現在也變中文了。底層漢化後即使系統沒運行,引導還是中文。


這個只是顯示的問題啊。如果現在硬體存儲空間放下的字型檔的話,內核或BIOS顯示中文其實不難。


推薦閱讀:

已經接受win10預訂,重裝系統之後如何能夠顯示win10推送?
為什麼直到 Windows 10 微軟才解決了一些體驗上相當致命的問題?
為什麼Windows 7的設備管理器支持DPI縮放,而Windows 10的不支持?
win10手機的體驗如何?
自 Vista 到 Windows 10,除了 UI 設計改動之外,Windows 還有哪些值得注意或者值得討論的改進?

TAG:計算機 | 藍屏 | Windows10 | windows藍屏 |