These four characters represent segment descriptors . The two least significant bits of these descriptors contain the privilege level associated with them , and the third least significant bit contains the type of the descriptor table ( GDT or LDT ). This becomes clearer when the code appears a bit later:
#define USER_RPL 0x3
#define SEGMENT_LDT 0x4
#define SEGMENT_GDT 0x0
#define SEGMENT_RPL_MASK 0x3
#define SEGMENT_TI_MASK 0x4
8, , OR ed ( ):
#define __KERNEL_CS (GDT_ENTRY_KERNEL_CS*8)
#define __USER_CS (GDT_ENTRY_DEFAULT_USER_CS*8+3)