请教ext2和yaffs格式化的代码在哪里

guopeixin 2010-08-09 08:33:04
小弟菜鸟,请教各位大侠:
不知道是不是方法有问题,小弟找了好久没有找到ext2和yaffs格式化的代码。
Linux中ext2和yaffs格式化的源码在哪里?
...全文
543 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
guopeixin 2010-08-20
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 guopeixin 的回复:]
引用 13 楼 guopeixin 的回复:
引用 12 楼 yzx714 的回复:
我也认为是在mkfs这样的工具里面

小弟对linux下的东西不是很熟悉
现在的目的是这样子的,想烧录几个android上的image文件,如system.img和userdata.img,到ata硬件存储器上,然后在os下可以访问这些文件。
因为在android编译的时候,system.img和us……
[/Quote]
再附带说一句,在烧录之前应该先划分好分区吧?
guopeixin 2010-08-20
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 guopeixin 的回复:]
引用 12 楼 yzx714 的回复:
我也认为是在mkfs这样的工具里面

小弟对linux下的东西不是很熟悉
现在的目的是这样子的,想烧录几个android上的image文件,如system.img和userdata.img,到ata硬件存储器上,然后在os下可以访问这些文件。
因为在android编译的时候,system.img和userdata.img已经做成了ext2格式的,也……
[/Quote]
忘记说了一句,mkfs本身应该是将文件格式转换的工具吧
guopeixin 2010-08-20
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 yzx714 的回复:]
我也认为是在mkfs这样的工具里面
[/Quote]
小弟对linux下的东西不是很熟悉
现在的目的是这样子的,想烧录几个android上的image文件,如system.img和userdata.img,到ata硬件存储器上,然后在os下可以访问这些文件。
因为在android编译的时候,system.img和userdata.img已经做成了ext2格式的,也就是说这些镜像本身是经过格式化的,所以应该可以直接将这些image文件烧录到ata设备上。
但是我想,既然想在os中访问这些文件,一定要把它们mount成为folder才可以。
小弟在想,在烧录之前是不是要先把ata设备给按照ext2格式进行一个格式化呢?
思路比较乱,还望大哥指点
yzx714 2010-08-20
  • 打赏
  • 举报
回复
我也认为是在mkfs这样的工具里面
guopeixin 2010-08-20
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 guopeixin 的回复:]
引用 7 楼 deep_pro 的回复:
我的理解应该在存储设备上格式化出来很多片的空间,并有一张表来记录这些空间的位置,最后再将各个yaffs镜像烧录到这些一片一片的空间中。
-----------------------------------
我觉得“格式化出来很多片的空间”不妥当,Linux mtd分区不过是用简单的数据结构把flash按照起始地址、偏移、长度分成逻辑分区而已,并没有……
[/Quote]
前两天在忙其他的东西,现在回过头来在windows下下载查看http://e2fsprogs.sourceforge.net/下面的文件,发现自己下载的好像有问题。
我的下载过程是这样的:
1. 运行Git Bash
2. 在命令串口中输入git clone http://git.kernel.org/?p=fs/ext2/e2fsprogs.git;a=summary
3. 等待数据download结束
4. 下载下来的目录结构如下:
文件夹 PATH 列表
卷序列号为 3C42-3B82
C:.
+---.git
| +---refs
| | +---heads
| | +---tags
| | \---remotes
| | \---origin
| +---hooks
| +---info
| +---objects
| | +---pack
| | \---info
| \---logs
| \---refs
| +---heads
| \---remotes
| \---origin
+---config
+---contrib
| \---python-uuid
+---debian
| \---attic
| \---libs
+---debugfs
+---doc
+---e2fsck
+---ext2ed
| \---doc
+---include
| \---nonunix
| +---asm
| +---linux
| \---sys
+---install-utils
+---intl
+---lib
| +---blkid
| | \---tests
| +---e2p
| +---et
| | \---test_cases
| +---ext2fs
| | \---tdb
| | \---patches
| +---ss
| \---uuid
+---misc
+---po
+---resize
+---tests
| +---d_loaddump
| +---defaults
| +---e_brel_bma
| +---e_icount_normal
| +---e_icount_opt
| +---e_irel_ima
| +---f_16384_block
| +---f_8192_block
| +---f_bad_disconnected_inode
| +---f_bad_local_jnl
| +---f_badbblocks
| +---f_baddir
| +---f_baddir2
| +---f_baddotdir
| +---f_badinode
| +---f_badjour_indblks
| +---f_badjourblks
| +---f_badorphan
| +---f_badprimary
| +---f_badroot
| +---f_badsymlinks
| +---f_badtable
| +---f_bbfile
| +---f_bbinode
| +---f_big_sparse
| +---f_bitmaps
| +---f_clear_xattr
| +---f_crashdisk
| +---f_dir_bad_mode
| +---f_dirlink
| +---f_dup
| +---f_dup2
| +---f_dup3
| +---f_dup4
| +---f_dup_de
| +---f_dup_de2
| +---f_dup_resize
| +---f_dupdot
| +---f_dupfsblks
| +---f_dupsuper
| +---f_ea_checks
| +---f_end-bitmap
| +---f_expand
| +---f_ext_journal
| +---f_extent_bad_node
| +---f_extents
| +---f_extents2
| +---f_extra_journal
| +---f_fast_symlink_extents
| +---f_file_acl_high
| +---f_filetype
| +---f_full_bg
| +---f_h_badnode
| +---f_h_badroot
| +---f_h_normal
| +---f_h_reindex
| +---f_h_unsigned
| +---f_holedir
| +---f_holedir2
| +---f_hurd
| +---f_illbbitmap
| +---f_illibitmap
| +---f_illitable
| +---f_illitable_flexbg
| +---f_imagic
| +---f_imagic_fs
| +---f_journal
| +---f_lotsbad
| +---f_lpf
| +---f_lpf2
| +---f_lpffile
| +---f_messy_inode
| +---f_miss_blk_bmap
| +---f_miss_journal
| +---f_misstable
| +---f_mke2fs2b
| +---f_noroot
| +---f_okgroup
| +---f_orphan
| +---f_orphan_dotdot_ft
| +---f_overfsblks
| +---f_preen
| +---f_recnect_bad
| +---f_reconnect
| +---f_rehash_dir
| +---f_resize_inode
| +---f_salvage_dir
| +---f_selinux
| +---f_special_ea
| +---f_summary_counts
| +---f_uninit_last_uninit
| +---f_unsorted_EAs
| +---f_unused_itable
| +---f_valid_ea_in_inode
| +---f_zero_group
| +---f_zero_inode_size
| +---f_zero_super
| +---m_dasd_bs
| +---m_large_file
| +---m_meta_bg
| +---m_mkfs_overhead
| +---m_no_opt
| +---m_raid_opt
| +---m_std
| +---m_uninit
| +---progs
| | \---test_data
| +---r_inline_xattr
| +---r_move_itable
| +---r_resize_inode
| +---u_mke2fs
| \---u_tune2fs
\---util
对git等东西不太熟悉,不知道对不对?
guopeixin 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 deep_pro 的回复:]
我的理解应该在存储设备上格式化出来很多片的空间,并有一张表来记录这些空间的位置,最后再将各个yaffs镜像烧录到这些一片一片的空间中。
-----------------------------------
我觉得“格式化出来很多片的空间”不妥当,Linux mtd分区不过是用简单的数据结构把flash按照起始地址、偏移、长度分成逻辑分区而已,并没有改写其中的内容。这个最多类似磁盘 MBR的分……
[/Quote]
to:我觉得“格式化出来很多片的空间”不妥当
小弟没有表达清楚,想格式化出来很多分区
to: Linux mtd分区不过是用简单的数据结构把flash按照起始地址、偏移、长度分成逻辑分区而已,并没有改写其中的内容。这个最多类似磁盘 MBR的分……
也是这么想的
to:http://e2fsprogs.sourceforge.net/ext2.html
http://e2fsprogs.sourceforge.net/
哈哈,这个好,git
貌似可以从windows xp环境下下载下来,待会儿试一下,先谢谢大虾了
guopeixin 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 deep_pro 的回复:]
不知道你要什么样的目的
[/Quote]
我的目的是这样的:
将linux/android的相关镜像烧录到的ata设备上,其中与user有关的镜像system.img和userdata.img都是ext2格式的。
deep_pro 2010-08-09
  • 打赏
  • 举报
回复
不知道你要什么样的目的
deep_pro 2010-08-09
  • 打赏
  • 举报
回复
我的理解应该在存储设备上格式化出来很多片的空间,并有一张表来记录这些空间的位置,最后再将各个yaffs镜像烧录到这些一片一片的空间中。
-----------------------------------
我觉得“格式化出来很多片的空间”不妥当,Linux mtd分区不过是用简单的数据结构把flash按照起始地址、偏移、长度分成逻辑分区而已,并没有改写其中的内容。这个最多类似磁盘 MBR的分区表,不算是文件系统级的格式化

http://e2fsprogs.sourceforge.net/ext2.html
http://e2fsprogs.sourceforge.net/
试试

guopeixin 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 deep_pro 的回复:]
按照我的理解,格式化的过程就是在一片存储区域里,建立起类似目录索引的结构的过程
制作好的yaffs镜像直接被烧写到nandflash,格式化的过程就是制作这个镜像的过程

可能有错误,再探讨
[/Quote]
以前是做wince/winmobile的,按照那两个操作系统上的概念来理解的话:格式化的概念和上面大哥提到的是一样的(格式化的过程就是在一片存储区域里,建立起类似目录索引的结构的过程)。
类似android的镜像,一般情况下都有四个甚至更多,其中system.img和userdata.img可以通过编译选项配置成yaffs格式的,而这些镜像都要烧录到存储设备上,我的理解应该在存储设备上格式化出来很多片的空间,并有一张表来记录这些空间的位置,最后再将各个yaffs镜像烧录到这些一片一片的空间中。

linux不是很熟悉,可能有错误

网上搜索到一篇ext2格式化源码(可能能够达到想要的目的)的文章http://www.linuxsir.org/bbs/thread327388.html,可是不知道如何把源码它们给download下来?没有看太明白
大哥能不能帮忙download一下给咱发一份到guopeixin@126.com
deep_pro 2010-08-09
  • 打赏
  • 举报
回复
按照我的理解,格式化的过程就是在一片存储区域里,建立起类似目录索引的结构的过程
制作好的yaffs镜像直接被烧写到nandflash,格式化的过程就是制作这个镜像的过程

可能有错误,再探讨
guopeixin 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 guopeixin 的回复:]
引用 1 楼 deep_pro 的回复:
我想是在他们的配套工具里
mkfs.ext2 mkfs。yaffs2
http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/utils/

哇,大名鼎鼎的aleph one呀,尝试一下
多谢大哥
[/Quote]
不过看起来这个连接应该是对调用者传入的文件进行格式转换吧,可能我的理解不对
guopeixin 2010-08-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 deep_pro 的回复:]
我想是在他们的配套工具里
mkfs.ext2 mkfs。yaffs2
http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/utils/
[/Quote]
哇,大名鼎鼎的aleph one呀,尝试一下
多谢大哥
deep_pro 2010-08-09
  • 打赏
  • 举报
回复
我想是在他们的配套工具里
mkfs.ext2 mkfs。yaffs2
http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/utils/

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧