Hi,

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 Generic_obj_space  
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.