Linux系统移植.doc
《Linux系统移植.doc》由会员分享,可在线阅读,更多相关《Linux系统移植.doc(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、,Linux系统移植 Linux系统移植序该文档的目的是总结我们在工作中的一些经验,并把它们分享给喜欢 ARM和Linux的朋友, 如有错误之处,请大家多多指点. 同样, 我们也希望更多人能把自己的工作经验和体会加入该文档,让大家共同进步. 该文档是一份交流性文档, 只供个人学习与交流,不允许公司和企业用于商业行为.第一部分前言 1硬件环境 1.1主机硬件环境开发机:Pentium-4 CPU内存: 512MB硬盘: 60GB 1.2目标板硬件环境 CPU: S3C2410 SDRAM: HY57V561620 Nand flash: K9F1208U0B(64MB)以太网芯片:CS8900A
2、 (10M/100MB) 1.3工具介绍仿真器:Dragon-ICE电缆:串口线,并口线 2软件环境 2.1主机软件环境 2.1.1 Windows操作系统 ADS编译工具:ADS1.2仿真器软件: Dragon-ICE daemon程序 2.1.2 Linux操作系统 GNU交叉编译工具: 2.95.3: 作用:编译u-boot 3.3.2, 3.4.4: 作用:编译内核和应用程序其它工作:tree工具:作用:查看文件目录树下载:从 ftp:/mama.indstate.edu/linux/tree/下载编译 2.1.3目标板最后运行的环境启动程序: u-boot-1.1.4内核: linu
3、x-2.6.14.1应用程序: 1. busybox-1.1.3 2. TinyLogin-1.4 3. Thttpd-2.25 2.2 Linux下工作用户及环境 2.2.1交叉工具的安装工具链的编译过程请参考第三部分. 1. 下载交叉工具 2.95.3 下载地址:ftp:/ftp.arm.linux.org.uk/pub/armlinux/toolchain/cross2.95.3.tar.bz2 3.3.4 下载地址: 2. 编译交叉工具 rootlocalhost mkdir /usr/local/arm rootlocalhost cd /usr/local/arm把cross-2.
4、95.2.tar.bz2, cross-3.4.4.tar.gz 拷贝到/usr/local/arm目录中。解压这两个包。 rootlocalhost tar -xjvf cross-2.95.2.tar.bz2 rootlocalhost tar -xzvf cross-3.4.4.tar.gz 2.2.2 u-boot移植工作目录 1. 添加工作用户 rootlocalhost #useradd -G root -g root -d/home/uboot uboot 2. 建立工作目录 ubootlocalhost $mkdir dev_home ubootlocalhost $cd de
5、v_home ubootlocalhost dev_home$mkdir doc mybootloader uboot . |- doc |- mybootloader - uboot 3. 建立环境变量 ubootlocalhost vi /.bashrc export PATH=/usr/local/arm/2.95.3/bin:$PATH 2.2.3内核及应用程序移植工作 1. 添加工作用户 rootlocalhost #useradd -G root -g root -d/home/arm arm 2. 建立工作目录armlocalhost arm$mkdir dev_home arm
6、localhost arm$cd dev_home armlocalhost arm$mkdir bootldr btools debug doc images kernel localapps rootfs sysapps tmp tools armlocalhost arm$tree -L 1 . |- bootldr |- btools |- debug |- doc |- images |- kernel |- localapps |- rootfs |- sysapps |- tmp - tools可以看到如上树形结构。注:tree命令 3. 建立环境变量设置脚本 armlocalh
7、ost arm$vi env_sh #!/bin/bash PRJROOT=/dev_home KERNEL=$PRJROOT/kernel ROOTFS=$PRJROOT/rootfs LAPP=$PRJROOT/localapps DOC=$PRJROOT/doc TMP=$PRJROOT/tmp export PRJROOT KERNEL LAPP ROOTFS export PATH=/usr/local/arm/3.4.4/bin:$PATH 4. 登陆时启动环境变量 armlocalhost arm$vi /.bashrc . /dev_home/env_sh重新登陆 arm用户,
8、环境变量生效 armlocalhost arm$su arm 2.3配置系统服务 2.3.1 tftp服务器的配置如果用下面一条命令能够看到服务已经启动, 则不用安装, 否则需要按 1或 2点安装tftp-server服务器. armlocalhost arm#netstat -a | grep tftp udp 0 0 *:tftp *:* 1. 从 RPM包安装tftp-server从对应Linux操作系统版本的安装光盘上找到tftp-server的安装包.下面 tftp-server-0.32-4.i386.rpm包为例,把rpm包拷贝到dev_home/btools/下. armloc
9、alhost arm#cp tftp-server-0.32-4.i386.rpm /home/arm/dev_home/btools/ armlocalhost arm#su root rootlocalhost arm#rpm -q tftp-server如果没有安装tftp-server,就要用下面命令安装,否则,直接进入第2步配置服务. rootlocalhost arm#cd /home/arm/dev_home/btools/ rootlocalhost btools#rpm -ivh tftp-server-0.32-4.i386.rpm 建立tftp的主工作目录 rootloc
10、alhost btools#mkdir /tftpboot 2. 修改配置文件并启动服务备份配置文件 rootlocalhost btools#if -f /etc/xinetd.d/tftp then cp /etc/xinetd.d/tftp /etc/xinetd.d/tftp.old fi修改配置文件 rootlocalhost btools#vi /etc/xinetd.d/tftp service tftp disable = no socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbi
11、n/in.tftpd server_args = -s /tftpboot per_source = 11 cps = 100 2 flags = IPv4 检查 tftp服务是否打开 rootlocalhost btools#chkconfig -list如果 tftp的服务没有打开,则用下面命令打开tftp服务开关 rootlocalhost btools#chkconfig tftp on重启服务 #/etc/init.d/xinetd restart #netstat -a | grep tftp udp 0 0 *:tftp *:* 2.3.2 NFS服务器的配置 1. 安装NFS服
12、务器 rootlocalhost btools#rpm -q nfs-utils如果没有安装,从对应Linux操作系统版本的安装光盘上找到nfs-utils的安装包.Fedora 5中的安装包名称为nfs-utils-1.0.8.rc2-4.FC5.2.i386.rpm。下面以该安装包为例说明: rootlocalhost btools#rpm -ivh nfs-utils-1.0.8.rc2-4.FC5.2.i386.rpm 2. 配置NFS服务器 rootlocalhost btools#vi /etc/exports #加入要允许被另外计算机mount的目录: #/home/arm/de
13、v_home/tmp 为被另外计算机mount的目录 #192.168.1.134 允许另外计算机mount的IP #rw,sync,no_root_squash表示访问限制,更详细说明见相关手册. /home/arm/dev_home/tmp 192.168.1.134(rw,sync,no_root_squash) 3. 启动NFS服务器第一启动NFS服务器时用下面命令. rootlocalhost btools#/etc/init.d/nfs start如果你已经启动了 NFS服务器时,并且重新修改了/etc/exports文件,用如下命令使新加入的目录生效: rootlocalhost
14、 btools#/etc/init.d/nfs reload 4. 测试NFS服务器 rootlocalhost btools#netstat -a | grep nfs 5. 显示被 export出的目录列表 rootlocalhost btools#exportfs 2.4工具使用 2.4.1 minicom的使用 1.切换到root用户. rootlocalhost btools#su 2. 查找有效的串设备. rootlocalhost #cat /proc/devices . 4 ttyS . 188 ttyUSB .如果是普通串口设备, 设备名前缀为ttyS, 第一串口为ttyS0
15、, 第二串口为ttyS1,依次类推.如果是 USB转串口的设备, 设备名前缀为ttyUSB, 第一串口为ttyUSB0. 3. 配置ttyUSB设备 rootlocalhost #minicom -s ttyUSB0会出现一个configuration窗口, configuration Filenames and paths File transfer protocols Serial port setup Modem and dialing Screen and keyboard Save setup as ttyUSB0 Save setup as. Exit Exit from Mini
16、com 选择Serial port setup配置. 会出现如下窗口: A -Serial Device : /dev/ttyUSB0 B -Lockfile Location : /var/lock C -Callin Program : D -Callout Program : E -Bps/Par/Bits : 115200 8N1 F -Hardware Flow Control : No G -Software Flow Control : No Change which setting? 我的设置如上所示, 设置完成后, Change which setting?项上按回车退出当前
17、窗口, 回到第一个窗口.按 Save setup as ttyUSB0保存设置. 再按 Exit from Minicom退出 Minicom. 4. 启动minicom rootlocalhost #minicom 3作者介绍 3.1策划,组织,指导,发布者刘勇 email: littlegenius2008如果您有新的内容,请发到这个电子邮件,我们会把您的内容加入文档,并在作者列表中加入您的名字. 3.2 ADS bootloader部分作者:刘勇 email: littlegenius2008 3.3交叉工具部分作者:孙贺 email: msunhe 3.4 uboot部分作者:聂强 e
18、mail: wolfwind9779作者:孙贺 email: msunhe 3.5内核部分作者:聂大鹏 email:dozec作者:牛须乐(8900a网卡移植部分) email:clizniu 3.6应用程序部分作者:聂大鹏 email:dozec 3.7 Nand Flash 驱动部分作者:孙磊,刘勇 email:sunlei3448 第部分系统启动 bootloader的编写(ADS) 1工具介绍 1.1 ADS命令行命令介绍 1.1.1 armasm 1. 命令:armasm 选项 -o 目标文件源文件 2. 选项说明 -Errors 错误文件名 ;指定一个错误输出文件 -I 目录,目录
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 系统 移植
限制150内