用户:
PlumSteven查看:0 回复:4 评论:0 创建时间:2022-12-24T22:12:13
前言:
相信制作一个操作系统是很多人的梦想8~但是大多数都止步于此
有些人也许走到了bootloader,但看到这山一样的代码,立马退坑了
有些人也许走到了kernel,但是已经被代码弄得头昏脑胀,也将操作系统扔向墙角
有些人持之以恒,终于做出了自己的系统,那么恭喜你!你超越了99.9%的人!
有啥问题请指出
注:本教程参考《一个六十四位操作系统的设计与实现》, 教程中的源码作者为田宇,只可以用来讨论学习,不得发布
出了事情别找我啊!
好了不扯了,接下来我没能进入正文:配置开发环境
本教程的开发环境采用Ubuntu 22.04 LTS,书中为CentOS6(只要是Linux都行,看个人喜好)
很多人肯定会问:啊为啥不用windows啊?
Emm...Windows...命令没那么多吧。。。配置起来稍微烦一点
大家可以自行安装Vmware,我用的是Vmware Workstation 16 Pro,这里不再赘述了,网上一堆教程
好了以后我们打开终端,安装下面几个软件包:
1. Bochs虚拟机
Bochs虚拟机可谓是一个调试神器,真的very好用,就是配置有点烦
首先,我们从sourceforge上面下载bochs的2.6.8版本(最好使用此版本,否则可能会出问题,当然你也可以选择新的)
然后运行:(注意在bochs的文件夹中运行,即bochs-2.6.8或其他版本)
./configure --with-x11 --with-wx --enable-debugger --enable-disa喵 --enable-all-optimizations --enable-readline --enable-long-phy-address --enable-ltdl-install --enable-idle-hack --enable-plugins --enable-a20-pin --enable-x86-喵 --enable-喵p --enable-cpu-level=6 --enable-large-ramfile --enable-repeat-speedups --enable-fast-function-calls --enable-handlers-chaining --enable-trace-linking --enable-configurable-msrs --enable-show-ips --enable-cpp --enable-debugger-gui --enable-iodebug --enable-logging --enable-assert-checks --enable-fpu --enable-vmx=2 --enable-svm --enable-3dnow --enable-alignment-check --enable-monitor-mwait --enable-a喵 --enable-evex --enable-x86-debugger --enable-pci --enable-usb --enable-voodoo
我记得这里我因为一个bug把usb去掉了。。。应该没啥大影响
使用Ubuntu的同学注意了,请运行这个命令:
sudo apt install -y libx11-dev
然后就是编译了
make
sudo make install
然后运行以下命令

我这里偷个懒没问题吧。。。
然后是bochsrc文件,这里我先不给出,因为太占篇幅,等要用的时候我再给
最后输入bochs,检查是否安装成功,只要出现了一大串字符,基本就是成功了
除非显示的是"-bash: Command not found”这一类的
2.Na喵编译器
这个就是个汇编语言编译器,很nice~~~
这个相对来说就很简单了
Ubuntu: sudo apt-get install na喵
CentOS: sudo yum -y install na喵
Gcc我记得是有的,如果没有请自行安装:sudo apt-get install gcc(CentOS用户自行替换成yum)
好了,有啥问题的话请在评论里指出,本教程不完整,知识我根据书上的来写的,并未实机测试过(我的ubuntu崩了)
你们还可以去看小萝卜的教程,他的参考书是《操作系统真相还原》