Jump to content

- - - - -

BadMemory for windows

  • Please log in to reply
2 replies to this topic

#1 Syahmi



  • Members
  • 15 posts

Posted 15 July 2016 - 07:37 AM

BadMemory is a windows driver to support broken RAM modules (like BadRAM).


The driver basically allocate the memory region defined by user so it become unusable for OS to do so. Currently, the driver is signed using test certificate. So if you are interesting in using it, you will need to enable testsigning on or sign the driver yourself.


To use the driver, install the driver simply by right-clicking the .inf file and choose install from the context menu. Once installed, windows will ask to restart. You will likely need to define bad memory region first by running the supplied .exe


To find the bad memory region, simply run any memtest suite and find the bad region on the report after scan.


The driver doesn't guarantee that the bad memory region will be made unavailable to windows. In fact if windows uses the bad address before the driver load, it will fail without any notice.


I am using bad RAM with this driver almost a month now and nothing bad happen yet :). Currently, I'm running on windows 10x64 and the driver is compiled using latest WDK. I'm not sure if the compiled version compatible with previous version of windows. You will need to try yourself.


Download: https://github.com/p...Memory/releases

Edited by Syahmi, 15 July 2016 - 08:22 AM.

#2 Syahmi



  • Members
  • 15 posts

Posted 15 July 2016 - 08:41 AM


NOTE: When using BadMemoryManager.exe this will handled automatically.


The regions of bad memory address is stored in windows registry under binary format. Location: HKLM\SYSTEM\CurrentControlSet\Services\BadMemory\Parameters\BadRegions

The format is as following:

LowerBound(QWORD) UpperBound(QWORD)



BadAddr 1: 0x1000 - 0x2000

BadAddr 2: 0x5000 - 0x6000

BadAddr 3: 0x8000 - 0xa000


The "BadRegions" data will contain (hex binary)

0010000000000000 0020000000000000

0050000000000000 0060000000000000

0080000000000000 00a0000000000000

#3 Blackcrack


    Frequent Member

  • Advanced user
  • 437 posts

Posted 15 July 2016 - 08:48 AM

Hi Syahmi,

you could implement this in Reactos.org as a improvement for the WinNT code

or ?

(by the way, all WinNT Programmer can maby help for developing Reactos and also for giving patches ! :) )


also for have later a better WinNT ! http://www.reactos.org


best regards


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users