Kbase P97299: Memory allocation of Progress Database process _mprosrv.exe on Windows
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  09/10/2009 |
|
Status: Verified
GOAL:
Memory allocation of Progress Database
GOAL:
Is the memory shown for the _mprosrv.exe process or the Task Manager performance monitor really allocated?
GOAL:
Why does running a simple 4GL for each on a large table cause the Windows task manager to report a lot less free memory?
GOAL:
Why does the promon activity screen show lot less shared memory used?
GOAL:
Why does shutting down _mprosrv.exe free the memory again?
FACT(s) (Environment):
Windows NT 32 Intel/Windows 2000
Progress/OpenEdge Product Family
FIX:
As long as enough memory is free the Windows Operating System uses the available memory for the file cache.
That way any database block accessed is directly copied into the file cache. The memory reported as free within the Windows task manager goes down until all disk blocks accessed are stored into the file cache. Indeed is that memory not free anymore and is dedicated to
the process which accessed the disk. However as soon as any other process request more memory as currently declared as free the
Windows memory manager looks into the file cache and removes the oldest and longest not accessed blocks of the files copied there from the file cache memory and makes it available for the process which needs it now. When ending the process to which the memory was dedicated to the
Windows memory manager moves the memory back into the free memory pool.