Date: Sun, 28 Jul 1996 22:07:53 -0600 (MDT) From: Nate Williams <nate@mt.sri.com> To: dwhite@resnet.uoregon.edu Cc: "Paul J. Mech" <paul@coil.com>, questions@freebsd.org Subject: Re: Considering FreeBSD Message-ID: <199607290407.WAA20633@rocky.mt.sri.com> In-Reply-To: <Pine.BSI.3.94.960728161842.226D-100000@gdi.uoregon.edu> References: <31F898AB.1DE87A12@coil.com> <Pine.BSI.3.94.960728161842.226D-100000@gdi.uoregon.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
> > 0) When Linux runs out of virtual memory, it crashes. What is FreeBSD's
> > behavior under these conditions?
>
> FreeBSD will start killing processes until the memory problem is resolved.
> This usually means the program that is trying to start, and working
> backward. Occaisionally the VM system gets too busy and kills init, but
> that is very rare.
Actually, FreeBSD's VM system should *NEVER* kill init. It specifically
protects the early ID's in the 'kill' code.
>From /sys/vm/vm_fault.c:
if (vaddr < VM_MAXUSER_ADDRESS && curproc && curproc->p_pid >= 48) {
printf("Process %lu killed by vm_fault -- out of swap\n", (u_long) curproc->p_pid);
psignal(curproc, SIGKILL);
Note the curproc->p_pid >= 48, which allows low numbered process that
are generated upon bootup to be safe from the VM kill process.
Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607290407.WAA20633>
