Android libc版本和malloc实现
Android平台使用什么libc实现?使用什么 malloc 实现(ptmalloc 或 tcmalloc 或其他)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
Android平台使用什么libc实现?使用什么 malloc 实现(ptmalloc 或 tcmalloc 或其他)?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
libc 是 Bionic , malloc 是 Doug Lea 版本 名为 dlmalloc(启用 USE_LOCKS 以保证线程安全)。
更新:dlmalloc 于 2016 年 1 月被删除: https://github.com/android/platform_bionic/commit /c650447239352d43acc2fd99a8579a85ae0469ab https://sourceforge.net/p /安卓-x86/bionic/ci/0ac0cee0d1ab60a92103a5021e76ec31da2e3234/“合并“删除 dlmalloc”。”
因此,Android 7 使用外部 malloc 实现 jemalloc(来自 FreeBSD/Facebook) - http://jemalloc.net/ 和 https://github .com/jemalloc/jemalloc;代码的 android 变体存在: https://android.googlesource.com/platform/external/ jemalloc/
libc is Bionic and malloc is Doug Lea version named dlmalloc (with USE_LOCKS enabled for thread-safety).
Update: dlmalloc was removed in january 2016: https://github.com/android/platform_bionic/commit/c650447239352d43acc2fd99a8579a85ae0469ab https://sourceforge.net/p/android-x86/bionic/ci/0ac0cee0d1ab60a92103a5021e76ec31da2e3234/ "Merge "Remove dlmalloc.""
So, Android 7 uses external malloc implementation jemalloc (from FreeBSD/Facebook) - http://jemalloc.net/ and https://github.com/jemalloc/jemalloc; android variant of code is there: https://android.googlesource.com/platform/external/jemalloc/