Memory upgrade issues and BCD options

#1
My system is a Dell laptop inspiron 17R n7010. it is a great laptop and sports a first generation 64bit i5 intel processor with 4Gig of main memory.

i am multi-booting into Win7, Win8, and Mountain lion 10.8.2 all works fine. i saw that memory had gotten dirt cheap and figured that it was worth the investment. so i bought two 8g sticks to replace my two 2g sticks. popped the new memory in and the bios promptly recognized the 16g of new memory no problem. Switched over to my OSX boot and up she comes with 16g of main memory. Runs great!

Feeling good i go over to booting up Win7, loading bar completes, get the splash screen a pause and a soft reset to the system!
i switch over to the Win8 partition and same result.
i am of course using 64bit versions of both operating systems so it is clear that isn't the problem. so i pull out the install disk and boot off of them thinking maybe a driver or something. It does the same thing! thinking maybe a newer version might be more robust i download Windows Server 2012 and try that install disk. Indeed it is a different loader program because after the four sheets logo it gives a blue screen of death with an error before shutting off the machine.

Tried all of the combinations of memory sticks including singles and mixing with 2g stick, etc. no go.

Come to find out my A11 version of Dell Bios (their latest and i suspect last upgrade) will only support two 4g memory sticks, not even just one 8g. stick
Obviously the machine supports the 16g as i can boot linux disks all day long as well, it is Microsoft and Dell working together to make sure folks have to buy new machines. In talking to Crucial they claim and rightfully so that their memory is just fine, and that it is a windows driver problem...duh!

What i suspect is happening is that as windows is loading it checks the firmware for specifications limitations if they are exceeded it quits, end of story.
this information is usually stored in the ACPI tables in the firmware.

To get my Dell Laptop to think it was a MacBook, I built a custom DSDT table that Chameleon injects before the OSX boot so it just doesn't know any better than to run. To my knowledge, people just haven't had to do this on Windows machines but I suspect that this problem will surface as more users try to upgrade their laptop as the memory technology has provided. It dawned on me that there might be a BCD option that disables the firmware check. Seems like a reasonable option to put in so I started looking for it.

Not a lot of information out there on this issue, but i found some options that might be relevant. Maxmem=num, or /PCILOCK or DISABLE_INTEGRITY_CHECKS
My question is can I use EasyBCD to set them? From what I can tell the options look hardwired. Also is their a way to edit and inject a DSDT table for Windows?

I think it is a crime that Microsoft is limiting their operating system to only use a certain configuration of memory. Any ideas out there?
 

mqudsi

Mostly Harmless
Staff member
#2
On a 64-bit OS the BCD/Windows do not do anything of the sort. It's likely an ACPI miscommunication, you need to take this up with Dell support.
 
#3
So what i saying to Dell? Mike, your BIOS and built in memory testing work just fine including the diagnostic options for memory in BIOS. Other 64bit operating systems(OSX and Linux) that rely on ACPI work perfectly, but I need you to fix my Microsoft Windows 7 and 8 problem? my laptop is a 2010 model that has been eol for two years. The last firmware update was in 2011. You really think I will get help?
I suspect that much of the conversation will go the way of Crucial, "you need to talk to Microsoft". Microsoft is not interested in fixing this as i have tried.

i wouldn't be on this and other forums if there was an easy way. We are talking a memory upgrade the most popular upgrade folks perform on their machine. i can't be alone on this.

Your statement seems fairly adamant that Windows is not doing this, what information are you using to make this claim? Can you elaborate?
 

Mak 2.0

Mod...WAFFLES!?!?
Staff member
#4
As you stated in you first post, the Dell BIOS only recognizes 2x4GB. That is not something that is controlled by Microsoft. Dell has complete control over that aspect. So it would be Dell and their tech team that would have to release an upgraded BIOS to support the extra RAM. Since the BIOS is saying that it can only support that amount, that is what Windows is following. It is how the OS in encoded and how it will function.

I know this cause I am using 2 different types of RAM in my machine right now. 2x1GB sticks of PC2 5200 and 2x2GB of PC2 6400. While the 4GB of PC2 6400 is running at slower speeds, it is still working perfectly fine with the 2GB of PC2 5200 RAM for a total of 6GB. It is working cause my BIOS for my system says that it can handle a full 16GB. So as long as the RAM is completely compatible, it will work no matter the combination used, as long as it doesnt exceed the 16GB that my BIOS says it can handle.

You say you are using a custom built loader for OS X, so those issues dont arise. But since Windows is using the default loader, it is abiding by the constraints put on it by Dell. So in the end, no matter how it is stated, it will be up to Dell to release a new BIOS that can handle more RAM and state the system can handle more RAM. Until such time Windows will abide by what the BIOS says and error out.
 
#5
you are missing an important point. The bios recognizes 16g of memory. Dell provides a built in diagnostic that sees and tests the memory just fine. The crucial memory is perfectly in spec and runs flawlessly.
we are only talking the acpi table. i would buy your input if the bios was having trouble recognizing the memory and puking. it is not. i am not really sure that it is the acpi table but it is a good guess that it is. ACPI tables are not set in stone. If it was i would not be able to boot into OSX, injecting a mod DSDT table is fairly commonplace in the OSX and linux hack world. I find it hard to believe no one has ever attempted and solved this issue in the windows world. It is simply not that hard technically to do.

Frankly i am a little baffled at how hard it is to get even some simple help on the BCD options and how to properly set them. Most references are cryptic with no real examples. EasyBcD appears to hard wire the options they think are relevant with no documentation. my next option is to simply hit F10 and start with trial and error. it would be nice to get some real help from the forum instead being treated like the unwashed. Since when do we have to eat the dogfood these manfacturers serve up? this industry would not be where it is today if that were the case.
 
#6
Most of the tools to extract and build a DSDT run in windows or linux. before I undertake that project I wanted to see if there was an easier way. It seemed to me that there should be a boot option the BCD that would disable some of the ACPI checks. With a little searching I found Geoff Chappell's work on "Edit Boot Options in Windows Vista". This is the most documentation I have found on the subject. If i could find an option then it would be an easy fix to my problem. Edit Boot Options in Windows Vista
Having never had to mess with these options, i thought where else but EasyBcd could I get some pointers on how to set flags and see what they do. Part of EasyBCD developers options address setting only a small subset of options. Geoff defines reported options in a table where he lists the BCD element and its initial value. What caught my eye was the "usefirmwarepcisettings" BCD element which is initialized to true. Apparently the /PCILOCK flag is what is set in the boot options. not a lot of examples about turning this from true to false and it seemed reasonable to ask in a BCD forum. Been a little surprised at how negative the response has been from the 'supposed" experts reviewing the posts. may be they know something may be not. if this is over their head they should just say so and not imply they know something they don't. i am after information not an attitude.
 
#7
I have exactly the same situation.
After updated from 6GB to 16GB my inspiron N7010 won't start windows 64bit any longer. I have Kubuntu 64bit running and it can find all the memory. Also BIOS recognize 2*8GB memory. I also tried with VMware virtual machine hosted by Kubuntu and using client win 7. Works nice when original 6GB installed but when changed to 16GB it won't start either. I wonder would Dell give some limitations to virtual machines, too?

mageekm: if you still follow this treat, could you please let me know if you have got some solution.