内存管理
CToday
这个作者很懒,什么都没留下…
展开
-
__do_fault分析
1. 收集pagefault handler的相关信息,存入vmf结构体,并调用vma->vm_ops->fault进行缺页处理(完成页面的调入工作),返回的页存储在vmf.page中2. 如果需要写访问,则需要区分私有映射和共享映射。 a. 如果是私有映射,首先调用anon_vma_prepare为vma区域建立一个新的anon_vma实例,并调用alloc_page_v原创 2014-05-09 10:50:42 · 2438 阅读 · 0 评论 -
内核缺页异常处理
在访问内核地址空间时,缺页异常可能被各种条件出发,如下所述:内核本身的程序设计错误导致访问不正确的地址,这个在稳定版本中永远不会发生,在开发版本中偶尔会发生内核通过用户空间传递的参数访问了无效地址访问使用vmalloc分配的区域,触发缺页异常前两种情况是真正的错误,内核必须使用最后的手段---异常修正(exception fixup)机制来进行处理vmalloc的情况是导致缺页原创 2014-05-09 18:14:06 · 2745 阅读 · 0 评论