- 主题:mmap缺省是映射到zero pages,写时复制
vector<int>(X)为啥要去主动触发page fault呢?
--
FROM 106.121.132.*
这个构造函数要求vector里的对象都默认构造好。对于整数来说就是清零
【 在 telangpujing (telangpujing) 的大作中提到: 】
: vector<int>(X)为啥要去主动触发page fault呢?
--
FROM 122.238.180.*
mmap不会作映射,第一次读造成pagefault时才映射到zero page。不过这只是linux的行为。
vector调allocator分配内存,和mmap隔了好几层,可能没做这个对特定allocator,特定malloc,特定类型并且内存块大小大于某个值才可做的优化。
【 在 telangpujing 的大作中提到: 】
: vector<int>(X)为啥要去主动触发page fault呢?
--
修改:ilovecpp FROM 18.181.61.*
FROM 101.84.200.*
读并不会产生真正的page fault,写才会
【 在 ilovecpp 的大作中提到: 】
: mmap不会作映射,第一次读造成pagefault时才映射到zero page。不过这只是linux的行为。
: vector调allocator分配内存,和mmap隔了好几层,可能没做这个对特定allocator,特定类型并且内存块大小大于某个值才可做的优化。
--
FROM 106.121.156.*
我只能说,至少对于linux,你理解错了。
【 在 telangpujing 的大作中提到: 】
: 读并不会产生真正的page fault,写才会
--
FROM 101.84.200.*
page如果不在table内,read照样产生page fault.
【 在 telangpujing 的大作中提到: 】
: 读并不会产生真正的page fault,写才会
--
FROM 67.163.48.*
zero page是个特例
【 在 mvtec 的大作中提到: 】
: page如果不在table内,read照样产生page fault.
--
FROM 61.48.128.*
你可以读一下文档
https://www.kernel.org/doc/gorman/html/understand/understand007.html#htoc31
4.6.2节
【 在 telangpujing 的大作中提到: 】
: zero page是个特例
--
FROM 114.86.89.*
你的意思是TLB有个item会固定住zero page index?
哪个CPU支持这个。
【 在 telangpujing 的大作中提到: 】
: zero page是个特例
--
FROM 67.163.48.*