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

betov.
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

"MEM_RESERVE or MEM_COMMIT" flags.

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

"MEM_RELEASE" flag.

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:

"MEM_RELEASE or MEM_DECOMMIT" flags.

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...


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