Is there a way to discard any information retained in RAM without restarting when using Windows and Linux?

07
2014-07
  • PeanutsMonkey

    My understanding is that Truecrypt keys are retained in RAM when a device is mounted. Can I discard any information held in RAM without restarting in Windows and Linux?

  • Answers
  • Fran

    Discarding data from RAM is best done by the application that owns that data. There are mechanisms that enable a suitably privileged user to directly access RAM, but then you are left with the big problem of finding the data you want to erase and erasing it without causing an application to malfunction. Worse yet, the data may not be in RAM: it may be in the paging file (or "swap area" in UNIX terms). Again, sufficiently privileged users may have write access to the swap area, but you have the same big problem as before.

    So I guess I'm answering your question with: Not really.


  • Related Question

    Is there way to enable more than 4 GB RAM in 32-bit Windows OS?
  • Wahid Bitar

    I upgraded my PC to 4 GB RAM and I get only 3 GB. Windows 7 32-Bit consider that I've 4 GB RAM but didn't use more than 3 GB.

    Someone told me that MS Windows 32-bit doesn't support RAM larger than 3 GB.

    So please is there any way to make my OS "Windows 7 32-Bit" support more than 3 GB RAM ?

    *`Note: I can't move to 64-bit because I've many program doesn't work with a 64-bit OS.

    Edit::

    I tried what Mr. Wonsungi advised me but whenever I check this option:

    Enable support for 4 GB of RAM

    I get the following error:

    'Cannot access to the registry key HKEY_CLASSES_ROOT\CLSID\{E88DCCE0-11d1-A9F0-00AA0060FA31}.'

    There is no "CLSID" in my registry, I don't know why!.


  • Related Answers
  • Oliver Salzburg

    You can use PAE, but it's not nearly as good as just going 64 bit. Check this MSDN Page.

    Enabling PAE

    Windows automatically enables PAE if DEP is enabled on a computer that supports hardware-enabled DEP, or if the computer is configured for hot-add memory devices in memory ranges beyond 4 GB. If the computer does not support hardware-enabled DEP or is not configured for hot-add memory devices in memory ranges beyond 4 GB, PAE must be explicitly enabled.

    To explicitly enable PAE, use the following BCDEdit /set command to set the pae boot entry option:

    bcdedit /set [{ID}] pae ForceEnable
    

    IF DEP is enabled, PAE cannot be disabled. Use the following BCDEdit /set commands to disable both DEP and PAE:

    bcdedit /set [{ID}] nx AlwaysOff
    bcdedit /set [{ID}] pae ForceDisable
    

    Windows Server 2003 and Windows XP: To enable PAE, use the /PAE switch in the boot.ini file. To disable PAE, use the /NOPAE switch. To disable DEP, use the /EXECUTE switch.

  • Oliver Salzburg

    Read this: Dude, Where's My 4 Gigabytes of RAM?

    For general info, there is also this overview on memory limits per Windows edition:

    Memory Limits for Windows Releases

  • Breakthrough

    Recently, a group of programmers have released a kernel patch for Windows 7 to allow the usage of more than 4 GB of RAM under Windows 7. Click here to download the patch, or view more information about it. The patch basically modifies the Windows 7 kernel to be more like the Windows Server 2003 Datacenter Edition, which is compatible with up to 8 GB of RAM under 32-bit mode.

    The patch allows you to extend the PAE well into 8 GB of RAM under Windows 7 32-bit. For more information about why Microsoft implemented this technical limitation, see this article.

    Note that individual processes will still be limited to 4 GB even if the system can access more... Although if you had 8 GB of RAM, then at least you'd still have another 4 GB for other processes ;)

  • 8088

    As far as I know, 32-bits Window can use memory up to 64 GB, and can be "hacked" to do so.
    This hack is fully described here: Licensed Memory in Windows Vista.
    (Note: I do not advice anyone to actually try it.)
    It also makes interesting reading, since it explains very well all the concepts involved.
    I reproduce below his proof-of-concept image.

    That 32-bit editions of Windows Vista are limited to 4GB is not because of any physical or technical constraint on 32-bit operating systems. The 32-bit editions of Windows Vista all contain code for using physical memory above 4GB. Microsoft just doesn’t license you to use that code.

    image

  • Nathan Adams

    The answer to this question is really "depends on who you ask".

    Some say to use PAE, which will allow you to address higher than 4GB BUT Microsoft will NOT let you on many of 32bit versions of Windows.

    http://msdn.microsoft.com/en-gb/library/aa366778%28VS.85%29.aspx
    The following table specifies the limits on physical memory for Windows 7.

    Physical 4GB limit, period. It's a licensing issue. There might even be a "hack" floating around to let you use more than 4GB, but I don't remember.

    Please do note: Vista and Windows 7 on 32bit will report the TOTAL PHYSICAL RAM you have in System, but it will ONLY use 4GB of it. So, shoving 16GB in a computer running 32bit Windows will only use 4GB ACCORDING TO MICROSOFT even though "System" control panel will show 16GB. Windows 7, Vista, and XP 32bit will only use 4GB of RAM, its a fact. However, certain versions of Windows Server WILL use more than 4GB with PAE enabled.

    For those going "your wrong PAE will allow you to to use more than 4GB", yes I agree, however, Microsoft says that you can only use 4GB on most of the 32bit desktop OS so if you feel that page is in error send them an email or call them to complain.

  • Peter Mortensen

    Someone told me that MS Windows 7 32-bit doesn't support RAM larger than 3 GB.

    Someone is wrong. 32-bit Windows desktop operating systems support up to 4 GB of physical memory. However, due to the hardware limitations of the x86 architecture, only 3.5~ GB are available for the OS if 4 GB are installed.

  • churnd

    Just curious, can you give some examples of programs that don't work on 64-bit windows? 64-bit Windows since Windows XP has excellent backwards compatibility with 32-bit programs. Check the 5th question on this page: http://windows.microsoft.com/en-US/windows-vista/32-bit-and-64-bit-Windows-frequently-asked-questions. Take Microsoft Office for example, it's all 32-bit, but runs great on 64-bit Windows.

    The only time you wouldn't want to move to 64-bit is if you have hardware that doesn't have 64-bit drivers. Hardware drivers must match the OS platform.

  • 8088

    This patch works or so it seems.

    Before the patch I could use 3gb out of 4gb, and now all 4gb is accessible.

    Here's the patch:

    http://www.pallab.net/2009/12/30/enable-more-than-4gb-memory-in-windows-vista-7/

    Here's the screenshot (Windows 7 Ultimate Hungarian):

    enter image description here

  • Jamie Kitson

    The link below sets out a manner to

    • take a copy of the kernel
    • hack it to use 4GB and above of RAM (edit the hex strings 7C 11 8B 45 FC 85 C0 74 0A and 7C 10 8B 45 FC 85 C0 74 09 to 7C 10 B8 00 00 02 00 90 90 and 7C 10 B8 00 00 02 00 90 90 respectively)
    • sign it with makecert -r -ss my -n "CN=My Cert" and signtool sign -s my -n "My Cert" ntkl64g.exe
    • and add it as a secondary boot option with bcdedit

    in a very clear and straight forward way

    http://www.evga.com/forums/tm.aspx?m=960087&mpage=1&print=true

    Which worked for me.