bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Comments about SMP


From: Almudena Garcia
Subject: Comments about SMP
Date: Sun, 3 Feb 2019 19:45:21 +0100

Hi all:

I'm researching about SMP support in Mach microkernel, reading code and reviewing old messages in maillist.

Mach 4 code can be downloaded from here: ftp://ftp.lip6.fr/pub/mach/mach4/mach/

And, exploring old code, I'm find some interesting things:

At first time, I found that Mach 4 also had a implementation of cpu_number() (in kernel/imps/cpu_number.h), with this:

static inline int
cpu_number()
{
    return apic_local_unit.unit_id.r >> 24;
}

Later, also in Mach 4, I found an old implementation of APIC support. This code also existed in gnumach, but was removed in 2009/

http://git.savannah.gnu.org/cgit/hurd/gnumach.git/commit/i386/imps/apic.h?id=0266d331d780ff0e595eda337a3501ffbfea9330

I see that this contains interesting structures to read ACPI registers. Why this code was removed? May could be interesting recover It fot SMP support.


Added to this, I've found this another commit from 2007.

In this commit, was added some functions related with SMP support, for cpu booting. This functions are pretty similar to imps.c functions from Mach 4.

But, in cpu_start() function, there are a call to intel_startCPU(). I was searching this function in Mach 4 and gnumach code. but I didn't find It.

What must to do this function? Some months ago, I found a similar function in XNU source code, but It's not trivial. Can you explain me more about this?

If you could to reply my questios, I will be grateful

Also, If someone can explain me about SMP support status in Mach 4, and the diferences with gnumach, It's could be very useful.

Thanks.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]