基于Bochs安装GeekOs

开发环境介绍

1.Ubuntu-16.04
2.boch2.6.11 下载地址: http://sourceforge.net/projects/bochs/files/bochs/2.6.11/
3.nasm-2.08.01 下载地址: http://www.nasm.us/pub/nasm/releasebuilds/2.08.01/
4.GeekOs0.3.0 下载地址:
https://sourceforge.net/projects/geekos/files/

安装bochs

前往bochs的官网下载bochs的压缩包,这里,我们选用bochs-2.6.11.tar.gz
下载完之后,进入下载的目录,对安装包进行解压

tar -zxvf bochs-2.6.11.tar.gz

解压之后,安装相关依赖环境

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

配置参数打开调试功能开关

./configure --enable-debugger --enable-disasm

编译

sudo make

安装

sudo make install 

配置bochs

首先,在终端输入

bochs -help cpu

查看系统支持的cpu配置
基于Bochs安装GeekOs_第1张图片
接着,对bochsrc文件进行修改。

sudo gedit .bochsrc

在文件的第190行,更改cpu的model属性为上述cpu支持的值,例如,可以更改为:cpu: model=bx_generic
在这里插入图片描述
再去往文件的第926行,将该行注释掉
在这里插入图片描述
之后,输入bochs命令进行测试,可以看到bochs已经能够正常运行。
基于Bochs安装GeekOs_第2张图片

安装nasm

这里我们进入官网,选择nasm-2.08.01.tar.gz,进行下载
下载完之后解压,进入nasm-2.08.01 目录,依次输入以下命令:

./configure
sudo make
sudo make install

这里,我们便安装好了nasm

编译GeekOs

首先我们前往它年久失修的官网,下载源代码包,下载完后使用unzip命令进行解压
之后,进入目录

cd geekos-0.3.0/src/project0/build

对Makefile文件的第148行,149行进行如下更改
为第148行增加编译选项 -fno-stack-protector
删除第149行的 -Werror 参数
在这里插入图片描述
接着,再分别为100行,106行加上 -m32参数
为第109行加上 -m elf_i386 参数
完成后的效果如下所示:
基于Bochs安装GeekOs_第3张图片
之后,再依次输入以下命令

sudo make clean
sudo make depend
sudo make

可以发现,编译成功了。使用 ls -a命令进行检查,发现存在fd.img以及.bochsrc文件。

这时,使用sudo gedit .bochsrc修改配置文件

# An example .bochsrc file.
# You will need to edit these lines to reflect your system.

vgaromimage: file= /usr/share/bochs/VGABIOS-lgpl-latest
romimage: file=$BXSHARE/BIOS-bochs-latest
megs: 8
boot: a
floppya: 1_44=fd.img, status="inserted"
log: ./bochs.out
mouse: enabled="0"
private_colormap: enabled="0"
# Uncomment this to write all bochs debugging messages to
# bochs.out.  This produces a lot of output, but can be very
# useful for debugging the kernel.

保存并退出gedit。
最后,输入bochs,测试GeekOs系统
基于Bochs安装GeekOs_第4张图片
可见,GeekOs系统已经被成功安装。

参考:
bochs的安装
Ubuntu18.04安装配置Bochs2.6.9与编译运行GeekOS
GeekOS: 一、构建基于Ubuntu9.04的实验环境

你可能感兴趣的:(笔记,操作系统)