[x86] fs, gs purpose & multicore prog

From: Eric Lacombe
Date: Wed Sep 03 2008 - 05:10:16 EST


Hello,

I've some questions about IA-32e in Linux.

- What is the FS and GS segments role inside the kernel ?
(I was thinking about thread local storage)

- When I do a "mov %fs ..." instruction (in a module), it seems that %fs is
equal to 0 (idem for %gs). Are these registers not always filled ?

- What is the purpose of MSR_FS_BASE and MSR_GS_BASE ?
(I thought they were filled with "gdt[fs_entry].base")

- My last question is about the kernel programation of multi-core (or
multiprocessor)
architecture. I don't see a lot of documentation about that on Internet.
Do you have some docs/urls about this topic.
Maybe someone can briefly explain how the execution flow are given to the
different cores.

Thanks in advance.

Eric
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/