in reply to Managing System Memory Resources
Using vmstat 1, I get the same free memory graph you report when I run your program on FreeBSD 4.9, but with different scale.
freebsd.org has a pretty good set of documentation. You might be able to find something about your problem there, since the behavior on Solaris and FreeBSD 4.9 seems to be nearly identical.