Re: search CPP u-kernel, i knock in the good dors ?

Paul Boddie <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Message-ID <1660040.6qbrfR5iW2@jason>
On Sunday, 21 March 2021 18:36:11 CET heitai wrote:
> Hi,
> I search a CPP u-kernel, fiasco seems the best way but i see L4 not
> writting in CPP... dude, and the first code i was read isn't commented
> (kernel_console.cpp)

The README.style file in the src directory provides some information about the 
form of the source code:

"Fiasco has been written in C++.  However, it uses C++ in a special
dialect supported by the Preprocess tool [Hohmuth: Preprocess].  In
effect, programmers do not need to write C++ header files, and do not
need to declare (member) functions -- Preprocess automates these
tasks."

https://github.com/kernkonzept/fiasco/blob/master/src/README.style

Apart from learning Pascal in the first year of my computer science degree, I 
never progressed along the path of the Wirth-influenced family of languages, 
but I did once have to write a summary of the Ada language, and the dialect 
used here did cause me to think of that. But I think that I may actually be 
remembering some other language.

Anyway, here's the Preprocess Web page:

http://os.inf.tu-dresden.de/~hohmuth/prj/preprocess/

> may be i thinks my first stuff is comment fiasco... about
> kernel_console, why kconsole ? not native console writing ? may be i
> try to write on...
> i follow learn C++ programming by delanoy in french, may be take some
> time but kconsole seems thinks me to kde console, may be i missing.

I'm not sure I follow your questions here. As someone who is not a developer 
of Fiasco and not particularly familiar with its implementation details, yet 
who has needed to change certain parts of it, trace the execution, and who has 
even tried to port the "user mode" implementation to another architecture, I 
might suggest focusing on something you know quite well already and using that 
as a way in to the code.

For me, this has generally meant focusing on the MIPS architecture 
functionality in src/kern/mips. I had to review board-specific functionality 
in the bsp subdirectory, see how things were done for other boards, and then 
deduce what I needed to define for the hardware of interest to me. 
Occasionally, this meant looking at more general MIPS-related functionality, 
and from there looking at the common kernel functionality. Doing so provided 
some insight into the mechanisms involved.

I would be interested to know if there are some approachable architectural 
documents available for Fiasco that I have so far overlooked, though.

Paul
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.