Size : 0x5 bytes
Offset | Type | Description |
---|---|---|
0x0 | char* | Pointer to kernel type string |
0x4 | u8 | Kernel object descriptive bitflags |
Each type of kernel object has a token that describes it. The token is used to make sure that a kernel object of a certain type is able to perform a function requested by the kernel.
Bitflags
Bit | Description |
---|---|
0 | Can synchronize |
1 | Is interruptible |
2 | |
3 | |
4 | |
5 | |
6 | |
7 |
Bitflags and their corresponding objects
Bits | Value | Associated class | |||||||
---|---|---|---|---|---|---|---|---|---|
1 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0x59 | KDmaObject |
1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0x55 | KServerPort |
1 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0xC5 | KProcess |
1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0x35 | KTimer |
0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0xB0 | KSharedMemory |
0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 0xC8 | KResourceLimit |
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0x01 | KSynchronizationObject |
0 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0x70 | KSession |
0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0xA8 | KPort |
1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0x2F | KSemaphore |
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0x4D | KDebug |
1 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0x8D | KThread |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0x95 | KServerSession |
0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0x98 | KAddressArbiter |
0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0x68 | KCodeSet |
1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0x1F | KEvent |
1 | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 0x65 | KClientPort |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0x00 | KAutoObject |
1 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0xA5 | KClientSession |
1 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0x39 | KMutex |