Daniel Potts danielp@cse.unsw.edu.au writes:
On 22 Jan 2002, Goswin Brederlow wrote:
Hi,
I hope this is the right place, havent read anything here for ages.
I was wondering whether the palcodes used by L4 on Alpha are disjunct to the ones used by OSF / BSD / Linux.
yes they are. An exception is l4_whoami which is an experimental syscall anyway. I think it maps directly to the OSF whoami call.
Great.
If not could they be made disjunct?
The idea I have in mind is to make a module for linux that catches the L4 syscalls and throws them back into user-space. That way a L4 environment could be setup within linux. It would be much like user-space-linux and would save a lot of reboots just to test out a few bytes of code.
heh :) That would be an interesting project. I'd be interested to know how (if) you will deal with device drivers, memory etc.
What device drivers? :) Whats an device?
One would need a console (pseudo terminal device where the palcode can read/write), which should be easy to do in kernel space, and some form of IPC between L4 and linux or some network emulation. Another emulated serial would probably do, because then slip or ppp could be used as soon as someone ports it.
Memory on the other hand is more tricky. I have a programm for linux that does its own memory protection via posix calls (mmap, sigaction, mprotect), but for alpha that needs a small kernel patch for the segfault handler (to make it work as its supposed to).
One could probably get away with introducing a new signal to the sigaction for palcodes. Maybe a subset of the illegal instruction or whatever a wrong palcode currently throws. Given that, everything can be done in user space, although memory managment with mprotect isn't the fastest or easiest.
But hey, beats a reboot any time.
On the other hand, inside L4 you could do the same with OSF / BSD / Linux syscalls and thus run their binaries under L4. (You want to run Netscape under L4? Or Mathematica? Or something as simple as xemacs and gcc?)
A l4-linux for alpha would also need those changes (if any) I believe.
Yes that is how we would run unmodified Linux/Alpha binaries on L4..
Cheers, Daniel
*dream* If L4 where that far.....
MfG Goswin
PS: any updates on the slow IRQ problem?