Phypin Debug 0.10.0
PhypinDebug:QEMUVM调试工具的最新进展PhypinDebug是一款专为QEMU虚拟机设计的调试工具,旨在为开发者提供高效、便捷的调试体验。最新版本0.10.0于2024年8月19日发布,带来了一系列重要的更新和优化,进一步提升了用户的调试效率。最新版本更新:0.10.0(发布时间:2024-08-19)新增功能:反汇编视图:断开连接时将关闭所有反汇编视图当PC处于缺页状态时,
分类: 下载/工具 · 工具软件 | 来源: 点击进入 | 版本: 0.10.0 |
日期: 2025-07-18 | 人气: | 大小: |
标签: debuggers keybindings |
功能介绍
Phypin Debug:QEMU VM调试工具的最新进展
Phypin Debug是一款专为QEMU虚拟机设计的调试工具,旨在为开发者提供高效、便捷的调试体验。最新版本0.10.0于2024年8月19日发布,带来了一系列重要的更新和优化,进一步提升了用户的调试效率。
最新版本更新:
0.10.0(发布时间:2024-08-19)
新增功能:
反汇编视图:
- 断开连接时将关闭所有反汇编视图
- 当PC处于缺页状态时,再次暂停虚拟机将刷新反汇编视图
- 当Load Snapshot后进程不存在时会在UI上提示
VM视图:
- VM Snapshots行增加右键菜单
- VM视图新增Rename VM右键菜单,并优化VM视图的右键菜单顺序与名称
- SSH连接时如果虚拟机处理暂停状态,则提示用户是否要继续运行
- IPython连接时不需要进入Debug Session
Stop Point视图:
- 增加Disable/Enable/Remove All右键菜单
- 关闭连接后也关闭Stop Point的Editor
- Stop Point新增Create and Again按钮,可连续创建多个Stop Point
修复问题:
- 修复VM右键菜单Create Snapshot在未连接状态报错的问题
- 修复断开连接后进程视图未清空数据的问题
历史版本更新:
0.9.0(发布时间:2024-02-01)
新增功能:
- Stop Point列表为空时,显示大的创建按钮
- Process View的进程筛选可以使用ttbr0_el2的寄存器值作为PGD筛选
- 缺页时stepOver将会继续在当前PC Stop
修复问题:
- 修复vm instance移除bug
- 禁用调试变量区域设置寄存器值选项
- 修复parse struct bug
- 修复进程筛选时按ESC会导致已有条件清除的问题
其他:
- hexview在VM running状态打开时,增加dialog提示
- command控制Phypin docker image显示管理
0.8.0(发布时间:2024-01-25)
新增功能:
- 内存视图添加内存修改功能
- 容器关联vminstance名称
修复问题:
- 修复快照bug
- 修复jupyter notebook print失败问题
- 修复vm添加失败bug
0.7.0(发布时间:2023-12-21)
新增功能:
Stop Point:
- 新建Stop Point使用Editor Panel打开
- StopPoints View增加Welcome内容
- 支持StopPoint: ProcessSwitch
hexview开发:
- hexview选中内存,直接以该起始位置后8位的内存内容按大小端解析成为新地址进行跳转
- hexview添加按c结构体自动解析内存功能
- 增加配置内存字符展示的编码格式
- 增加选中bytes转不同格式字符串
- 搜索内存
- 增加配置项,配置系统大小端,解内存类型
- 搜索快捷键
- 删除断点
- 支持以大端方式Copy Hex
Image视图:
- 支持重新创建VM对象,因为有时候用户可能会主动删除VM
- Copy Debug Address响应一个URL
- Restart Container后端口有变化,应该重新创建VM对象
修复问题:
- hexview: 跳转失灵,出现webview disposed
- 修复调试器处于停止状态导致VSCode未显示Variable、Call Stack的问题
- 修复VM视图当前连接的VM在断开连接后依然显示绿色圆点的问题
0.6.0(发布时间:2023-11-06)
新增功能:
- 变量视图增加右键菜单:Open in Disassembly View
- 优化进程筛选无结果的展示和交互,避免误解
- Stop Points支持添加connect、sendmmsg System Call
修复问题:
- 未连接状态下VM列表展开时报错的问题
- 在未打开反汇编视图时,打开它不会定位到目标地址上的问题
- 新版VSCode下范围断点的结束位置样式错乱问题
- 二进制视图在新版VSCode上顶部栏未对齐的问题
- 断开连接时进程视图报错的问题
0.5.0(发布时间:2023-10-18)
新增功能:
反汇编视图:
- 支持修改指令(右键选择Edit Memory)
VM视图:
- 创建快照时总是刷新一下以显示进度,避免手动刷新的额外操作
Processes视图:
- 支持筛选,可使用JavaScript的正则表达式语法,还可以用
代表当前进程
- 支持筛选,可使用JavaScript的正则表达式语法,还可以用
Stop Point视图:
- 移除File Content Stop Point,其功能可以通过System Call write Stop Point实现
- System Call write可以不填pattern
其他:
- 状态栏增加虚拟机当前每秒运行指令数(IPS)。仅在运行态展示,虚拟机暂停时不展示。
修复问题:
- 反汇编视图:
- 重新打开反汇编视图存在未正确定位到上次跳转位置的情况
0.4.0(发布时间:2023-09-22)
新增功能:
调试:
- 完整支持Step Out、Step Over功能
Stop Point:
- 新增Stop Points Panel,支持在匹配文件内容、切换特定进程、发生System Call调用时自动暂停虚拟机
- File Content:用于监听文件内容匹配,通常作用于某个进程的输出或日志文件
- Process Resume:用于监听进程切换到运行态,通用用于进程在首次启动时捕获入口PC
- System Call:用于监听System Call(如write)调用,一般用于日志输出中的关键节点
VM视图:
- VM的Tooltip中增加所有端口信息
- 添加VM时支持填入完整的URL(以phypin://开头)
- Snapshot支持右键复制名称
反汇编视图:
- 支持展示非指令的数据段内容,包括缺页状态下的数据
- 鼠标Hover到指令OP Code,可以悬浮提示指令的二进制表示
- 地址跳转表达式支持有空格的16进制数字
- 支持打开任意进程的反汇编视图,默认跳转到上次记忆的地址处,没有则为0地址
- 每行后面支持显示备注(注释),目前针对数据行会显示其ASCII码
- 支持每一行在指令和数据两种展示方式之间切换
Modules视图:
- 右键菜单"Go Address to Disassembly View"改为"Open in Disassembly View",并修复其功能
- 增加右键菜单"Open in Hex View"
Variables视图:
- 寄存器列表增加elr_el1、elr_el2
- 寄存器列表增加currentel、elr_elx、ttbr0_elx、ttbr1_elx、lr(函数返回地址)
- 将pstate中的nzcv单独展示在寄存器列表中
hexview:
- address按照4kb对齐起始地址添加下划线
修复问题:
hexview:
- 复制的功能不改变大小写
反汇编视图:
- 反汇编视图地址跳转使用平滑滚动时,跳转位置存在不精准的情况
- Go to PC后所在行没有高亮
Variables视图:
- 寄存器值存在0xundefined的情况
其他:
- 优化Logo,改为圆角图片
0.3.0(发布时间:2023-08-23)
新增功能:
- Modules视图支持按PC查询其所在的Module(只要在地址范围内)
- VM上右键Copy Address将得到一个完整的URL,如phypin://127.0.0.1:8765?ssh=10022&vnc=5902&jupyterServer=8766&ipyKernelShell=8770&ipyKernelIopub=8771&ipyKernelStdin=8772&ipyKernelControl=8773&ipyKernelHb=8774
修复问题:
- 在反汇编视图里进行地址跳转,有时没有高亮目标地址所在行
其他:
- 降低插件安装包大小
- 增加插件Icon
0.2.0(发布时间:2023-08-21)
新增功能:
- Modules视图在宽度不够时对进程名、路径等进行省略展示,不再折行(保持风格简洁、美观)。对于省略的内容,用户可以鼠标悬浮查看完整内容。
- 新增Command:Set Log Level,可动态调整日志级别
- 新增Command:Clear Phypin Debug Data,可删除所有插件存储的数据,如VM地址、Stop Points等。请谨慎操作,数据不可恢复!
修复问题:
- 断点实心红圈在1080p显示器上,如果放大窗口(Zoom In)会出现中心黑点
0.1.0
新增功能:
- 侧边栏视图:Phypin Image、VM Instances、Processes
- 底部Panel:Modules
- Editor:Disassembly Editor、Hex Editor、Flow Graph Editor
版本声明
本文转载于:https://marketplace.visualstudio.com/items?itemName=phytium-research.vscode-phypin-debug 如有侵犯,请联系study_golang@163.com删除
更多
相关下载
查看更多
课程推荐
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 204次学习
-
- MySQL数据管理之备份恢复案例解析视频教程
- 《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
- 163次学习
-
- MySQL索引优化解决方案
- 本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
- 182次学习
-
- 极客学院Docker视频教程
- Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
- 243次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 128次学习
-
- JavaScript极速入门
- 本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......
- 431次学习
查看更多
相关文章
-
- Golangmap实践及实现原理解析
- 2022-12-28 505浏览
-
- GoLand调式动态执行代码
- 2023-01-13 502浏览
-
- 试了下Golang实现try catch的方法
- 2022-12-27 502浏览
-
- 用Nginx反向代理部署go写的网站。
- 2023-01-17 502浏览
-
- MySQL主从切换的超详细步骤
- 2023-01-01 501浏览
-
- Mysql-普通索引的 change buffer
- 2023-01-25 501浏览