今天第一天着手os,中午开始看《Linux0.01内核分析与操作系统设计》,下午正好师兄在网上,他这个东西已经搞了一段时间了,对开发环境比较熟悉,于是决定冲到他那边请教请教,也免得我自己还要研究半天。
到他那边,讲了一通环境的配置,还给了我们这两天他写的一个启动程序,于是高高兴兴的回到了寝室,搭平台、配环境,也正好用他的代码熟悉一下整个开发工具。环境配置由于暑假研究过一段时间所以很快就搞定了,然后开始将师兄的源文件重新生成镜像文件——c.img。一切看起来都很顺利,但是错误的情况出现了,当我用bochs跑得时候,运行失败了。我首先想到了,环境配置是不是有问题,但一个个试验告诉我——环境配置no problem;之后我又想到了,是不是编译程序有问题,但最后断定也是没问题的;于是我叫telescope试一下,结果问题和我一样,这下我就晕了,一样的环境配置,一样的编译程序,为什么我们这里会出错,师兄就是好的呢?
到晚上8点,实在没办法了,只能暂时作罢,决定到综A看书,以缓解郁闷的情绪。可是心里的这块石头就是放不下,自习一点心情都没有,9点决定回寝,继续——
到了寝室搞了一会还是没结果,这是正好室友在看电影,正郁闷中的我于是也跟着一起看了起来,片子还蛮搞笑,结束之后心情好多了,决定接着研究。这时候发现批处理文件中的有个奇怪的地方(下面加粗的语句),感觉上ld生成的已经是binary文件了,问什么还要去生成一次呢?(这里一些细节还是没弄懂),于是我将这句话去掉