Re: IDL memory question [message #12732] |
Mon, 07 September 1998 00:00  |
David Kastrup
Messages: 33 Registered: February 1998
|
Member |
|
|
Alex Schuster <alex@rosa.mpin-koeln.mpg.de> writes:
> Eugenio Sansosti wrote:
>
>> Even if this operation make the required memory free for my IDL
>> application, it does not make memory free for other applicstions running
>> onmy machine. That is, other machine users cannot use the memory I have
>> allocated untill I exit IDL.
>>
>> Does any of you have a solution for that? Is it an IDL configuration
>> problem or is there any IDL command I can use?
>
> Sorry, there is no way. It seems this is a general problem for any C
> progam which uses malloc() and free() to access heap memory.
> The FAQ has an entry about this:
> http://la.znet.com/~mgs/idl_faq.html#T27
It's a general problem for any C program compiled with a stupid C
library or working on a braindead system. If your system is not
braindead and your C library is the GNU C library glibc, then large
allocations will be done in a way that allow reclaiming space
immediately by the operating system as soon as it gets released, even
if the chain of allocations would leave holes in the available memory
space.
For example, the Linux version of IDL should not exhibit this problem
(at least if it is linked with glibc instead of the old system
libraries in use over a year ago).
--
David Kastrup Phone: +49-234-700-5570
Email: dak@neuroinformatik.ruhr-uni-bochum.de Fax: +49-234-709-4209
Institut f�r Neuroinformatik, Universit�tsstr. 150, 44780 Bochum, Germany
|
|
|