(Illustration by Gaich Muramatsu)
On Wed, Sep 29, 2004 at 03:35:53PM -0400, Jan Harkes wrote: > > The native Venus was running well, but the linux-abi clog was unable to > > communicate with it. > > Interesting since the pioctl code in coda-src/kerndep is identical for > both Linux and *BSD, so this would be a failure of the linux-abi. I :( There is one thing which makes linux-abi on *bsd interesting. I have the impression that the linux-abi kernel interface is more stable between kernel versions on *bsd than their native kernel interfaces. Of course there are binary compatibility layers between versions as well, but I am unsure if it is present in the generic kernels as well as linux-abi :) and then, there may be libraries needed as well - with glibc I do not depend on local libraries, with *BSD libc I do (or it is harder to work around). I know I can run the same Linux applications on FreeBSD 4.* and 5.* without any tweaks, but I am unsure about native 4.* applications. Anybody who knows? Can we compile Venus on 4.10 and run it on 5.3? Without having extra compatibility files on the host? If Venus would use _only_ totally standard and traditional syscalls like open() read() write(), then we certainly could run the cache manager and the tools via any abi. Just speculating, if it would make the things hard to implement, if we use a smaller subset of syscalls? I can think that instead of ioctl(fd, OP, inoutdata) we could do write(fd,"OPoutdata") followed by read(fd,"indata") Well, twice as many context switches... but arbitrary lenght data... Anybody who khows how ioctl() is implemented in *bsd linux-abi? Regards, -- IvanReceived on 2004-09-30 04:58:47