Domanda

Cosa libc implementazione viene utilizzata in piattaforma Android? Che implementazione malloc viene utilizzato (ptmalloc o tcmalloc o altro)?

È stato utile?

Soluzione

Bionic e malloc è Doug Lea versione chiamato dlmalloc (con USE_LOCKS abilitati per thread-sicurezza).

Aggiornamento: dlmalloc è stato rimosso nel mese di gennaio 2016: https://github.com/android/ platform_bionic / commit / c650447239352d43acc2fd99a8579a85ae0469ab https://sourceforge.net/ p / Android-x86 / bionico / ci / 0ac0cee0d1ab60a92103a5021e76ec31da2e3234 / "Merge "Rimuovi dlmalloc"."

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

Quindi, Android 7 utilizza malloc esterna implementazione jemalloc (da FreeBSD / Facebook) - http://jemalloc.net/ e https://github.com/jemalloc/jemalloc ; variante android di codice è lì: https://android.googlesource.com/platform/external/ jemalloc /

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top