20145204实验反思与总结

嵌入式linux

1、在实验一、二、四、五中我们都需要配置开发环境,那么arm、linux系统、开发板之间的关系是什么?

  • 开发板使用的是嵌入式linux系统,但是在开发板中没有足够的资源运行开发程序和调试工具,此时就需要pc端的linux中的交叉编译、汇编以及连接工具形成可执行的二进制代码,然后把可执行文件下载到开发板上并运行。交叉编译环境的配置在pc端的linux系统中,主编器为:armv4l-unknow-linux-gcc4l.
  • 串行端口主要用于串列式逐位元数据传输,在实验中pc端和开发板通过串行端口的方式链接来传输数据。
  • “超级终端”的作用作为是调试开发板输出信息的监视器和键盘输入的工具。

2、linux、windows xp、超级终端如何实现文件共享。

  • linux/linux系统中使用nfs服务。它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件。
  • 在本实验中,通过命令mount -t nfs -o nolock 虚拟机的ip地址:/home/bc /host(超级终端)在超级终端中挂载共享文件夹,实现虚拟机和开发板的通讯。
  • 在Linux与Windows中间文件共享采用SAMBA服务;
  • 本实验步骤中在windows 的cmd中输入命令\虚拟机的ip地址实现虚拟机和windows共享文件的过程就是SAMA服务。(实验中sam服务已经配置好)

3、实验操作中具体碰到的问题

(1)配置编译器环境变量的问题
  • 命令 PATH 变量为PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ 注意语句中的“arm4l”中是字母“l”,不是数字“1”.
  • 存盘后执行: source /root/.bash_profile,注意source后面的空格。
(2)在arm中运行可执行文件,执行./hello显示:cannot excute binary file.
  • 因为命令````mount -t nfs -o nolock 虚拟机的ip地址:/home/bc /host(超级终端)将我们将bc文件挂载超级终端的host目录下,所以运行文件时应该在host目录下执行./hello```命令。
(3)实验2中,在超级终端运行可执行文件term时出错,提示/dev/ttyS0: No such file or directory。

解决方法:老师给的实验指导书中说:这个问题是因为在Linux下串口文件位于/dev下,一般在老版本的内核中串口一为/dev/ttyS0,串口二为 /dev/ttyS1, 在我们的开发板中串口设备位于/dev/tts/下,因为开发板中没有ttyS0这个设备,所以我们要建立一个连接。解决方法就是按照实验指导书说的在超级终端中进入/dev文件夹中,输入命令ln –sf /dev/tts/0 ttyS0(注意空格与字母l、数字0。)

原文地址:https://www.cnblogs.com/yayaer/p/6130621.html