您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > 第 1 章 嵌入式Linux开发环境
第1章嵌入式Linux开发环境目录嵌入式交叉开发环境1嵌入式软件开发的过程2嵌入式Linux软件开发的主要内容3构建嵌入式Linux开发环境41.1嵌入式交叉开发环境物理连接逻辑连接通信:1.2嵌入式软件开发的过程1.生成2.调试3.固化1.2.1嵌入式软件的生成编辑器交叉编译器交叉链接器源程序目标模块可供调试/固化库文件1.2.2嵌入式软件的调试1.CrashandBurn2.RomMonitor3.RomEmulator4.ICE5.OCD硬件仿真1.CrashandBurn在宿主机上编写代码反复检查代码,直到编译通过,生成可执行程序将程序固化(Burn)到目标机的非易失性存储器(E2PROM、FLASH等)中在宿主机上反复检查码,查找问题根源改写代码启动目标机运行,观察程序是否正常工作NY结束2.RomMonitor调试器Windows或其它桌面操作系统PC机等硬件嵌入式硬件监控程序(ROMMonitor)被调试程序宿主机目标机逻辑上的连接物理上的连接2.RomMonitor优点:提高调试程序的效率,缩短开发周期,降低成本简单、方便可扩展性强,可支持许多高级调试功能成本低廉,不需专门的调试硬件支持几乎所有的交叉调试器都支持这种方式缺点:DebugMonitor需要用CrashandBurn方法开发。当ROMMonitor占用CPU时,应用程序不响应外部的中断,因此不便调试有时间特性的程序。ROMMonitor要占用目标机一定数量的资源,如CPU、RAM、ROM和通信设备等资源。调试环境不同于实际目标环境。3.ROMEmulator优点:保证调试版本与最终发布版本一致。缺点:目标机必须能支持外部ROM存储空间,而且由于其通常要和ROMMonitor配合使用,因此它拥有ROMMonitor的缺点。ROMEmulator是一种用于替代目标机上的ROM芯片的设备,即ROM仿真器。利用这种设备,目标机可以没有ROM芯片,但目标机的CPU可以读取ROMEmulator设备上ROM芯片的内容:ROMEmulator设备上的ROM芯片的地址可以实时地映射到目标机的ROM地址空间,从而仿真(Emulation)目标机的ROM。ROMEmulator的调试方式是一种不完全的调试方式:ROMEmulator设备只是为目标机提供ROM芯片及在Target和Host间建立一条高速的通信通道,因此它经常和前面两种调试方式结合起来形成一种完备的调试方式。ROMEmulator的典型应用就是和ROMMonitor的调试方式相结合。4.ICEICE(In-CircuitEmulator)是一种用于替代目标机上CPU的设备,即在线仿真器。它比一般的CPU有更多的引出线,能够将内部的信号输出到被控制的目标机。ICE上的Memory也可以被映射到用户的程序空间,这样即使目标机不存在的情形下也可以进行代码的调试。连接ICE和目标机时,一般是将目标机的CPU取下,而将ICE的CPU引出线接到目标机的CPU插槽。用ICE进行调试时,在Host端运行的调试器通过ICE来控制目标机上运行的程序。4.ICE适用于:调试实时的应用系统调试设备驱动程序对硬件进行功能和性能的测试实时性能分析缺点:价格太昂贵,不利于团队开发所仿CPU有限5.OCDOCD(OnChipDebugging)是CPU芯片提供的一种调试功能(片上调试),可以认为是一种廉价的ICE功能:OCD的价格只有ICE的20%,但提供了ICE80%的功能。调试器Windows或其它桌面操作系统PC机等硬件被调试程序OCD接口嵌入式硬件宿主机目标机逻辑上的连接物理连接仿真器针形连接器并口、串口或网络接口为特定处理器而建造5.OCD优点:不占用目标机的资源调试环境和最终的程序运行环境基本一致支持软硬断点、Trace功能精确计量程序的执行时间提供时序分析功能缺点:调试的实时性不如ICE不支持非干扰调试查询CPU必需具有OCD功能5.OCD1.3嵌入式Linux软件开发的主要内容1.建立开发环境2.开发引导装载程序BOOTLOADER3.移植嵌入式Linux操作系统4.建立根文件系统5.建立应用程序的FLASH磁盘分区6.开发应用程序7.系统固化1.4构建嵌入式Linux开发环境1.开发平台Linux操作系统的安装2.嵌入式交叉编译环境的搭建3.宿主机和目标机的串口通信配置4.Windows与VmwareLinux的共享5.宿主机与目标机文件的共享和传输1.4.1开发平台Linux操作系统的安装1.基于PC机WINDOWS操作系统下的CYGWIN2.直接安装Linux操作系统3.在WINDOWS下安装虚拟机后,再在虚拟机中安装Linux操作系统1.4.2嵌入式交叉编译环境的搭建交叉编译器完整的安装直接使用厂商提供的编译器几个个版本的交叉编译器:2.95.3、3.3.2、gcc-3.4.6-glibc-2.3.61.4.3宿主机和目标机的串口通信配置1.WINDOWS超级终端2.Linux的Minicom3.WINDOWS平台的Xmanager工具Xmanager工具Xmanager是一个简单易用的高性能的运行在Windows平台上的XServer软件。它提供了一个控制虚拟机和目标机的Windows统一工作环境,方便用户的使用。XManger配置Vmwarelinux的配置目标机的配置Vmwarelinux的配置运行XShell,新建一个session。按如下进行配置:Vmwarelinuxip地址该ip与Windowsip在同一网段。注意区分3个ipWindowsipVmwarelinuxipArmlinuxipVmwarelinux的配置目标机的配置运行XShell,新建一个session。按如下进行配置:Vm共享Smaba服务器共享1.4.4Windows与VmwareLinux的共享Vm共享(1)InstallVMwaretools(2)菜单VMsettingoptionssharedfoldersadd。如下图输入共享名称和共享文件夹:Vm共享点击“next”后如下图:Smaba服务器共享(1)设置虚拟机和windows在同一网段(2)在服务配置里选上smb项Smaba服务器共享(3)在smaba服务器配置里点击“增加”以添加共享目录,并按如下进行配置:Smaba服务器共享(4)在smaba服务器配置里点击菜单“首选项”smaba用户,并按如下编辑用户:Smaba服务器共享(5)将共享文件夹权限设置为可读写,如:chmoda+w/up-techpxa270(6)在windows的开始运行,输入\\192.168.0.121虚拟机ip1.4.5宿主机与目标机文件的共享和传输NFS服务器TFTP传输由于这两种方式都采用网口,因而需要先配置网络。1.网络配置配置IP禁用防火墙禁用iptables服务2.NFS服务器的配置和使用nfs服务选项选中nfs服务器配置开启nfs服务3.tftp传输(1)如果没有安装tftp服务器,则按附件的说明进行安装。注意:如果有\tftpboot目录则说明tftp服务器已经安装(2)在服务配置里确认tftp服务已经选上(3)将需要传送到目标机的文件存放到\tftpboot目录(4)在目标机执行以下命令以传送\tftpboot目录的文件:tftp–rfile–gtftp服务器ip(虚拟机ip)-r:remotefile-g:getfile
本文标题:第 1 章 嵌入式Linux开发环境
链接地址:https://www.777doc.com/doc-6471244 .html