COMPAT_43 ?
M. Warner Losh
imp at bsdimp.com
Sun Mar 13 14:26:32 PST 2005
In message: <2617.172.16.0.199.1110748478.squirrel at wettoast.dyndns.org>
"Mike Jakubik" <mikej at rogers.com> writes:
: What does COMPAT_43 in the kernel really do? And is is really needed?
Depending on the version of FreeBSD it is needed for the following
things:
(1) the Linux emulation layer has 4.3bsd like functions that
this implements. (in fact, it appears this is still the
case).
(2) The svr4 emulation layer likewise.
(3) The old signal handling code is under this, and is
necessary to run FreeBSD 1, 2 and 3 binaries it seems.
(4) There's an old mmap and getpagesize system call that's
under it, which likely is there to run old BSD binaries
(don't know if this is BSDI ones, or old FreeBSD ones
too).
(5) Translation of old ioctl interfaces for network layer
interactions to new (this is why #1 depends on it)
(6) The old creat, mknod, lseek, stat, truncate, getdirentries
interface are covered by this as well (again, so old
binaries can work, and likely there's some emulation code
that depends on it).
(7) A boatload of old ioctls for the tty system are 43 compat
code (and are also under burn bridges). At one point in
time, xterm required these calls. Now, that's no longer
the case.
(8) Old interfaces to sysv shared memory, getting the hostname
(etc).
There's likely a few more I overlooked.
Warner
More information about the freebsd-current
mailing list