Linux内核2-TFTP与NFS环境搭建
Uboot:引导程序 初始化硬件设备,初始化c语言环境,为内核加载做准备
zImage:内核文件
rootfs:文件系统,为用户提供一个与硬件设备数据交互的系统
1.TFTP和NFS功能
- TFTP:简单文件传输协议
- 网络配置
pc可以下载
2.minicom
bootargs 给内核传参
bootcmd uboot启动后要执行的第一条命令
bootdelay uboot倒计时时间
ipaddr 下位机的ip地址
netmask:下位机ip地址对应的子网掩码
serverip 服务器的ip地址(192.168.1.100)
bootargs :内核传参参数
使用ping命令测试下位机是否与上位机连通
如果显示alive则表示网络连通ok
11. 下载内核文件
12. 需要重新进入uboot配置bootargs环境变量,设定内核启动后,文件系统采用nfs挂载方式实现
13. 为了让uboot能够自动下载uImage并执行所以可以修改bootcmd
uboot启动后倒数计时完毕执行bootcmd命令,再通过bootargs传入内核参数,让内核找到文件系
统,最终启动Linux系统
14. 重启开发板,正常情况下即可进入Linux系统
bootcmd uboot启动后要执行的第一条命令
bootdelay uboot倒计时时间
ipaddr 下位机的IP地址
netmask 下位机IP地址对应的子网掩码
serverip 服务器的IP地址(192.168.1.100)
bootargs 内核传参参数
S3c2440应用程序编写
1. 编写代码 -> 编译代码 -> 执行代码
1. 在Ubuntu下编写代码
2. 编译代码arm-linux-gcc filename.c1
3. 将编译好的代码放入开发板中运行cp a.out ~/nfs/rootfs1
4. 在开发板端运行代码minicom界面:
cd /
./a.out
5. 运行时出错,比如:/bin/bash not found
需要:将运行库拷贝到开发板中
1.下载 lib32.tar
2.将其拷贝到Ubuntu系统下
3.解压文件
tar -xvf lib32.tar
4.将lib目录下的内容覆盖掉~/nfs/rootfs/lib下
cp lib32/* ~/nfs/rootfs/lib -rf
5.重新启动开发板并运