家好我是小冰,今天小冰給大家帶來一些電腦硬件的知識,如果您喜歡小冰分享的電腦科普,歡迎您點贊評論關注分享
從2015年Windows10發布以來,越來越多的電腦用上了win10系統,而win10強大的穩定性也讓win10得到越來越多的用戶,win7則漸漸退出了互聯網的舞臺。
win10自從發布以來極少出現藍屏死機的情況,也正是因為如此,微軟取消了開機安全模式的快捷鍵,嗯······至于這個操作,小編就不多說了。
雖然說win10很穩定,但是并不能完全避免系統出問題的情況,所以有時候不可避免的需要進入安全模式來調試,由于微軟取消了F8進入安全模式的快捷鍵,那么我們該如何操作呢?
1.首先打開系統設置,打開安全與更新,找到恢復,選擇高級啟動,立即重啟。
重啟到這個界面我們選擇疑難解答 高級選項 啟動設置 點擊重啟
然后稍等片刻就出現安全啟動界面啦,是不是覺得這樣很麻煩,沒錯我也覺得,其實還有更簡單的辦法。
2.WIN+R運行CMD
bcdedit /set {default} bootmenupolicy legacy
將這條命令輸入之后按Enter 重啟狂按F8就進入win7同款安全模式界面咯。
還有當你的電腦無法進入桌面或者系統的時候,反復強制關機7-8次也會呼出Win 10自動修復功能通過疑難解答也可以進入重置選項。
對于電腦大家還有什么疑問呢?歡迎留言區一起聊一聊,您有什么更好的創意想法!歡迎大家在下方留言
最近不知道怎么回事,家里電腦經常性地出現藍屏(先死機后藍屏),很多時候有些文檔沒有保存便藍屏導致文檔丟失,其中也包括您現在正在看到的這一篇文章(撰寫本文時,藍了一次),以前一直比較懶,重啟大法一頓懟,然后重新再做編輯,只不過PPT重做簡直要人命,無奈之下,放下了所有的工作,來研究研究藍屏的原因,順便正兒八經使用一下Typora。
PS:本文結尾提到的解決方案較為野蠻粗暴,可能讓你本就不富裕的家庭雪上加霜,請慎用!
關于WinDBG這款神器想必無需再做多的介紹,至于導入文件的目錄為windows在遇到藍屏之后會保存的dmp文件所在的位置,我的電腦是Win10系統,其它系統目前暫時不知道,在網上也有看到消息說要提前設置好,但是我并沒有設置,這里也貼一下設置的圖片吧。
也有文章說寫入調試信息需要選擇第一個。
另外需要設置WinDBG的訪問符號,在WinDBG官網中可以看到
Symbol Server (Microsoft):
復制代碼 隱藏代碼
srv*c:\mss*http://msdl.microsoft.com/download/symbolsSymbol Server (Citrix):
復制代碼 隱藏代碼
srv*c:\css*http://ctxsym.citrix.com/symbols
.symfix c:\mss.sympath+ srv*c:\css*http://ctxsym.citrix.com/symbols
可使用環境變量設置,也可在軟件File - Symbol File Path中進行設置,至此,準備工作一切就緒,下面即可進行分析。
WinDBG打開dmp文件,稍等一會便可出現分析報告,我的分析報告如下:
復制代碼 隱藏代碼
Microsoft (R) Windows Debugger Version 6.12.0002.633 X86
Copyright (c) Microsoft Corporation. All rights reserved.
Loading Dump File [C:\Users\Tory\Desktop\120421-10187-01.dmp]
Mini Kernel Dump File: Only registers and stack trace are available
Symbol search path is: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;SRV*c:\mysymbol* http://msdl.microsoft.com/download/symbols
Executable search path is:
Windows 7 Kernel Version 19041 MP (6 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Machine Name:
Kernel base=0xfffff805`67c00000 PsLoadedModuleList=0xfffff805`6882a1d0
Debug session time: Sat Dec 4 20:02:02.508 2021 (UTC + 8:00)
System Uptime: 0 days 1:07:26.549
Loading Kernel Symbols
...............................................................
................................................................
................................................................
................
Loading User Symbols
Loading unloaded module list
.........
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
Use !analyze -v to get detailed debugging information.
BugCheck 3B, {c0000005, fffff80567efbfd2, ffffe90838039420, 0}
Probably caused by : Unknown_Image ( PAGE_NOT_ZERO )
Followup: MachineOwner
---------
*** Memory manager detected 62334 instance(s) of page corruption, target is likely to have memory corruption.
5: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
SYSTEM_SERVICE_EXCEPTION (3b)
An exception happened while executing a system service routine.
Arguments:
Arg1: 00000000c0000005, Exception code that caused the bugcheck
Arg2: fffff80567efbfd2, Address of the instruction which caused the bugcheck
Arg3: ffffe90838039420, Address of the context record for the exception that caused the bugcheck
Arg4: 0000000000000000, zero.
Debugging Details:
------------------
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - 0x%p
FAULTING_IP:
nt!RtlpIsNameInExpressionPrivate+92
fffff805`67efbfd2 6683382a cmp word ptr [rax],2Ah
CONTEXT: ffffe90838039420 -- (.cxr 0xffffe90838039420)
rax=ffff7b83a1b1ab84 rbx=0000000000000074 rcx=ffffa583a1b1ab40
rdx=ffffe90838039fb0 rsi=0000000000000000 rdi=ffffa583a1b1ab40
rip=fffff80567efbfd2 rsp=ffffe90838039e20 rbp=0000000000000000
r8=0000000000000000 r9=ffffa583a1b1ab40 r10=0000000000000032
r11=ffffe90838039fb0 r12=0000000000000000 r13=ffffbb07cac1d880
r14=0000000000000000 r15=000000000000005c
iopl=0 nv up ei pl nz na po nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00050206
nt!RtlpIsNameInExpressionPrivate+0x92:
fffff805`67efbfd2 6683382a cmp word ptr [rax],2Ah ds:002b:ffff7b83`a1b1ab84=????
Resetting default scope
CUSTOMER_CRASH_COUNT: 1
DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT
BUGCHECK_STR: 0x3B
PROCESS_NAME: QQPYUserCenter
CURRENT_IRQL: 0
BAD_PAGES_DETECTED: f37e
LAST_CONTROL_TRANSFER: from fffff80567efbe58 to fffff80567efbfd2
STACK_TEXT:
ffffe908`38039e20 fffff805`67efbe58 : ffffbb07`00000003 00000000`00000000 ffffbb07`cac1d880 00000000`00000000 : nt!RtlpIsNameInExpressionPrivate+0x92
ffffe908`38039f10 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!RtlIsNameInExpression+0x48
SYMBOL_NAME: PAGE_NOT_ZERO
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: Unknown_Module
IMAGE_NAME: Unknown_Image
DEBUG_FLR_IMAGE_TIMESTAMP: 0
STACK_COMMAND: .cxr 0xffffe90838039420 ; kb
BUCKET_ID: PAGE_NOT_ZERO
Followup: MachineOwner
---------
*** Memory manager detected 62334 instance(s) of page corruption, target is likely to have memory corruption.
重點關注第30行以下,其中BugCheck 3B, {c0000005, fffff80567efbfd2, ffffe90838039420, 0}大致可以看出錯誤代碼為0x0000003B,百度一下即可知該錯誤代碼多為軟硬件兼容性問題,此事心里大概有一個底了。Probably caused by : Unknown_Image ( PAGE_NOT_ZERO )這里其實可以關注一下,由于結果未“Unknown_Image”所以也失去了分析它的意義了。
其實低49-54行給出了導致錯誤的進程具體位置,這個我看不懂,感興趣的大佬可以給我解釋一下,要怎么分析到他的具體地址。
從第81行開始較為重要,其中拋出的“VISTA_DRIVER_FAULT”表示訪問驅動錯誤,PROCESS_NAME指向了QQPYUserCenter,表示罪魁禍首是該進程,即“QQ拼音用戶中心”,但是我實在想不通為什么QQ拼音和驅動又有關系了。
繼續向下看到第94、95行, 表示該進程調用了ntdll中的RtlIsNameInExpression之后又調用了RtlpIsNameInExpressionPrivate+0x92函數時出錯了,該問題也可在第62-64行能夠清楚看到具體出錯的反匯編代碼。
復制代碼 隱藏代碼
FAULTING_IP:
nt!RtlpIsNameInExpressionPrivate+92
fffff805`67efbfd2 6683382a cmp word ptr [rax],2Ah
至此,分析全部結束,并做一下最終的總結:此次藍屏主要原因是QQPYUserCenter與某個軟硬件發生驅動訪問時出現問題,既然有驅動則多為硬件所致。
在網上查詢了很多信息,用排除法最終鎖定了“Logitech MouseWare”即羅技鼠標,因為外設我就用了羅技的鼠標和鍵盤。
更新Logitech的驅動
WinDBG官網
WinDbg分析藍屏dump原因
安裝與配置windbg的symbol(符號)
WinDbg 藍屏分析 Windows Dump 文件教程
windbg-> !analyze -v 信息詳解
《藍屏0x0000003b》的解答