内核编译根文件系统.docx_第1页
内核编译根文件系统.docx_第2页
内核编译根文件系统.docx_第3页
内核编译根文件系统.docx_第4页
内核编译根文件系统.docx_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/sy373466062/article/details/6995429 根文件系统直接编译进内核 分类: ARMLinux2011-11-21 10:57216人阅读评论(0)收藏举报直接用TQ2440提供的源码linux, 然后用其提供的busybox.1.16.0在(make menuconfig中)没有选中Initial Ram. 时是这样的看到这里,大约知道除了根文件系统有问题外,其他没有问题. 将文件系统编译进去,遇见问题:make zImage ARCH=arm后,下载zImage.bin到TQ2440,启动系统后居然是这样:看来这个问题不小,直接bad gzip了Question1: 该如何解决呢? 不管它继续用uboot的另一个功能 Test Linux Image(zImage) :各类东西的初始化.不会吧,居然进入console了,这么说就是zImage的压缩头部有问题而已 ?但是没有多久居然又重启进入uboot了,看来这个还是个问题.=Question2: 继续输入命令居然可以,那么说明busybox和根文件系统也是没有问题的 ?既然如此,那么关闭看门狗试一试,就不会重启了,这么说是看门狗问题:那好直接在命令行关闭它:$ echo V /dev/watchdog 可以参考下面这个Blog:/woshixingaaa/article/details/6527969以及下面的这个:/dreambegin/article/details/6945942我就简单的处理一下,直接在编译的时候close watchdog:直接测试(zImage直接到内存)是没有问题了.那么下载到NandFlash有没有问题呢:copy linux kernel . to 0x3000800. 直接就是data abort,此时PC = 0x3000b424,那么这个是属于哪个区域呢? 是头部(解压缩部分) ? 还是? 这里是没有用mkimage将zImage制作成uImage,没有头部(大小64B = 48H),直接用TQ2440光盘提供的工具即可.其用法看:/topembedded/article/details/3581871基本如下摘抄:1.首先查看mkimage的命令参数rootlocalhost tools# ./mkimage Usage: ./mkimage -l image-l = list image header information./mkimage -x -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file:data_file. image-A = set architecture to arch /用于指定CPU类型,比如ARM-O = set operating system to os /用于指定操作系统,比如Linux-T = set image type to type /用于指定image类型,比如Kernel-C = set compression type comp /指定压缩类型-a = set load address to addr (hex) /指定image的载入地址-e = set entry point to ep (hex) /内核的入口地址,一般是:image的载入地址+0x40(信息头的大小)-n = set image name to name /image在头结构中的命名-d = use image data from datafile /无头信息的image文件名-x = set XIP (execute in place) /设置执行位置2.制作添加头的uImagerootlocalhost boot# ./mkimage -A arm -O linux -T kernel -C none -a 30008000 -e 30008040 -n linux-2.6.13 -d zImage uImageImage Name: linux-2.6.13Created: Sat Dec 20 19:42:38 2008Image Type: ARM Linux Kernel Image (uncompressed)Data Size: 1588584 Bytes = 1551.35 kB = 1.51 MBLoad Address: 0x30008000Entry Point: 0x30008040注意:大家可以根据创建的头信息来验证个参数的含义。比如Image Name就是-n选项指定的内容,Load Address就是-a选项指定的内容,Entry Point就是-e选项指定的内容。用mkimage制作好后,下载,boot system 即可.Qusetion3: 这里还是遇到了问题: 如何将uImage下载到TQ2440中?这里用u-boot菜单无法完成,没有下载uImage的选项,当然可以将uImag

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论