Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / Windows Forms / WinForm General / April 2005

Tip: Looking for answers? Try searching our database.

2GB memory limit

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Yahya - 05 Apr 2005 16:52 GMT
Dear Sirs,

   I have developed a VB .Net windows application, but unfortunately when I
this application tries to use more than 2GB memory it fails although there
is available 4GB of memory on the machine. How may I allocate more virtual
memory to be used by the application or extend this limit?

Regards,
Yahya
David Browne - 05 Apr 2005 17:08 GMT
> Dear Sirs,
>
[quoted text clipped - 3 lines]
> is available 4GB of memory on the machine. How may I allocate more virtual
> memory to be used by the application or extend this limit?

The amount of RAM on the machine is irrelevant.  Your application uses
virtual memory which is paged from disk to RAM by the OS.

On 32-bit windows you have a 4gig virtual address space which divided into
2gigs for user-mode code, and 2gigs for kernel-mode code.  So your
application (which runs in user-mode) can only access the bottom 2gigs of
the address space.

On 64bit windows, native 64-bit apps (which you can't write with .NET 1.1)
have a very large address space. 32-bit apps running on 64bit windows in the
Windows On Windows64 environment still have a 4gig address space, but since
all no kernel-mode code can run in 32-bit mode, you can use the whole 4gig
address space.

But seriously, why are you using so much memory?

David
Yahya - 06 Apr 2005 08:40 GMT
I am using such a large amount or memory since this application is copying
large mail items between public folders on a machine which is also running
exchange 2003 that is taking alone the minimum of 1GB.

But I still didn't understand how can I make use of the whole 4GB of memory.

Thank you,
Yahya

> > Dear Sirs,
> >
[quoted text clipped - 21 lines]
>
> David
Sean Hederman - 06 Apr 2005 14:27 GMT
>I am using such a large amount or memory since this application is copying
> large mail items between public folders on a machine which is also running
> exchange 2003 that is taking alone the minimum of 1GB.

How exactly is this copying being done? Can you not chunk the copy?

> But I still didn't understand how can I make use of the whole 4GB of
> memory.

You can't. To paraphrase David this would only be available on a 64-bit
machine running a 64-bit version of Windows and .NET 2.0, which has not yet
been released. The limit for standard Win32 applications is 2GB.

Signature

Sean Hederman

http://www.codingsanity.com

Jay B. Harlow [MVP - Outlook] - 06 Apr 2005 15:09 GMT
Yahya,
| But I still didn't understand how can I make use of the whole 4GB of memory.

As David, Sean, and I have stated you cannot per se until .NET 2.0 64-Bit
edition.

Depending on which server you are running, you can enable .NET 1.1 to use
3GB if your server OS supports it. For details start with "/3GB switch" at:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag/html/scal
enetchapt17.asp


| I am using such a large amount or memory since this application is copying
| large mail items between public folders on a machine which is also running
| exchange 2003 that is taking alone the minimum of 1GB.
I would review the algorithm I was using to copy the data to see if there
was one that did not require such high memory requirements. Such as reading
& writing 1M chunks at a time.

Hope this helps
Jay

|I am using such a large amount or memory since this application is copying
| large mail items between public folders on a machine which is also running
[quoted text clipped - 35 lines]
| >
| > David
Danny T - 06 Apr 2005 22:11 GMT
> Depending on which server you are running, you can enable .NET 1.1 to use
> 3GB if your server OS supports it. For details start with "/3GB switch" at:

LOL!!

Why isn't there a /4GB switch too? :)

Signature

Danny

"Chris Lyon [MSFT]" - 07 Apr 2005 19:32 GMT
The /3GB switch enables user apps to address 3GB of Virtual Memory, not use
3GB of Physical Memory.  Since 32-bit machines can access a maximum of 4GB
of addresses, normally Windows allots 2GB for user processes and 2GB for
kernel processes.  With /3GB mode, applications marked /LARGEMEMORYAWARE
can access 3GB worth of addresses.

Raymond Chen explains this well:
http://blogs.msdn.com/oldnewthing/search.aspx?q=3gb&p=1

As was stated above, 64-bit processes don't have this restriction.

-Chris

--------------------

| > Depending on which server you are running, you can enable .NET 1.1 to use
| > 3GB if your server OS supports it. For details start with "/3GB switch" at:
|
| LOL!!
|
| Why isn't there a /4GB switch too? :)
Jay B. Harlow [MVP - Outlook] - 05 Apr 2005 21:50 GMT
Yahya,
In addition to David's comments.

.NET 2.0 (VS.NET 2005, aka Whidbey, due out later in 2005) supports both a
32-bit CLR & a 64-bit CLR.

http://lab.msdn.microsoft.com/vs2005/

I don't know what the memory limit on the 64-bit CLR is going to be, however
I would expect it to be significantly more then either 2GB or 4GB.

Of course the 2.0 64-bit CLR will require a 64-bit version of the OS (XP Pro
or 2003) as well as a 64-bit CPU.

Hope this helps
Jay

| Dear Sirs,
|
[quoted text clipped - 5 lines]
| Regards,
| Yahya
Rob Oldfield - 07 Apr 2005 00:42 GMT
Tch.  Nobody with any memories of 64K limits?

> Dear Sirs,
>
[quoted text clipped - 5 lines]
> Regards,
> Yahya

Rate this thread:







Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.