Subject: Re: /emul/xxx for all/other /sys/compat/xxx?
To: None <tech-kern@NetBSD.ORG>
From: Ty Sarna <tsarna@endicor.com>
List: tech-kern
Date: 03/06/1995 20:53:04
In article <9503061741.AA25183@cs.utah.edu>,
Mike Hibler <mike@cs.utah.edu> wrote:
> libraries). As I understand it (though I missed the initial messages on
> this) you would not be able to do this with namei always performing the
> translations. Do you want to be able to do this? That I don't know.
The compat_namei() has semantics more like a union mount than a chroot,
so you can still see things under the real root.
> This is still how we do it today on the PA, where we use the HP-UX X
> server binary. It is a lot messier with shared libraries where we have to
> put HP-UX binaries (or symlinks to), e.g. /lib/dld.sl, /lib/libc.sl, into
> our standard directories. There is also the possibility of name clashes,
> e.g. if we had a BSD libc.sl. Union mounts can take care of cleaning up
> the mess, but doesn't help with the name clashes.
The compat_namei() would take care of both in one step. You would
install all the hpux libraries under /emul/hpux/lib/... [or better yet,
/compat/hpux/lib/... The more I think about it, the more I think it
should be compat. The code for binary compatibility modules is under
/sys/compat, and is enabled by options COMPAT_XXX. Shouln't the
directory for compat-specific files be /compat too?)
--
Ty Sarna "I thought you were wrong before, but compared
tsarna@endicor.com to now you were right" -- Exit 57