美文网首页
从信号量看崩溃原因

从信号量看崩溃原因

作者: yyggzc521 | 来源:发表于2021-12-16 00:37 被阅读0次

SIGTRAP

数组越界、类型转换失败、强制解包等引起的崩溃都属于这一种。
Apple官方资料-解决 Swift 运行时错误导致的崩溃 中有提到

SIGSEGV

段错误
当程序试图访问不被允许访问的内存区域(比如,尝试写一块属于操作系统的内存),或以错误的类型访问内存区域(比如,尝试写一块只读内存)

SIGSEGV在很多时候是由于指针越界引起的,但并不是所有的指针越界都会引发SIGSEGV。

SIGABRT

由调用abort函数产生,进程非正常退出

导致SIGABRT的原因,可能有以下几个

  • 多次free导致
  • 执行abort、assert函数

SIGILL

  • 将不正确的数据段写入代码段
  • 指令集的演进
  • 工具链BUG
  • 访存对齐或浮点数格式问题
  • 错误排查方法

SIGBUS

由于进程引起了一个总线错误

原因:

  • 对齐的读或写

SIGFPE

当一个进程执行了一个错误的算术操作时发送给它的信号
原因:
1.FPE_INTDIV 整数除以零
2.FPE_INTOVF 整数上溢
3.FPE_FLTDIV 浮点除以零
4.FPE_FLTOVF 浮点上溢
5.FPE_FLTUND 浮点下溢
6.FPE_FLTRES 浮点结果不准
7.FPE_FLTINV 无效浮点操作
8.FPE_FLTSUB 浮点下标越界


Apple官方资料-使用崩溃报告和设备日志诊断问题
Apple官方资料-了解崩溃报告中的异常类型

信号量崩溃原因初探

相关文章

  • 从信号量看崩溃原因

    SIGTRAP 数组越界、类型转换失败、强制解包等引起的崩溃都属于这一种。Apple官方资料-解决 Swift 运...

  • 信号量崩溃原因初探

    信号量崩溃原因初探 1.SIGSEGV 1.什么是段错误(segmentation fault) wiki上的是这...

  • app 崩溃场景测试

    为什么移动App经常崩溃?App崩溃有几个原因:从平台或环境到开发问题。 一些崩溃原因(排名不分先后) : 设备碎...

  • Mono源码阅读-崩溃机制

    Mono源码阅读-崩溃机制 # 简介 本文主要针对mono源码中关于崩溃信号量处理的相关源码进行阅读和研究,源码涉...

  • xcode14: dyld: Library not loade

    升级xcode14后,运行12.5系统固件以下的iPhone直接崩溃,启动不了。崩溃提示: 看原因是加载libsw...

  • JNI Crash:异常定位与捕获处理

    关键词:JNI Crash,异常检测,信号量捕获 在Android JNI开发中,经常会遇到JNI崩溃的问题,尤其...

  • KVO崩溃原因

    实现kvo的时候,如果没有实现 - (void)observeValueForKeyPath:(NSString ...

  • 崩溃的原因

    昨天一客户跟我反馈问题:你给我的Demo崩溃了,为什么? 我问,哪里崩溃了? 客户:运行就崩溃了。 我问:我这里不...

  • 记录一次Skia JNI 库的崩溃

    发现问题 在白板应用中发现出现偶发的崩溃, 堆栈上看,崩溃发生在skia native层,但是问题原因未知 问题代...

  • iOS 从 Crash 信息中查找崩溃原因

    作者:INA 2015.02.5 1.制作崩溃代码以及添加 BugHD SDK 2.打包程序,并安装到手机上...

网友评论

      本文标题:从信号量看崩溃原因

      本文链接:https://www.haomeiwen.com/subject/ysrmfrtx.html