Hello everyone,
I'm adding the SMP support on an existing (and well working) x86-64 OS.
The cible for this OS is an Intel Core i7 platform with one i7 620LE (embedded cpu with 2 core plus HT).
I've started by reading the Intel's Developpers Manual, especially chapter 8 : Multiple-Processor Management.
It encouraged me to read the Intel's MultiProcessor Specification.
I've understood that the OS must have acces to information about the hardware by reading the MP Configuration Table.
I've followed the chapter 4. My OS found the MP Table. But when parsing the MP Configuration Table Entries, there is only one Processor Entry.
Is it normal ?
Maybe there is a thing i've not understand with MP in unique package...
In the BIOS, MP and HT is well activated.
Also by reading the BSD or Linux source code it's seem that the MP Configuration Table is not used for obtaining the Local APIC IDs of the differents cpus.
But, again, I've understood that's the way recommended by Intel...
I hope i was enough clear.
If I made grammar or spelling mistake, please excuse me, I have not yet a good command of English.
Thanks in advance for your help.
SMP Development - MP Table - Only One Processor Entry
Re: SMP Development - MP Table - Only One Processor Entry
As i understand it the MP tables arent really supported any more and are just 'legacy' data which you cant rely on. You should start by looking for the APICs and/or querying ACPI and then fall back to MP tables as a last resort in my opinion...
Re: SMP Development - MP Table - Only One Processor Entry
Quite likely so. On modern CPUs, MP tables doesn't seem to be implemented, and ACPI is the preferred method. On older machines, MP tables might be implemented and correct, but those also have ACPI, so I don't see why you would bother with MP tables. I have a range of multicore test machines, ranging back at least 10 years, and all of them works with ACPI. When I went multicore, I did look at MP tables, but when I found they were not implemented / reliable, I simply dropped the idea of supporting them and went on to ACPI instead.brain wrote:As i understand it the MP tables arent really supported any more and are just 'legacy' data which you cant rely on. You should start by looking for the APICs and/or querying ACPI and then fall back to MP tables as a last resort in my opinion...
Re: SMP Development - MP Table - Only One Processor Entry
I doubt my Tyan Thunder 2ATX would work without MP table support lol.. but do you want to support a machine that old (dual slot PII)
Cb88
Cb88
Re: SMP Development - MP Table - Only One Processor Entry
First, many thanks to the three of you !
So I'm parsing now the ACPI table.
Just for information I've tested on another hardware (i7 3770 on Asus Motherboard) and the MP Table was correctly filled
So thank you again !
So I'm parsing now the ACPI table.
Just for information I've tested on another hardware (i7 3770 on Asus Motherboard) and the MP Table was correctly filled
So thank you again !