What will happen if a application is large enough to be loaded into the available RAM memory?
There is chance were a heavy weight application that needs to be launched in a low configuration system.. (Especially when the system has too less memory) Also when we have already opened lot of application in the system & we keep on trying opening new new application what would happen?
I have only seen applications tak开发者_运维知识库ing time to process or hangs up for sometime when I try operating with it in low config. system with low memory and old processors.. How it is able to accomodate many applications when the memory is low..? (like 128 MB or lesser..) Does it involves any paging or something else..?
Can someone please let me know the theory behind this..!
"Heavyweight" is a very vague term. When the OS loads your program, the EXE is mapped in your address space, but only the code pages that run (or data pages that are referenced) are paged in as necessary.
You will likely get horrible performance if pages need to constantly be swapped as the program runs (aka many hard page faults), but it should work.
Since your commit charge is near the commit limit, and the commit limit will likely have no room to grow, you will also likely recieve many malloc()
/VirtualAlloc(..., MEM_COMMIT)
/HeapAlloc()
/{Local|Global}Alloc()
failures so you need to watch the return codes in your program.
Some keywords for search engines are: paging, swapping, virtual memory.
Wikipedia has an article called Paging (Redirected from Swap space).
There is often the use of virtual memory. Virtual memory pages are mapped to physical memory if they are used. If a physical page is needed and no page is available, another is written to disk. This is called swapping and that explains why crowded systems get slow and memory upgrades have positive effects on performance.
精彩评论