I think the solution for this is that SCO emulated binaries will have
different root, in which it will have it's own devices. We have such a code
already for solaris, sunos and irix in the kernel. All those files reside
in /usr/gnemul/platform/
e.g.
/usr/gnemul/solaris/usr/bin/
or
/usr/gnemul/sco/dev/
The problem with the current scheme is that this mostly works,
but e.g. getcwd may have problems with it, if you do cwd in a tree outside
of /usr/gnemul/xx/. The right solution, I think, is an overlay file system,
configurable as much as possible and Linux kernel which just unconditionaly
chroots foreign emulated programs into their emulation roots. That way, they
can see most parts of your normal tree, but with some files/directories
overrided, hidden or added. Anyone looking for a useful Linux project?
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
Ultralinux - first 64bit OS to take full power of the UltraSparc
Linux version 2.0.32 on a sparc machine (291.64 BogoMips).
___________________________________________________________________