Update information about ELF and running DOS binaries.
Note: I am pulling this out of thin air and should be reviewed by someone more knowledgeable about -CURRENT (M$-DOS binaries) and the ELF issue. PR: docs/5837
This commit is contained in:
parent
8a70b41c47
commit
a79b2dca80
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=2499
1 changed files with 21 additions and 17 deletions
|
@ -1,4 +1,4 @@
|
|||
<!-- $Id: misc.sgml,v 1.1 1997-11-03 08:53:49 max Exp $ -->
|
||||
<!-- $Id: misc.sgml,v 1.2 1998-02-28 23:03:41 obrien Exp $ -->
|
||||
<!-- The FreeBSD Documentation Project -->
|
||||
|
||||
<sect>
|
||||
|
@ -61,13 +61,13 @@
|
|||
name="brandelf"> for more information.
|
||||
</itemize>
|
||||
|
||||
<p>FreeBSD comes from the "classic" camp and uses the
|
||||
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?a.out(5)"
|
||||
<p>FreeBSD comes from the "classic" camp and has traditionally used
|
||||
the <htmlurl url="http://www.freebsd.org/cgi/man.cgi?a.out(5)"
|
||||
name="a.out"> format, a technology tried and proven through
|
||||
many generations of BSD releases. Though it has also been possible
|
||||
for some time to build and run native <tt/ELF/ binaries (and
|
||||
kernels) on a FreeBSD system, no official "push" to switch to
|
||||
ELF as the default format has, as yet, been made. Why? Well,
|
||||
kernels) on a FreeBSD system, FreeBSD initially resisted the "push"
|
||||
to switch to <tt/ELF/ as the default format. Why? Well,
|
||||
when the Linux camp made their painful transition to <tt/ELF/, it
|
||||
was not so much to flee the <tt/a.out/ executable format
|
||||
as it was their inflexible jump-table based shared library
|
||||
|
@ -78,15 +78,19 @@
|
|||
migration cost was accepted as necessary and the transition
|
||||
made.
|
||||
|
||||
<p>In FreeBSD's case, it's not quite so simple since our shared
|
||||
<p>In FreeBSD's case, our shared
|
||||
library mechanism is based more closely on Sun's
|
||||
<tt>SunOS</tt>-style shared library mechanism and, as such, is very
|
||||
easy to use. The only thing we actually lack with <tt/a.out/
|
||||
which <tt/ELF/ would give us is cleaner support for C++ constructors
|
||||
and destructors, among other similarly esoteric things, and it
|
||||
simply hasn't become much of a problem yet (and there is quite
|
||||
a bit of C++ code in FreeBSD's source tree). Should that change,
|
||||
a migration may, at some point, be more seriously contemplated.
|
||||
easy to use.
|
||||
However, starting with 3.0, FreeBSD will offically support <tt/ELF/
|
||||
binaries as the default format. Even though the <tt/a.out/
|
||||
executable format has served us well, the GNU people, who author the
|
||||
compiler tools we use, have dropped support for the <tt/a.out/
|
||||
format. This has forced us to maintain a divergent version of
|
||||
the compler and linker, and has kept us from reaping the benefits
|
||||
of the latest GNU development efforts. Also the demands of
|
||||
ISO-C++, notably contstructors and destructors, has also led to
|
||||
native <tt/ELF/ support in future FreeBSD releases.
|
||||
|
||||
<sect1>
|
||||
<heading>Why won't chmod change the permissions on symlinks?</heading>
|
||||
|
@ -132,13 +136,13 @@
|
|||
<sect1>
|
||||
<heading>Can I run DOS binaries under FreeBSD?</heading>
|
||||
|
||||
<p>Not yet, though BSDI has just donated their <tt/rundos/ DOS emulation
|
||||
subsystem which we're now working on integrating and enhancing. Send
|
||||
mail to <url url="mailto:emulation@freebsd.org"
|
||||
<p>Yes, starting with version 3.0 you can using BSDI's <tt/rundos/
|
||||
DOS emulation which has been integrated and enhanced.
|
||||
Send mail to <url url="mailto:emulation@freebsd.org"
|
||||
name="The FreeBSD emulation discussion list"> if you're interested in
|
||||
joining this effort!
|
||||
joining this ongoing effort!
|
||||
|
||||
<p>For now, there is a neat utility called
|
||||
<p>For pre-3.0 systems, there is a neat utility called
|
||||
<htmlurl url="http://www.freebsd.org/cgi/ports.cgi?^pcemu" name="pcemu">
|
||||
in the ports collection which emulates an 8088 and enough BIOS services
|
||||
to run DOS text mode applications. It requires the X Window
|
||||
|
|
Loading…
Reference in a new issue