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

what are the steps for creating prompt table dynamically for the specified field

0 Answers  


what is session state?

0 Answers   HCL,


details description on this mantis? who is founder of this mantis?

0 Answers  


Suppose we are doing 4 operations on database using service, first operation is successful but due to some reason remaining 3 operations are failed. I) is this transaction successful or not? ii) How can you give that error message to user?

0 Answers  


code for connection from windows forms to sql server

0 Answers   ME,






I would like to know which institute in hyderabad provides best ms-dot net training along with a project. I want to join immediately. please help

2 Answers  


what is encapulation?

4 Answers   Syntel,


how many types of operating system are avaliable?

0 Answers   IBM,


What is a dialog based program

1 Answers  


can any one suggestion me present which course(except java,.net) has huge demand in the market?

0 Answers  


what is class module in vb6? what it's use? with example..

0 Answers  


why we use new keyword for object

4 Answers   TCS,


Categories