is there plan to support 'linker namespace' in glib?
Florian Weimer
fweimer@redhat.com
Mon Mar 11 12:50:00 GMT 2019
* zhuao:
> I notice that android bionic support 'linker namespace': https://source.android.com/devices/architecture/vndk/linker-namespace
> it provides additional isolation among software components.
> it may also benefit some usage:
> - isolation prebuilt binaries with different toolchain (versioned glibc)
> - it may also give us opportunity to use android binary (HAL) with glibc, by isolating glib and bionic world in different namespace
>
>
> do you think the above approach is possible?
> if yes, is it possible to add such feature to glibc?
There have been many discussions over the year. The requirements are
quite diverse: some people want group support as in the Solaris linker.
Others want dlmopen with a shared malloc (and perhaps shared other
libraries; our implementation currently shares only the dynamic linker
and nothing else). Again others want to load the same library multiple
times, disregarding its soname. Then there is a desire to have some
sort of firewall between different linker namespaces, as a general
framework, so that you can load the same soname multiple times, and
still achieving consistent execution.
I think that anything that is fairly general and actually works is still
a major research effort, in addition to the work that would be needed to
implement it in the current dynamic linker. While a lot of research has
been done on modules and how to compose them in the 80s, a lot of that
knowledge seems to have been lost or is simply not available to people
working on C/C++ implementations today.
Thanks,
Florian
More information about the Libc-alpha
mailing list