hardware 板


LINE

本篇關鍵字:Bit flipping、PFNs、badram、defective memory、WHEA 大概是聖誕節前後吧,手邊的筆電在看YT時開始跳出分頁崩潰錯誤,時好時壞。 到了1月初,情況甚至變成BSOD,錯誤碼有0x0000001a(MEMORY_MANAGEMENT)、 0x0000003b(SYSTEM_SERVICE_EXCEPTION)、0x00000139(KERNEL_SECURITY_CHECK_FAILURE) 一開始我還沒想透是怎麼一回事,還想說是不是哪個零日漏洞被開採而我中獎了。 直到我順手讀了火狐的錯誤報告,看到這一行: Possible bit flips max confidence | 92% 阿靠,位元翻轉,這下八九不離十是記憶體的包了。直接上記憶體檢查。 Memtest86+ v7.00 | Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz CLK/Temp: 1800MHz 39/39°C | Pass 2% L1 Cache: 32KB 93.8 GB/s | Test 48% ################## L2 Cache: 256KB 38 GB/s | Test #2 [Address test, own address + window] L3 Cache: 6MB 22.2 GB/s | Testing: 11GB - 12GB [1GB of 11.9GB] Memory : 11.9GB 10.7 GB/s | Pattern: own address -------------------------------------------------------------------------------- CPU: 4 Cores 8 Threads SMP: 8T (PAR) | Time: 0:00:16 Status: Failed! \ RAM: 1600Mhz (DDR4-3200) CAS 22-22-22-52 | Pass: 0 Errors: 5 -------------------------------------------------------------------------------- pCPU PASS Test Failing Address Expected Found ---- ---- ---- ------------------------ --------------- --------------- 0 0 2 0000001c1fd5938 (7.03GB) 0000001c1fd5938 0800001c1fd5938 3 0 2 0000001c1fd2af0 (7.03GB) 0000001c1fd2af0 0100001c1fd2af0 3 0 2 0000001c1fd5938 (7.03GB) 0000001c1fd5938 0800001c1fd5938 PS:不要用Windows內建的記憶體檢查,那就只是個拉基,查不出個東西的。 我一開始就是先用內建檢查,查無問題才想到別處去,結果繞了一圈問題還是出在記憶體 好,由上頁畫面可以看到記憶體在3個位址出現高位翻轉的異常。 知道了出包的記憶體位址,怎麼去關閉呢? 估狗了一下,Windows從Vista開始, 就有支援由開機紀錄(BCD)來宣告無效的記憶體分頁的功能。 而從Windows 10 20H2起,微軟改用了硬體錯誤架構(WHEA)來處理這類狀況, 如果記憶體具有ECC糾錯功能,那麼出錯次數超過閥值時, Windows就會自動將該區塊宣告為禁用。無須人工介入。 但我的筆電沒吃那麼好,所以才要手動自己來。 我用的是舊式的BCD宣告方式,所以跑Win 7/8的老機器也可以參考這篇。 要修改BCD,首先要有Admin權限。 假設你還進得了作業系統,至少是安全模式。打開有權限的CMD, 查詢目前的故障記憶體列表: bcdedit /enum {badmemory} 正常你會看到列表為空: RAM Defects ----------- identifier {badmemory} 只是因為BCD的列表接受的是頁號(PFN),一個頁號對應一個4k分頁, 需要一個一個去作宣告,沒辦法直接宣告一個範圍。好險我估算了一下, 本次出包的記憶體區間大概是0x1c1fd0000 ~ 0x1c1fd7fff,就8個pages, 還可以用手工列舉。萬一有成千上萬的holes散落在各個實體顆粒上,我可能要想辦法弄 個腳本來key-in。 那怎麼把位址轉換成頁號呢? 首先去頭0,0000001c1fd5938變成1c1fd5938。再去掉低位3位,得到1c1fd5。 0x1c1fd5就是包含該位址的頁號。 把範圍處理成頁號後,回到bcdedit加入: bcdedit /set {badmemory} 0x1c1fd0 0x1c1fd1 0x1c1fd2 0x1c1fd3 0x1c1fd4 0x1c1fd5 0x1c1fd6 0x1c1fd7 並且啟用禁止訪問故障記憶體: bcdedit /set {badmemory} badmemoryaccess no 之後再查詢,你會看到: RAM Defects ----------- identifier {badmemory} badmemoryaccess No badmemorylist 0x1c1fd0 0x1c1fd1 0x1c1fd2 0x1c1fd3 0x1c1fd4 0x1c1fd5 0x1c1fd6 0x1c1fd7 這就完工啦,重啟後Windows將完全無視這些故障的記憶體以保平安。 用RAMMap這類公用程式再去檢查,會直接看不到這段記憶體。 當然這手法只是治標不治本,爭取到時間趕快把問題所在的記憶體模組給換了才是真的。 (手刀下訂一條新記憶體) 畢竟誰也不知道記憶體顆粒狀況會不會進一步惡化,導致故障範圍突破收容列表。 而換完之後記得回到bcdedit,清空列表並還原禁用設定: bcdedit /deletevalue {badmemory} badmemorylist 打完收工。 最後,我肯定是腦袋去夾到才會買Patriot博帝的記憶體,當時到底在想啥啊我... 我上次看到記憶體檢查噴紅字還是XP時代DDR-400的南亞科欸。 -- https://i.imgur.com/Vk91kSq.gif --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.16.242.37 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/hardware/M.1736396638.A.111.html ※ 編輯: Segal (163.16.242.37 臺灣), 01/09/2025 12:28:56
1F:→ cancelpc: 十詮,ADATA,蛇蛇..我都遇過新品故障,或一陣子跑出錯誤 01/09 13:25
2F:→ cancelpc: 這些非原廠的由於製程成熟,良率高,就省下測試時間/成本 01/09 13:26
3F:→ cancelpc: 保固做好,等消費者送修.還能賺到口碑 01/09 13:27
4F:推 d030b: 原來還能手動關閉某些區塊 感謝分享 01/09 14:00
5F:推 cancelpc: 雖然很有資訊的一篇,但保固內還是快送修 01/09 14:57
6F:推 ccbbaa: 記憶體測試的畫面居然不是抓圖 而是用畫的!!!! 01/09 22:56
7F:推 Saren: 實用 尤其是我的筆電是onboard的記憶體 01/10 16:46
8F:推 bartwang: 我還在想記憶體測試畫面,+號會閃是怎麼做到的,厲害 01/11 18:54
9F:推 Cubelia: 超精華 01/12 04:37
10F:→ Cubelia: 理論多少看過,不過中文圈的實際操作是第一次見到 01/12 04:43
11F:推 BITMajo: XDD 超用心 01/12 11:41
12F:推 jtmh: 看到圖還在想這麼那麼逼真,原來是畫的XD 01/12 14:03
13F:推 gmkuo: 推 01/12 19:19
14F:推 jh961202: 笑死,還手繪memtest86+,有夠浪費才能(稱讚意味) 01/12 22:15
15F:推 utamaru: 手繪 推 01/12 23:26
16F:推 CardLin: 有散熱片的RAM似乎比較不會壞,某牌DDR4裸露版已經修兩次 01/14 08:26
17F:→ CardLin: 如Kingston Fury DDR4-3600預設其實只有2400至少能開機。 01/14 08:29
18F:推 styyu1281: 推經驗分享。 02/16 02:59
19F:→ styyu1281: 但是看完之後,我哪天遇到還是直接買新的來換比較快… 02/16 02:59
20F:推 s25g5d4: 漲知識 02/23 18:46
21F:推 guanting886: 原來比特反轉真的遇得到? 05/30 11:34
22F:推 nisioisin: 沒終保嗎? 06/02 00:34
23F:推 nrsair: 專業 07/24 00:15







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP