SkyEye是一個開源軟件(opensource software)項目,中文名字是“天目”。SkyEye的目標是在通用的Linux和Windows平臺實現一個仿真集成開發環境,模擬常見的嵌入式計算機系統(目前支持基于ARM7tdmi的AT91開發板);可在SkyEye上運行uclinux以及uC/OS-II等多種嵌入式操作系統,并對它們進行源碼級的分析和測試。SkyEye的推出具有下面兩方面的意義:
首先,通過SkyEye仿真集成環境可以很方便地進入到嵌入式系統軟件學習和開發的廣闊天地中。尤其對于缺少嵌入式硬件開發環境的用戶來說,它將是一個非常有效的學習工具和開發手段。因此,如果您想學習Liunx操作系統或者進行嵌入式系統開發,但苦于沒有硬件支持的話,歡迎使用SkyEye仿真軟件!
1 在linux 下安裝skyeye
1.1 從源代碼進行安裝skyeye
下載最新的skyeye-v0.x.x.tar.bz2源碼包,目前最新的為skyeye-v0.4.7.tar.bz2
解開skyeye-v0.x.x.tar.bz2 :
tar jxf skyeye-v0.x.x.tar.bz2
進入解壓后的skyeye目錄,按照SkyEye.README介紹的步驟做configure,make,make install
cd skyeye
./configure --target=arm-elf --prefix=/usr/local --without-gtk-prefix --without-gtk-exec-prefix --disable-gtktest
make
make install
如果一切正常,則在/usr/local/bin目錄下,有一個執行文件skyeye
注意:
需要指出的是,在mandrake8.2環境中,make 時會有error,不過不是什么大問題,
error:display.c->tcap.h->termcap.h:no such file or directory
在本機/usr/include下find一下,termcap.h頭文件在/usr/include/ncurses目錄下,
將termcap.h中的改成
重新執行make就ok了。
執行make install命令后,skyeye默認安裝在/usr/local/bin/目錄下,你可以通過改configure命令參數prefix來改變安裝路徑。
1.2 直接安裝編譯好的skyeye
下載最新的skyeye執行代碼skyeye-0.x.x-redhat9.0.bin (目前只提供了在redhat9下編譯好的代碼),目前最新的版本為 skyeye-0.4.7-redhat9.0.bin
把下載的skyeye-0.4.7-redhat9.0.bin 移動到/usr/local/bin下,并改名為skyeye,改變skyeye的屬性:
mv skyeye-0.4.7-redhat9.0.bin /usr/local/bin/skyeye
chmod 755 /usr/local/bin/skyeye
2 安裝arm-elf交叉編譯器 (用于編譯ucosii4skyeye 和 uclinux4skyeye)
下載arm-elf-tools-20030314.sh 位于 ftp://166.111.68.183/pub/embed/uclinux/soft/tools/arm目錄下,或到www.uclinux.org處下載
改變文件屬性,并執行:
chmod 755 arm-elf-tools-20030314.sh
./arm-elf-tools-20030314.sh
結束后,arm-elf-gcc/gdb....工具會安裝到/usr/local/bin下
3 安裝 ucosii for skyeye
3.1 從源碼安裝
下載ucosii for skyeye源代碼,目前的最新版本源代碼為ucosii4skyeye-v1.8.2.tgz
解壓文件:
tar zxf ucosii4skyeye-vx.x.x.tgz
進入解壓生成的目錄下,編譯ucosii for skyeye:
cd ucosii4skyeye
make config
make dep
make
結束后,則生成五個sample的執行文件,分別位于ucosii4skyeye/samples/對應的應用名目錄下。
3.2 直接下載編譯好的cuosii for SkyEye
目前最新的版本為ucosii4skyeye-binary-v1.8.tgz
解壓文件:
tar zxf ucosii4skyeye-binary-v1.8.2.tgz
4 調試 ucosii for skyeye
在一個存在 skyeye.conf和*.elf文件(設為simple_test.elf)的目錄下,執行:
skyeye simple_test.elf
(skyeye) target sim
(skyeye) load
(skyeye) run
就可以看到程序運行的情況
5 編譯并運行uClinux-dist-20020927.tar.gz
運行環境:redhat9
前提:安裝了 ARM-elf-tools工具
以uClinux-dist-20020927.tar.gz為例。位于 ftp://166.111.68.183/pub/embed/uclinux/soft/目錄下,或到www.uclinux.org處下載
將uClinux-dist-20020927.tar.gz下載并解開,比如解開在/usr/src/uclinux-dist/下,然后在/usr/src/uclinux-dist/目錄下執行如下命令:
tar zxf uClinux-dist-20020927.tar.gz
cd uClinux-dist
在圖形方式下可用命令 make xconfig 或 在命令行方式下可用命令 make menuconfig
在vendor/product中選擇GDB/armulator,kernel版本選擇2.4,save and exit.
這時在/usr/src/uclinux-dist/linux-2.4.x目錄下生成linux文件
如果想一步生成帶調試信息的linux kernel執行文件和linux kenel 執行文件映像和磁盤映像文件romfs.img
可簡單是運行命令
make dep
make
就行了。可查看/usr/src/uclinux-dist/images/下是否有文件 romfs.img等
在/usr/src/uclinux-dist/linux-2.4.x目錄下生成linux的elf格式的內核執行文件
-------------------------------------------------------------------------------------------------------------------------------------------------
在 uclinux-dist 目錄下建立仿真AT91的skyeye配置文件 skyeye.conf,內容如下:
cpu: arm7tdmi
mach: at91
mem_bank: map="M", type="RW", addr="0x00000000", size="0x00004000"
mem_bank: map="M", type="RW", addr="0x01000000", size="0x00400000"
mem_bank: map="M", type="R", addr="0x01400000", size="0x00400000", file="images/romfs".img
mem_bank: map="M", type="RW", addr="0x02000000", size="0x00400000"
mem_bank: map="M", type="RW", addr="0x02400000", size="0x00008000"
mem_bank: map="M", type="RW", addr="0x04000000", size="0x00400000"
mem_bank: map="I", type="RW", addr="0xf0000000", size="0x10000000"
這個時候就可以用skyeye來調試運行kernel了,在/usr/src/uclinux-dist執行如下命令:
skyeye linux-2.4.x/linux
(skyeye)target sim
(skyeye)load
(skyeye)run
kernel start.....
注意:
要在 skyeye.conf 所在目錄下執行skyeye。
6 下載測試軟件集合
目前最新版本的測試軟件集合為:
skyeye-binary-testsuits-in-rh9-2003-09-21.tar.bz2
到 ftp:/166.111.68.183/pub/embed/skyeye/binary/下載
解壓并測試:
tar jxf skyeye-binary-testsuits-in-rh9-2003-09-21.tar.bz2
cd test
評論
查看更多