I've found MSDN documentation on the purpose of the FS register:
https://msdn.microsoft.com/en-us/library/ms253960(v=vs.90).aspx
which states that:
"In an x86 environment, the FS register points to the current value of the Thread Information Block (TIB) structure."
But I cannot seem to find any rigorous documentation of the purpose of the GS register in a Windows based environment.
Can someone tell me where to look, or give an explanation?