Some confusing code of the kernel

Yuxin Ren ryx at
Tue May 27 23:51:31 CEST 2014


Now I am learning the kernel code of Fiasco.
But as I do not know much about C++, I feel confused about some code.

In the file obj_space-virt.cpp, we have such code
EXTENSION class Generic_obj_space : Obj_space_virt<Generic_obj_space<SPACE>

And similarly, in the file obj_space-phys.cpp, we have
EXTENSION class Generic_obj_space : Obj_space_phys<Generic_obj_space< SPACE
> >

1. What's the meaning of these tow line code? Does it mean that the class
inherit from both class Obj_space_virt and class Obj_space_phys?

2. I note that class Obj_space_virt and Obj_space_phys have some methods
with the same name,
such as lookup_local method. When such a method is called, how can I know
which class is invoked?

Thanks a lot.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the l4-hackers mailing list