首页 > 其他 > 详细

Orange's笔记(1)

时间:2014-07-03 09:08:54      阅读:306      评论:0      收藏:0      [点我收藏+]

第一章

写一个小的引导程序 代码:

 1     org    07c00h
 2     mov    ax,cs
 3     mov    ds,ax
 4     mov     es,ax
 5     call     DispStr
 6     jmp    $
 7 DispStr:
 8     mov    ax,BootMessage
 9     mov    bp,ax
10     mov    cx,16
11     mov    ax,01301h
12     mov    bx,000ch
13     mov    dl,0
14     int    10h
15     ret
16 BootMessage:    db    "Hello, OS World!"
17 times    510-($-$$)    db    0
18 dw    0xaa55

用NASM编译

nasm boot.asm -o boot.bin

安装 bochs

安装环境 :

sudo apt-get install build-essential xorg-dev libgtk2.0-dev

 

在官网下载最新版本 然后安装

 

./configure --enable-debugger --enable-disasm
make
sudo make install

make的时候提示

/usr/bin/ld: gui/libgui.a(gtk_enh_dbg_osdep.o): undefined reference to symbol pthread_create@@GLIBC_2.1
//lib/i386-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make: *** [bochs] 错误 1

解决方法

在makefile的libs中添加如下内容 :

-lz -lrt -lm -lpthread 

利用bximage生成虚拟软盘,将引导扇区写入虚拟软盘:

dd if=boot.bin of=a.img bs=512 conv=notrunc

配置 bochs  然后启动

###############################################################
# Configuration file for Bochs
###############################################################

# how much memory the emulated machine will have
 megs: 32

# filename of ROM images
 romimage: file=/usr/local/share/bochs/BIOS-bochs-latest
 vgaromimage: file=/usr/local/share/bochs/VGABIOS-lgpl-latest

# what disk images will be used
 floppya: 1_44=a.img, status=inserted

# choose the boot disk.
 boot: floppy

# where do we send log messages?
# log: bochsout.txt

# disable the mouse
 mouse: enabled=0

# enable key mapping, using US layout as default.
 keyboard_mapping: enabled=1, map=/usr/local/share/bochs/keymaps/sdl-pc-us.map

 

 在新版bochs中无dump_cpu命令。

Orange's笔记(1),布布扣,bubuko.com

Orange's笔记(1)

原文:http://www.cnblogs.com/Cnforce/p/3818287.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!