Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Nov 2002 16:52:41 -0500 (EST)
From:      Mike Silbersack <silby@silby.com>
To:        Tony Finch <dot@dotat.at>
Cc:        dschultz@uclink.Berkeley.EDU, <hackers@freebsd.org>
Subject:   Re: cvs commit: src/bin/sleep sleep.c
Message-ID:  <Pine.BSF.4.44.0211201646550.27339-100000@niwun.pair.com>
In-Reply-To: <E18EbhV-0008O5-00@chiark.greenend.org.uk>

next in thread | previous in thread | raw e-mail | index | archive | help

On Wed, 20 Nov 2002, Tony Finch wrote:

> David Schultz <dschultz@uclink.Berkeley.EDU> wrote:
> >
> >BSS and modified data are not shared, and Matt is only counting
> >zero fill and COW faults.
>
> Most of the BSS is mmapped zero pages that are copy-on-write, so in simple
> programs they should be mostly shared. See rtld-elf/map_object.c
>
> Tony.

I'm curious how well COW sharing really works under FreeBSD.  Earlier this
year, I fixed a piece of code which was O((processes sharing a page)^2) in
the VM system.  When certain simple forkbombs were run, they would cause
the machine to freeze for 30 seconds at a time or more once the VM cleanup
routines kicked in and ran the O(N^2) piece of code.

What bugged me at the time was that I couldn't seem to reproduce the
problem with other programs... this led me to believe that we aren't
really sharing too many pages in common use, but I didn't have time to
investigate if that was true or not.  Someone with an interest in VM
implementations might want to take a wander through and see how well page
sharing really works on a typical FreeBSD system.  :)

Mike "Silby" Silbersack


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.44.0211201646550.27339-100000>