On Wed, 20 Nov 2002, Tony Finch wrote:

> David Schultz <[EMAIL PROTECTED]> 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 [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to