Mac上的mmap可以返回null吗?

时间:2017-09-21 23:02:52

标签: linux macos null posix mmap

Linux manpagePOSIX standard都指定了,只要MAP_FIXED标志未提供,mmap就会保证不会返回内存地址为0.但是,Mac mmap联机帮助页中没有记录此类保证。

我不确定Mac对POSIX的遵守程度有多严格。它的mmap是否提供此保证?

1 个答案:

答案 0 :(得分:2)

macOS符合POSIX标准。事实上,它是certified as officially UNIX-compliant,这意味着POSIX合规。

此外,从macOS的链接器手册页tf.summary.image('input', image_batch, 10)

ld

因此,除非你做了一些非常不寻常的事情来禁用它,否则从地址0开始已经保留了一个或多个页面。因此, -pagezero_size size By default the linker creates an unreadable segment starting at address zero named __PAGEZERO. Its existence will cause a bus error if a NULL pointer is dereferenced. [...] By default on 32-bit architectures the page zero size is 4KB. On 64-bit architectures, the default size is 4GB. [...] 不会在那里分配新页面。