Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3666902
  • 博文数量: 880
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 6155
  • 用 户 组: 普通用户
  • 注册时间: 2016-11-11 09:12
个人简介

To be a better coder

文章分类

全部博文(880)

文章存档

2022年(5)

2021年(60)

2020年(175)

2019年(207)

2018年(210)

2017年(142)

2016年(81)

分类: LINUX

2019-06-03 15:11:15

一、linux内核、用户空间的内存划分:

如下图:内核空间划分0~3G为用户空间,3~4G为内核空间。详细请参考《Linux用户空间与内核空间


注意:内核地址空间的范围是 0xC0000000 ~ 0xFFFFFFFF 





1、Unable to handle kernel paging request at virtual address 00000000
         =====》越出内核地址空间范围,原因是由于使用空NULL指针
2、Unable to handle kernel paging request at virtual address 20100110
    =====》越出内核地址空间范围,原因是的内存越界导致该指针
     所在内存被破坏了。 接下来的困难是在什么地方这个内存被修改?为什么被修改?
3、Unable to handle kernel paging request at virtual address c074838c
    =====》没有越出内核地址空间范围,为什么也oops?
     这种情况我称之为:试图篡改受限制内存。比如:声明为const的变量!


     还有其它形式的受限制内存吗?
---------------------
作者:zerolity
来源:CSDN
原文:https://blog.csdn.net/zerolity/article/details/78110335
版权声明:本文为博主原创文章,转载请附上博文链接!
阅读(1973) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~