通过bpf确认内存申请
1 #include<stdio.h>
2 #include<string.h>
3 int main(void)
4 {
5 int len = 1024*1024;
6 char *buf;
7 printf("pid=%d\n", getpid());
8 getchar();
9 malloc(len);
10 printf("malloc end\n");
11 getchar();
12
13 memset(buf, 0, len);
14 return 0;
15 }
1)执行malloc时,只申请了一个页,很明显是c库本身用来管理内存的,不是真正的申请内存
2)当继续执行时,才会真正的申请内存,即只有真正访问产生缺页才会去申请内存