Clever Geek Handbook
📜 ⬆️ ⬇️

Selector

Selector ( English selector ) - a number stored in a segment register ; it is a 16-bit data structure that is a segment identifier. The selector (in modern architectures) does not indicate the segment itself in memory, but rather its descriptor, in the descriptor table ... The selector “lives” in the segment register (CS, DS, ES, FS, GS, SS).

In real mode, the contents of each segment register is a paragraph number — a 16-byte section of memory aligned to a 16-byte boundary.

In protected mode, each segment register is divided into three parts, as shown below:

  15 3 2 1 0
  + -------------------- +
  |  Index |  TI |  RPL |  
  + -------------------- +

The TI bit in this case indicates which descriptor table should be used (zero corresponds to the global descriptor table, one to the local descriptor table).

The Index field is the number (index) of the descriptor in the descriptor table that should be used when calculating the linear address. Finally, the RPL field is used to control the program’s access rights to the segment and is the requested privilege level. A special case of RPL is the current privilege level - CPL, whose value is in the CS segment register at any time.

See also

  • Segmented memory addressing
  • Segment descriptor
Source - https://ru.wikipedia.org/w/index.php?title=Selector &oldid = 100666798


More articles:

  • Terex
  • Mazrukho, Leon Borisovich
  • Oshkosh PLS
  • Moreno Aransadi Rafael
  • Phalaenopsis cochlearis
  • Coleman, Eddie
  • Filmography Madonna
  • Sukharev, Dmitry Vladimirovich
  • Monteverdi, Claudio
  • Sekhmet

All articles

Clever Geek | 2019