I Upgraded RAM and Windows 7 Won't Boot !!

Discussion in 'hardware' started by Raza0007, Aug 5, 2015.

  1. Rolo42

    Rolo42 Registered Member

    Joined:
    Jan 22, 2012
    Posts:
    571
    Location:
    USA
    This is why "Plug'n'Play" isn't always a sure thing.
     
  2. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    An addendum to my previous post:

    I have discovered something else. As you know there is a NX bit (no execute bit) in the processor, controlled by the BIOS. Intel calls it the XD bit. I had mine disabled since forever as it prevents me from playing one of my all-time favorite game, Starcraft BroodWars fan modified custom campaigns.

    When I restored my BIOS to default setting to clear the CMOS memory, it enabled the NX bit in the processor. I later remembered about it and disabled it. And guess what? Windows 7 again BSOD, with the exact same error screen. I have checked it multiple times, even trying to boot into safe mode. With this NX bit disabled and “4 GB of RAM”, the 32-bit Windows 7 does not load and crashes midway.

    I have emphasized “4 GB of RAM” because, I have had this NX bit disabled since 2008, and never had any problems installing or booting Windows 7 in over 6 years? But I always had 3 GB of RAM installed. For some reason when you increase the RAM to 4 GB with 32-bit Windows 7, it just does not boot if the NX bit is disabled.

    So now I am not exactly sure whether it was clearing of the CMOS memory or the inadvertent enabling of the NX bit in BIOS that resulted in my Windows 7 booting fine.

    I did some tests:

    Two weeks ago I had installed a 32-bit Windows 10 inside a VHD on my laptop, when I booted into Windows 10 with the NX bit disabled and 4 GB of RAM, it booted fine.

    Then today, I created another VHD on my laptop and installed a fresh copy of Windows 7 32-bit on it to check whether a fresh copy of Windows will work fine with the NX bit disabled, but although Windows 7 installed fine, it would not boot and crashed with BSOD.

    Then I created yet another VHD on my laptop and installed a 64-bit Windows 7 on it. The 64 bit Windows 7, installed and booted OK with the 4 GB of RAM and the NX bit disabled.



    So, I am at a loss to explain why the 32-bit Windows 7 won’t boot with 4 GB of RAM and the NX bit disabled, when 32-bit Windows 10 and 64-bit Windows 7 have no issues with it. Does anybody here have any input on this peculiar situation?
     
    Last edited: Aug 8, 2015
  3. Nitty Kutchie

    Nitty Kutchie Registered Member

    Joined:
    Apr 10, 2015
    Posts:
    160
    The NX bit, which stands for No-eXecute, is a technology used in CPUs to segregate areas of memory for use by either storage of processor instructions (code) or for storage of data, a feature normally only found in Harvard architecture processors. However, the NX bit is being increasingly used in conventional von Neumann architecture processors, for security reasons.

    An operating system with support for the NX bit may mark certain areas of memory as non-executable. The processor will then refuse to execute any code residing in these areas of memory. The general technique, known as executable space protection, is used to prevent certain types of malicious software from taking over computers by inserting their code into another program's data storage area and running their own code from within this section; one class of such attacks is known as the buffer overflow attack.

    Intel markets the feature as the XD bit, for eXecute Disable. AMD uses the marketing term Enhanced Virus Protection. The ARM architecture refers to the feature as XN foreXecute Never; it was introduced in ARM v6.

    You can read the rest here= https://en.wikipedia.org/wiki/NX_bit
     
  4. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    Nutty Kutchie,

    I know what NX bit means and what it does. This is the reason I cannot understand why Windows 7 32-bit will not load with NX bit disabled and 4 GB of RAM installed.

    In any case, at this moment, this is just a curiosity for me as I plan to shift to the 64 bit Windows 10 on my pc soon, and according to my tests Windows 10 loads fine with NX bit disabled and 4 GB of RAM installed.
     
  5. Nitty Kutchie

    Nitty Kutchie Registered Member

    Joined:
    Apr 10, 2015
    Posts:
    160
    Which mean that if you had read what i posted then you should have some idea as to why you encountered the problem. Plz read it again.
     
  6. zfactor

    zfactor Registered Member

    Joined:
    Mar 10, 2005
    Posts:
    6,102
    Location:
    on my zx10-r
    correct but normally with dell once you boot up after changing the amount of ram you will get a setup notice and when you hit f1 or f2 depending on the model it will reset the memory settings and boot up normally once you save and exit. worst case is boot to the bios and reset it save and exit. again been doing this for a long time as well as handle dell warranty locally never had to pull a battery to change ram in any dell laptop so far
     
  7. zfactor

    zfactor Registered Member

    Joined:
    Mar 10, 2005
    Posts:
    6,102
    Location:
    on my zx10-r
    this also happens with some asrock mobo's and some msi laptops i have seen in the past as well. its easily fixed with a bios setting on the asrock boards but laptops dont have those settings (normally) in the bios. its a memory setting
     
  8. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    I must have temporarily lost the ability to comprehend English, where in your post did you explain the reason why 32-bit Windows 7 will load with 3 GB of system RAM and NX bit disabled, but not load with 4 GB of system RAM and NX bit disabled?
     
  9. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    Why would a change of RAM from 3 GB to 4 GB cause this kind of problem?
     
  10. zfactor

    zfactor Registered Member

    Joined:
    Mar 10, 2005
    Posts:
    6,102
    Location:
    on my zx10-r
    some bios use what they call the "extended" (some use other terms for it as well) ram area. one example is the older asrock g31m-s you could never see the 4gb of ram even with x64 installed unless you turned on this feature in the bios and rebooted then you would see the full 4gb
     
  11. Rolo42

    Rolo42 Registered Member

    Joined:
    Jan 22, 2012
    Posts:
    571
    Location:
    USA
    A fringe guess but NX does require PAE; I wonder if disabling NX also disables PAE in that BIOS. (Yes, you only have 4GB RAM but xMB ROM potentially getting mapped above 4GB.)
     
  12. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    OK. After extensive researching and testing I have managed to isolate and resolve the problem, though I am still not exactly sure the "why" of it.

    Here is it briefly:

    I toggled the following settings, while using 32-bit Windows 7 with 4 GB of system RAM:

    NX Bit: Enable / Off
    DEP: Optin / AlwaysOff
    PAE: Default / ForceDisable

    I used the BCDEdit /set commands from here


    Test 1:
    NX Bit: Off
    DEP: OPtin
    PAE: Default

    Result: 32-bit Windows 7 will not load.


    Test 2:

    NX Bit: Enable
    DEP: OPtin
    PAE: Default

    Result: 32-bit Windows 7 will load normally.


    Test 3:

    NX Bit: Enable or Off
    DEP: AlwaysOff
    PAE: ForceDisable

    Result: 32-bit Windows 7 will not load. (Windows crashes with BSOD regardless of BIOS NX bit setting)


    Test 4:

    NX Bit: Off
    DEP: AlwaysOff
    PAE: Default

    Result: 32-bit Windows 7 will load normally. (Problem solved!)


    So, in order for a 32-bit Windows 7 to load on a system with 4 GB of RAM and the NX bit Disabled in BIOS, one needs to have the DEP from inside Windows 7 switched to AlwaysOff and the PAE switched to Default.

    I am not sure whether this holds true on all systems and motherboards or whether I am the lucky owner of a special allergic system. But if someone encounters the above mentioned problem, this is how to solve it.

    As I mentioned, I still do not know the "why" of it. If someone has some insight into it please let me know. I do not like loose ends.

    Thanks to everyone who contributed and tried to help me out.

    In hindsight, if I had known that upgrading my system's RAM from 3 GB to 4 GB will cause this much problem, I would never have done it.
     
    Last edited: Aug 9, 2015
  13. J_L

    J_L Registered Member

    Joined:
    Nov 6, 2009
    Posts:
    8,738
    Why was "Test 4" chosen as the solution over "Test 2"?
     
  14. Raza0007

    Raza0007 Registered Member

    Joined:
    Mar 30, 2009
    Posts:
    1,691
    Location:
    USA
    Because I need the NX bit disabled in the BIOS in order to play Starcraft Brood Wars fan created custom campaigns. These custom campaigns were created between 1999 and 2001, before the NX bit was introduced, and they come with their own executable. When you run them they execute in the space apparently reserved for Starcraft in RAM and the processor thinking that they are malicious, terminates their execution. Only way to play them is to have NX bit disabled in the BIOS.
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.