




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 专业的嵌入式技术研发、 推广、 培训、 认证机构 /rootfs/lib$ ls ld-2.3.6.so libm.so.6 libpcprofile.so ld-linux.so.2 libnsl-2.3.6.so libpthread-0.10.so libanl-2.3.6.so libnsl.so libpthread.so libanl.so libnsl.so.1 libpthread.so.0 libanl.so.1 libnss_compat-2.3.6.so libresolv-2.3.6.so libBrokenLocale-2.3.6.so libnss_compat.
2、so libresolv.so libBrokenLocale.so libnss_compat.so.2 libresolv.so.2 libBrokenLocale.so.1 libnss_dns-2.3.6.so librt-2.3.6.so libc-2.3.6.so libnss_dns.so librt.so libcrypt-2.3.6.so libnss_dns.so.2 librt.so.1 libcrypt.so libnss_files-2.3.6.so libSegFault.so libcrypt.so.1 libnss_files.so libstdc+.so li
3、bc.so libnss_files.so.2 libstdc+.so.6 libc.so.6 libnss_hesiod-2.3.6.so libstdc+.so.6.0.6 libdl-2.3.6.so libnss_hesiod.so libthread_db-1.0.so libdl.so libnss_hesiod.so.2 libthread_db.so libdl.so.2 libnss_nis-2.3.6.so libthread_db.so.1 libgcc_s.so libnss_nisplus-2.3.6.so libutil-2.3.6.so libgcc_s.so.1
4、 libnss_nisplus.so libutil.so libm-2.3.6.so libnss_nisplus.so.2 libutil.so.1 libmemusage.so libnss_nis.so libm.so libnss_nis.so.2 ldconfig 是很常用的一个命令,如果某些程序把共享库安装到非标准目录(/lib 和/usr/lib),则需要执行 ldconfig 更新缓存文件/etc/ld.so.cache,比如后面安装 Qtopia Core 时就会用到。 但是 busybox 不包含 ldconfig 命令,因为它和 glibc 密切相关, 是随 glibc
5、 一起发布的,先前我们制作交叉编译工具链时已经生成了 ldconfig,现在把它 拷到根文件系统: $ cp crosstool-0.43/build/arm-linux/gcc-4.0.2-glibc-2.3.6/build-glibc/elf/ldconfig rootfs/sbin/ 现在通过 NFS 启动开发板,应该可以成功启动到 shell 了。 5.3 mdev 先前我们在根文件系统的/dev 目录下手动创建了三个设备文件:console、null 和 s3c2410_serial0,内核里还有很多设备驱动需要通过设备文件提供接口给应用程序访问, 如果一个一个手动创建太麻烦而且容易
6、出错,busybox 提供的 mdev 程序可以从 sysfs 中 读出内核提供的设备驱动信息,在/dev 目录下自动创建相应的设备文件并为这些设备文件 命名。在 PC 上完成这一功能的是 udev,mdev 是 busybox 为嵌入式系统裁剪过的 udev。 嵌入式 Linux 就业班内部资料 第 21 页 AKAE 嵌入式研究中心版权所有 专业的嵌入式技术研发、 推广、 培训、 认证机构 把以下几行附加到启动脚本/rootfs/etc/init.d/rcS 的末尾: mount -t tmpfs mdev /dev mdev -s mkdir /dev/input ln -s /dev/
7、mice /dev/input/mice mdev 还需要一个配置文件 mdev.conf,用于指定各设备文件的所有者和权限,其格式可 参考 busybox 源代码中的 docs/mdev.txt。 我们不做特别的设置,但这个文件是需要存在 的,因此创建一个空文件: $ touch rootfs/etc/mdev.conf 现在重新启动开发板,从 minicom 可以看到开发板的/dev 目录下创建了很多设备文件, 而从主机上查看 NFS 目录/rootfs/dev 却仍然只有先前的三个设备文件,想一想这是为 什么。 5.4 系统时钟 首先将主机上的时区文件拷到开发板根文件系统: $ cp /
8、etc/localtime /rootfs/etc/ 然后在启动脚本/rootfs/etc/init.d/rcS 中添加一条命令: hwclock -hctosys 选项-hctosys 的意思是读取硬件 RTC 时钟(hc)成为当前的系统时钟(sys)。 在系统运 行期间,调用 time(2等函数读取的都是内核维护的系统时钟,而不会直接去读硬件时钟, 所以,如果用 date 命令修改了系统时钟: # date 0319* Mon Mar 19 15:23:00 CST 2007 这时关闭系统,时钟信息还是会丢失。 如果在上述命令后用 hwclock 命令写到硬件 RTC 时 钟: # hwc
9、lock -systohc 在系统断电期间 RTC 时钟由电池来维持,下次启动通过 hwclock -hctosys 仍然可以将 系统时钟设定正确。 5.5 网络配置 在 bootloader 中设置的开发板 IP 地址仅在 bootloader 阶段与主机通信时起作用。 如 果是 NFS Root 方式启动,系统启动后的 IP 地址是由内核启动参数中的 NFS 设置决定的, 嵌入式 Linux 就业班内部资料 第 22 页 AKAE 嵌入式研究中心版权所有 专业的嵌入式技术研发、 推广、 培训、 认证机构 这样系统启动后仍然可以读取主机的 NFS 导出目录。如果是 Flash 根文件系统启动
10、,则启 动之后需要重新配置 IP 地址和激活网络接口,我们可以把配置写在启动脚本 /rootfs/etc/init.d/rcS 中: ifup -a 并且添加一个配置文件/rootfs/etc/network/interfaces: auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 5 netmask gateway 25 ifup 命令根据配置文件激活网络接口 lo(loopback 设备)和 eth0(以太网接口)。 5.6
11、httpd busybox 自带了一个 Web 服务器程序 httpd,我们在启动脚本/rootfs/etc/init.d/rcS 中添加如下一行: httpd -h /srv/www 这样 httpd 在启动时以 daemon 方式运行,使用默认的 80 端口(使用-p 选项可以自己指 定端口)。服务目录是/srv/www,如果浏览器请求/srv/www/cgi-bin 目录下的可执行文 件,则被 httpd 当作 CGI 程序执行。我们在根文件系统中创建服务目录: $ mkdir -p rootfs/srv/www/cgi-bin 现在启动开发板系统,试验以下功能: 1976. 编辑一个
12、index.html 放在/rootfs/srv/www 下,从主机上打开浏览器, 输入开发板的 IP 地址看能否浏览。 1977. 编辑一个 shell 脚本,加可执行权限,放在/rootfs/srv/www/cgi-bin 下, 从主机打开浏览器,输入该脚本的地址(例如 5/cgibin/script.sh )看能否得到执行结果。脚本如下所示: #!/bin/sh echo "Content-Type:text/plain" echo ls -a 嵌入式 Linux 就业班内部资料 第 23 页 AKAE 嵌入式研究中心版权所有 专业的嵌入式技术研发、 推广、 培训、 认证机构 最终我们的启动脚本/rootfs/etc/init.d/rcS 是这样的: #!/bin/sh mount -a mount -t tmpfs mdev /dev mdev -s mkdir /dev/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湘潭药品管理办法
- 灰渣处置管理办法
- 构建与实施“三引四化”实验室安全管理体系的策略与实践
- 智能楼宇技术:PLC电梯控制系统设计研究
- 青藏高原草甸土微生物对冻融循环的非线性影响研究
- 智能化运维系统-洞察及研究
- 国庆节大班主题活动方案
- 服务系统中的服务体验共创-洞察及研究
- 基因检测诊断优化-洞察及研究
- 健康教育效果研究-第1篇-洞察及研究
- 劳动教育概论智慧树知到期末考试答案章节答案2024年哈尔滨工业大学
- 广东省省级政务信息化服务预算编制标准(运维服务分册)
- GB∕T 37050-2019 紧固螺纹检测体系
- GB 38454-2019 坠落防护 水平生命线装置
- 中征码配码申请表
- 钻孔、剖面、矿体厚度计算表
- 药物流产同意书
- 计量检测项目可行性研究报告(76页)
- 产品报价审批表
- 宁波市公共建筑节能审查备案登记表(共5页)
- 2022年公司风险管控制度
评论
0/150
提交评论