Re: Out Of Memory in v. 2.1

Albert D. Cahalan (acahalan@cs.uml.edu)
Mon, 5 Oct 1998 01:39:24 -0400 (EDT)


Alan Cox writes:

> And to boot a machine with 512Mb of RAM you'll need at
> least 600Mb or so of swap file.

Overcommit tracking must be system_wide, but it doesn't need
to apply to all processes. If data for all processes is kept,
then an overcommit_ok process could change to no_overcommit
with a system call, then change back as needed.

Processes get total_used and potential_use values. The total_use
values of overcommit_ok processes plus the potential_use values
of no_overcommit processes gives the amount of in-use memory that
must not be exceeded. To change policy, subtract one value and add
the other value. (fail if that would go over the limit)

The clone() call could be enhanced to match. For both child
and parent process:

0... no change
1... overcommit on
2... overcommit off
3... use system (or user) default

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/