快速业务通道

android linux基础知识总结

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-17

  一、busybox的编译

  是交叉编译设置,打开busybox根目录下的Makefile,进行修改

  [attach]220792[/attach]

  一般情况下,为了让busybox能够独立于其他的库文件而可以单独运行,需要将busybox编译成静态的.

  #make menuconfig

  Busybox Settings --->

  Build Options --->

  Build BusyBox as a static binary (no shared libs) //静态

  Installation Options --->

  Don''t use /usr //make install的时候不会安装到根目录,而是安装到./_install

  Linux System Utilities --->

  mdev //相当于udev

  Support /etc/mdev.conf

  Support command execution at device addition/removal

  Shells --->

  Choose your default shell (msh) //具有ash没有的功能,比如支持tab补齐,历史纪录等等的高级功能

  而编译成静态的分为glibc和uclibc,如果系统没有安装uclibc的话,那就会报下面的错

  [attach]220793[/attach]

  解决办法是打开 applets/applets.c 将其中的错误注释掉

  [attach]220794[/attach]

  其他的busybox选项根据需要进行选择!

  #make

  #make install

  这样就在./_install目录下生成了busybox

  [attach]220795[/attach]

  二、ramdisk文件系统生成

  [attach]220796[/attach]

  上图中创见了一个10M的文件系统映象

  然后使用losetup命令将此镜像与块设备/dev/loop0进行挂接

  如果出现"ioctl: LOOP_SET_FD:设备或资源忙",说明/dev/loop0设备还和一文件联系,可用losetup /dev/loop0查看地,并可用-d 删除

  [attach]220797[/attach]

  上图是用命令mke2fs来格式化此块设备/dev/loop0,其实就是格式化我们刚生成的那个文件系统镜像,ext2格式

  [attach]220798[/attach]

  上图是挂载文件系统镜像,可见经过刚才格式化之后的文件系统镜像里面只有lost found这个文件夹

  之后可以将步骤一中生成的_install目录下的所有文件拷贝进来即可,

  /et/init.d/rcS文件如下修改

  [attach]220799[/attach]

  其他的系统配置文件可以根据需要进行更改

  三、u-boot加载内核和文件系统

  => tftp 800000 uImage; tftp a00000 rootfs.img; bootm 800000 a00000

  Using FCC1 ETHERNET device

  TFTP from server 192.168.0.102; our IP address is 192.168.0.20

  Filename ''uImage''.

  Load address: 0x800000

  Loading: #################################################################

  #################################################################

  #################################################################

  #################################################################

  #################################################################

  ###########################################

  done

  Bytes transferred = 1880231 (1cb0a7 hex)

  Using FCC1 ETHERNET device

  TFTP from server 192.168.0.102; our IP address is 192.168.0.20

  Filename ''rootfs.img''.

  Load address: 0xa00000

  Loading: #################################################################

  #################################################################

  #################################################################

  #################################################################

  #################

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号