記得很久以前,就開始準(zhǔn)備實(shí)現(xiàn)一個(gè)自己操作系統(tǒng),找了一本《Orange’s 一個(gè)操作系統(tǒng)的實(shí)現(xiàn)》來看。滿懷期待的進(jìn)入最開始章節(jié),環(huán)境搭建篇,足足讓我整了一個(gè)通宵還沒整出Hello World,后來就忘記了要寫操作系統(tǒng)這件事了?,F(xiàn)在拿起這本書,希望堅(jiān)持做下去,并把我自己的編譯器放上去運(yùn)行。同時(shí)我也會(huì)在每個(gè)階段記錄在我的博客上。
環(huán)境搭建在書上有詳細(xì)的介紹,但是這本書已年代久遠(yuǎn),各種工具也更新?lián)Q代多次,使用方法略有區(qū)別,但大致相同。我把過程在此記錄,希望能幫助到有需要的人,以不至于被第一步就困難到。
我的運(yùn)行環(huán)境是Windows8,Linux下我也會(huì)簡略介紹。
Nasm的官方網(wǎng)站:http://sourceforge.net/projects/nasm/。下載完成直接安裝,記住你的安裝文件夾。
Windows下有dd for Windows的工具,下載地址http://www.chrysocome.net/download,找到dd-*(版本號).zip,下載解壓即可使用。
Bochs主頁http://bochs.sourceforge.net/,可直接安裝。
將三個(gè)軟件的安裝位置加入環(huán)境變量中,相信安裝過軟件的都知道如何設(shè)置,這里就不詳細(xì)說明了。
在cmd下輸入
如果指令都正常,我們的準(zhǔn)備工作就完成了,若發(fā)生錯(cuò)誤,有可能是環(huán)境變量設(shè)置問題,可重新檢查一遍。
注意路徑不要搞錯(cuò)。
這里使用bximage,和書中的操作略有不同,注意閱讀一下指令的輸出。
最終a.img生成在cmd的當(dāng)前目錄下,請注意目錄。
我在這一步遇到了問題,試了兩次都沒寫入,后來分析了一下找出了問題所在。
書上的命令為
首先要注意這里的if是指輸入文件,即匯編后的生成文件。a.img是軟盤映像,這里一定要看看這兩個(gè)文件是否在同一路徑和在cmd當(dāng)前目錄中,否則就要加上完整的路徑。其次,當(dāng)輸入完指令后,輸出為
下劃線表示沒有這個(gè)指令,我猜測dd工具已經(jīng)更新掉了這個(gè)命令,所以去掉即可。
我的配置文件是
注意改成自己的路徑即可。
搞定?。?!
聯(lián)系客服