Not easily. You'd have to deal with some of the problems mentioned
for the R5000 below.
The main problem, however, is that L4/MIPS is a fair dinkum
64-bit kernel while the R3000 is a 32-bit machine.
I'd say a complete re-write would be involved. Very little code is
not MIPS dependent.
The following issues are involved.
It means that the page fault happens during a system call, when L4
tries to access user data (e.g. during a long IPC operation). You
probably have a string dope pointing to the wrong place.
It means that you are trying to access kernel-reserved memory. The most likely reasons for this are:
To eliminate these error messages, make certain that all pointers are properly initialised. Use assert(p) if in doubt.
Also make sure you are not overflowing your stack. It is safest not
to put arrays or large records on the stack, declare them as
static. Note that you can use the static storage
class also for a function's local variables, that way you do not
lose the locality local variables give you. However, be aware that
you may have to use concurrency control on local static variables
if the function can be called from different threads.