The errors weren't postgres complaining about not having
enough memory, but that the shared memory segments had
been corrupted. We did try (among other things) increasing
shared_buffers, which didn't as far as I recall make any
difference.
I wonder if we were perhaps hitting some limit in cyg_ipc wrt the
amount of shared memory it can support... hmm...