- 博客(3)
- 收藏
- 关注
转载 malloc原理和内存分配
当一个进程发生缺页中断的时候,进程会陷入内核态,执行以下操作: 1、检查要访问的虚拟地址是否合法 2、查找/分配一个物理页 3、填充物理页内容(读取磁盘,或者直接置0,或者啥也不干) 4、建立映射关系(虚拟地址到物理地址) 重新执行发生缺页中断的那条指令 如果第3步,需要读取磁盘,那么这次缺页中断就是majflt,否则就是minflt。 内存分配的原理从操作系统角度来看,进程
2017-04-02 19:01:04 1236
转载 Linux C程序内存泄露检测
对于程序员来说,最痛苦的就是内存的申请与释放。内存泄露也是程序中经常遇到的问题。为了更好的定位内存泄露问题,我们有必要熟悉一些内存泄露的检测工具。今天主要找到了以下四个内存检测工具,使用起来都比较方便。valgrind安装valgrind,执行下列程序#include <stdlib.h>void func() { int *p = malloc(10*sizeof(int)); p
2017-02-12 22:27:41 504
原创 printf函数缓冲区问题
今天本想测试一下僵尸进程,却无意中发现了printf函数的一些问题。我的测试代码如下: #include <stdio.h> #include <unistd.h> #include <stdlib.h> int main(int argc,char *argv[]) { pid_t son; printf("parent pid:%d",getpid()); if((son
2017-01-21 14:34:19 2527
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人