Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Using Multiple CPU Cores in DOS? (Miscellaneous)

posted by RayeR(R) Homepage, CZ, 23.09.2011, 02:27

Today I was on a beer with my friend Rudolf, coreboot developer, and I ask him about multicore usage. He told me it's not hard to use it. System starts with one core enabled and other cores are halted (but they are initialized during POST, e.g. MTRRs are set). You need to program APIC to send a message to second core to start up. You specify an address where the 2nd core will start executing code. It will start in realmode so the address must be <1MB. The APIC is controlled via MMIO acessing some FFxxxxxx registers near top of address range so you need be in pmode or use INT service to access this high address. I don't know anything how APIC works so we didn't discuss it further. He pointed me to sources of SeaBIOS - one of the coreboot possible payload, that there is an example of probing multiple cores and APIC programming. Executing an ISR on 2nd core is possible but it's more complex. It needs to disable legacy PIC and reprogram APIC/LAPIC, I don't remember exactly...
So if anybody have a time and interested, go ahead, start to study how to deal with APIC...

DOS gives me freedom to unlimited HW access.


Complete thread:

Back to the forum
Board view  Mix view
15317 Postings in 1383 Threads, 254 registered users, 16 users online (0 registered, 16 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum