Chinaunix首页 | 论坛 | 博客
  • 博客访问: 203240
  • 博文数量: 33
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1277
  • 用 户 组: 普通用户
  • 注册时间: 2013-03-03 10:03
个人简介

现于杭州电子科技大学攻读硕士学位

文章分类

全部博文(33)

文章存档

2013年(33)

我的朋友

分类: LINUX

2013-09-07 21:30:08



嵌入式系统调试技术:一是硬件级调试技术,而是源代码级调试技术。硬件级调试工具适合嵌入式系统的硬件设计与调试阶段,以及嵌入式系统的软件环境(包括bootloader、内核、文件系统、库、驱动等)创建阶段,而源代码级软件调试工具一般适用于应用软件的调试



硬件级调试一般采用特殊的专用硬件调试接口(如JTAG等),而源代码级调试时目标机上的操作系统环境以及建立,所以主机和目标机之间采用串口或网络接口,并且要在目标机上运行驻留程序(如通过nfs实现共享,还FTP调试方式)



可执行文件在nfs挂载主机的共享分区,让应用程序之间运行在嵌入式系统中,FTP方式是将可执行文件通过FTP下载到嵌入式目标系统中,当应用程序修改后需重新下载



JTAG仿真器的主要作用就是实现串口或并口与JTAG接口的TAP控制器信号之间的转换



经调试好的应用程序就可以下载到目标系统的Flash文件系统或者之间编译到内核并下载到flash从而形成一个独立的嵌入式应用系统



建立NFS开发环境:第一步:关闭防火墙,运行命令#/etc/init.d/iptables stop(或#lokit  )第二步:设置共享目录,运行命令#gedit  /etc/exports 然后编辑配置文件:/opt/EmbedSky/root_nfs    *(rw
,sync,no_root_squash)



其中:/opt/EmbedSky/root_nfs表示nfs共享目录,它可以作为开发板的根文件系统通过nfs挂载



*表示所有客户机都可以挂载此目录



rw表示所有挂载此目录的客户机都有读写权限,(当然也可设置为ro,但一般设置为rw)



sync表示数据同步写入内存和磁盘



no_root_squash表示允许挂载此目录的客户机享有该主机的root身份(如果使用默认的root_squashtarget board自己的根文件系统可能有很多无法写入,所有运行会受很大的限制,可以通过设定/etc/hosts.deny/etc/hosts.allow文件来限制网络服务的存取权限)



第三步:建立共享目录,使用命令#mkdir /opt/EmbedSky/root_nfs  ,然后复制前面建立好的文件系统复制一份到/opt/EmbedSky/目录下并改名为root_nfs  使用命令#cp f /etc/exports   /opt/EmbedSky/root_nfs,另外注意,复制为root_nfs后,/opt/EmbedSky/root_nfs/dev目录下的consolenull就不存在了,需重新建立,使用的命令:



#cd  /opt/EmbedSky/root_nfs/dev/



#mknod  console 
c  5  1



#mknod  null 
c  1  3



第四步:修改“/etc/init.d/rcS文件,屏蔽“net_set&”这行,屏蔽方式为“#net_set&



第五步:启动和停止nfs,使用的命令是:#/etc/init.d/nfs  start



                                     
#/etc/init.d/nfs stop





第六步:测试nfs服务是否开启,使用的命令是:



#mount t nfs
192.168.1.8:/opt/EmbedSky/root_nfs /opt/EmbedSky/root



第七步:打开系统配置窗口,使用的命令:#serviceconf
,在窗口中配置nfs



第八步:在开发板的控制台(超级终端)使用如下命令挂载nfsYaffs文件系统的/mnt/目录下,使用的命令:



#mount t nfs
192.168.1.8:/opt/EmbedSky/root_nfs/mnt
o nolock



如果挂载不成功则需要在u-boot中进行相关设置



阅读(2026) | 评论(0) | 转发(0) |
0

上一篇:GCC内嵌汇编

下一篇:搭建交叉编译环境

给主人留下些什么吧!~~