On Mon, 6 Mar 2000 12:50:16 +0000 "John P. Looney" <jplooney-ilug at online.ie> wrote:
| On Mon, Mar 06, 2000 at 12:22:06PM +0000, Paul Jakma mentioned:
| > but how /do/ you handle OOM? you are totally out of memory, you can't
| > swap out processes cause swap is full, the kernel can't allocate memory
| > for net packets that are too big for static buffers..
| When a process malloc's memory, you return a null pointer, and the
| program should quit (if it's well written) or soon core dump, if it's
| not. The kernel should reserve the last meg or two for itself, so it could
| keep running until enough processes are given the chop.
The _kernel_ may still be running, but imagine (if you will) a poorly written
program which fails to die for lack of memory. Now, let that program run amok
until there is no memory (physical or swap) left. Stuff starts snuffing it,
oh, around 2am. Now wind on a few hours. It gets to the point where the
_kernel_ may be running, but certain minor system programs like, say, mingetty
can't start, and even init falls over. Eventually there's nothing for it but
to hit the hard reset button. Not fun.
Paul
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!