Linux下配置汇编编译器NASM和bochs模拟器

作者: QYJAC 2017-01-25 23:54:51

NASM下载:http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D


解压:tar zxvf nasm-2.12.02.tar.gz


进入刚解压的目录


然后执行命令:./configure


make


sudo make install


 


bochs下载:https://sourceforge.net/projects/bochs/files/bochs/2.6.8/


解压:tar zxvf bochs-2.6.8.tar.gz


进入刚解压的目录


然后执行命令:./configure \


--prefix=/your_path/bochs \     指定安装目录


--enable-debugger \


打开bochs自己的调试器


--enable-disasm \ 使bochs支持反汇编


--enable-iodebug \ 启用io接口调试器


--enable-x86-debugger \ 支持x86调试器


--with-x \ 使用x windows


--with-x11 \ 使用x11图形用户接口


make


sudo make install


如果想用GDB调试,将--enable-debugger改为--enable-gdb-stub


 


运行bochs:


安装路径中输入 bin/bochs


按回车载入配置文件 bochsrc.disk


启动时直接载入: bin/bochs -f bochsrc.disk


创建虚拟硬盘工具:bin/bximage


 


NASM简单用法:


nasm -f 指定输出文件的格式


nasm -o指定输出可执行文件的名称


编译mbr:nasm -o mbr.bin mbr.S


 


Linux磁盘操作命令dd:


if=FILE 此项指定要读取的文件


of=FILE 此项指定把数据输出到哪个文件


bs=BYTES 此项指定块的大小 dd是以块的单位来进行IO操作的


count=BLOCKS 此项指定拷贝的块数


seek=BLOCKS 此项指定把块输出到文件时想要跳过多少块


conv=CONVS 此项指定如何转换文件 追加数据时使用notrunc方式


 


将mbr写入硬盘:


dd if=/your_path/mbr.bin of=/your_path/bochs/hd60M.img bs=512 count=1 conv=notrunc


 


本文永久更新地址:http://www.linuxdiyf.com/linux/27928.html

相关资讯