闪存文件系统: Difference between revisions
Jump to navigation
Jump to search
m update to follow English page |
m update to follow english one |
||
Line 12: | Line 12: | ||
===分区=== | ===分区=== | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! 名称 | ! 名称 | ||
! 偏移 | |||
! 长度 | |||
! 注释 | ! 注释 | ||
|- | |||
| twln | |||
| 0x00012E00 | |||
| 0x08FB5200 | |||
| TWL-NAND的FAT16文件系统(DSi) | |||
|- | |||
| twlp | |||
| 0x09011A00 | |||
| 0x020B6600 | |||
| TWL-NAND照片的FAT12文件系统(DSi) | |||
|- | |||
| | |||
| 0x0B100000 | |||
| 0x00030000 | |||
| 一般在这段全部是零 | |||
|- | |- | ||
| firm0 | | firm0 | ||
| | | 0x0B130000 | ||
| 0x00400000 | |||
| [[FIRM|固件]]分区 | |||
|- | |- | ||
| firm1 | | firm1 | ||
| | | 0x0B530000 | ||
| 0x00400000 | |||
| [[FIRM|固件]]分区(是备份,和上面一样) | |||
|- | |||
| | |||
| 0x0B930000 | |||
| 0x2F5D0000 | |||
| CTR-NAND分区(3DS) | |||
|- | |- | ||
| nand | | nand | ||
| | | 0x0B95CA00 | ||
| 0x2F3E3600 | |||
| | | CTR-NAND的FAT16文件系统 | ||
| | |||
|} | |} | ||
3DS中NAND的TWL的FAT分区FAT卷标名"TWL",而CTR的FAT分区则是"CTR"。TWL分区的偏移和长度存在MBR分区表,而CTR分区表信息存在NAND的NCSD头。CTR-NAND分区的扇面0有一个MBR分区表,而MBR的签名在+0x1fe位置。在这个分区表中只有一个分区就是CTR-NAND的FAT16分区。 | |||
以上除过TWLP,没有一个NAND物理分区可以使用ARM11直接读取。CTR/TWL的NAND文件系统只能当exheader访问控制描述符启用时候访问。对于零售版机器中的[[NCCH#CXI|CXI]]进程,CTR/TWL的NAND描述符一般都是未启用的状态。ARM11只能将"nand:/rw/"挂载为"nandrw"的[[FS:OpenArchive|归档]],而"nand:/ro/"则挂载为如下的nandro归档。 | |||
=CTR-NAND文件分区= | =CTR-NAND文件分区= |
Revision as of 13:26, 1 April 2013
N3DS的NAND闪存芯片容量为1GB。
格式
任天堂3DS的闪存文件格式目前尚未公开,闪存芯片可以通过主板上的输出针脚进行内容提取,这已经成功了。然而提取出来的数据被加密了,不解密无法理解。
文件系统
每个NAND分区皆为FAT文件系统。
加密
NAND文件系统使用AES-CTR加密。NAND中TWL区域使用TWL的NAND密码键,而CTR区域使用CTR的NAND密码键。用于CTR-NAND扇区的密码键是由NCSD扇区的文件系统类型决定的。TWL/CTR的NAND区域在NCSD头中指定。NAND的最开始0x0B100000字节使用TWL密码键,在0x00012E00之前则只有MBR分区表使用TWL密码键(那个区域包括如下所示的TWL扇区)。
分区
名称 | 偏移 | 长度 | 注释 |
---|---|---|---|
twln | 0x00012E00 | 0x08FB5200 | TWL-NAND的FAT16文件系统(DSi) |
twlp | 0x09011A00 | 0x020B6600 | TWL-NAND照片的FAT12文件系统(DSi) |
0x0B100000 | 0x00030000 | 一般在这段全部是零 | |
firm0 | 0x0B130000 | 0x00400000 | 固件分区 |
firm1 | 0x0B530000 | 0x00400000 | 固件分区(是备份,和上面一样) |
0x0B930000 | 0x2F5D0000 | CTR-NAND分区(3DS) | |
nand | 0x0B95CA00 | 0x2F3E3600 | CTR-NAND的FAT16文件系统 |
3DS中NAND的TWL的FAT分区FAT卷标名"TWL",而CTR的FAT分区则是"CTR"。TWL分区的偏移和长度存在MBR分区表,而CTR分区表信息存在NAND的NCSD头。CTR-NAND分区的扇面0有一个MBR分区表,而MBR的签名在+0x1fe位置。在这个分区表中只有一个分区就是CTR-NAND的FAT16分区。
以上除过TWLP,没有一个NAND物理分区可以使用ARM11直接读取。CTR/TWL的NAND文件系统只能当exheader访问控制描述符启用时候访问。对于零售版机器中的CXI进程,CTR/TWL的NAND描述符一般都是未启用的状态。ARM11只能将"nand:/rw/"挂载为"nandrw"的归档,而"nand:/ro/"则挂载为如下的nandro归档。