电子科技大学微机实验报告(含思考题)河畔下的哈】实验4

  • 格式:pdf
  • 大小:147.17 KB
  • 文档页数:6

下载文档原格式

  / 6
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四

基于ARM的嵌入式Linux开发环境建立

1. 掌握嵌入式Linux开发环境的基本流程。

2. 熟悉Linux操作系统

3. 熟悉嵌入式开发平台

在PC机虚拟机下的Linux系统中建立基于ARM的嵌入式Linux开发环境。

1. 学会网口的配置

2. Minicom端口的使用

1.了解ARM9处理器结构

2.了解Linux系统结构

3. 了解ARM开发板使用常识

硬件:PC 机Pentium100 以上,ARM嵌入式开发平台

软件:PC机Linux操作系统+MINICOM + AMRLINUX开发环境

1.交叉编译器

在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这

种编译器支持交叉编译,这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另

一个平台上的可执行代码。这里需要注意的是所谓平台,实际上包含两个概念:体系结构

(Architecture)、操作系统(Operating System)。同一个体系结构可以运行不同的操作

系统;同样,同一个操作系统也可以在不同的体系结构上运行。举例来说,我们常说的x86

Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台

实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。

交叉编译这个概念的出现和流行是和嵌入式系统的广泛发展同步的。我们常用的计算机软

件,都需要通过编译的方式,把使用高级计算机语言编写的代码(比如C代码)编译(compile)

成计算机可以识别和执行的二进制代码。比如,我们在Windows平台上,可使用Visual C++

开发环境,编写程序并编译成可执行程序。这种方式下,我们使用PC 平台上的Windows工具

开发针对Windows本身的可执行程序,这种编译过程称为native compilation,中文可理解

为本机编译。然而,在进行嵌入式系统的开发时,运行程序的目标平台通常具有有限的存储

空间和运算能力,比如常见的ARM 平台,其一般的静态存储空间大概是16到32MB,而CPU

的主频大概在100MHz到500MHz之间。这种情况下,在ARM平台上进行本机编译就不太可能了,

这是因为一般的编译工具链(compilation tool chain)需要很大的存储空间,并需要很强

的CPU运算能力。为了解决这个问题,交叉编译工具就应运而生了。通过交叉编译工具,我

们就可以在CPU能力很强、存储空间足够的主机平台上(比如PC上)编译出针对其他平台的

可执行程序。

要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链(cross compilation

tool-chain),然后用这个交叉编译工具链编译我们的源代码,最终生成可在目标平台上运

行的代码。常见的交叉编译例子如下:

1、在Windows PC上,利用RVDS(ARM 开发环境),使用armcc编译器,则可编译出针对ARM CPU

的可执行代码。

2、在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM 平台的可执行代码。

3、在Windows PC上,利用cygwin环境,运行arm-elf-gcc编译器,可编译出针对ARM CPU的

可执行代码。

2.NFS服务

NFS是Net File System的简写,即网络文件系统.

网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS 允许一个系统在网络

上与它人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系

统上的文件。

NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在

服务器上的数据。为了正常工作,一些进程需要被配置并运行。

在本实验中就是将PC机作为服务器,而将ARM开发板作为客户机,这样ARM开发板就可以远程

访问存放在在PC机上的数据,这样可以缩短研发周期,更方便的调试程序。

1. 双击桌面上VMWARE,打开Linux虚拟机

2. 点击启动虚拟机,启动虚拟机

3. 以root身份登陆虚拟机,密码123456

4. 其他步骤详见实验指导书

基于ARM的嵌入式Linux开发环境建立完毕。

1.如何验证交叉编译器已安装成功?答:在终端输入命令:

cd /arm/rootfs/home/driver (文件夹里已有test_led.c文件)

arm-linux-gcc –o test_led test_led.c

若有可执行文件test_led 生成则表示交叉编译器已安装成功

2.如果我们需要变更根文件系统的目录,该如何设置使得ARM开发板可以成功挂载?

答:修改/etc/exports文件的内容,将/arm/rootfs * (rw,sync,no_root_squash) 改为/XX/XXX

*(rw,sync,no_root_squash) (/XX/XXX 为变更后点的文件目录)

3.怎么在u-boot命令行下修改ARM开发板的IP?

答:输入 setenv

ip=x.x.x.x:192.168.0.1:192.168.0.1:255.255.255.0:uestc:eth0:off Saveenv

x,x,x,x 为ARM开发板的新IP。