WOW64 and Actual Phisical RAM Usage

Discussion in 'Windows 64 Bit' started by Pierluigi, Jun 8, 2007.

  1. Pierluigi

    Pierluigi Guest

    Hi everybody.

    SCENARIO:
    Server with Windows x64 and 8 GB of physical ram;
    some 64-Bit application running;
    actual RAM usage 5 GB.

    QUESTION:
    If I add a (WOW64 compatible) 32bit application on this server, does it Work ?
    I mean: is WOW64 able to give some memory space of Physical RAM between the
    5th and the 8th gigabytes (I Know about the 2 to 4 GB adressable memory
    limitation of the majority of the 32 bit application but...it is not the
    point of my question)
    If yes I'll be greatfull for some documentation link about it.

    Thank you in advance.

    Pierluigi
     
    Pierluigi, Jun 8, 2007
    #1
    1. Advertisements

  2. Pierluigi

    Tom Ferguson Guest

    1. Advertisements

  3. Pierluigi

    Pierluigi Guest

    Hi Tom,
    thank you very much for your replay.

    I read these articles before, but they didn't answer my question.
    I understand that my 32 bit application can take advantage of max 4 GB (in
    very particular condition) of the "Virtual Address Space"
    but I didn't understand if this "Virtaule Address" can be kept from every
    physical address space in case I have more than 4 GB of Physical RAM.
     
    Pierluigi, Jun 8, 2007
    #3
  4. You have a mis-understanding of how memory addressing works and how that
    relates to RAM. They are not the same thing. x64 Windows versions can use
    application memory address space.

    The OS controls what applications are using what physical RAM. Regardless of
    how much physical RAM you have, however, a 32-bit application has available
    a 4 GB flat memory address space. If the application is written to take
    advantage of all the memory available, it will see 4GB. If it is a
    conventional 32-bit application, it will only see 2GB. 32-bit applications
    have to be compiled with the LARGEMEMORYADDRESSAWARE flag to see >2GB of
    memory.

    Now, if you load a 64-bit application that uses 5 GB of memory (notice I'm
    NOT saying RAM here), and then want to load a 32-bit application that is
    large memory aware, it will see 4GB of memory. If you then load another
    32-bit application, it will see it's own 4 GB memory address space.

    So, what does this have to do with RAM? Windows will decide what portions of
    any of those applications are running in RAM, what portion of RAM it keeps
    for itself, and what portion of any application it swaps out. This is the
    job of the OS. The application doesn't use RAM, it uses memory. The OS
    controls what memory is actually used for what purpose.
     
    Charlie Russel - MVP, Jun 9, 2007
    #4
  5. Hello Charlie,
    Good answer and a better one than I could have given.
    Thanks,
    Darrell Gorter[MSFT]

    This posting is provided "AS IS" with no warranties, and confers no rights
    --------------------
     
    Darrell Gorter[MSFT], Jun 9, 2007
    #5
  6. Thanks, Darrell. Though I suspect you are being modest - we've all
    appreciated the answers you've provided here over the time we've been live.
    You get all the tough ones - I just cherry pick the easy ones like this. ;)

    --
    Charlie.
    http://msmvps.com/xperts64
    http://mvp.support.microsoft.com/profile/charlie.russel


     
    Charlie Russel - MVP, Jun 10, 2007
    #6
  7. Pierluigi

    John Barnes Guest

    Now, who's being modest. You have sure shown the light on your share of
    hard problems.

     
    John Barnes, Jun 12, 2007
    #7
  8. Oh, we all struggle along here. And goodness knows we have had some
    interesting problems to discover the answers to. My favourite problem to
    this day, however, is still the 32-bit internet connectivity fix for nvidia
    mobos. I wish I could remember who originally came up with the solution, but
    it's lost in antiquity now. Which doesn't mean I haven't had to haul that
    answer out lately - it still comes up!

    --
    Charlie.
    http://msmvps.com/xperts64
    http://mvp.support.microsoft.com/profile/charlie.russel


     
    Charlie Russel - MVP, Jun 12, 2007
    #8
  9. Pierluigi

    Pierluigi Guest

    Hi Charlie,

    your answer is very apprecieted.

    I think you are right about my mis-undertstanding of how memory addressing
    works.

    And ... sorry but I would like to be sure about understanding your answer
    (sorry but I'm from italy and my english is not so well).

    So: in case I use a 32 BIT OS like Windows2003 Enterprise Edition, plus,
    numerous 32 bit legacy application using (each application) from 2 to 4 GB
    memory, can I benefit installing more than 4 GB of RAM on the server ?

    Please.... be patient...but I would like to resolve my doubts once for all....

    Pierluigi
     
    Pierluigi, Jun 12, 2007
    #9
  10. Using a 32-bit version of Windows Server 2003 Enterprise Edition, you can
    take advantage of >4gb of RAM. But _only_ by using something called PAE
    which is a method for swapping chunks of memory in and out of a narrow
    window within the 4GB of virtual memory address space that is supported by
    32-bit Windows. This is of little or no benefit for legacy, conventional,
    32-bit programs such as Office, but may provide some benefit for
    applications written to take explicit advantage of it - SQL Server comes to
    mind.

    For running multiple legacy applications as you describe, you won't see much
    if any benefit.
     
    Charlie Russel - MVP, Jun 12, 2007
    #10
  11. Pierluigi

    jorgen Guest

    That is not what you initially said, was it?

    Anyways, the process only sees virtual addresses, all going from 0-4GB,
    regardless where in physical memory it resides. Only the memory manager
    sees the 36-bit physical address, and therefore the application doesn't
    need to be written differently.
     
    jorgen, Jun 12, 2007
    #11
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.