国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

記一次 .NET 某埋線管理系統(tǒng) 崩潰分析

開發(fā) 前端
經(jīng)常有朋友跟我反饋,說看你的文章就像看天書一樣,有沒有一些簡單入手的dump 讓我們先找找感覺,哈哈,今天就給大家?guī)硪黄腴T級的案例,這里的入門是從 WinDbg 的角度來闡述的,這個問題如果你通過記日志,分析代碼 的方式,可能真的無法解決,不信的話繼續(xù)往下看唄!

一:背景

1. 講故事

經(jīng)常有朋友跟我反饋,說看你的文章就像看天書一樣,有沒有一些簡單入手的dump 讓我們先找找感覺,哈哈,今天就給大家?guī)硪黄腴T級的案例,這里的入門是從 WinDbg 的角度來闡述的,這個問題如果你通過 記日志,分析代碼 的方式,可能真的無法解決,不信的話繼續(xù)往下看唄!

前段時間有位朋友微信上找到我,說他的程序崩潰了,也沒找出是什么原因,然后就讓朋友抓一個崩潰的dump讓我看看。

二:WinDbg 分析

1. 崩潰原因在哪里

在 windbg 中有一個自動化的分析命令 !analyze -v 可以尋找到 miniDumpWriteDump 時塞入的 PMINIDUMP_EXCEPTION_INFORMATION 信息,結(jié)構(gòu)如下:

typedef struct _MINIDUMP_EXCEPTION_INFORMATION {
  DWORD               ThreadId;
  PEXCEPTION_POINTERS ExceptionPointers;
  BOOL                ClientPointers;
} MINIDUMP_EXCEPTION_INFORMATION, *PMINIDUMP_EXCEPTION_INFORMATION;

這個命令執(zhí)行時間可能很長,要稍等片刻

0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************
CONTEXT:  (.ecxr)
rax=0000000000000198 rbx=0000000000000001 rcx=0000000000000002
rdx=0000000039959600 rsi=0000000000000000 rdi=0000000039959600
rip=00007fffe1e4cba4 rsp=00000000010fc050 rbp=00000000010fc150
 r8=0000000000000000  r9=000000003999b640 r10=0000000000000018
r11=00000000010fc020 r12=0000000000000000 r13=00000000010fc370
r14=000000004b727aa0 r15=0000000000000020
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
igxelpicd64+0x1fcba4:
00007fff`e1e4cba4 488b08          mov     rcx,qword ptr [rax] ds:00000000`00000198=????????????????
Resetting default scope

EXCEPTION_RECORD:  (.exr -1)
ExceptionAddress: 00007fffe1e4cba4 (igxelpicd64+0x00000000001fcba4)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 0000000000000000
   Parameter[1]: 0000000000000198
Attempt to read from address 0000000000000198

PROCESS_NAME:  xxx.exe

上面的崩潰點的匯編語句 mov rcx,qword ptr [rax] 說的非常清楚,訪問0區(qū)的 0000000000000198 地址必然會是訪問違例,接下來簡單看一下匯編代碼。

0:000> ub igxelpicd64+0x00000000001fcba4
igxelpicd64+0x1fcb80:
00007fff`e1e4cb80 418b09          mov     ecx,dword ptr [r9]
00007fff`e1e4cb83 83f910          cmp     ecx,10h
00007fff`e1e4cb86 0f83bb0a0000    jae     igxelpicd64+0x1fd647 (00007fff`e1e4d647)
00007fff`e1e4cb8c 488d04cd21000000 lea     rax,[rcx*8+21h]
00007fff`e1e4cb94 4803c1          add     rax,rcx
00007fff`e1e4cb97 488d04c6        lea     rax,[rsi+rax*8]
00007fff`e1e4cb9b 4885c0          test    rax,rax
00007fff`e1e4cb9e 0f847c0c0000    je      igxelpicd64+0x1fd820 (00007fff`e1e4d820)

從匯編代碼看是一段 數(shù)組操作 的邏輯,捋匯編太累了,我們看下 igxelpicd64.dll 模塊到底是誰寫的,用 lmvm 觀察下。

0:000> lmvm igxelpicd64
Browse full module list
start             end                 module name
00007fff`e1c50000 00007fff`e2cfe000   igxelpicd64   (export symbols)       igxelpicd64.dll
    Loaded symbol image file: igxelpicd64.dll
    Image path: C:\Windows\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_ec5e4cdfcd3a62b8\igxelpicd64.dll
    Image name: igxelpicd64.dll
    Browse all global symbols  functions  data
    Timestamp:        Sat Jul 16 02:54:34 2022 (62D1B7EA)
    CheckSum:         010A00BB
    ImageSize:        010AE000
    File version:     31.0.101.3251
    Product version:  31.0.101.3251
    File flags:       0 (Mask 3F)
    File OS:          10004 DOS Win32
    File type:        2.8 Dll
    File date:        00000000.00000000
    Translations:     0409.04b0
    Information from resource tables:
        CompanyName:      Intel Corporation
        ProductName:      Intel HD Graphics Drivers for Windows(R)
        InternalName:     OpenGL
        OriginalFilename: ig7icd32
        ProductVersion:   31.0.101.3251
        FileVersion:      31.0.101.3251
        FileDescription:  OpenGL(R) Driver for Intel(R) Graphics Accelerator
        LegalCopyright:   Copyright (c) 1998-2018 Intel Corporation.

從 OpenGL(R) Driver for Intel(R) Graphics Accelerator 來看原來是用來渲染 2D,3D 矢量圖形的工具包哈,這東西太底層了,沒玩過,不過有一點可以肯定的是這個 dll 是屬于 Intel 的,那為什么會調(diào)用這個渲染功能呢?這就需要觀察線程棧了。

2. 誰在調(diào)用渲染

崩潰有兩個場景,一個是崩潰前,一個是崩潰后,要看崩潰前的線程棧我們一定要知道崩潰前的狀況,這里用 .ecxr 命令切換,簡化后如下:

0:000> .ecxr ; k
rax=0000000000000198 rbx=0000000000000001 rcx=0000000000000002
rdx=0000000039959600 rsi=0000000000000000 rdi=0000000039959600
rip=00007fffe1e4cba4 rsp=00000000010fc050 rbp=00000000010fc150
 r8=0000000000000000  r9=000000003999b640 r10=0000000000000018
r11=00000000010fc020 r12=0000000000000000 r13=00000000010fc370
r14=000000004b727aa0 r15=0000000000000020
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
igxelpicd64+0x1fcba4:
00007fff`e1e4cba4 488b08          mov     rcx,qword ptr [rax] ds:00000000`00000198=????????????????
  *** Stack trace for last set context - .thread/.cxr resets it
 # Child-SP          RetAddr               Call Site
00 00000000`010fc050 00007fff`e1e4c500     igxelpicd64+0x1fcba4
...
07 00000000`010fd430 00007fff`e503b788     igxelpicd64!DumpRegistryKeyDefinitions+0x11865
08 00000000`010fd490 00000000`324147f6     opengl32!glReadPixels+0x88
...
0c 00000000`010fd6d0 00007ff7`f5a3185a     GSGlobeDotNet!GeoScene.Globe.GSOGlobe.ScreenToScene+0xa5
...
0e 00000000`010fe1b0 00007ff8`3285d810     System_Windows_Forms_ni!System.Windows.Forms.Control.OnMouseClick+0x9b
...

從線程棧看是用戶點擊了鼠標,進入了 GSGlobeDotNet.dll ,在讀取像素的底層邏輯中拋了異常,然后到網(wǎng)上搜了一下,原來是繪制三維地球的工具包,這個??了。

圖片圖片

知道這些信息后,讓朋友升級下 顯卡驅(qū)動 試試,后來朋友改了顯卡的設(shè)置就搞定了,截圖如下:

圖片圖片

三:總結(jié)

顯卡的問題也能導(dǎo)致程序的崩潰,太不可思議了,試想一下你如果只是記日志,看代碼,怎么可能找的出問題,哈哈哈,這就是高級調(diào)試的價值。

責(zé)任編輯:武曉燕 來源: 一線碼農(nóng)聊技術(shù)
相關(guān)推薦

2024-03-28 12:56:36

2023-03-26 20:24:50

ERP網(wǎng)站系統(tǒng)

2024-03-26 00:44:53

.NETCIM系統(tǒng)

2024-07-09 11:51:20

Windows線程池源碼

2025-10-29 01:11:00

.NET系統(tǒng)windows

2023-06-26 00:12:46

2024-12-27 13:31:18

.NETdump調(diào)試

2025-09-05 02:22:00

.NETCRM物流行業(yè)

2024-06-04 10:54:34

.NET代碼程序

2024-07-12 11:20:34

.NET崩潰視覺程序

2024-05-31 12:56:06

.NET代碼方法

2022-10-25 14:17:01

.NET代碼程序

2022-01-17 21:28:36

管理系統(tǒng).NET

2024-06-13 17:09:55

2021-11-02 07:54:41

內(nèi)存.NET 系統(tǒng)

2023-04-06 10:52:18

2024-08-27 13:08:50

2024-07-01 13:00:24

.NET網(wǎng)絡(luò)邊緣計算

2024-11-29 10:06:59

2024-08-08 11:21:01

點贊
收藏

51CTO技術(shù)棧公眾號

超碰成人福利| 中文字幕欧美一区| 97福利一区二区| 国产精品久久久久久久龚玥菲 | 无码中文字幕色专区| 天天做天天爱天天综合网| 精品亚洲aⅴ在线观看| 嫩草研究院在线观看| 国产偷v国产偷v亚洲高清| 五月天综合网| 97久久视频| 91精品国产网站| av综合电影网站| 91超碰这里只有精品国产| 成r视频免费观看在线播放| av一区二区不卡| 欧美爱爱视频网站| 国产日韩欧美三级| 波多野结衣久草一区| 奇米狠狠一区二区三区| 久久成人精品一区二区三区| 丝袜美腿诱惑一区二区三区| 欧美成人一区二区三区片免费 | 欧美大香线蕉线伊人久久国产精品| 欧美激情15p| 日韩网站在线观看| 天堂在线中文网官网| 日韩亚洲欧美综合| 日本三级视频在线观看| 日韩欧美大尺度| 免费看成年人视频在线观看| 亚洲视频在线一区二区| 午夜视频你懂的| 久久久噜噜噜久久中文字幕色伊伊 | 91在线码无精品| 中文精品视频一区二区在线观看| 性久久久久久| 久久亚洲午夜电影| 99热这里只有精品8| av一区二区三区在线观看| 婷婷另类小说| 成人影片在线播放| 欧美日韩精品免费观看视频完整| 国产日韩在线亚洲字幕中文| 日韩aaaa| 亚洲xxxx18| 精品视频久久久久久久| 蜜桃av成人| 午夜欧美视频| 91精品国产九九九久久久亚洲| 德国一级在线视频| 国产欧美一区二区精品性色 | 国产成人一区二区| 麻豆成人入口| 国产97人人超碰caoprom| 午夜精品福利影院| 国产精品久久久久久久久久久久久 | 国产精品一二| 亚洲制服欧美久久| 成人性生交大合| 无码日韩人妻精品久久蜜桃| 国产精品不卡一区二区三区| 最新av番号| 欧美日韩久久不卡| 久久电影网站| 亚洲欧美综合精品久久成人| 91嫩草国产线观看亚洲一区二区 | 午夜免费视频在线国产| 日韩视频永久免费| 欧美裸体视频| 欧美精品成人91久久久久久久| 一区三区在线欧| 官网99热精品| 国产一级精品在线| 少妇一级淫免费放| 一本久久综合亚洲鲁鲁五月天| 在线观看操人| 色777狠狠综合秋免鲁丝| 风间由美一区二区av101| 国产精品女人网站| 在线综合亚洲| 国产v片免费观看| 亚洲图片欧美一区| 国模私拍视频在线播放| 欧美激情2020午夜免费观看| 色喇叭免费久久综合| 日韩免费一区二区三区| 久久久精品蜜桃| 国产黄色在线播放| 久久精品电影网站| 伊人影院久久| 日韩欧美国产免费| 在线视频国内自拍亚洲视频| 日韩一级二级| 国产主播喷水一区二区| 国产美女精品一区二区三区| 黄色av资源| 精品福利视频一区二区三区| 九九热hot精品视频在线播放| 国产精品一区二区三区在线观| 成人午夜视频福利| 黄色在线网站| 色777狠狠综合秋免鲁丝| 影音先锋日韩在线| 99色精品视频| 日韩精品一区二区三区在线观看 | 欧美理论电影在线精品| 久久久久无码国产精品一区| 国产亚洲一区二区三区| 黄色片网站在线| 日本a级片电影一区二区| 老司机精品视频在线| 最新二区三区av| 久久精品国产精品亚洲| 9色国产精品| 成年人免费视频观看| 日韩国产精品视频| 欧美电影一区| 成人免费视频久久| 日韩电影大全免费观看2023年上 | 亚洲天堂免费视频| 欧美午夜免费影院| 999精品网站| 精品视频在线观看日韩| 欧美特黄一级| 91嫩草在线播放| 欧美老少配视频| 另类人妖一区二区av| 春暖花开成人亚洲区| 日本免费一区二区三区视频观看| 黄页视频在线91| 巨大荫蒂视频欧美大片| 国产日韩在线免费| 悠悠色在线精品| 亚洲国产精品免费视频| 亚洲小视频在线播放| 日韩午夜电影在线观看| 国产精品99一区二区| 午夜视频国产| 午夜精品一区二区三区在线视频 | 91cn在线观看| 成人亚洲激情网| 亚洲精品免费在线| 草莓视频一区二区三区| 日本精品久久久久久久久久| 欧美精品一区二区三区很污很色的 | 福利电影一区二区| bl在线肉h视频大尺度| 久久精品久久精品国产大片| 色一情一伦一子一伦一区| 日韩成人激情| 一级特黄视频| 日本午夜在线亚洲.国产| 欧美国产一区视频在线观看| 一区二区三区无毛| 欧美精品久久久久久久免费| 国产亚洲在线播放| 国产99久久久国产精品免费看 | 99久久99| 欧美色涩在线第一页| 影音先锋国产精品| 超碰国产在线观看| 国内精品一区二区| 制服丝袜中文字幕亚洲| 欧美亚洲专区| 国产精品69xx| 欧美一级黄色录像片| 伊人av综合网| 久久久精品国产免大香伊| 久草在线综合| 亚洲热app| 狠狠色噜噜狠狠狠狠色吗综合| 91精品国产91久久久久久最新毛片| 国产亚洲综合精品| 97在线超碰| 波多野结衣乳巨码无在线| 欧美乱大交xxxxx另类电影| 日本一区二区三区高清不卡| 欧美一区二区三区红桃小说| 在线免费福利| 久久久久资源| 一区二区三区视频观看| 欧美激情一区二区三区在线| 亚洲品质自拍| 日本成人网址| 日韩精品免费一区| 国内免费精品永久在线视频| 婷婷久久综合九色综合伊人色| 亚洲免费精品| 欧美freesex| 色视频网站在线| 91精品国自产在线观看| 精品国产精品一区二区夜夜嗨| 99国内精品久久| 色小子综合网| 日韩在线伦理| 视频在线国产| 在线精品亚洲一区二区| 97久久精品人人澡人人爽缅北| 色综合夜色一区|