aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Robertson <jwrober@linuxfromscratch.org>2003-09-23 02:27:47 +0000
committerJames Robertson <jwrober@linuxfromscratch.org>2003-09-23 02:27:47 +0000
commit255504f783e4f8960835d74c66b450a0e1ecc658 (patch)
tree69a350488eb4eeee55ee3f86b3bd30feb6ef234e
parentb036adcf56a6014bf6a5efd34f43aa10de03c531 (diff)
Chapter 5 - Updated the Why Static page to more accurately represent the difference between statically and dynamically linked binaries. Thanks to Ian Molton for point this out. Fixes Bug 602. Updated bookinfo with this year in copyright.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2868 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
-rw-r--r--bookinfo.xml2
-rw-r--r--chapter01/changelog.xml9
-rw-r--r--chapter05/whystatic.xml21
3 files changed, 21 insertions, 11 deletions
diff --git a/bookinfo.xml b/bookinfo.xml
index 371b6c8aa..b7ea02976 100644
--- a/bookinfo.xml
+++ b/bookinfo.xml
@@ -21,7 +21,7 @@ scratch, using nothing but the sources of the required software.</para>
<legalnotice>
-<para>Copyright (c) 1999-2002, Gerard Beekmans</para>
+<para>Copyright (c) 1999-2003, Gerard Beekmans</para>
<para>All rights reserved.</para>
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index 28b850f1f..9a4f63001 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -94,8 +94,13 @@
</itemizedlist>
</para></listitem>
-<listitem><para>September 22nd, 2003 [jeremy]: Removed the make command from
-DejaGNU, since it performs nothing.</para></listitem>
+<listitem><para>September 22nd, 2003 [jwrober]: Chapter 5 - Updated the Why
+Static page to more accurately represent the difference between statically and
+dynamically linked binaries. Thanks to Ian Molton for point this out. Fixes
+Bug 602.</para></listitem>
+
+<listitem><para>September 22nd, 2003 [jeremy]: Removed the make
+command from DejaGNU, since it performs nothing.</para></listitem>
<listitem><para>September 22nd, 2003 [jeremy]: Removed the -k from TCL's make
check, since it's not expected to have failures anymore</para></listitem>
diff --git a/chapter05/whystatic.xml b/chapter05/whystatic.xml
index 77e94e21e..1b07b0b2e 100644
--- a/chapter05/whystatic.xml
+++ b/chapter05/whystatic.xml
@@ -11,14 +11,19 @@ functions ready-made in libraries. The major library on any Linux system is
<filename>glibc</filename>. To get an idea of what it contains, have a look at
<filename>glibc/index.html</filename> somewhere on your host system.</para>
-<para>There are two ways of linking the functions from a library to a program
-that uses them: statically or dynamically. When a program is linked
-statically, the code of the used functions is included in the executable,
-resulting in a rather bulky program. When a program is dynamically linked,
-what is included is a reference to the linker, the name of the library, and
-the name of the function, resulting in a much smaller executable. This
-executable has the disadvantage of being somewhat slower than a statically
-linked one, as the linking at run time takes a few moments.</para>
+<para>There are two ways of linking the functions from a library to a program
+that uses them: statically or dynamically. When a program is linked
+statically, the code of the used functions is included in the executable,
+resulting in a rather bulky program. When a program is dynamically linked,
+what is included is a reference to the linker, the name of the library, and
+the name of the function, resulting in a much smaller executable. Under
+certain circumstances, this executable can have the disadvantage of being
+somewhat slower than a statically linked one, as the linking at run time takes
+a few moments. It should be noted, however, that under normal circumstances on
+today's hardware, a dynamically linked executable will be faster than a
+statically linked one as the library function being called by the dynamically
+linked executable has a good chance of already being loaded in your system's
+RAM.</para>
<para>Aside from this small drawback, dynamic linking has two major advantages
over static linking. First, you need only one copy of the executable library