linux系统调用mmap(2)和posix mmap(3)函数有什么区别?如何区分在浏览源代码时使用的是哪一个,因为它们有相同的头file.For细节,见下文。根据Jörg W Mittag的回答,我认为mmap一定是posix函数当我浏览源代码code.But时,我想知道为什么我在使用mmamp(3)函数.I时不需要显式链接到posix库,这意味着编译源代码时不需要额外的链接标志至少,我认为一些posix函数是由linux实现的。#log for "man
/vboxguest/r0drv/linux/memobj-r0drv-linux.c:596:43: error: ‘struct mm_struct’ has no member named ‘mmap_sem/linux/memobj-r0drv-linux.c:1165:33: error: ‘struct mm_struct’ has no member named ‘mmap_sem’; did you/<
一个linux内核的新手问题。mmap手册页说明".. otherwise, it shall return a value of MAP_FAILED and set errno to indicate the error..."
我在/usr/src/linux/mm/mmap.c下查找了mmap的内核代码,但我找不到mmap返回MAP_FAILED的位置。
为什么默认情况下,在cygwin、freebsd和irix6-5上激活mmap缓冲区分配,而在linux上却不激活?参见USE_MMAP_FOR_BUFFERS in emacs/src/config.h。use_mmap_for_buffers in emacs/configure.in.基于mmap的access 难道不是比普通缓冲区分配优越的吗?