Difference between revisions of "IPSW File Format"

From The iPhone Wiki
Jump to: navigation, search
(Example)
Line 27: Line 27:
   
 
== Example ==
 
== Example ==
This is a ls -alR from the shell of an extracted iPhone 3GS Firmware ipsw.
+
This is a ls -alR of an extracted iPhone 3GS Firmware ipsw.
   
 
<pre>total 608400
 
<pre>total 608400

Revision as of 00:10, 18 July 2009

IPSW (guess IPhone/ IPod SoftWare) Files have the Magic Number 504B0304 (PK\003\004) and thus are ZIP Archives. They can be modified with typical zip/unzip tools (i.e. change extension to .zip and double click). An IPSW File is used to deliver the iPod Touch / iPhone firmware to the end-user.

IPSW Contents

root folder

  • Restore Ramdisk
  • Update Ramdisk (Firmware 1.0 didn't contain an Update Ramdisk as there is no official firmware to update from)
  • Filesystem Ramdisk (the largest .dmg file)
  • kernelcache.release.XXX file (hardware specific)
  • BuildManifest.plist (first appeared in firmware 3.0, I guess)
  • Restore.plist file
  • \Firmware (Folder)

Firmware Folder

  • \all_flash\all_flash.XXXXXX.production (Folder)
  • \DFU (Folder)

all_flash.XXXXXX.production Folder

  • img2/img3 files
  • manifest

DFU Folder

  • iBEC.XXX.DFU
  • iBSS.XXX.DFU
  • WTF.XXX.DFU (disappeared in 3.0, I guess)

Example

This is a ls -alR of an extracted iPhone 3GS Firmware ipsw.

total 608400
drwx------@ 11 m  staff        374 17 Jun 07:11 .
drwxrwxrwx   5 m  staff        170 18 Jul 07:34 ..
-rw-r--r--@  1 m  admin  281214976 22 Mai 17:10 018-5302-002.dmg
-rw-r--r--@  1 m  admin   12769604 22 Mai 16:59 018-5304-002.dmg
-rw-r--r--@  1 m  admin   12777796 22 Mai 16:59 018-5306-002.dmg
-rw-r--r--   1 m  admin      21097 22 Mai 17:29 BuildManifest.plist
drwxr-xr-x@  5 m  staff        170 17 Jun 07:11 Firmware
-rw-r--r--   1 m  admin       1763 22 Mai 17:10 Restore.plist
-rw-r--r--@  1 m  staff    4695492 22 Mai 14:32 kernelcache.release.s5l8920x

./Firmware:
total 16
drwxr-xr-x@  5 m  staff   170 17 Jun 07:11 .
drwx------@ 11 m  staff   374 17 Jun 07:11 ..
drwxr-xr-x@  4 m  staff   136 18 Jun 02:10 all_flash
drwxr-xr-x@  4 m  staff   136 22 Mai 13:39 dfu

./Firmware/all_flash:
total 16
drwxr-xr-x@  4 m  staff   136 18 Jun 02:10 .
drwxr-xr-x@  5 m  staff   170 17 Jun 07:11 ..
drwxr-xr-x@ 16 m  staff   544 22 Mai 13:43 all_flash.n88ap.production

./Firmware/all_flash/all_flash.n88ap.production:
total 1320
drwxr-xr-x@ 16 m  staff     544 22 Mai 13:43 .
drwxr-xr-x@  4 m  staff     136 18 Jun 02:10 ..
-rw-r--r--@  1 m  staff   44996 22 Mai 13:08 DeviceTree.n88ap.img3
-rw-r--r--@  1 m  staff   67908 22 Mai 13:12 LLB.n88ap.RELEASE.img3
-rw-r--r--@  1 m  staff    9604 22 Mai 13:15 applelogo.s5l8920x.img3
-rw-r--r--@  1 m  staff   19716 22 Mai 13:15 batterycharging0.s5l8920x.img3
-rw-r--r--@  1 m  staff   24900 22 Mai 13:16 batterycharging1.s5l8920x.img3
-rw-r--r--@  1 m  staff   76100 22 Mai 13:16 batteryfull.s5l8920x.img3
-rw-r--r--@  1 m  staff   56772 22 Mai 13:16 batterylow0.s5l8920x.img3
-rw-r--r--@  1 m  staff   65348 22 Mai 13:17 batterylow1.s5l8920x.img3
-rw-r--r--@  1 m  staff   20356 22 Mai 13:17 glyphcharging.s5l8920x.img3
-rw-r--r--@  1 m  staff   19332 22 Mai 13:18 glyphplugin.s5l8920x.img3
-rw-r--r--@  1 m  staff  178500 22 Mai 13:21 iBoot.n88ap.RELEASE.img3
-rw-r--r--@  1 m  staff     341 22 Mai 13:43 manifest
-rw-r--r--@  1 m  staff   20484 22 Mai 13:24 needservice.s5l8920x.img3
-rw-r--r--@  1 m  staff   47876 22 Mai 13:24 recoverymode.s5l8920x.img3

./Firmware/dfu:
total 416
drwxr-xr-x@ 4 m  staff     136 22 Mai 13:39 .
drwxr-xr-x@ 5 m  staff     170 17 Jun 07:11 ..
-rw-r--r--@ 1 m  staff  104772 22 Mai 13:30 iBEC.n88ap.RELEASE.dfu
-rw-r--r--@ 1 m  staff  104772 22 Mai 13:36 iBSS.n88ap.RELEASE.dfu