What is the maximum amount of memory any single process on
Windows can address? Is this different than the maximum
virtual memory for the system? How would this affect a
system design?

Answers were Sorted based on User's Feedback



What is the maximum amount of memory any single process on Windows can address? Is this different t..

Answer / kunal

Actually processes access virtual memory space, not physical
memory. Applications never access RAM directly but only
through the memory management interface of the processor.
All processes have a 4GB virtual address space. The upper
2GB is common to all processes and is used by the system.
The lower 2GB is private to each process and is inaccessible
to all others. This is completely independent of the size of
RAM or the page file. The system maps physical memory into
this virtual address space according to both need and
availability.
At any given time the data in virtual memory space might be
stored in RAM, on disk, or both. All of this is totally
transparent to all applications. Frequently accessed data
will be kept in RAM with the remainder left on disk.

Is This Answer Correct ?    6 Yes 1 No

What is the maximum amount of memory any single process on Windows can address? Is this different t..

Answer / rek

What is the maximum amount of memory any single process on
Windows can address? Is this different than the maximum
virtual memory for the system? How would this affect a
system design?" NT-based OSes split memory into user and
kernel space. The amount of memory usable is dependent on
the exact flavor of the OS and whether the processor is
32-bit or 64-bit. In the 32 bit world, XP and Win2K both
support 4GB, Win2K Advanced Server supports 8GB and Win2K
Datacenter Server supports up to 32GB. XP and W2K's 4GB gets
split 50/50, with 2GB being available for a process and the
remaining 2GB being held for the kernel. (Note that this
last space isn't just for the OS -- all the hardware devices
use this space as well, so that killer graphics card you got
with gobs of video RAM uses up portions of the kernel space
as well. This is the same in 32- or 64-bit procs.) XP Pro
and Win2003 Server can use the /3GB switch in boot.ini to
make 3GB available to the user side. The 2GB limit isn't a
Windows limit, it's a 32-bit processor limit and hits Linux,
Solaris, etc. (I'm sure Macs don't have this problem because
Macs are the perfect system and have no limitations
whatsoever. Ask any Mac user.) 64 bit Windows supports up to
16 terrabytes (woo hoo, gimme one o' dem filled up!) but
still split memory 50/50 between user and kernel. 32 bit
applications are still limited to 2GB user space. 64-bit
Windows versions don't support the /3GB switch. So yes, a
process's max memory is different than the system's total
virtual memory. System design is impacted if you're trying
to create a system using very large data structures,
particularly if your software's running on a system with
other apps. Your design needs to make careful use of memory
to make sure you're not going to run out of virtual memory.
Furthermore, since virtual memory is a combination of
physical memory and swapfile space, you need to take care to
avoid paging -- or at least minimize it as much as possible.
This means you should have an understanding of the
environment your software's going to run in. At the minimum,
you should have good documentation explaining your
assumptions, estimated system requirements and projected
system impacts. The first chapter in Bentley's Programming
Pearls is a great discussion on careful use of system
memory, plus it shows the benefit of ensuring you know what
problem you're really trying to solve. The story opening the
problem relates a conversation Bently had with a friend. The
short version is that what Bently first thought was a simple
sort of a large file on disk turned out to be a horse of a
different color. The "real" problem required some creative
thought to get around

Is This Answer Correct ?    2 Yes 0 No

Post New Answer

More Programming Languages AllOther Interview Questions

In JCl , we have COND parameter.This holds comparison code and condition.It also has only and even parameters. ex: COND((4,GE),EVEN).what the comma mean here. is that 'and' or 'or'.

0 Answers   L&T,


what do you man by firmware

4 Answers  


how to add a new table with variables and thier values into a imported file uisng proc import?

0 Answers  


Corillian's product is a "Component Container." Name at least 3 component

1 Answers  


what is diff bet ref variable & instance of class

0 Answers  






Hi, I'm doing B.com 3rd year. Simultaneously I'm doing software engineering in a private institution. I would like to know whether my B.com graduation alone is enough to get me a job in the IT field or should I do some PG course not MBA... suggest me...

1 Answers  


what is the difference between an application and service??? i mean service which runs as in services.msc.

2 Answers  


hi..this is kartheek..complted mca in 2009..but i dont have knowledge in programing..but to learn new language.. which one is suitable for me?is SAP or IBM mainframes is suitable for me..?if it suits how much will it costs..?pls answer...

0 Answers  


two MIT math grads bump into each other at Fairway on the upper west side. they haven't seen each other in over 20 years. the first grad says to the second: "how have you been?" second: "great! i got married and i have three daughters now" first: "really? how old are they?" second: "well, the product of their ages is 72, and the sum of their ages is the same as the number on that building over there.." first: "right, ok.. oh wait.. hmm, i still don't know" second: "oh sorry, the oldest one just started to play the piano" first: "wonderful! my oldest is the same age!" problem: how old are the daughters?

2 Answers  


what is difference between kpo and it industry? that is in terms of work, package etc

0 Answers  


differences between qtp10.0 and 11.0 ?

0 Answers  


is possible to delete specific data in a row by using of sql query?

0 Answers   HCL,


Categories