字节 iOS 端 Memory Corruption 探索与实践-吴凯凯.pdf

编号:153227 PDF 57页 22.98MB 下载积分:VIP专享
下载报告请您先登录!

字节 iOS 端 Memory Corruption 探索与实践-吴凯凯.pdf

1、字节 iOS 端 Memory Corruption 探索与实践吴凯凯字节跳动-开发者服务团队我介绍2020年6加字节跳动,直专注在APM向,负责iOS端稳定性监控和优化作;主要技术建设作:崩溃、慢函数、卡死等系统策略崩溃的监控和归因,相关技术及产品泛应在抖、头条、书等业务中Memory Corruption 介绍线下排查具和适性介绍线上排查案和疑难崩溃案例分析总结回顾纲Memory Corruption 定义对不属于的内存进读写,就是memory corruption Use after freeWild PointerUse after scope Uninitialized pointe

2、rGlobal buffer overflowBuffer overflowHeap buffer overflowStack buffer overflowDouble freeOtherInvalid freeMemory Corruption 类型介绍和触发原因 Use after freeWild PointerUse after scope Uninitialized pointerMemory Corruption 类型介绍和触发原因 Use after freeWild PointerUse after scope Uninitialized pointerMemory Corr

3、uption 类型介绍和触发原因 Use after freeWild PointerUse after scope Uninitialized pointerGlobal buffer overflowBuffer overflowHeap buffer overflowStack buffer overflowMemory Corruption 类型介绍和触发原因Memory Corruption 类型介绍和触发原因Double freeOtherInvalid freeMemory Corruption 危害1.对客户端排查不友好。2.会发不可预期为,如写坏了其它业务线的内存,通常会在今

4、后某个时间点发崩溃,并不是写坏这个时间点。所以崩溃堆栈不定是发的原因,有时候,崩溃堆栈甚都是随机的,较难归因。Memory Corruption 介绍线下排查具和适性介绍线上排查案和疑难崩溃案例分析总结回顾纲线下排查具-ZombieZombie 定义 指的是已经释放的 OC 对象。属于Use after free类型内存问题。缺点 1.线下难复现;线上排查困难。2.只适 OC 对象野指针(use after free)导致的内存问题线下排查具-Zombieobject_dealloc_zombie_NSZombie_XXzombie objectany messageexception rep

5、ortClean线下排查具-Address SanitizerClang-fsanitize=addressasan dylib线下排查具-Address Sanitizer 插桩pIsPoisoned(p)Process memoryShadow memory线下排查具-Address Sanitizer 插桩buffernumberStack线下排查具-Address Sanitizer 插桩buffernumberStack线下排查具-Address Sanitizer 插桩Globals线下排查具-Address Sanitizer 运时线下排查具-Address Sanitizer

6、运时线下排查具-Address Sanitizer 缺点缺点 1.开销:内存使量增加2到3倍,代码的速度降低2到5倍。2.对 Overflow 的检测依赖 redzone。3.对 Use-after-free 检测原理是将释放的内存放个隔离的列表中隔离段时间,但是过了隔离时间再使,检测失效。HWASan:ARMv8 寻址只到了低 48 位,所以剩下的 16 位可以拿来做其它事情。HWASan 8bit 来存储块内存区域的标签(tag)。线下排查具Malloc Scribble:申请内存后在内存上填0 xAA,内存释放后在内存上填0 x55Malloc Guard Edges:申请内存的时候在前

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(字节 iOS 端 Memory Corruption 探索与实践-吴凯凯.pdf)为本站 (张5G) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
客服
商务合作
小程序
服务号
折叠