We know that virtual and system memories are two different things. When calculating the memory requirements of different applications, you might assume that 8 GB of RAM or more would be enough to deactivate the swap file. But there's a catch: unfortunately, some programs specifically want to allocate the virtual memory. In these cases, a missing swap file causes an error or the system memory completely fills with garbage data.
I stopped reading the article after that second paragraph. Every single sentence in that paragraph is full of misinformation.
We know that virtual and system memories are two different things.
This is a questionable statement which immediately sets the article off on the wrong foot.
It makes one wonder if the author believes that Virtual Memory == Page File. This is not the case.
System memory in a virtual memory based operating system like Windows is hidden from view by virtual memory. Just like virtual memory hides the page file from view. Therefore virtual memory is effectively a mapping table that maps a full range of address space between either system memory or the page file.
When calculating the memory requirements of different applications, you might assume that 8 GB of RAM or more would be enough to deactivate the swap file.
Firstly, only fools would believe such a thing. Secondly, the page file is never deactivated. Even when you disable it totally in Windows the kernel will still create a small one for itself so that kernel drivers that require paged pool memory do not BSOD the system immediately.
But there's a catch: unfortunately, some programs specifically want to allocate the virtual memory.
There is NO catch to that prior statement. It was just wrong. 100%. A catch implies that a statement was near correct but had some strings attached. This could not be further from the truth in this case.
ALL memory allocations a user mode program makes are based upon virtual memory. All of them. That memalloc() function in you see in C programs? That will be allocating some virtual memory. So one can assume from this statement that Tom Hardware really DOES believe that Virtual Memory == Page File. Again, this is not the case. The ONLY software that can explicitly request paged pool memory is a kernel driver. User mode applications cannot do this, ever. No API is even exposed for them to do it. All those rumours/FUD you hear about Adobe Photoshop "requiring" a page file because it makes socalled "virtual memory allocations"? Total and utter codswallop. Photoshop "needs" a page file because it is a memory hungry application. It likes to allocate huge chunks of contiguous memory address space. This is something that the average PC will find hard to achieve if it only has system memory available with no page file. Hence Photoshop will crash with an "Out Of Memory" exception.
In these cases, a missing swap file causes an error or the system memory completely fills with garbage data.
This statement makes it seem like there is some line of code in Windows somewhere that does "if pagefile does not exist then throw random error". Again, this is not the case. The "error" that Toms Hardware is talking about is an "Out Of Memory" exception.
As for the second part of the statement about "completely fills with garbage data". Well, I have no idea. That is frankly the most ludicrous and outlandish piece of FUD in the whole paragraph.
It is impossible, utterly impossible, for a user-mode application to say "I would like to allocate some page file based memory, please." There is only one concept available to user-mode applications and that is virtual memory.
They do not, ever, get to decide whether that virtual memory is paged-in or paged-out, at any given time.
I see Toms Hardware's quality of publishing still hasn't recovered from the day that they Photoshop'd and faked a pre-launch engineering sample of a P4 Northwood die to make it seem as though they had got the jump on every other tech news site.