Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Unable to reserve memory for 33554432 objects

9 views
Skip to first unread message

Don

unread,
Aug 5, 2009, 3:37:16 PM8/5/09
to
Hi,
A customer for my product is getting the following message when launching
the program: "Unable to reserve memory for 33554432 objects please close
some appliation". "Application" is misspelt in message. The program is
protected with Armadillo. The error only started after she entered the
registration key.

The program is written in Dolphin Professional 6.02.
The customer's PC is running Windows XP with 1 GB RAM

I asked her to increase the paging file size, which she did to 4GB, and also
to close all other applications etc, but the problem is still there.

Well over a year ago, I increased the object table size to 33554432 objects,
but this is the first time I have never had this error. Can anybody help
please?

Regards,
Don


klausk

unread,
Aug 6, 2009, 8:32:36 AM8/6/09
to

Hi Don,

how about instances of some objects in class variables that are not
freed on deployment?

Please look at #onPreStripImage to clean up...

Cheers,
Klaus

Don

unread,
Aug 6, 2009, 11:23:52 AM8/6/09
to
Hi Klaus,

Thanks for the suggestion. I'm not sure how I could use #onPreStripImage. It
gets called before the image is stripped. I use a clean image for
deployment, into which I install the application package each time I deploy
the application, so I don't think there can be any objects in class
variables not freed on deployment. Also, this version was released a few
months ago, and the problem with memory hasn't happened until now.

I was wondering if it had anything to do with a recent Windows XP upgrade or
some new security feature Microsoft might have added. For example, when they
made Data Execution Protection turned on by default with Vista, and programs
protected by older versions of Armidillo stopped working. Has something
changed in XP recently?

I wonder if the message means Windows is preventing the application from
reserving the memory rather than there not being enough memory available.
Maybe, there's some obscure security setting in Windows, which prevents
applications asking for so much memory, and it's set on the user's computer.

I don't know if a Dolphin app requests all the memory for the object table
when it starts up, or asks for more incrementally as it needs it. My program
is being prevented from starting because of the error, so it looks like it
requests all the memory when it starts.

Any more suggestions please?

GallegO

unread,
Aug 6, 2009, 12:31:02 PM8/6/09
to

>
> Any more suggestions please?
>
> Regards,
> Don
>
You can not shrink the size of the OT? ... and test the limits.
We are using an OT with that size too, and we never had problems with
it.

There are messages on this list regarding OT size and memory
allocation but the "Search this group" button of google groups is not
working well and I can not help finding them :(

Cheers
Sebastian

IanB

unread,
Aug 6, 2009, 1:49:29 PM8/6/09
to
Sebastian,

>There are messages on this list regarding OT size and memory
>allocation but the "Search this group" button of google groups is not
>working well and I can not help finding them :(

Just FYI. There's an archive of all the posts to this newsgroup, in
all the various forms it has taken, at ...

http://www.idb.me.uk

... on the "News Archive" page. Download them and search at leisure -
they are just (zipped) text files.

Ian
--
The From address is valid

klausk

unread,
Aug 6, 2009, 2:10:50 PM8/6/09
to

Hi,

I'm sorry, my knowledge about Armidillo in't very deep, but I do agree
that this (and XP) is the reason for the trouble. I gues Armidillo
crumbles the machine code of the executeable until it has veryfied the
autentication. After autentication pass it reconstructs the original
code and, I belive, it makes a mistake here.

Btw it's only one bit 33554432 = 2^26 = 10000000000000000000000000

Cheers,
Klaus

Don

unread,
Aug 6, 2009, 2:54:05 PM8/6/09
to
Hi Klaus,

I think you're right. I'll ask in the Armadillo forum.

Cheers,
Don

Don

unread,
Aug 6, 2009, 3:05:25 PM8/6/09
to
Thanks Sebastian and Ian,

I don't want to shrink the size of the OT. Like you, I've never had problems
with it before.

I downloaded the archives and found that Dolphin reserves the memory, but
doesn't use it until it needs to.

I also found that the error message comes from Dolphin, not Windows. In
2004, the message was "Unable to reserve memory for 33554432 objects. Please
reduce maximum OT and restart". Now it is: "Unable to reserve memory for
33554432 objects please close some appliation" (misspelt).

There was also something about another application might be using the
memory. I will ask the client to check the "Page File Useage History" in
Windows Task Manager to see how much memory is being used before my program
is launched.

Regards,
Don


bowerandy

unread,
Aug 11, 2009, 9:24:31 PM8/11/09
to
Don,

> I also found that the error message comes from Dolphin, not Windows. In
> 2004, the message was "Unable to reserve memory for 33554432 objects. Please
> reduce maximum OT and restart". Now it is: "Unable to reserve memory for
> 33554432 objects please close some appliation" (misspelt).

To be honest I was surprised to find that this message is actually
from the Dolphin VM. Normally we are very conscious of spelling (and
in this case grammar) errors. However, after checking, this is indeed
a message from the VM and, as you suspect, it is when trying to
reserve memory for the object table. It seems the call to the Windows
memory management is failing so, apart from reiterating that there
might be a problem with the Armadillo protection system, I don't know
what to suggest.

I'm on vacation at the moment (until next week) but when I return,
I'll see if Blair has any further suggestions.

Best regards

Andy Bower
Object Arts Ltd

0 new messages