早些發布的文章“收藏:學習使用SkyEye模擬”來自於http://www.linuxsir.org/bbs中的“嵌入式Linux討論區”板塊,是版主renbagshoes的大作,特此聲明。
早上大概9點半看見了這篇置頂的文章,看了之後就來了興趣,因為很想學習uClinux卻苦於手邊沒有一個可以運行uClinux的嵌入式開發平台,而SkyEye這個開源項目可以用來對uClinux進行原始碼級的純軟體模擬,可以在沒有硬體環境支援下學習uClinux作業系統的原理和程式設計。我在10G的舊硬碟上已經安裝好了Redhat Linux 9,馬上開始!
按照文章中介紹的步驟一步一步的來,基本上就可以了。
需要說明的是:
1)我使用的作業系統平台是Redhat Linux 9,而不是原文中的FC1;
2)我下載的是最新版本的skyeye-0.86.tar.bz2和skyeye-binary-testutils-1.1.0.tar.bz2,而不是原文中的老版本;
3)我只是做完了原文中的前6個步驟,就是到“執行你的hello程式”為止,後面的步驟暫時沒有試過(先把前面的吃透吧-_-!);
4)我對原文中第6步的注釋(以下紅色部分引自原文,注釋為黑色):
6、執行你的hello程式
這裡,我們將藉助genromfs這個小工具來完成測試,這個工具就是你在安裝交叉編譯器時產生的,你可以直接使用它。
到http://gro.clinux.org/projects/skye...0.4.tar.bz2包:
tar jxvf skyeye-binary-testutils-1.0.4.tar.bz2 //我下載的是最新版的,版本號碼1.1.0
cd testsuits/at91/uclinux2(當然你還可以用別的)
mkdir romfs(建一個目錄,後面用) //執行這條語句是在上面的uclinux2目錄下
mount -o loop boot.rom /mnt/xxx //還是在uclinux2目錄下
cp -r /mnt/xxx/* romfs //xxx目錄是自己手工在/mnt下用mkdir xxx建立的
另外,把你編譯好的可執行程式拷貝到/romfs/bin目錄裡,這裡就是hello了!
genromfs -f boot.rom -d romfs/ //還是在uclinux2目錄下
註:可以用genromf -h來獲得協助!
OK!執行下面的命令:
skyeye linux
(skyeye)target sim //(skyeye)是在運行了skyeye linux命令後出現的命令列提示符
(skyeye)load
(skyeye)run //啟動uClinux
kernel start.....
很熟悉了吧。。。
cd /bin
hello
可以看到結果了嗎?
其實到了這一步,你就可以開發自己的程式了!