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

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






原文地址:https://www.cnblogs.com/nickqiao/p/7583339.html