- UID
- 872238
|
嵌入式系统就是以应用为中心,以计算机技术为基础的软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。Linux操作系统是一种性能优良、源码公开且被广泛应用的免费操作系统,由于其体积小,可裁减,运行速度高等优点,因此可以作为研究嵌入式操作系统和非实时操作系统的典范。EL-ARM-830+型教学实验系统是一种综合的教学实验系统,该系统采用了ARM92 0T核,32位微处理器,实现了多模块的应用实验。在实验板上有丰富的外围扩展资源,可以完成arm的基础实验、算法实验和数据通信实验、以太网实验。
1 Linux的实验环境搭建
1.1 Redhat9.0操作系统的安装
安装Redhat9.0前,先把串口配置好,这是建立Linux系统和试验箱之间的串口通信。配置完以后在启动Linux系统时点击全屏,这样做的目的是让Linux系统占取网络资源。点击VM→setting在弹出的窗口点击左下角的Add按钮,此时选择serial Port,依次点击"下一步",直到配置完串口。
1.2 配置NFS网络文件系统
首先在Linux主机的终端上执行setup,弹出菜单界面后,选中Firewall configuration,回车,进入系统服务选项菜单,选择no firew all关闭防火墙(如果安装了防火墙),按空格键就会选中,然后退出。但是,setup里面会照样显示防火墙设置是high的,这个可以不必理会。之后选中System services,回车,进入系统服务选项菜单,在其中选中nfs,然后按F12键退出,再选择方向键,退出setup界面,返回到命令提示符下。利用编辑器打开/etc/exports文件(输入命令vi/etc/exports),按A进入文本输入模式,将这个默认的空文件修改为只有如下一行内容:
/(rw)
/home/nfs
然后,保存退出(按ESC键进入命令模式,输入:进入到最后行模式,输入wq!保存退出),之后改变目录到/etc/rc.d/init.d/下(输入命令cd/etc/rc.d/init.d/),执行如下命令:
./nfs start
终端内输出:
Starting NFS services:[确定]
Starting NFS quotas:[确定]
Starting NFS daemon:[确定]
Starting NFS mountd:[确定]
(1)安装交叉编译器。打开Linux系统下的终端,在里面输入命令cd/linuette/RPMS/改变目录到/linuette/RPMS下,输入如下命令:
#rpm-UVh*.rpm
等待系统安装,如果所有的RPMS内的文件全部正确安装,将会在根目录下的/opt文件夹内生成一个host文件夹,交叉编译库就在该目录下,到此交叉编译环境就搭建好了。
(2)用交叉网线连接主机和实验系统。在Linux的开始菜单里启动终端,在终端[root@localhost root]#minicom-s回车,按S键选择Seri al Port setup回车,弹出串行口设置界面,按A键编辑Serial Device:/dev/ttys0回车;按E键,再按I键,回车,选择为Bps/Par/Bit s:115200 8N1回车;按F键,选择Hardware Flow Control:No.设置完后回车,然后用上下选择键,选中Modem and dialing,将Initstri ng,Reset string,Hang-up string设置为空,再选中Save setup as df1这一项,回车,保存为默认的配置,下次进入minicom时就不用再设置了。用上下选择键选中Exit回车退出设置,进入minicom.
(3)Linux系统下网络设置。点击左下角的小红帽,选择系统设置一网络,然后双击设备eth0的蓝色区域,进入以太网设置界面,在静态设置IP地址栏下面输入与宿主机一个网段的IP地址、网关及子网掩码,确定后激活网络设备。
(4)Ping通主机和实验系统。在minicom下,给系统上电,系统正常起来后,利用ifconfig eth0 xxx.xxx.xxx.xxx来改变实验系统的IP地址,让该地址的前三段和主机的前三段一致,最后的一段,可以选择与主机不重复的小于255的任意值。利用mount命令,挂载主机的nfs系统下的共享目录。
利用命令chmod 777/home/nfs改变/home/nfs文件夹的属性,让其变为可读可写,输入mount-onolock 192.168.0.1:/home/n fs/mnt/yaffs回车,即可完成把主机上的/home/nfs下的文件挂载到实验系统的/mnt/yaffs目录下。
2 BootLoder引导程序的移植
在嵌入式系统中,BootLoader的作用与PC机上的BIOS类似,通过。BootlLoader可以完成对系统板上的主要部件如CPU,SDRAM,FLASH、串行口等进行初始化,也可以下载文件到系统板上,对FLASH进行擦除与编程。当运行操作系统时,它会在操作系统内核运行之前运行,通过它,可以分配内存空间的映射,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统准备好正确的环境。因此,正确建立Linux移植的前提条件是具备一个与Linux配套、易于使用的Boot Loader,它能够正确完成硬件系统的初始化和Linux的引导。
系统使用的BootLoader是VIVI.VIVI是CPU加电后运行的第一段程序,其基本功能是初始化硬件设备,建立内存空问的映射图,从而为调用嵌入式Linux内核做好准备。为能够实现正确引导Linux系统的运行,以及当编译完内核后,快速下载内核和文件系统,VIVI首先通过串口下载内核和文件系统,当系统正常运行起来后,网络驱动正常运行后,VIVI就通过网口下载内核和文件系统。同时,它也具有功能较为完善的命令集,对系统的软硬件资源进行合理的配置与管理 |
|