Какая реализация libc используется в платформе Android? Какая реализация malloc используется (ptmalloc или tcmalloc или что-то еще)?Версия libc для Linux и реализация malloc
1
A
ответ
3
libc is Bionic и malloc is Doug Lea version с именем dlmalloc (с включенным USE_LOCKS для обеспечения безопасности потоков).
Update: dlmalloc был снят в январе 2016 года:. https://github.com/android/platform_bionic/commit/c650447239352d43acc2fd99a8579a85ae0469abhttps://sourceforge.net/p/android-x86/bionic/ci/0ac0cee0d1ab60a92103a5021e76ec31da2e3234/ "Объединение "Удалить dlmalloc""
+libc_malloc_src := bionic/jemalloc_wrapper.cpp
+libc_common_c_includes += external/jemalloc/include
Таким образом, Android 7 использует jemalloc реализации внешнего таНоса (из FreeBSD/Facebook) - http://jemalloc.net/ и https://github.com/jemalloc/jemalloc; android вариант кода есть: https://android.googlesource.com/platform/external/jemalloc/
Смежные вопросы
- 1. Linux системный вызов, Libc, VDSO и реализация рассечение
- 2. Реализация Visual-C++ malloc?
- 3. Альтернативная реализация malloc
- 4. Как libc изменяет регистр CS в Linux
- 5. Malloc реализация - confused
- 6. C реализация malloc struct
- 7. Linux и C/C++: приложение, созданное путем связывания libc-2.11 и попытки запуска на Linux-машине с libc-2.5.so
- 8. Реализация Malloc: случай для разделения показана блок-
- 9. malloc зависает в Linux
- 10. Неожиданное поведение linux malloc
- 11. Почему реализация libC++ использует этот союз?
- 12. Компиляция со старым libc (версия `GLIBC_2.14 'не найдена)
- 13. git: версия для GNU/Linux
- 14. Как указать runable jar для использования libc libc для зависимостей.
- 15. Укажите, какая версия символов доступна для ссылки (в libc)?
- 16. Предыдущая версия Z3 для linux
- 17. Версия приложения Selector реализация
- 18. Где определена _write libc libc libc?
- 19. CMake: связывание сборки с libc на Linux
- 20. Сколько памяти Linux дал malloc()?
- 21. Реализация malloc с gcc в проблемах arm7: malloc return NULL
- 22. Malloc, строковые указатели и Valgrind
- 23. ссылка с libc-dbg и libc-prof
- 24. Linux Реализация HANDLE и DCB
- 25. Маленький libc для встроенных систем
- 26. boost.serialization - бесплатная версия и реализация базового класса
- 27. Ссылка GraphicsMagick ++ с clang libC++ на Linux
- 28. Воспроизводить libC++/libstdC++ ABI несовместимость в Linux
- 29. Связывание libC++ с проектом CMake в Linux
- 30. Linux Переполнение буфера Вернуться к LIBC
Для справки, вот исходный код для dlmalloc, используемого Android (git master): https://android.googlesource.com/platform/bionic.git/+/master/libc/upstream-dlmalloc/ – Ilya
Другая ссылка для исходного кода: http://code.metager.de/source/xref/android/4.4/bionic/libc/upstream-dlmalloc/ (5 Этот код импортируется из: ftp: // g.oswego.edu/pub/misc/ 6 В настоящее время это версия 2.8.6.). Все еще здесь, в android 6: https://android.googlesource.com/platform/bionic/+/android-6.0.1_r55/libc/upstream-dlmalloc/, но не в android 7: https://android.googlesource.com/ платформа/бионической/+/Android-7.0.0_r27/Libc / – osgx