Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Frank_Miller
Beginner
75 Views

Source code for kernel level multi-core initialization

I tried this about six months ago but thought I would ask again. I have a small multi-threaded kernel written for ia32. I'd like to extend it to use multi-core support. I have read through the data books and white papers on smp and ipi so I have an idea what needs to be done. I've also spent some time looking through the Linux and FreeBSD code to see what they do. What I'm wondering is whether Intel provides source code examples (C or assembly) that will initialize a multi-core capable CPU to begin executing in multi-core mode.

Thanks,

FM

0 Kudos
4 Replies
Adam
Beginner
75 Views

Quoting - Frank Miller

I tried this about six months ago but thought I would ask again. I have a small multi-threaded kernel written for ia32. I'd like to extend it to use multi-core support. I have read through the data books and white papers on smp and ipi so I have an idea what needs to be done. I've also spent some time looking through the Linux and FreeBSD code to see what they do. What I'm wondering is whether Intel provides source code examples (C or assembly) that will initialize a multi-core capable CPU to begin executing in multi-core mode.

Thanks,

FM

What sort of kernel is it? If it is a microkernel, see if you can find source code for one of the L4 kernels (such as L4Ka::Pistachio) and see how it works. Are you comfortable with providing details about your kernel (not all the kernel source code is needed, just details with necessary code)

NOTE: I have been through L4Ka::Pistachio, but only the one for IA-64, I'm not sure if what you're looking for is with the IA-32 port

Try this: http://l4ka.org/projects/pistachio/

Adam
Beginner
75 Views

Having said what I said before, I am NOT basing my OS on L4Ka::Pistachio for various reasons
TimP
Black Belt
75 Views

Quoting - Adam Kachwalla

Does that mean you take the term "kernel" in a similar sense to Pistachio (whatever sense that may be)? You seem to be so intentionally vague in your terminology that no one could answer you. A kernel might be part of the linux OS, e a core computational resource for an application, or a component of a benchmark.

Adam
Beginner
75 Views

Quoting - tim18
Quoting - Adam Kachwalla

Does that mean you take the term "kernel" in a similar sense to Pistachio (whatever sense that may be)? You seem to be so intentionally vague in your terminology that no one could answer you. A kernel might be part of the linux OS, e a core computational resource for an application, or a component of a benchmark.

No. The kernel I am refering to is known as L4Ka::Pistachio. I am not saying that the kernel is a pistachio. Google L4Ka::Pistachio and this should pop up a few results

Reply