KClassToken: Difference between revisions

Bond697 (talk | contribs)
No edit summary
mNo edit summary
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Kernel objects]]
[[Category:Kernel objects]]
Size : 0x5 bytes
Size : 0x5 bytes


Line 11: Line 9:
|-
|-
| 0x0
| 0x0
| char*
| const char *
| Pointer to kernel type string
| Pointer to kernel type string
|-
|-
Line 18: Line 16:
| Kernel object descriptive bitflags
| 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.
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 =
= Bitflags =
Line 53: Line 49:
|  
|  
|}
|}


== Bitflags and their corresponding objects ==
== Bitflags and their corresponding objects ==
0 1 0 1 1 0 0 1 | 0x59 - KDmaObject<br>
{| class="wikitable sortable" border="1"
0 0 1 0 1 1 1 1 | 0x2F - KSemaphore<br>
|-
0 0 0 0 0 0 0 0 | 0x00 - KAutoObject<br>
! colspan="8"|Bits
0 1 1 0 0 1 0 1 | 0x65 - KClientPort<br>
! rowspan="2"|Value
0 1 0 1 0 1 0 1 | 0x55 - KServerPort<br>
! rowspan="2"|Associated class
1 0 1 1 0 0 0 0 | 0xB0 - KSharedMemory<br>
|-
1 0 1 0 0 1 0 1 | 0xA5 - KClientSession<br>
! 7
1 1 0 0 1 0 0 0 | 0xC8 - KResourceLimit<br>
! 6
1 0 0 1 0 1 0 1 | 0x95 - KServerSession<br>
! 5
1 0 0 1 1 0 0 0 | 0x98 - KAddressArbiter<br>
! 4
0 0 0 0 0 0 0 1 | 0x01 - KSynchronizationObject<br>
! 3
1 0 1 0 1 0 0 0 | 0xA8 - KPort<br>
! 2
0 0 0 1 1 1 1 1 | 0x1F - KEvent<br>
! 1
0 0 1 1 1 0 0 1 | 0x39 - KMutex<br>
! 0
0 0 1 1 0 1 0 1 | 0x35 - KTimer<br>
|-
0 1 0 0 1 1 0 1 | 0x4D - KDebug<br>
| 0
1 0 0 0 1 1 0 1 | 0x8D - KThread<br>
| 0
0 1 1 0 1 0 0 0 | 0x68 - KCodeSet<br>
| 0
1 1 0 0 0 1 0 1 | 0xC5 - KProcess<br>
| 0
0 1 1 1 0 0 0 0 | 0x70 - KSession<br>
| 0
| 0
| 0
| 0
| 0x0
| [[KAutoObject]]
|-
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 1
| 0x1
| [[KSynchronizationObject]]
|-
| 0
| 0
| 0
| 1
| 1
| 1
| 1
| 1
| 0x1F
| [[KEvent]]
|-
| 0
| 0
| 1
| 0
| 1
| 1
| 1
| 1
| 0x2F
| [[KSemaphore]]
|-
| 0
| 0
| 1
| 1
| 0
| 1
| 0
| 1
| 0x35
| [[KTimer]]
|-
| 0
| 0
| 1
| 1
| 1
| 0
| 0
| 1
| 0x39
| [[KMutex]]
|-
| 0
| 1
| 0
| 0
| 1
| 1
| 0
| 1
| 0x4D
| [[KDebug]]
|-
| 0
| 1
| 0
| 1
| 0
| 1
| 0
| 1
| 0x55
| [[KServerPort]]
|-
| 0
| 1
| 0
| 1
| 1
| 0
| 0
| 1
| 0x59
| [[KDmaObject]]
|-
| 0
| 1
| 1
| 0
| 0
| 1
| 0
| 1
| 0x65
| [[KClientPort]]
|-
| 0
| 1
| 1
| 0
| 1
| 0
| 0
| 0
| 0x68
| [[KCodeSet]]
|-
| 0
| 1
| 1
| 1
| 0
| 0
| 0
| 0
| 0x70
| [[KSession]]
|-
| 1
| 0
| 0
| 0
| 1
| 1
| 0
| 1
| 0x8D
| [[KThread]]
|-
| 1
| 0
| 0
| 1
| 0
| 1
| 0
| 1
| 0x95
| [[KServerSession]]
|-
| 1
| 0
| 0
| 1
| 1
| 0
| 0
| 0
| 0x98
| [[KAddressArbiter]]
|-
| 1
| 0
| 1
| 0
| 0
| 1
| 0
| 1
| 0xA5
| [[KClientSession]]
|-
| 1
| 0
| 1
| 0
| 1
| 0
| 0
| 0
| 0xA8
| [[KPort]]
|-
| 1
| 0
| 1
| 1
| 0
| 0
| 0
| 0
| 0xB0
| [[KSharedMemory]]
|-
| 1
| 1
| 0
| 0
| 0
| 1
| 0
| 1
| 0xC5
| [[KProcess]]
|-
| 1
| 1
| 0
| 0
| 1
| 0
| 0
| 0
| 0xC8
| [[KResourceLimit]]
|}