当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]cramfs+yaffs嵌入式平台的实现

首先我们要将我们的某个分区格式化成yaffs格式。

制作格式化工具过程如下:

mtd-utils编译

1、编译libz:

首先安装 zlib 库,这个是后面的库的编译基础。

http://www.zlib.net/zlib-1.2.3.tar.gz

解压

tar zxf zlib-1.2.3.tar.gz

由于 zlib 库的cONfigure 脚本不支持交叉编译选项,可以采用以下方法来解决:

1)CC=ARM-softfloat-Linux-gnu-gcc ./configure --prefix=/*你的安装目录*/ --shared

注意:这里配置指向 --prefix=/*你的安装目录*/,会自动安装在 --prefix=/*你的安装目录*/ [include,lib] 目录下,

千万不要装错目录了,不然后面会找不到这个库的。

2)make

3)make inSTall

安装完后检查一下目录 --prefix=/*你的安装目录*/[include,lib] ,假如 include 中没有 zlib.h 之类的头文件,lib 中没有 libz.so.1.2.3 ,那就自己手动拷到这些目录下去,记着拷的时候把所有的 *.h 都需要拷过去,在拷库的时候用 cp –a libz.* /…./lib 就行,要用上 –a 选项

2、编译mtd-utils:

下载mtd-utils-1.0.0.tar.gz:

ftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.0.0.tar.gz

解压目录为mtd-utils-1.0.0

#cd mtd-utils-1.0.0

1) 修改Makefile

CROSS=arm-softfloat-linux-gnu-

2) make ( 用file命令查看,如 file mkfs.jffs2 )

#file mkfs.jffs2

mkfs.jffs2: ELF 32-bit LSB executable, ARM, version 1 (ARM), for GNU/Linux 2.0.0, dynamically linked (uses shared libs), for GNU/Linux 2.0.0, not stripped

可知:交叉编译成功。

因为格式化flash分区是在板子上运行的,所以要交叉编译,这个概念一定要分清楚。

编译好后将生成的flash_eraseall工具拷贝你的文件系统下的usr/bin下

flash_eraseall /dev/mtd/x

擦除干净后再

mount -t yaffs /dev/mtdblock/x /mnt

即可挂上了yaffs分区,解释一下什么是/dev/mtd/x和/dev/mtdblock/x

/dev/mtd/x 是字符设备 mtd设备的主设备号为90,至于次设备号:单数为只读,双数为读写。《构建嵌入式LINUX系统》一书有介绍,可以参考一下

/dev/mtdblock/x 是块设备

最后在linuxrc下添加一句话就可以实现分区的自动挂载了

/bin/mount -t yaffs /dev/mtdblock2 /mnt/yaffs

部署文件系统到开发板上

我的分区信息

dev: size erasesize name

mtd0: 00100000 00004000 "bootloader" //1M

mtd1: 00400000 00004000 "linux-kernel" //4M

mtd2: 02000000 00004000 "cramfs-partition" //32M

mtd3: 01b00000 00004000 "yaffs-partition" //27M

flash烧写命令和分区设置要和内核设置是一样的

烧写内核

tftp 30008000 zImage

nand erase 100000 400000

nand write 30008000 100000 400000

烧写cramfs文件系统

tftp 30008000 rootfs.cramfs

nand erase 500000 2000000

nand write 30008000 500000 2000000

启动参数设置

setenv bootargs root=1f02 console=ttySAC0,115200 init=/linuxrc devfs=mount display=sam240

setenv bootcmd nand read 30008000 100000 400000 ; go 30008000

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

(全球TMT2023年9月15日讯)近日,由数字化整合增值服务商——柯尼卡美能达(中国)投资有限公司发起的“握爪之约,追光未来”导盲犬爱心公益活动暨捐赠仪式于西安阳光使者导盲犬学校举行。 本次活动,柯尼卡...

关键字: 数字化 MT

(全球TMT2023年9月11日讯)万代南梦宫(上海)娱乐有限公司与广东世宇科技股份有限公司就“航海王 联合激斗”项目中国版正式启动合作。 在本次“航海王 联合激斗”中国游戏游艺设备版合作中,万代南梦宫游...

关键字: 游戏机 MT

马来西亚吉隆坡2023年9月11日 /美通社/ -- 近期,Finance Magnates发布了2023年第二季度行业报告,ATFX以季度总交易量超过5,310亿美元的不俗表现,强势荣登全球第五。 细化到各项数据增长...

关键字: MT AN ASIC CHINA

(全球TMT2023年9月8日讯)9月6日,2023数字贸易发展论坛在北京国家会议中心举办。软通动力与菲律宾驻华使馆贸易与投资中心、迪拜商会中国创新中心、首都知识产权服务业协会、北京市海淀服务贸易和服务外包企业协会、北...

关键字: 数字化 MT

(全球TMT2023年9月7日讯)近期,华测检测认证集团股份有限公司(简称CTI华测检测)完成了对安徽风雪网络安全测评有限公司(简称风雪网安)的控股权收购;风雪网安就该股权收购交易向行业监管部门进行了报备,并成功通过了...

关键字: TI 网络安全 防护 MT

(全球TMT2023年9月7日讯)伟创力发布《2023可持续发展报告》,重点介绍了公司2022年的全球可持续发展活动、表现和结果。该报告揭示了伟创力在实现2030可持续发展目标方面所取得的进展,包括减少对环境的影响、投...

关键字: 伟创力 可持续发展 TC MT

(全球TMT2023年9月7日讯)思享无限控股有限公司公布其截至2023年6月30日的2023财年第二季度暨上半年财务业绩。2023年第二季度,营收为人民币3.632亿元(约5,010万美元),而2022财年同期营收为...

关键字: MT

北京2023年9月5日 /美通社/ -- 2023年9月1日,爱立信在IMT-2020(5G) 推进组的指导下,率先成功完成了5G-A宽带实时交互- L4S测试,成功展示了L4S在减少宽带实时交互式业务时延方面的优势,进...

关键字: 宽带 爱立信 通信 MT

(全球TMT2023年9月4日讯)2023上半年,安集科技市场拓展规划成效显现,营业收入稳健增长。2023上半年营业收入574.91百万元,同比增长14.21%;净利润235.01百万元,同比增长85.25%;扣非归母...

关键字: 安集科技 MT

(全球TMT2023年8月31日讯)网龙网络控股有限公司公布2023年中期财务业绩。2023年上半年,收益为人民币36.8亿元,同比减少13%。经营溢利为人民币7.0亿元,同比减少6%;非公认会计准则经营溢利为人民币6...

关键字: 网络 MT
关闭
关闭