php[6491]: segfault at * rip * rsp * error 6
解决方法:
readelf -s a.out 可以查看符号表,根据rip所指的地址就能找到对应的函数了。
objdump -d a.out > a.s 可以反汇编,不但能找到函数,还能直接定位到指令。
注:本人测试没找到map文件(即a.out),故报错的程序和函数并未找到,有找到的博友可以回复告知操作过程,在此谢过!
另附上老外的原理解释:
- Well the rip pointer tells you the instruction that caused the crash. You need to look it up in a map file.
- In the map file you will have a list of functions and their starting address. When you load the application it is loaded to a base address.
- The rip pointer - the base address gives you the map file address. If you then search through the map file for a function that starts at
- an address slightly lower than your rip pointer and is followed, in the list, by a function with a higher address you have located the function that crashed.
- From there you need to try and identify what went wrong in your code. Its not much fun but it, at least, gives you a starting point.
- Edit: The "segfault at" bit is telling you, i'd wager, that you have dereferenced a NULL pointer. The rsp is the current stack pointer.
- Alas its probably not all that useful. With a memory dump you "may" be able to figure out more accurately where you'd got to in the function
- but it can be really hard to work out, exactly, where you are in an optimised build
转载于:https://blog.51cto.com/xxrenzhe/1185915
php[6491]: segfault at * rip * rsp * error 6相关推荐
- kernel: segfault at *** rip *** rsp *** error
kernel : *** : segfault at 0000000000000011 rip 00000032f8670454 rsp 00 0000004128fd30 error 4 这种信息一 ...
- segfault rip rsp error
原文地址: http://blog.csdn.net/aicon/article/details/6269752 一个后台程序,编译的时候加了 -g -ggdb,也生成了map文件,开了core du ...
- Linux遭遇Segmentation fault
原文地址::http://www.cppblog.com/sleepwom/archive/2012/01/13/164091.html Program terminated with signal ...
- Linux开机启动过程(8):初期中断(缺页中断)和异常处理
内核初始化 第二部分 在原文的基础上添加了5.10.13部分的源码解读. 初期中断和异常处理 在上一个 部分 我们谈到了初期中断初始化.目前我们已经处于解压缩后的Linux内核中了,还有了用于初期启动 ...
- rsp rbp 寄存器用途
概念 在最新的 x86_x64 架构中,通常用 rbp.rsp 这两个寄存器来保存进程栈的状态(需要硬件支持). 其中 rbp 保存的是栈中当前执行函数的基本地址,当前执行函数所有存储在栈上的数据都要 ...
- Linux 段错误详解
1 背景 笔者早年写过一篇:<可恶的"Segmentation faults"之初级总结篇>,网络转载甚多.多年下来,关于段错误的讨论依旧很热烈,该问题也还是很常见.所 ...
- Linux内核深入理解系统调用(1):初始化-入口-处理-退出
Linux内核深入理解系统调用(1):初始化-入口-处理-退出 rtoax 2021年3月 1. Linux 内核系统调用简介 这次提交为 linux内核解密 添加一个新的章节,从标题就可以知道, 这 ...
- Linux内核深入理解中断和异常(2):初步中断处理-中断加载
Linux内核深入理解中断和异常(2):初步中断处理-中断加载 rtoax 2021年3月 1. 总体概览 关于idt_table结构的填充,在5.10.13中流程为: idt_setup_early ...
- Linux内核深入理解中断和异常(1)
Linux内核深入理解中断和异常(1) rtoax 2021年3月 1. 中断介绍 内核中第一个子系统是中断(interrupts). 1.1. 什么是中断? 我们已经在这本书的很多地方听到过 中断( ...
- linux--Segfault详解
linux--Segfault详解 1 简介 1.1 段错误的定义 1.2 痛点 2 知识点 2.1 报错内容 2.2 error number 3 排除步骤(借助汇编) 3.1 日志确定错误类型 3 ...
最新文章
- 测试字符串读取类: TStringReader
- Java相当于C#中的#region
- 【Linux高频命令专题(24)】grep
- VS2015一新建项目就出现未将对象引用设置到对象的实例怎么办?
- 包含Iphlpapi.h 编译错误 error C2065: 'HRASCONN'
- sql查询结果集根据指定条件排序的方法
- 从Linus Torvalds一封发飙的电邮开始谈设备树究竟是棵什么树?
- Js拼接嵌套php代码,分享一个js文件中嵌套php会出错的问题
- linux svn 指定端口号,linux(Ubuntu)搭建Subversion服务器+修改svn端口号
- java中getup用法_你还在 Java 代码中写 set/get 方法?赶快试试这款插件吧!
- 助力数字化运营:商超自动抓单系统
- spring boot2.0.4集成druid,用jmeter并发测试工具调用接口,druid查看监控的结果
- 跳频技术——学习总结(一)
- 免驱无线网卡插到电脑上突然驱动变成瑞昱网卡了无法正常联网
- 揭秘:张国荣葬礼,袁咏仪为何哭到失控?
- 用c语言实现1+2+3+...+n求和
- 弹性盒子 -- flex
- 装修工程施工质量控制工作方法及措施
- cityscapes数据集
- from home edition to professional on windows
热门文章
- bootchart.jar 编译过程
- Android Studio 主题、字体大小的设置
- php mysql 命令行模式_phpstudy(mysql命令行的增删改查)
- 一次Linux驱动升级的问题记录
- 错误使用 eig 输入矩阵包含 nan 或 inf_特斯拉AI主管提醒你神经网络的几大常见错误...
- 局域网打印机怎么连接_怎么连接同事已共享的打印机?
- 1949年-2021年历史县级行政区划分布数据 中国行政村边界数据、乡镇街道边界、行政区划边界
- 尺取法---poj3601
- vue脚手架实现选项卡_从零一步步实现一个前端脚手架
- python中 是什么运算_“是”运算符在Python中做了什么?