Difference between revisions of "KHeapChunkHeader"

From 3dbrew
Jump to navigation Jump to search
(neobrain, you appear to be misunderstanding how MediaWiki redirects work. The other similar pages redirect to this one. There are no other pages with this content on them.)
Line 1: Line 1:
 
[[Category:Kernel objects]]
 
[[Category:Kernel objects]]
{{stub}}
 
memchunkhdr = a data structure describing chunks of memory allocated by the ARM11 kernel.
 
  
Here is some code describing the layout of a memory chunk header.
+
This is the header that the kernel uses to implement the FCRAM heap.
  
    struct MemoryChunkHeader {
+
Size : 0xC bytes?
        int num_pages; // size of this chunk in terms of small pages
 
        void* next;
 
        void* prev;
 
        int unk1;
 
        int unk2;
 
    };
 
  
The "next" and "prev" members are used to implement a linked-list. In fact, chances are this is actually a kernel object inherited from [[KLinkedList]].
+
{| class="wikitable" border="1"
 +
|-
 +
!  Offset
 +
! Type
 +
!  Description
 +
|-
 +
| 0x0
 +
| u32
 +
| Size (in 4K pages)
 +
|-
 +
| 0x4
 +
| KHeapHeader*
 +
| Next
 +
|-
 +
| 0x8
 +
| KHeapHeader*
 +
| Prev
 +
|}

Revision as of 12:19, 27 September 2015


This is the header that the kernel uses to implement the FCRAM heap.

Size : 0xC bytes?

Offset Type Description
0x0 u32 Size (in 4K pages)
0x4 KHeapHeader* Next
0x8 KHeapHeader* Prev