[英]Understand BINDER_VM_SIZE in Android source code
在文件framework/native/libs/binder/ProcessState.cpp
为什么将BINDER_VM_SIZE
设置为1M-8k?
#define BINDER_VM_SIZE ((1*1024*1024) - (4096 *2))
最初不是这个值,您可以从git commit log中找到它的第一个值是
#define BINDER_VM_SIZE (1*1024*1024)
然后有人将此值更改为
#define BINDER_VM_SIZE ((1*1024*1024) - (4096 *2))
带有以下提交消息:
修改活页夹,以请求1M-2页而不是1M。 内核中的后备存储需要一个保护页,因此1M分配碎片内存非常糟糕。 减去几个页面,使其适合于2的幂,则内核可以更有效地利用其虚拟地址空间。
我本人并不完全理解此消息,因此我仅将其粘贴到此处,希望对您有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.