Shared memory initialisation ?

How/when is shared memory initialised ? Or does it always need to be initialised explicitly by the kernel ?

I’ve behaved as if it isn’t initialised, thus initialising it myself, but I can’t give a reference or a reason.

Well, a good general purpose reason is: Assume that memory is not initialized unless you specified the default value in your code somehow. :)