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 |