tiny6410的linux操作系统实验开发

---恢复内容开始---

1。前期由于2440 的4.3寸屏太小。后来修改程序准备在tiny6410增强版的S70屏上用。但是前期移植再用yaffs的文件系统,但是6410是(MLC)的磁盘,根本就不支持yaffs文件系统,只好做成initramfa的文件系统。

2.出现的问题:

  1》由于我的应用程序都是动态编译的,所以文件系统需要动态链接库。

  2》我之前移植的motion,tslib,madplay等都是需要配置文件和自己相应的链接库。

  3》由于initramfa是基于内存的文件系统,断电后数据就丢失了。

  4》内核对内存文件系统有大小的规定,由于连接库太多,所以内核编译都报错。

  

  如果出现这种错误,就是因为文件系统太大造成的,

  5》由于编译无法通过,只能采用静态编译。

3.文件系统在磁盘的存储地址。

  1》由于我的文件系统最终大小只有0X78EF34,存储的起始0地址为500000。终止地址 = 0X78EF34 + 500000 = 0XC8EF34

  2》最后又给文件系统加了一点空闲内存,最终定在 500000  --  OXC8EFF0.

  3》通过DNW将uboot下载到第一分区后,从nand flash启动,设置uboot参数,使其支出tftp下载。

    setenv ipaddr 192.168.191.8

    setenv serverip 192.168.191.11

    setenv bootcmd tftp 50000000 uImage ; bootm 50000000

  4》当下载完成后,准备写入nand flash,擦出时出错了。不能擦除nand erase 500000 c8eff0.

    后来擦除快多一点,就好了,nand erase 500000 d00000.

  5》然后开发板重新上电,就可以自启动了,但是由于文件系统太大,读取和启动花费的时间太长。

  6》规划做成ubifs文件系统。

    

---恢复内容结束---

原文地址:https://www.cnblogs.com/zxouxuewei/p/4941648.html