head.S and syscall 201

Johan Högberg mol-general@lists.maconlinux.org
Mon, 20 Jan 2003 23:38:48 +0100


I'm investigating if it's possible to get MOL working on
Simics/PowerPC (http://www.simics.com).
(It will probably be too slow for any serious use, but's
an interesting task and a good test on Simics).

I'm wondering how MOL hooks into the kernel.
When I compare two linux versions (2.4.2 and 2.4.17) I can
see that the 2.4.2 version has MOL_HOOK() macros first in the
exception handlers in head.S.
This makes sense, but the 2.4.17 kernel does not have these.
Could both versions work? How?

Secondly, so far the MOL kernel module loads ok but the mol
application later crashes due to an illegal instruction (it jumps to
a strange address) after syscall 201. Is this syscall something
specific to the MOL kernel module or is it inside the kernel?

Finally, when compiling I had KHEADERS pointing to the location
of my linux header files. The user guide on the web also says that 
/usr/include/linux and /usr/include/asm should point to the linux 
headers. I didn't change these links (compiled on another PPC box
with a different 2.4.x kernel), it compiled alright but could it
be a source for errors as well?

Thanks,
Johan