FreeBSD src
Go to file
John Polstra 47633640aa Change the load address of the ELF dynamic linker from "2L*MAXDSIZ"
to an architecture-specific value defined in <machine/elf.h>.  This
solves problems on large-memory systems that have a high value for
MAXDSIZ.

The load address is controlled by a new macro ELF_RTLD_ADDR(vmspace).
On the i386 it is hard-wired to 0x08000000, which is the standard
SVR4 location for the dynamic linker.

On the Alpha, the dynamic linker is loaded MAXDSIZ bytes beyond
the start of the program's data segment.  This is the same place
a userland mmap(0, ...) call would put it, so it ends up just below
all the shared libraries.  The rationale behind the calculation is
that it allows room for the data segment to grow to its maximum
possible size.

These changes have been tested on the i386 for several months
without problems.  They have been tested on the Alpha as well,
though not for nearly as long.  I would like to merge the changes
into 3.1 within a week if no problems have surfaced as a result of
them.
1999-02-07 23:49:56 +00:00
bin Fix synopsis to match 1003.2. Add text describing the way in which 1999-01-28 17:41:02 +00:00
contrib Remove the standalone buildtools stuff, we don't use it here and it 1999-02-07 09:45:12 +00:00
crypto Old stuff laying around: Don't use getstr which can conflict with some 1998-12-16 06:06:06 +00:00
etc Bruce gently nudged me into doing this right 1999-02-05 22:54:37 +00:00
games Minor adjustments to prior commits: 1999-01-07 22:09:05 +00:00
gnu Add perl5 userland (actually localland) to MANPATH list. 1999-02-04 11:43:10 +00:00
include Removed evil typedef kvm_swap_t and all uses of it (not many). 1999-01-27 11:29:15 +00:00
kerberos5 Link everything against libcrypt. ELF builds complain without it. 1999-01-25 06:49:43 +00:00
kerberosIV Link everything against libcrypt. ELF builds complain without it. 1999-01-25 06:49:43 +00:00
lib Handle case where no swap is configured 1999-02-06 06:31:57 +00:00
libexec Oops, I missed a few more /etc/nologin references yesterday. It appears 1999-01-12 14:09:23 +00:00
release If user selects X, also auto-select compat22 (for now). 1999-02-07 12:57:04 +00:00
sbin Note that nextboot requires the legacy boot code. 1999-02-05 09:58:39 +00:00
secure MaxHeaderLines is now MaxHeadersLength (in bytes) 1999-02-07 09:48:52 +00:00
share - Add atkbd.4, atkbdc.4, splash.4 and vga.4. 1999-02-07 05:40:14 +00:00
sys Change the load address of the ELF dynamic linker from "2L*MAXDSIZ" 1999-02-07 23:49:56 +00:00
tools Fix a typo describing the filename of cvt-wtmp. 1999-02-07 20:30:56 +00:00
usr.bin Make the ipx part of netstat work again. 1999-02-06 19:12:48 +00:00
usr.sbin Correct server-side chap authentication comparison 1999-02-07 13:56:29 +00:00
COPYRIGHT Add Id keyword 1998-09-13 23:11:13 +00:00
Makefile Frob the upgrade target to be a bit more inclusive. This appears to 1999-01-26 09:12:21 +00:00
Makefile.inc0 Don't use /usr/obj/elf for make world anymore. 1999-01-14 06:45:53 +00:00
Makefile.inc1 further refine the upgrade process. 1999-01-27 15:08:05 +00:00
Makefile.upgrade further refine the upgrade process. 1999-01-27 15:08:05 +00:00
README No more src/lkm dir... 1999-01-06 14:02:35 +00:00
UPDATING o Add info about Julian's Linux Threads checkin (one of these 1999-01-26 03:13:22 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on: $Id: README,v 1.13 1998/09/13 09:38:34 markm Exp $

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel and the contents of /etc.  Please see the top of the Makefile
in this directory for more information on the standard build targets
and compile-time flags.

Building a kernel with config(8) is a somewhat more involved process,
documentation for which can be found at:
   http://www.freebsd.org/handbook/kernelconfig.html
And in the config(8) man page.

The sample kernel configuration files reside in the sys/i386/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file LINT contains entries for all possible devices, not
just those commonly used, and is meant more as a general reference
than an actual kernel configuration file (a kernel built from it
wouldn't even run).


Source Roadmap:
---------------
bin		System/User commands.

contrib		Packages contributed by 3rd parties.

crypto		Export controlled stuff (see crypto/README).

etc		Template files for /etc

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberosIV	Kerberos package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

sbin		System commands.

secure		DES and DES-related utilities - NOT FOR EXPORT!

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/handbook/synching.html