FS Register in Win32
-
27-10-2019 - |
Frage
Ich lese, wie SEH in Win32 implementiert ist, und ich bin auf dieses Ding genannt FS -Register. Ich konnte bei Google nichts Gutes finden (höchstwahrscheinlich suche ich nach dem Falschen). Kann jemand erklären, was es ist?
Lösung
Es ist ein Segmentregister. Der X86 hat sechs davon: CS, DS, ES, SS, FS und GS (FS und GS waren in 80386 neu). Die Mnemonics stammen aus ihren Rollen: Codesegment, Datensegment, erweitertes Segment (tatsächlich ein Hilfsregister), Stack -Segment. Diese Rollen sind in der Semantik von X86-Montageanweisungen fest codiert. FS und GS sind Hilfsmittel wie ES, so dass sie einfach die nächsten Buchstaben nach E. tragen.
Im 32-Bit-geschützten Modus, wie er normalerweise verwendet wird (z. B. in Windows, Linux, *BSD) Seitenberechtigungen. FS verweist auf einen Thread Information Block (TIB) im Benutzermodus und auf die Prozessorsteuerungsregion (KPCR) im Kernel -Modus. Matt Pietrek schrieb eine ziemlich gute Artikel Vor Jahren ist das noch bei MSDN verfügbar.