转载请注明:转自http://blog.csdn.net/gcc_sky
Skyeye简介
Skyeye是国内一项注明的开源项目,旨在模拟常见的嵌入式计算机系统(目前支持基于arm7tdmi的AT91开发板);可在SkyEye上运行uclinux以及uC/OS-II等多种嵌入式操作系统,并对它们进行源码级的分析和测试。
SkyEye的推出具有下面两方面的意义:
首先,通过SkyEye仿真集成环境可以很方便地进入到嵌入式系统软件学习和开发的广阔天地中。尤其对于缺少嵌入式硬件开发环境的用户来说,它将是一个非常有效的学习工具和开发手段。因此,如果您想学习Liunx操作系统或者进行嵌入式系统开发,但苦于没有硬件支持的话,欢迎使用我们的SkyEye仿真环境软件!
另一方面,SkyEye本身作为一个开放式的项目体系,可以划分为多个独立的子项目系统。通过参与SkyEye的各个子项目,与大家共同交流、协作,可以帮助您进一步学习、分析、精通Linux内核,掌握ARM嵌入式CPU编程。
目前SkyEye可以模拟的CPU主要是基于ARM内核的CPU,包括ARM7TDMI,ARM720T,ARM9TDMI,ARM9xx,ARM10xx,StrongARM,XScale等。ARM7/9/10TDMI是ARM系列CPU的基本核心部分,它们不支持MMU/CACHE和一些扩展指令,是ARM CPU基本核。ARM720T、ARM920T、ARM10xx、StrongARM、Xscale是建立在以上ARM CPU核上,并扩展了MMU/CACHE和其它功能。各硬件开发公司可以根据它们的需求在上述CPU核上加上特定的扩展,形成基于各种ARM基本核心的特定CPU,如Atmel91X40和 ep7312,分别扩展了ARM7TDMI和ARM720T的内存控制和各种I/O控制器,简化了开发板的逻辑设计,大大增强了开发板的功能。
目前SkyEye模拟的开发板包括基于Atmel 91X40/AT91RM92 CPU的开发板,基于Crirus Logic ep7312的开发板、基于StrongARM CPU的ADSBITSY开发板,基于XScale PXA250 CPU的LUBBOCK开发板、基于SAMSUNG S3C4510B/S3C44B0 CPU的开发板、基于SHARP LH7A400 CPU的开发板、基于Philip LPC22xx CPU的开发板等。主要模拟了对应各个开发板的串口、时钟、RAM、ROM、LCD、网络芯片等硬件外设。
安装环境
操作系统:Ubuntu 12.04
安装包:skyeye-1.3.5_rc1.tar.bz2 因llvm版本问题,执行“make”时出错
安装包:skyeye-1.3.3_rel.tar.gz
下载链接:http://softlayer-ams.dl.sourceforge.net/project/skyeye/skyeye/skyeye-1.3.3_rc1/skyeye-1.3.3_rel.tar.gz
安装依赖
bill@bill-VirtualBox:~/compile/skyeye$ sudo apt-get install libgtk2.0-dev pkg-config libatk1.0-dev libpango1.0-dev libfreetype6-dev libglib2.0-dev libx11-dev binutils-dev libncurses5-dev libxpm-dev autoconf automake libtool python-dev llvm
安装步骤
bill@bill-VirtualBox:~/compile$ tar zxvf skyeye-1.3.3_rel.tar.gz
bill@bill-VirtualBox:~/compile$ cd skyeye
bill@bill-VirtualBox:~/compile$ ./configure
bill@bill-VirtualBox:~/compile$ make lib; make
bill@bill-VirtualBox:~/compile$ sudo make install_lib
bill@bill-VirtualBox:~/compile$ sudo make install
添加可执行文件搜索路径
bill@bill-VirtualBox:~/compile$ echo "export PATH=/opt/skyeye/bin:$PATH" > ~/.bashrc; source ~/.bashrc
测试skyeye
bill@bill-VirtualBox:~/compile$ cd /opt/skyeye/testsuite/arm_hello
bill@bill-VirtualBox:~/compile$ skyeye_main.py -e arm_hello
运行完后可见到打印信息(图1)和打开的终端窗口(图2):
接下来,将学习一些ARM体系结构和操作系统重要技巧,为自主编写操作系统做准备。