Package2: Difference between revisions
Update KIP1 format |
|||
Line 145: | Line 145: | ||
=== INI1 === | === INI1 === | ||
This is "Initial Process List". | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
Line 152: | Line 154: | ||
|- | |- | ||
| 0x0 | | 0x0 | ||
| | | 0x4 | ||
| Magic "INI1" | | Magic "INI1" | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | 0x4 | ||
| Size | | Size | ||
|- | |- | ||
| 0x8 | | 0x8 | ||
| | | 0x4 | ||
| | | Number of KIPs (Must be lower than 0x51) | ||
|- | |- | ||
| 0xC | | 0xC | ||
| | | 0x4 | ||
| | | Reserved | ||
|} | |} | ||
==== KIP1 ==== | ==== KIP1 ==== | ||
Kernel Initial Process. | This is "Kernel Initial Process". | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 178: | Line 180: | ||
|- | |- | ||
| 0x0 | | 0x0 | ||
| | | 0x4 | ||
| Magic "KIP1" | | Magic "KIP1" | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | 0xC | ||
| Name | | Name | ||
|- | |- | ||
| 0x10 | | 0x10 | ||
| | | 0x8 | ||
| | | Program ID | ||
|- | |- | ||
| 0x18 | | 0x18 | ||
| | | 0x4 | ||
| | | Version | ||
|- | |- | ||
| 0x1C | | 0x1C | ||
| | | 0x1 | ||
| Main | | Main Thread Priority | ||
|- | |- | ||
| 0x1D | | 0x1D | ||
| | | 0x1 | ||
| | | Main Thread Core Number | ||
|- | |- | ||
| 0x1E | | 0x1E | ||
| | | 0x1 | ||
| Reserved | | Reserved | ||
|- | |- | ||
| 0x1F | | 0x1F | ||
| | | 0x1 | ||
| Flags | | Flags (bit0=TextCompress, bit1=RoCompress, bit2=DataCompress, bit3=Is64BitInstruction, bit4=ProcessAddressSpace64Bit, bit5=[2.0.0+] UseSecureMemory) | ||
|- | |- | ||
| 0x20 | | 0x20 | ||
| [[# | | 0xC | ||
| | | Text [[#Segment_Header|Segment Header]] | ||
|- | |||
| 0x2C | |||
| 0x4 | |||
| Reserved | |||
|- | |||
| 0x30 | |||
| 0xC | |||
| Ro [[#Segment_Header|Segment Header]] | |||
|- | |||
| 0x3C | |||
| 0x4 | |||
| Main Thread Stack Size | |||
|- | |||
| 0x40 | |||
| 0xC | |||
| Data [[#Segment_Header|Segment Header]] | |||
|- | |||
| 0x4C | |||
| 0x4 | |||
| Reserved | |||
|- | |||
| 0x50 | |||
| 0xC | |||
| Bss [[#Segment_Header|Segment Header]] | |||
|- | |||
| 0x5C | |||
| 0x24 | |||
| Reserved (2 unused [[#Segment_Header|Segment Headers]]) | |||
|- | |- | ||
| 0x80 | | 0x80 | ||
| | | 0x80 | ||
| [[NPDM#KernelCapability|Kernel Capability Data]] | |||
|} | |} | ||
===== | ===== Segment Header ===== | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Offset | ! Offset | ||
! | ! Size | ||
! Description | ! Description | ||
|- | |- | ||
| 0x0 | | 0x0 | ||
| | | 0x4 | ||
| | | Offset | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| | | 0x4 | ||
| | | Decompressed Size | ||
|- | |- | ||
| 0x8 | | 0x8 | ||
| | | 0x4 | ||
| | | Compressed Size | ||
|} | |} | ||