@karlos
I was thinking more of the benefits of being able to change .so files independently of the applications that use them.
You can have this with libraries, too. Of course they have to used different name always.
Before anybody starts, the current implementation has been designed to allow linkage against different versions of a .so provided all of the symbols that the originally linked version provided still exist (older gcc implementations didn't do this very well and the whole shebang was reworked).
So, other than saving disk space, you also get to be able to replace your regular libvorbis.so with an altivec tuned one perhaps. Or at least that's the theory.
But is this different to libraries...? I am developing SDL for MorphOS and when I am trying new AltiVec optimization I only replace old powersdl.library in LIBS: and try different SDL games with it.
The current OS4 shared object implementation limitation is that .so files are not opened and shared in memory the way .library files are. Whether that remains the case in future versions remains to be seen.
I havent investigated this topic very much but to my understanding to .so object sharing can not work in a shared address space model. The problem is, as I see it, relocating data sections.