Secure LPAR Loader: Difference between revisions
Jump to navigation
Jump to search
(kudos to graf/glevand for this reverse engineering) |
mNo edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
*SLL opens '''lv2_kernel.self''', parses ELF header and determines the size of initial memory region for GameOS LPAR | *SLL opens '''lv2_kernel.self''', parses ELF header and determines the size of initial memory region for GameOS LPAR | ||
*SLL creates a memory region for GameOS LPAR by using '''syscall 0x10000'''. | *SLL creates a memory region for GameOS LPAR by using '''syscall 0x10000'''. | ||
Line 6: | Line 5: | ||
*Linux is not loaded by SLL, it's loaded in Process 9 by Linux System Manager | *Linux is not loaded by SLL, it's loaded in Process 9 by Linux System Manager | ||
*GameOS file image '''lv2_kernel.self''' is stored on '''/dev/rflash1''' | *GameOS file image '''lv2_kernel.self''' is stored on '''/dev/rflash1''' | ||
note: inside ss_server3.fself | |||
== 0x14000 - SLL (Secure LPAR Loader) == | == 0x14000 - SLL (Secure LPAR Loader) == | ||
Line 15: | Line 13: | ||
! Packet ID | ! Packet ID | ||
! Description | ! Description | ||
! Lv1 Parameter Usage | |||
! notes | |||
|- | |||
| 0x14003 | |||
| Shutdown GOS | |||
| | |||
| | |||
|- | |- | ||
| 0x14004 | | 0x14004 | ||
| Load GOS | | Load GOS | ||
| | |||
| | |||
|- | |- | ||
| 0x14005 | | 0x14005 | ||
| Unload GOS | | Unload GOS | ||
| | |||
| | |||
|} | |} | ||
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude> |
Latest revision as of 09:43, 21 July 2014
- SLL opens lv2_kernel.self, parses ELF header and determines the size of initial memory region for GameOS LPAR
- SLL creates a memory region for GameOS LPAR by using syscall 0x10000.
- SLL opens /proc/partitions/<LPAR id>/mem file and maps it with mmap syscall into it's address space.
- Then it authenticates, decrypts and copies the SELF file of GameOS to LPAR's memory region by using SPE syscalls 0x10040 and 0x10042.
- Linux is not loaded by SLL, it's loaded in Process 9 by Linux System Manager
- GameOS file image lv2_kernel.self is stored on /dev/rflash1
note: inside ss_server3.fself
0x14000 - SLL (Secure LPAR Loader)[edit | edit source]
Packet ID | Description | Lv1 Parameter Usage | notes |
---|---|---|---|
0x14003 | Shutdown GOS | ||
0x14004 | Load GOS | ||
0x14005 | Unload GOS |