前言
关于自制操作系统,一开始本来是想利用极客时间的操作系统实战45讲来的(为了能够更快完成),然而当自己真正去学的时候才发现这些视频还是比较坑的,最起码对于我来说,首先是代码注释很少,函数,变量命名直接让我看不懂,而且其代码量有两万行,但代码讲的不多,我觉得对于学生党来说还是十分吃力的,在搞了几天后,我毅然决然的选择的操作系统真相还原,目前来看我的选择还是十分明智的,其书上讲的十分详细,也让我真的弄懂了许多。
果然,任何时候都没有捷径可走,脚踏实地才最为稳妥,同时我也大概不会在买啥专栏了,还是书籍更加靠谱啊。
开始部署
去官网下载bochs
bochs下载地址
下载6.8版可能比较好,参考别的博客时都下载这个版本
我自己下载的时候需要挂梯子,所以我就把压缩包放到百度网盘上供大家下载
bochs下载
提取码:gy8j
然后根据书上步骤那样走大概就可以了
我主要提供一些我出现的问题以及解决办法
问题1:
fatal error: X11/Xlib.h: No such file or directory
解决办法:
sudo apt-cache search x11-dev
sudo apt-get install libghc-x11-dev
问题2:
/usr/bin/ld: gui/libgui.a(x.o): undefined reference to symbol 'XSetForeground'
/usr/lib/x86_64-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
解决办法:
//configure文件
./configure \
--prefix=/your_path/bochs \ //填写你想要安装的bochs的地址
--enable-debugger \
--enable-disasm \
--enable-iodebug \
--enable-x86-debugger \
--with-x \
--with-x11 LIBS='-lX11'
应该也是可以通过vi makefile命令去在LIBS中加入这个,之后make and make install就可以安装了
问题3:
在加载了bochsrc.disk后,bochs是一个黑屏,并未出现书中所说。
解决办法
此时bochs处于调试状态,需要在命令行中敲入c才可以继续运行,然后就可以显示了
运行结果