美文网首页
LLDB 调试指令集

LLDB 调试指令集

作者: Jniying | 来源:发表于2020-06-20 22:48 被阅读0次

目录

  • 发展史
  • LLDB如何实现调试真机
  • 常用的LLDB指令
    • 1.help
    • 2.expression
    • 3.thread backtrace
    • 4.thread return
    • 5.frame variable
    • 6.当前断点执行
    • 7.breakpoint
    • 8.watchpoint
    • 9.image

发展史

LLDB 的前身是 GDB

LLDB如何实现调试真机

当xcode识别到iPhone手机设备的时候,会自动把debugserver安装到iPhone 上面,然后就可以通过LLDB动态调试手机上的App。

LLDB.png

常用的LLDB指令

指令格式:<command> [<subcommand> [<subcommand>...]] <action> [-options [option�value]] [argument [argument...]]
<命令> [<子命令>] <命令操作>[命令选项][命令参数]

1.查看帮助help命令使用

help register
help register read

2.执行一个表达式expression--printpcall指令的效果一样
expression [self viewDidLoad]
p [self viewDidLoad]
call [self viewDidLoad]
3.打印线程调用堆栈信息:thread backtrace或者bt
4.让函数直接返回值,不执行函数剩下的代码 :thread return
5.当前栈的的变量: frame variable
6.当前断点执行

thread continuecontinue c: 程序继续运行
thread step-over next n :单步运行,把子函数当作整体一步
thread step-in step s :单步运行,有子函数进入子函数运行
thread step-out finish :直接执行完当前函数所有代码
thread step-inst-over nexti ni :汇编级单步运行,把子函数当作整体一步
thread step-inst stepi si :汇编级单步运行,有子函数进入子函数运行

7.设置断点

breakpoint set -a + 函数地址
breakpoint set -n + 函数名

breakpoint set -n test
breakpoint set  -n touchesBegan:withEvent:
breakpoint set -n "-[ViewControllertouchesBegan:withEvent:]"

breakpoint list 列出所有断点 (带编号)
breakpoint disable+ 编号 :禁用
breakpoint enable+ 编号 :启用
breakpoint delete+ 编号 :删除

8.设置内存断点

内存发生改变的时候触发
watchpoint set variable + 变量

watchpoint set variable self->age

watchpoint set expression + 地址

watchpoint set variable &(self->age)

watchpoint list
watchpoint disable + 编号
watchpoint enable + 编号
watchpoint delete + 编号
watchpoint command add + 编号
watchpoint command list + 编号
watchpoint command delete + 编号

9.查询模块

image list 查看当前模块寄存器的信息
image lookup -t + 类型: 查找某个类型的信息
image lookup -a+ 地址
image lookup -n+ 符号或函数

相关文章

  • iOS调试之chisel

    iOS调试之chisel Chisel 是一个 LLDB 指令集合,用户辅助 iOS 应用差错。 安装 chise...

  • LLDB 调试指令集

    目录 发展史 LLDB如何实现调试真机 常用的LLDB指令1.help2.expression3.thread b...

  • Chisel的安装以及使用

    iOS调试之chisel Chisel 是一个 LLDB 指令集合,用户辅助 iOS 应用差错。 安装 1.chi...

  • [译]用 LLDB 调试 Swift 代码

    [译]用 LLDB 调试 Swift 代码 [译]用 LLDB 调试 Swift 代码

  • android jni开放中的一些知识点

    lldb调试查看内存 lldb调试更多使用方式问百度

  • iOS LLDB调试

    掌握以下lldb命令,够用. ### LLDB调试总结 eNSString*$str=@"test"...

  • iOS调试工具 - LLDB

    LLDB LLDB是 Xcode 默认的调试工具, 支持调试 c, c++, Objective-C.支持的调试平...

  • iOS之LLDB常用调试命令

    iOS之LLDB常用调试命令熟练使用 LLDB,让你调试事半功倍使用facebook开源的Chisel调试Home...

  • ptrace反调试

    一、iOS调试 iOS调试里面非常常见的就是LLDB调试,LLDB是Xcode自带的调试工具,既可以本地调试Mac...

  • LLDB 调试学习

    LLDB调试必看:与调试器共舞 - LLDB 的华尔兹Facebook/Chisel 安装chisel: Alte...

网友评论

      本文标题:LLDB 调试指令集

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