在大O表示法中,我猜想并考虑到所需的内存大小。此外,我们可以假设内存不是懒惰地提交的,因为这会让事情变得复杂。
准确地称为mmap(0, n, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0)
,其中n
是变量。
答案 0 :(得分:1)
在此reference状态下,
MAP_ANONYMOUS将区域初始化为零。
我认为这个过程是O(n)复杂性,但可能更有效:
在某些使用私有匿名mmaps的系统上比使用malloc用于大型块更有效。这不是GNU C库的问题,因为包含的malloc会在适当的位置自动使用mmap。