VMware下uClinux移植以及Skyeye仿真调试详解

  • 格式:pdf
  • 大小:178.36 KB
  • 文档页数:12

|_linux-2.4.x/linux 13.ln –s images/romfs.img boot.rom(链接生成 boot.rom 文件)
七、 启动uclinux内核
1. $cd usr/src/uClinux-dist 2. 新建 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
六、 编译uclinux内核
1. 以 root 登陆 linux 2. 从/mnt/hgfs 下拷贝 uClinux-dist-20030909.tar.gz 到/usr/src 3. $cd usr/src 4. $tar zxvf uClinux-dist-20030909.tar.gz 解压缩 5. $cd usr/src/uClinux-dist 6. 修改 uClinux-dist/vendor/config/armnommu/config.arch 以及 7. uClinux-dist/linux-2.4.x/MakeFile 下的$CROSS_COMPILE 变量 arm-linux改为 arm-elf8. $make menuconfig 9. $make dep 10.$make 11.等待编译完成 12.编译完成生成 uClinux-dist/ |_romfs/ |_images/romfs.img image.bin
3. 4. 5. 6. 7.
运行 VMware 虚拟机 创建一个 linux 的虚拟系统 选择 linux 运行环境为 windows XP professional 输入新创建的虚拟机名称为 RedHat90 虚拟机设置: Memory256M, CDROM 选择 ISO 映像文件: 网络选择网桥 USB 选择自动 声卡选择自动 处理器选择 2 8. Options 设置: 添加 Shared Folders,选择 windows 下可供 linux 访问的目录 9. 安装 linux,选择手动分区: /hda1 50M 挂载/root 目录 /swap 100M 挂载交换分区 /hda2 所有剩余空间挂载 /根目录 10.选择完全安装 linux 11.更换下一张光盘直到安装完成 12.安装 VMware Tools: 运行 Linux 运行虚拟光驱(若安装) 菜单/VM/settings/ CDROM 选择物理盘 G: (或选择虚拟光驱) 菜单/VM/Install VM Tools 以 root 用户登陆 linux $mount /dev/cdrom /mnt (挂载 cdrom 到 mnt 下) 从/mnt/hgfs 下拷贝 VMware-tools-xxxx.rpm 到/usr/bin 运行终端
VMware下uClinux移植以及Skyeye仿真调试详解 姚明君
2009 年 02 月 04 日
VMware 下 uClinux 移植以及 Skyeye 仿真调试详解----------------------------------------------------1 姚明君------------------------------------------------------------------------------------------------------ 1 一、 安装 VMware 虚拟机------------------------------------------------------------------------- 3 二、 安装 Daemon 虚拟光驱---------------------------------------------------------------------- 3 三、 安装 Linux 开发环境----------------------------------------------------------------------- 3 四、 安装 uclinux 编译工具--------------------------------------------------------------------- 4 五、 安装 skyeye 硬件仿真工具---------------------------------------------------------------- 4 六、 编译 uclinux 内核--------------------------------------------------------------------------- 4 七、 启动 uclinux 内核--------------------------------------------------------------------------- 5 八、 加载用户应用程序--------------------------------------------------------------------------- 5 九、 总述--------------------------------------------------------------------------------------------- 6 十、 附录--------------------------------------------------------------------------------------------- 6
一、 安装VMware虚拟机
1. 在 windows 下双击 VMware-workstation-5.5.2-29772,安装虚拟机
二、 安装Daemon虚拟光驱
1. 在 windows 下解压并安装 Daemon Tools Litev.rar
三、 安装Linux 开发环境
2. 运行 Daemon Tools Litev,并选择打开 RedhatLinux9·0DiskISO 文件
3. $skyeye -e linux-2.4.x/linux 4. 见到出现“welcom to uClinux”图标,uClinux 已经启动 5. $Ctrl+c 可以退出 uClinux 回到 linux 虚拟系统
八、 添加用户应用程序
1. 重启 linux 虚拟系统,并以 root 登陆 2. $cd usr/src/uClinux-dist 3. $mkdir hello 4. $cd hello 5. 创建一个 C 文件 hello.c #include <stdio.h> int main(void) { int i; for(i = 0; i < 6; i++){ printf("i = %d ",i); printf("Hello, embedded linux!\n"); } return 0; } 6. arm-elf-gcc –Wl,-elf2flt –o hello hello.c 7. 在 uClinux-dist 目录下创建 romfs 目录 8. 在/mnt 目录下创建 tmp 目录 9. $cd usr/src/uClinux-dist 10.$mount –o loop boot.rom /mnt/tmp 挂载 boot.rom 至/mnt/tmp 下 11.$cp –r /mnt/tmp/* romfs 复制/mnt/tmp 下所有文件至 ro 的移植简单来说就是在 linux 环境下“复制”一个微型的包含有用 户应用程序的 linux,以供在单片机下运行。 2. 方法是 A.复制一个 uClinux 源码作为基础 B.配置和编译一个符合自己硬件系统的 uClinux 内核,生成的 boot.rom 与 linux 有同样的目录结构 C.编制和编译自己的应用程序,生成*.o 文件 D.将*.o 文件复制到 uClinux/romfs/bin 下,重新编译生成 boot.rom,这 个 boot.rom 就是包含有用户应用程序的 uClinux 十、 附录 1. 2. 3. 4. 5. 6. VMware 版本:VMware-workstation-5.5.2-29772 虚拟光驱版本:Daemon Tools Litev.rar linux 版本:RedhatLinux9·0DiskISO uClinux 版本:uClinux-dist-20030909.tar arm 编译工具:arm-elf-tools-20040427.sh skyeye 版本:skyeye-1.2.4_rel.tar.gz
12.复制/hello 下 hello.o 文件至 romfs/bin 下 13.$genromfs –f boot.rom –d romfs/ 重新链接生成 boot.rom 文件 14.$skyeye –e vlinux-2.4.x/linux 运行 uClinux 出现命令行/> 15./>./hello 执行 hello.o 文件 16.显示: i = 0 Hello, embedded linux! i = 1 Hello, embedded linux! i = 2 Hello, embedded linux! i = 3 Hello, embedded linux! i = 4 Hello, embedded linux! i = 5 Hello, embedded linux! 17.用户应用程序添加成功。