00 CPU異常記錄

2021-09-11 01:24:19 字數 706 閱讀 3026

1、異常的分類

<1>cpu產生的異常(如除0)

<2>軟體模擬產生的異常(如c++中的異常)

2、cpu異常的產生

cpu指令檢測到異常(如除0)

查idt表,執行中斷處理函式

commondispatchexception(把異常相關的一些資訊儲存到乙個結構體中)

kidispatchexception(分發異常,目的是找到異常處理函式)

3、commondispatchexception函式分析

該函式構造了乙個_exception_record結構體

kd> dt _exception_record

ntdll!_exception_record

+0x000 exceptioncode : int4b //異常**

+0x004 exceptionflags : uint4b //異常狀態

+0x008 exceptionrecord : ptr32 _exception_record //下乙個異常

+0x00c exceptionaddress : ptr32 void //異常發生位址

+0x010 numberparameters : uint4b //附加引數個數

+0x014 exceptioninformation : [15] uint4b //附加引數指標

異常記錄 資料對比異常

業務邏輯中需要對比兩個物件是否是同乙個物件,不知道為什麼我去判斷兩個物件是否是同乙個物件,就用 去判斷兩個商品的id,然後id相等的時候返回給我乙個false,然後我嘗試用equals方法去判斷,然後就會返回乙個true,我想可能是因為我用了包裝型別integer型別的原因,測試了一下找到原因了,是...

zks python學習筆記00N 異常處理

print jojo print 喬納森喬斯達 print 喬瑟夫喬斯達 結果 喬納森喬斯達 print 喬瑟夫喬斯達 執行結果 喬納森喬斯達 print 喬瑟夫喬斯達 執行結果 喬納森喬斯達 print 喬瑟夫喬斯達 執行結果 喬納森喬斯達 print 喬瑟夫喬斯達 執行結果 喬納森喬斯達 fin...

android異常記錄

1.fragment not attached to activity 異常 原因 因為fragment在還沒有attach到acitivity時,呼叫了諸如getresource 方法 如 getresources getstring r.string.a 解決方案,在獲取資源之前呼叫isadde...