madvise、fadvise、posix_madvise和posix_fadvise函数的使用
来源:互联网 发布:牛奶倒掉不给穷人知乎 编辑:程序博客网 时间:2024/06/15 19:57
系统调用madvise的作用:建议内核如何使用指定段的内存。函数原型如下:
#include <sys/mman.h>
int madvise(void *addr, size_t length, int advice);
参数advice的取值有如下几种:
MADV_NORMAL
MADV_RANDOM
MADV_SEQUENTIAL
MADV_WILLNEED
MADV_DONTNEED
MADV_REMOVE
2.6.16内核引入。
MADV_DONTFORK
2.6.16内核引入。
MADV_DOFORK
2.6.16内核引入。
MADV_HWPOISON
2.6.32内核引入。
MADV_UNMERGEABLE
2.6.32内核引入。
MADV_MERGEABLE
2.6.32内核引入。
MADV_SOFT_OFFLINE
2.6.33内核引入。
MADV_HUGEPAGE
2.6.38内核引入。
MADV_NOHUGEPAGE
2.6.38内核引入。
MADV_DONTDUMP
3.4内核引入。
MADV_DODUMP
3.4内核引入。
m表示memory,f表示file,因此madvise是针对内存,而fadvise是针对文件。
Posix也有个类似的函数posix_madvise和posix_fadvise:
#include <sys/mman.h>
int posix_madvise(void *addr, size_t len, int advice);
#include <fcntl.h>
int posix_fadvise(int fd, off_t offset, size_t len, int advice);
更多详情请浏览:http://man7.org/linux/man-pages/man2/madvise.2.html,或执行man madvise命令。
- madvise、fadvise、posix_madvise和posix_fadvise函数的使用
- madvise和fadvise的区别
- mmap和madvise的使用
- MMAP和madvise的配套使用
- madvise() 函数
- 使用 madvise()
- posix_fadvise清除缓存的误解和改进措施
- posix_fadvise清除缓存的误解和改进措施
- posix_fadvise
- pgfincore使用posix_fadvise缓存os cache
- madvise()详解
- PostMessage函数和SendMessage函数的使用
- qsort函数和bsearch函数的使用
- BitBlt函数和StretchBlt函数的使用
- qsort函数和bsearch函数的使用
- qsort函数和bsearch函数的使用
- 函数指针和函数引用的使用
- nvl函数和decode函数的使用
- 2014年省赛总结
- ViewPager+Fragment的结合使用
- AutoConfig could not successfully execute the following scripts: afdbprf.sh and adcrobj.sh
- Permutation Sequence
- oracle索引重构
- madvise、fadvise、posix_madvise和posix_fadvise函数的使用
- Jquery学习笔记(2):CSS3圆角详解:border-radius
- 图片放大出现锯齿问题
- document.WebBrowser.ExecWB 报错解决方案
- STL 之队列
- xcode4中的环境变量
- 菜鸟调错(二)——EJB3.0部署消息驱动Bean抛javax.naming.NameNotFoundException异常
- sqlite索引
- 在 MFC Dialog工程中简单添加控制台