首先是心理准备。
我是这样打算的:以写出自己的操作系统作为整条线索。在这条线上,肯定会遇到很多困难,但是,“逢山开路,遇水架桥”,碰到问题解决问题就是了。只要本着这个信念,什么问题解决不了啊,何况一个区区的操作系统,对吧。
好了,终于可以真正开始自己的操作系统之旅了
先讲一下我的计算机的配置环境:双操作系统:win7和linux,win7里装了一个虚拟机,虚拟机里装的XP。linux是ubuntu发行版。
再讲一下我的配置:自学了一点单片机,所以对底层的东西不是特别害怕;自学汇编,因为比较懒,所以耗费了比较长的时间;自学了一点C语言,只懂一点皮毛。对于操作系统起步,这些就够了。还是那个原则:遇到困难解决困难。以后要用到的东西以后再学,最重要的是先上路。
参考书《Orange's 一个操作系统的实现》(自己动手写操作系统(第2版))
软盘???!!!这次真没有……
上来就要软盘,在这个年代去哪里能搞到软盘呢?软盘搞不到那就用U盘吧。
怎么把引导写进U盘呢?
插入U盘,先把路径转到boot.bin所在的文件夹下,然后在linux命令行中敲入下面的代码:
sudo dd if=boot.bin of=/dev/sdb bs=512 count=1
注意:代码一定要写对,那个字符串的长度一定要数对,千万别忘了里面的空格哦。
就这么简单的一行代码,也就是把书上的 fd0 替换成 sdb 就行了。
这是后来才找到的解决办法,我一开始也不知道。刚开始用的方法比较笨,就是在XP里用winHex软件把boot.bin的二进制代码复制到U盘的mbr里去,就OK了。如果winHex是在win7里,要以管理员身份运行。
万事开头难,但好的开始就等于成功的一半。不要怕,始终仅记:“逢山开路,遇水架桥”……