Well I guess thats true, but isnt that more a case of sharing the file, rather than the memory ?
I believe the OP wanted to share the memory allocated my mmap (sharing the address returned by mmap, which isnt possible across unrelated processes).
Maybe that just being pedantic - changes made to the mmap'ed region by one process are almost immediately visible by the other - if thats the level of control required, cool. shmXXX allows for finer grained control, by using data structures in memory - possible in a file but not without some serious work serialising to and from the file representation.
...it is better to be approximately right than precisely wrong. - Warren Buffet