基于arm的C++反汇编 qemu-arm环境搭建
来源:互联网 发布:华为手机记录运动数据 编辑:程序博客网 时间:2024/06/05 02:29
看雪高手写了在windows 上基于x86架构的 C++ 反汇编分析,但是没有人弄过在linux下基于arm架构的C++反汇编教程,这里尝试分析下,可以看到不管在win下还是linux下,不管基于x86还是基于arm 都遵循同样的C++标准,内存布局都是一样的。
说下运行环境:
主机Win10-64bit
主机上有一个vmware workstation 12.1
vmware 里 安装一个32bit ubuntu14.04 环境
然后在这个ubuntu14.04 上搭建环境 为了方便这里不再从头编译而是使用网络上现成的二进制工具,参考Architectures/ARM/HowToQemu
1)下载arm-linux交叉编译工具,并且配置环境 arm-none-linux-gnueabi-gcc下载
2)下载 arm-linux 内核镜像 zImage-qemu-versatile-3.0.8-4.fc17.armv5tel
3)安装qemu-arm,这里不再编译,直接使用命令
sudo apt-get install qemu-system-arm
安装完毕即可。
4)制作根文件镜像,本来上面ARM/HowToQemu 给出了文件系统下载地址,可是即便打开SS翻墙也无法下载,无奈只得自己重新制作一个。
安装 ncurses
sudo apt-get install libncurses5-dev libncursesw5-dev
下载最新的busybox,make menuconfig 配置
Busybox Settings ---> Build Options ---> Cross Compiler prefix
按回车填入如下内容:
/opt/toolchain/arm/arm-2014.05/bin/arm-linux-
配置静态编译 busybox
Busybox Settings ---> Build Options ---> Build BusyBox as a static binary (no shared libs)
然后make && make install 就可以在当前目录中会生成“_install”目录。
剩下的工作就和以前博文 linux内核调试环境搭建-2 用busybox搭建 一样,如果觉得制作麻烦,我在dropbox上给出了制作好了的文件系统压缩包,下载下来之后解压到 busybox.img 里面即可。
至此,qemu-arm,zImage-arm,busybox-arm都已经得到。
按照 上面博文链接 中给出的方法创建主机设备,让主机和虚拟机能通信。
脚本启动
$ qemu-system-arm -M versatilepb -kernel zImage-qemu-versatile-3.0.8-4.fc17.armv5tel -hdc busybox.img -append root="0800" -k en-us -net nic -net tap,ifname=tap0,script=no
至此一个基于 qemu 的 arm-linux 虚拟机可以完美的跑起来:
- 基于arm的C++反汇编 qemu-arm环境搭建
- QEMU搭建arm linux环境
- 用qemu搭建基于arm和linux的嵌入式开发环境
- ARM 反汇编的查看
- 基于arm的C++反汇编 函数的工作原理
- 搭建基于busybox和qemu的arm-linux系统
- 基于arm的C++反汇编 基本数据类型
- 基于arm的C++反汇编 结构体和类
- ARM汇编环境搭建-备忘
- 做ARM反汇编练习的环境配置
- 用qemu-system-arm搭建arm11环境
- qemu模拟器搭建arm运行环境
- 基于ubuntu的ARM开发环境搭建
- 搭建qemu arm 虚拟机
- arm反汇编方法
- ARM反汇编学习
- arm反汇编方法
- arm 反汇编基础
- dubbo.xsd下载文件路径
- Max Script|加密写法
- Linux下find命令
- 那一阙词,早已波澜-仓央嘉措
- 二叉搜索树小结
- 基于arm的C++反汇编 qemu-arm环境搭建
- 设计模式(二)适配器模式
- 平凡之路上,请不要后会无期
- WinHttp编程初步心得
- C++重载
- 设置导航栏的标题 背景颜色和字体大小
- 域名解析和cdn 原理
- 数据处理
- python3.4-import方法返回“identifier expected”