The ongoing paging wars...
I wrote:
"A page becomes a candidate for page-out through dis-use. Period."
James Nicoll wrote:
"This is not true. A busy system with large memory requirements pages active pages in and out (period)."
You've just described a system with too little memory. A shame, in this day of cheap, cheap, cheap RAM. In a properly-configured system, only relatively-inactive pages will be paged-out.
In any case, the pages that are paged-out will be those that have received the least use.
You wrote:
"Most shared memory segments used by multiple processes are locked-down. Shared memory segments are used extensively in server side applications; ie. Oracle."
What a bunch of bunk! There is NO reason to lock-down shared segments to a fixed physical memory address. The application does NOT care, as long as the address in application memory does not change.
Perhaps some applications do lock-down memory in order to assure that they will be readily-available. If so, these are badly-designed programs that do not follow the spirit of the OS's memory allocation model. Frankly, if you have to do this, either you don't have enough RAM, you don't have enough processor power, or both.
The only reason that you would HAVE to lock-down memory is if you have a hardware device that has a driver that can't tolerate a page-out.
Yes, I have done shared-memory programming in both NT and Unix.
(BTW, James, nice move in SUNW today. Which side were you on?)
|