mkisofs
- installcdrkit
on arch linuxnasm
Bits | Name | Description |
---|---|---|
1 | Present | Set to 1 for used segments |
2 | Privelage | 00 is highest privelage down to 11 |
1 | Type | 1 if segment is code or data segment |
4 | Type Flags | See below |
4 | Other Flags | See below |
Flag Position | Name | Description |
---|---|---|
1xxx | Executable/Code | Whether this is a code segment |
x1xx | Conforming or Direction | See below |
xx1x | Readable or Writable | See below |
xxx1 | Accessed | Set by the CPU when the segment is being used |
If the executable flag was set then, the second and third flags are:
Flag Position | Name | Description |
---|---|---|
x1xx | Conforming | Whether this code can be executed from lower privelage segments |
xx1x | Readable | Whether this segment is readable |
Otherwise, for data segments, the middle two flags are instead:
Flag Position | Name | Description |
---|---|---|
x1xx | Direction | Whether this code can be executed from lower privelage segments |
xx1x | Writeable | Whether this segment is writeable |
Flag Position | Name | Description |
---|---|---|
1xxx | Granularity | When set, limit *= 0x1000 |
x1xx | 32 Bit | Whether this segment will use 32 bit memory |
xx1x | 64 Bit | Whether this segment will use 64 bit memory |
xxx1 | AVL |