kernel : *** : segfault at 0000000000000011 rip
00000032f8670454 rsp 00
0000004128fd30 error 4
这种信息一般都是由内存访问越界造成的,不管是用户态程序还是内核态程序访问越界都会出core,
并在系统日志里面输出一条这样的信息。这条信息的前面分别是访问越界的程序名,进程ID号,访问越界的地址以及当时进程堆栈地址等信息,比较有用的信息是
最后的error number. 在上面的信息中,error number是4 ,下面详细介绍一下error
number的信息:
在上面的例子中,error number是6, 转成二进制就是110, 即bit2=1, bit1=1, bit0=0,
按照上面的解释,我们可以得出这条信息是由于用户态程序读操作访问越界造成的。
error number是由三个字位组成的,从高到底分别为bit2 bit1和bit0,所以它的取值范围是0~7.
bit2: 值为1表示是用户态程序内存访问越界,值为0表示是内核态程序内存访问越界
bit1: 值为1表示是写操作导致内存访问越界,值为0表示是读操作导致内存访问越界
bit0: 值为1表示没有足够的权限访问非法地址的内容,值为0表示访问的非法地址根本没有对应的页面,也就是无效地址
kernel: segfault at *** rip *** rsp *** error
精选 转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
ERROR: Kernel configuration is invalid.
liunx最简单驱动
linux kernel Ninja 解决方案 -
已解决An error ocurred while starting the kernel
已解决An error ocurred while starting the kernel
python 开发语言 解决方法 Python