diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index f34c30dda..a9ad6d065 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -37,6 +37,16 @@ --> + + 2009-09-10 + + + [bdubbs] - Added a section to the Preface about LFS + supported architectures. + + + + 2009-09-02 diff --git a/general.ent b/general.ent index a9fa51bfc..8410d5a64 100644 --- a/general.ent +++ b/general.ent @@ -1,6 +1,6 @@ - - + + diff --git a/prologue/architecture.xml b/prologue/architecture.xml new file mode 100644 index 000000000..75c29ce36 --- /dev/null +++ b/prologue/architecture.xml @@ -0,0 +1,66 @@ + + + %general-entities; +]> + + + + + LFS Target Architectures + +The primary target architecture of LFS is the 32-bit Intel CPU. If you +have not built an LFS system before, you should probably start with that +target. The 32-bit architecture is the most widely supported Linux system and +is most compatible with both open source and proprietary software. + +On the other hand, the instructions in this book are known to work, with +some modifications, with both Power PC and 64-bit AMD/Intel CPUs. To build a +system that utilizes these CPUs, the main prerequsite in addition to those on +the next few pages, is an existing system such as an earlier LFS system, +Ubuntu, Red Hat/Fedora, SuSE, or other distribution that targets the system +that you have. Also note that a 32-bit system can be installed and used as a +host system on a 64-bit AMD/Intel system. + +If you decide to target a 64-bit AMD/Intel system, LFS does have some +limitations. First, it does not currently provide instructions for a 64-bit +boot loader. If there is an existing boot loader, it can be used to boot to +any LFS system you build, but cannot be +built on a 64-bit system. + +Some other facts about a 64-bit systems need to be added here. When +compared to a 32-bit system, the sizes of executable programs are slightly +larger and the execution speeds are only slightly faster. For example, in a +test build of LFS-6.5 on a Core2Duo CPU based system, the following statistics +were measured: + +Architecture Build Time Build Size +32-bit 198.5 minutes 648 MB +64-bit 190.6 minutes 709 MB + +As you can see, the 64-bit build is only 4% faster and is 9% larger than +the 32-bit build. The gain from going to a 64-bit system is relatively +minimal. Of course, if you have more than 4GB of RAM or want to manipulate +data that exceeds 4GB, the advantages of a 64-bit system are substantial. + +The default 64-bit build that results from LFS is considered a "pure" +64-bit system. That is, it supports 64-bit executables only. Building a +"multi-lib" system requires building many applications twice, once for a 32-bit +system and once for a 64-bit system. Currently this is not directly supported +in the book, but is under consideration for a future release. In the meantime, +you can refer to the Cross Linux From +Scratch project for this advanced topic. + +There is one last comment about 64-bit systems. There are some packages +that cannot currently be built in a "pure" 64-bit system or require specialized +build instructions. Generally, these packages have some embedded 32-bit +specific assembly language instructions that fail when building on a 64-bit +system. Examples include the Beyond Linux From Scratch +(BLFS) packages Zip and some Xorg drivers. Many of these problems can +be worked around, but may require some specialized procedures or +patches. + + + diff --git a/prologue/preface.xml b/prologue/preface.xml index 5ad84923e..fde09453d 100644 --- a/prologue/preface.xml +++ b/prologue/preface.xml @@ -13,6 +13,7 @@ +