Hello all,
I have added the code that is necessary to boot up the AP's, but I haven's
put it to CVS so far because it is still causing strange errors (the APIC
count register reads a useless value). I'll try to debug it in the next
days. I have also started a thread on this in the forum.
Besides that, I found that AMD SimNow! is a great tool for testing SMP code
because it can debug all CPU's separately and not only the BSP as bochs
does. It will become even more useful once we target an x86_64 architecture
and switch to long mode, but it also works fine in legacy i386 mode. The
only disadvantage is that it only runs on x86_64 machines... BTW, bochs
seems to have a bug in the APIC code when x86_64 support is enabled...
Unfortunately it took me a little longer to return to the project because I
gathered some experience in setting up multitasking on SMP machines and
ported my own small kernel to x86_64. But now I am pretty optimistic that
Trion will also take this important step.
Regards,
Manuel
|