[comp.sys.pyramid] Locking or wiring a process in memory.

sullivan@DPW.COM (David J. Sullivan) (01/17/91)

With OSx 5.0 and above the `launchit' utility is a handy way to give
server processes nice characteristics -- more file descriptors,
unlimited forks, locking them to a CPU.

Is there a way to lock a process in memory so that it is never swapped
or paged out?

I'd like to have my Sybase dataserver stay in main memory forever.  I
don't need it to be bound to a CPU, but wouldn't be adverse to doing that
if it has the side effect of keeping it resident.

David Sullivan

Davis Polk & Wardwell		Internet: sullivan@dpw.com
14 Wall Street			    UUCP: {uunet | cmcl2}!esquire!sullivan
New York, NY 10005
(212) 266-0730			     Fax: (212) 266-0790

eric@pyramid.pyramid.com (Eric Bergan) (01/22/91)

In article <2988@esquire.dpw.com> sullivan@DPW.COM (David J. Sullivan) writes:
>With OSx 5.0 and above the `launchit' utility is a handy way to give
>server processes nice characteristics -- more file descriptors,
>unlimited forks, locking them to a CPU.
>
>Is there a way to lock a process in memory so that it is never swapped
>or paged out?
>
>I'd like to have my Sybase dataserver stay in main memory forever.  I
>don't need it to be bound to a CPU, but wouldn't be adverse to doing that
>if it has the side effect of keeping it resident.

	If you are using aio with Sybase (and you definitely should be),
then the bulk of your memory is already locked down. The aio implementation
requires that any memory that may be used as an aio buffer area be
locked into memory, so it doesn't have to worry about paging. In the
case of Sybase, these means all the buffer area gets locked down.

	There is still some chance of paging of other memory (the text,
for instance), but the odds are pretty low. The buffer area is typically
the largest part of the memory usage by an order of magnitude.

								
-- 

					eric
					...!pyramid!eric