Does someone know in what state is a "Virtual" allocated Memory
when committed *and* released? (Win95 family).

Posted on 2001-08-06 10:13:16 by Betov
Posted on 2001-08-07 06:33:19 by Hiroshimator
Thanks, Hiro, but i know all this almost by heart now, and even some more
as i have carefully read some techincal paper from an M$ developer about
all types of allocations and ways to

Maybe i wrongly wrote the question:

First, i am talking of VirtualAlloc / VirtualFree. Let us say you ask the
WMM for some Memory with the


Then later you do not want any more of this Mem and ask to Free it with only


In this case, i thaught (and it seems to work so under NT family) that the
Memory is freed the same way as if you ask for it with the full:


It is *not* true under 95 family.

It is just like if you reseve a room for rent, then go effectively living
for one week in the room. But when the owner give you the keys, you
"Un-reseve" the room and keep going living in it. What would this mean???

What could mean a both commited and released Memory??? For me, it doesn't
make sense, but it seems to exist under 95 family (or at least, the concerned
Pages remains marked as 'Valid' -or something like this -for the ones who
know internals of the thing--).

In such cases, with big amounts of Memory chunks (over 1 Mo * >=10 Chunks)
attributed and released enough time to be interleaved, the WMM produces
random hangs after a while. That took me two weeks to point out it, and i
have never been able to reproduce this effect under 2000.

So, the problem is solved for me, but i just would like to understand...

Posted on 2001-08-07 08:27:33 by Betov