473,387 Members | 1,903 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

What is the limit for memory a .NET process or AppDomain can use?

Hi,

What is the limit for memory that a .NET process or AppDomain can use?

Thank you,
Max

Jun 27 '08 #1
5 12600
Max2006 wrote:
What is the limit for memory that a .NET process or AppDomain can use?
For 32 bit Windows ther eis a limit of 2 (or 3 if so configured) GB
of virtual memory (which is what .NET sees).

For 64 bit Windows the limit may not be the sky, but it is high - higher
than what you can use.

Arne
Jun 27 '08 #2
Thank you Arne for help..

Could you refer me to msdn or online resource that explain this?

Thanks again,
Max
"Arne Vajhøj" <ar**@vajhoej.dkwrote in message
news:48***********************@news.sunsite.dk...
Max2006 wrote:
>What is the limit for memory that a .NET process or AppDomain can use?

For 32 bit Windows ther eis a limit of 2 (or 3 if so configured) GB
of virtual memory (which is what .NET sees).

For 64 bit Windows the limit may not be the sky, but it is high - higher
than what you can use.

Arne
Jun 27 '08 #3
Max2006 wrote:
Could you refer me to msdn or online resource that explain this?
Google finds links like:

http://blogs.msdn.com/tom/archive/20...processes.aspx
http://forums.techarena.in/showthread.php?t=933856

Arne
Jun 27 '08 #4
Hi Max,

.Net AppDomain or Process does not have hard-coded memory limit in
principle. So the memory limit normally lies with the underlying OS memory
manager limitation. As Arne pointed out, the modern OS uses the virtual
memory management, so all the memory usage comes from the virtual memory
space instead of physical memory. For 32bit OS, 2^32 bytes(4GB) are
available to a process. However, since the OS kernel normally uses 2GB
virtual space. There are only 2GB left for the process user-mode code. So
we may believe that the memory limit for a .Net process/AppDomain is 2GB.

Can you tell me why you want to know of the memory limitation for .Net
process/AppDomain? In .Net world, the memory is abstracted as managed
objects. The .Net developers seldom touch or deal with memory directly
unless you are using unsafe code or p/invoke COM interop. Also, in the CLR,
the .Net GC is responsible for us to free the managed objects memory and
return to managed heap.

Do you allocate memory directly for native code? If we can understand your
purpose and problem context better, we may have a better solution. Thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
ms****@microsoft.com.
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Jun 27 '08 #5
I agree with TAN, that there is no hardcoded memory limit, it depends on the
RAM size and the paging memory size.

--
Regards,
Mudassar Hassan
Software Engineer
http://mudassarhassan.spaces.live.com/
""Jeffrey Tan[MSFT]"" wrote:
Hi Max,

.Net AppDomain or Process does not have hard-coded memory limit in
principle. So the memory limit normally lies with the underlying OS memory
manager limitation. As Arne pointed out, the modern OS uses the virtual
memory management, so all the memory usage comes from the virtual memory
space instead of physical memory. For 32bit OS, 2^32 bytes(4GB) are
available to a process. However, since the OS kernel normally uses 2GB
virtual space. There are only 2GB left for the process user-mode code. So
we may believe that the memory limit for a .Net process/AppDomain is 2GB.

Can you tell me why you want to know of the memory limitation for .Net
process/AppDomain? In .Net world, the memory is abstracted as managed
objects. The .Net developers seldom touch or deal with memory directly
unless you are using unsafe code or p/invoke COM interop. Also, in the CLR,
the .Net GC is responsible for us to free the managed objects memory and
return to managed heap.

Do you allocate memory directly for native code? If we can understand your
purpose and problem context better, we may have a better solution. Thanks.

Best regards,
Jeffrey Tan
Microsoft Online Community Support

Delighting our customers is our #1 priority. We welcome your comments and
suggestions about how we can improve the support we provide to you. Please
feel free to let my manager know what you think of the level of service
provided. You can send feedback directly to my manager at:
ms****@microsoft.com.
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscripti...ult.aspx#notif
ications.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscripti...t/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.

Jun 27 '08 #6

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Tony Van | last post by:
I think I know what it is-- objects not being set to nothing when the program is finished with them How can I tell if I have it? How can I code to avoid it? Thanks
0
by: ArBee | last post by:
I have seen this running on my Windows 2003 installation of DB2 Connect v8 EE. I have searched throughout IBM's site and get no hits. Can anyone give me a clue as to what it is for?
18
by: Ramasubbu Ramasubramanian XR (AS/EAB) | last post by:
What is memory leakage, could any one explain with sample code
5
by: bull | last post by:
hi could any one explain with example the following in a better way to understand 1. what is stack in memory, how the programs are stored in stack , what is the use of stack 2. What is heap in...
2
by: SMichal | last post by:
Hi, I'm starting from my application simple bat data...test.bat. This file (test.bat) should start another aplication app.exe. I'm starting the test.bat from my application with Start() method of...
2
by: Ajayshankar | last post by:
Hi what is memory padding in C ?
2
by: okonita | last post by:
Instance DB2 and database MYDB2 already exist. I want to add/catalog another database within the DB2 instance. What are the steps to do this? What information do I need to successfully complete this?...
1
by: michaelpyles | last post by:
IIS6 (x86) - Classic ASP application - I am downloading files via calls to BinaryWrite from a C++ COM component. The ASP DLL doesn't seem to do a good job limiting memory usage based on the...
2
by: aimthiaz | last post by:
memory management operators
1
by: FARAZ AZAM | last post by:
Actually I am working on the project for implementation of fingerprinting analysis I am able to read the headers and pixels data present and after putting algorithms for segmentation and edge...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.