fiasco boot sequence on arm

Qmo (Yi-Sheng) qmosheng at gmail.com
Thu Oct 16 19:39:18 CEST 2008


Dear all,

I am working on a project which porting fiasco to a ARM&DSP platform.
Now I have questions about the fiasco boot sequence in arm side.
First, when doing a workable kernel image, we should use the l4
package *[1]"bootstrap"
(l4/pkg/bootstrap)*
 to encapsulate the needed modules, for example: roottask, sigma0, and the
real fiasco kernel(it means the building image in
kernel/fiasco/builddir/fiasco.image).
And we find the file "l4/pkg/bootstrap/server/src/startup.cc", there are
some source code lines like:

#elif defined(ARCH_arm)
         typedef void (*startup_func)(void);
        * startup_func f = (startup_func)boot_info.kernel_start;*
          f();
 #else
the command line says that "setup the L4 kernel info page before booting the
L4 microkernel",
but we want to know what is the entry point about
*boot_info.kernel_start*in the real fiasco kernel(fiasco.image) source
codes?

And we also find that there is also a file named *[2]bootstrap in
kernel/fiasco/src/kern/arm/bootstrap.cpp*, this file seems to steup the
memory mapping.
So we guess the first bootstrap*[1]* is used to arrange the roottask,
sigma0, etc... in the memory space, then jump to the second
bootstrap*[2]*in fiasco kernel
to setup the needed memory mapping, and finally give the control to the real
fiasco kernel. We want to confirm the steps, or something is wrong?

And the last question, what is the coding style about *IMPLEMENTATION [arm]:
*
in kernel/fiasco/src/kern/arm/ directory, is there any effect when compiling
them?

Thank you very much!

Best Regards,
Qmo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20081017/22c8db0d/attachment.html>


More information about the l4-hackers mailing list