android/bionic/linker/linker.c will load all depend DSO in memory, but I found that the code in linker.c can't promise DSO object is shared in memory. following code come from linker.c
1009 extra_base = mmap((void *)tmp, extra_len, 1010 PFLAGS_TO_PROT(phdr->p_flags), 1011 MAP_PRIVATE | MAP_FIXED | MAP_ANONYMOUS, 1012 -1, 0); As you know, mmap 's "MAP_PRIVATE" protected the process from sharing memory with other process. So , How dynamic linker shared DSO data between different processes ? -- unsubscribe: [email protected] website: http://groups.google.com/group/android-porting
