开发一个操作系统(一)

  • Post author:
  • Post category:其他

开发一个操作系统(一)

前言

笔者今年大三,来自沙坡村男子技术学院,在10月初开始打算自己制作一个操作系统,最开始理由很简单,自己想做一个能够运用最高效的代码实现软硬件的结合的programmer,再加之后来班主任评奖学金时候,觉得ACM校赛的一等奖能比自己辛苦5个月参加的IOT比赛的国奖更加有力,于是也更加坚定了制作属于自己OS的决心。目前的打算将OS取名为”AMX”,因为安慕希好喝!


准备工作

环境的搭建:,最好都先安装好(按顺序)

Ubuntu 20.04虚拟机

nasm

GCC

build-essential,xorg-dev,libgtk2.0-dev,libgtk2.0-dev

Bochs 2.6.11


Ubuntu安装

选择使用VM直接进行安装,ISO来源于清华镜像源

这中间还可以安装或者配置一些能够提高编程幸福指数的Tools

1.使用vscode连接本地虚拟机,使得可以在vscode上对终端进行操作

2.下载WinSCP,可以使得自己的电脑与虚拟机进行文件之间的IO


Bochs安装

方案一:

直接在Ubuntu中使用

sudo apt-get install bochs

缺点:无法进行调试

方案二:

自行手动下载

笔者校园网无法进入SourceForge进行下载,于是曲线救国,从直接云服务器端进行下载,然后传回本地

官网地址:http://bochs.sourceforge.net/getcurrent.html

服务器端命令:

!!注意,你解压的位置最好提前选定,或者你要清楚文件在哪

wget http://sourceforge.net/projects/bochs/files/bochs/2.6.11/bochs-2.6.11.tar.gz/download -O bochs.tar.gz
tar -xvfz bochs.tar.gz
cd bochs-2.6.11
./configure --enable-debugger --enable-debugger-gui --enable-disasm --with-x --with-term
make
sudo make install

此处你要注意,有一些软件你需要预先下载好,在准备工作中有提到,

make阶段会有十多秒的等待,如果在某个地方因为报错而终止,很多原因都是因为你没有安装完整的依赖,如果还有其他没有安装的可以先自行百度,然后再使用apt-get命令进行安装


在使用sudo make install指令完成后,你的bochs其实已经安装好了,但是你还需要对它的配置文件进行设置

此处,你可以理解为,bochs通过读懂你写的配置文件,去给你配置相应的环境,所以你的环境其实可以有很多,取决于你的配置文件

文件的名字是可以任意取的,默认你可以设置为bochsrc.txt(要记住名字和文件路径哦!)

配置文件里面的内容,你可以参考

https://blog.csdn.net/wanyongtai/article/details/80414011

这篇文章写得很全面,这里你要注意你需要了解自己软件安装在哪里,已经配置文件中所需要的文件其对应的路径在你本机中是哪个位置!!

这里是我的路径配置,自己也是踩了很多坑,网上大多都是/usr/share/bochs啥的,但是你这还是要结合自身

# 虚拟机内存大小
megs:32

# 对应真实机器的BIOS和VGA BIOS
#这里很重要,找不到的可以直接先全局搜索一下
romimage: file=/home/nishizzma/桌面/bochs/bochs-2.6.11/bios/BIOS-bochs-latest
vgaromimage: file=/home/nishizzma/桌面/bochs/bochs-2.6.11/bios/VGABIOS-lgpl-latest

# 设置bochs使用的磁盘:软盘使用关键字floppya,硬盘使用disk
# 若有多个软盘,可写floppya,floppyb;
#这里的软盘位置要设置对!!
floppya: 1_44="/home/nishizzma/桌面/OSDemo/chapter1/a/a.img", status=inserted


#设定启动磁盘
boot:floppy

# 或者是 boot:disk

#目录信息地址
log:bochsout.txt

#鼠标是否可用
mouse:enabled=0

#键盘快捷键是否可用,使用美国键盘布局(US layout)作为默认值
keyboard:keymap=/home/nishizzma/桌面/bochs/bochs-2.6.11/gui/keymaps/x11-pc-us.map

此时你就已经配置好bochs了,但是你现在还需要验证

自己安装配置文件的位置写入一个软盘,或者生成一个软盘.img文件(后续我会持续更新)


此时,你只需要按下

bochs -p -f bochsrc.txt

注意要在配置文件的路径下哦软盘位置也要对应哦

然后就能看到bochs的界面了!

在这里插入图片描述


参考:

https://blog.csdn.net/wanyongtai/article/details/80414011

https://blog.csdn.net/zhaodedong/article/details/51082128

https://blog.csdn.net/furzoom/article/details/52484413


版权声明:本文为qq_44671752原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。