第一章 部署工作环境,千里之行,始于足下
本文最后更新于:1 年前
第一章 部署工作环境,千里之行,始于足下
写在前面
在读ostep的时候就已经萌生了自己写一个os的想法,在网上搜了一下,发现不少人都推荐读一下《操作系统真象还原》这本书,说是跟着这本书可以写一个简单的操作系统,正合我心。今天是7月5日,也是我翻开这本书的第一天,特记录一下此过程。给自己立一个flag,希望在进入8月之前能完整实现,马上又要进行数学建模国赛的集训,所以压力还是非常大,希望能顶住。
还有一点需要说明的是,本专栏不会详细记录制作系统的具体过程,书中和其他人写的博客都记载的非常清楚了,这里只做一个每章的总结,方便复习时回顾。
进入正题吧
首先介绍一下在制作os过程中要使用的编译器:
一个是我们已经非常熟悉的GCC,用来编译C代码,不用再详细说明了;
另一个是汇编语言的编译器NASM,汇编语言是我之前没有系统学习过的,但是既然涉及到底层实现,那么汇编一定是必不可少的,所以我在学习的过程中还会再配套学习它,选用的教材是王爽的《汇编语言》,突然觉得压力陡增。
然后是实验环境的搭建,因为我的主系统是Windows10,所以先在主系统上创建一个虚拟机用来模拟linux系统,这里用的不是书上写的virtualBox,而是目前比较主流的vmware workstation,然后装的ubuntu系统,这里有个小插叙值得分享一下,放在引用里了。
因为之前做ostep的homework和csapp的lab时候就已经接触过linux系统了,当时装的也是比较大众的ubuntu系统,然后读这本书的时候因为怕自己水平不够,所以装的是和作者一样的cent os,但是装完后发现运行过程中出现了不少问题,比如无法联网、安装软件等等,发觉还是ubuntu系统好用一些,加上网上对于cent os教程也比较稀有,所以又装回了ubuntu,这就花费了我大半天的时间。。。
为了实现自主创建操作系统,又在linux里面再装一个虚拟机Bochs,这是一个“PC兼容机模拟器和调试工具”,它貌似是用软件来模拟仿真出计算机的常用外设。
再下载完Bochs之后还要对它进行configure、make、make install三部曲,又是半天。。。
configure设置了一些参数,有bochs的安装目录、打开它的调试器、打开反汇编、启用io接口调试器等等,这些也是后面我们需要的功能。
最后再对安装好的bochs进行配置,这一步需要我们自己创建一个配置文件,我按照书中所写将其命名为bochsrc.disk。这个配置文件设置了一些内容,这里粘一下代码,注释已经给的很详细了。
1 |
|
到这里bochs的配置就完成了,以后运行它就可以直接执行命令bin/bochs即可,在读取配置文件的时候输入bochsrc.disc即可。目前我们运行的时候会弹出一个窗口提示bochs启动时找不到启动盘,所以我们就需要进行下一步,创建一个虚拟硬盘。按照书中操作即可,最终创建了一个名称为hd60M.img的虚拟硬盘。这次运行bochs依然弹出窗口,这一次提示该硬盘不是启动盘。
到这里这一章就戛然而止了,作者给留了一个小悬念。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!