Pergunta

Qual implementação da LIBC é usada na plataforma Android? Qual implementação do MALLOC é usada (ptmalloc ou tcmalloc ou qualquer outra coisa)?

Foi útil?

Solução

libc é Biônico E Mailoc é Versão Doug Lea nomeado dlmalloc (com use_locks ativados para segurança).

ATUALIZAÇÃO: O DLMALLOC foi removido em janeiro de 2016: https://github.com/android/platform_bionic/commit/c650447239352d43acc2fd99a8579a85ae0469ab https://sourceforge.net/p/android-x86/bionic/ci/0ac0cee0d1ab60a92103a5021e76ec31da2e3234/ "Mesclar" remove o dlmalloc. ""

+libc_malloc_src := bionic/jemalloc_wrapper.cpp
+libc_common_c_includes += external/jemalloc/include

Então, o Android 7 usa a implementação externa do MALLOC Jemalloc (de FreeBSD/Facebook) - http://jemalloc.net/ e https://github.com/jemalloc/jemalloc; A variante do código do Android está lá: https://android.googlesource.com/platform/external/jemalloc/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top