开源
内存回收 标签描述

前言     今天来对ltpMM模块的oom01进行源码分析。但是说起OOM机制,就不得不讲一些内存回收方面的知识。     应用程序通过malloc函数申请内存的时候,实际上申请的是虚拟内存,此时并不会分配物理内存。当应用程序读写了虚拟内存时,CPU就会去访问这个虚拟内存,这时会发现这个虚拟内存没有映射到物理内存,CPU就会产生缺页中断,进程会从用户态切换到内核态,并将缺页中断交给内核的PageFaultHandler(缺页中断函数)处理。缺页中断处理函数会看是否有空闲的物理内存,如果有,就直接分配物理内存,并建...