ADC Home > Reference Library > Technical Q&As > Legacy Documents > Carbon >

Legacy Documentclose button

Important: This document is part of the Legacy section of the ADC Reference Library. This information should not be used for new development.

Current information on this Reference Library topic can be found here:

Process Manager

Q: Why does the Finder's Get Info window show Memory Requirements numbers for native applications that are different from the numbers in the SIZE resource? The Note at the bottom of the Get Info window also says that memory requirements will decrease by a certain amount if virtual memory is turned on. Please explain.

A: First, assume that virtual memory is turned off. When launching your application, the Process Manager creates a heap for you of the size:

(amount from SIZE resource) + (size of native code)

or, if this is not possible, at least

(minimum amount from SIZE resource) + (size of native code).

relocatable block in your application's heap, allocated low in the heap. Because there is no segmentation, the whole native code has to be loaded at once in this case, where virtual memory is turned off. And because the Process Manager can't know how much of the application heap space is needed for data blocks, it's safest to keep the full size of the application heap. In the Get Info window, the Finder displays the size as the sum of The Code Fragment Manager will then load your code into a non-the amount in the SIZE resource and the size of the native code. Note that when you change the numbers, the Finder will not add the size of the code when it updates the numbers in the SIZE resource.

In the second case, virtual memory is turned on. Now, the size of your heap will be determined the same way as on a 68K system, solely from the SIZE resource (and available memory constraints, of course). In this case, your code will be loaded in memory-mapped VM space, which is not in your heap.

[May 01 1995]

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.