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 -->
|
<!-- The FreeBSD Documentation Project -->
|
||||||
|
|
||||||
<sect>
|
<sect>
|
||||||
|
@ -61,13 +61,13 @@
|
||||||
name="brandelf"> for more information.
|
name="brandelf"> for more information.
|
||||||
</itemize>
|
</itemize>
|
||||||
|
|
||||||
<p>FreeBSD comes from the "classic" camp and uses the
|
<p>FreeBSD comes from the "classic" camp and has traditionally used
|
||||||
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?a.out(5)"
|
the <htmlurl url="http://www.freebsd.org/cgi/man.cgi?a.out(5)"
|
||||||
name="a.out"> format, a technology tried and proven through
|
name="a.out"> format, a technology tried and proven through
|
||||||
many generations of BSD releases. Though it has also been possible
|
many generations of BSD releases. Though it has also been possible
|
||||||
for some time to build and run native <tt/ELF/ binaries (and
|
for some time to build and run native <tt/ELF/ binaries (and
|
||||||
kernels) on a FreeBSD system, no official "push" to switch to
|
kernels) on a FreeBSD system, FreeBSD initially resisted the "push"
|
||||||
ELF as the default format has, as yet, been made. Why? Well,
|
to switch to <tt/ELF/ as the default format. Why? Well,
|
||||||
when the Linux camp made their painful transition to <tt/ELF/, it
|
when the Linux camp made their painful transition to <tt/ELF/, it
|
||||||
was not so much to flee the <tt/a.out/ executable format
|
was not so much to flee the <tt/a.out/ executable format
|
||||||
as it was their inflexible jump-table based shared library
|
as it was their inflexible jump-table based shared library
|
||||||
|
@ -78,15 +78,19 @@
|
||||||
migration cost was accepted as necessary and the transition
|
migration cost was accepted as necessary and the transition
|
||||||
made.
|
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
|
library mechanism is based more closely on Sun's
|
||||||
<tt>SunOS</tt>-style shared library mechanism and, as such, is very
|
<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/
|
easy to use.
|
||||||
which <tt/ELF/ would give us is cleaner support for C++ constructors
|
However, starting with 3.0, FreeBSD will offically support <tt/ELF/
|
||||||
and destructors, among other similarly esoteric things, and it
|
binaries as the default format. Even though the <tt/a.out/
|
||||||
simply hasn't become much of a problem yet (and there is quite
|
executable format has served us well, the GNU people, who author the
|
||||||
a bit of C++ code in FreeBSD's source tree). Should that change,
|
compiler tools we use, have dropped support for the <tt/a.out/
|
||||||
a migration may, at some point, be more seriously contemplated.
|
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>
|
<sect1>
|
||||||
<heading>Why won't chmod change the permissions on symlinks?</heading>
|
<heading>Why won't chmod change the permissions on symlinks?</heading>
|
||||||
|
@ -132,13 +136,13 @@
|
||||||
<sect1>
|
<sect1>
|
||||||
<heading>Can I run DOS binaries under FreeBSD?</heading>
|
<heading>Can I run DOS binaries under FreeBSD?</heading>
|
||||||
|
|
||||||
<p>Not yet, though BSDI has just donated their <tt/rundos/ DOS emulation
|
<p>Yes, starting with version 3.0 you can using BSDI's <tt/rundos/
|
||||||
subsystem which we're now working on integrating and enhancing. Send
|
DOS emulation which has been integrated and enhanced.
|
||||||
mail to <url url="mailto:emulation@freebsd.org"
|
Send mail to <url url="mailto:emulation@freebsd.org"
|
||||||
name="The FreeBSD emulation discussion list"> if you're interested in
|
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">
|
<htmlurl url="http://www.freebsd.org/cgi/ports.cgi?^pcemu" name="pcemu">
|
||||||
in the ports collection which emulates an 8088 and enough BIOS services
|
in the ports collection which emulates an 8088 and enough BIOS services
|
||||||
to run DOS text mode applications. It requires the X Window
|
to run DOS text mode applications. It requires the X Window
|
||||||
|
|
Loading…
Reference in a new issue