Greetings all,
I am a little confused about the IDT and GDT on multiproc. Do I need to do lgdt and lidt on all the CPUs or just once.
Well it looks like I am sure it should be done on all procs and I have already coding my OS that way, but I didn't find it in the multiproc initilization part of Intel proc manuals. Can you guys please put some light.
Thanks,
Puneet
IDT GDT on multiproc
- xenos
- Member
- Posts: 1121
- Joined: Thu Aug 11, 2005 11:00 pm
- Libera.chat IRC: xenos1984
- Location: Tartu, Estonia
- Contact:
Re: IDT GDT on multiproc
You need to do perform lgdt and lidt on all CPUs. Each CPU has its own GDT and IDT registers, so they have to be loaded separately. But of course, you can load the same value into each of them, so you need only one copy of the GDT / IDT stored in memory.
Re: IDT GDT on multiproc
Thanks XenOS!!
As I need different TSS for every proc, for thread jump from user to kernel so I have kept separate GDT per processor but same IDT.
Thanks again,
Puneet
As I need different TSS for every proc, for thread jump from user to kernel so I have kept separate GDT per processor but same IDT.
Thanks again,
Puneet