mirror of https://github.com/tLDP/LDP
1039 lines
38 KiB
XML
1039 lines
38 KiB
XML
<?xml version="1.0"?>
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
|
"http://docbook.org/xml/4.1.2/docbookx.dtd" [
|
|
<!ENTITY ldpsite "http://www.tldp.org/">
|
|
<!ENTITY howto "&ldpsite;HOWTO/">
|
|
<!ENTITY mini-howto "&ldpsite;HOWTO/mini/">
|
|
<!ENTITY home "http://www.catb.org/~esr/">
|
|
]>
|
|
|
|
<article id="Reading-List-HOWTO">
|
|
<articleinfo>
|
|
<title>The Linux Reading List HOWTO</title>
|
|
|
|
<author>
|
|
<firstname>Eric</firstname>
|
|
<othername>Steven</othername>
|
|
<surname>Raymond</surname>
|
|
<affiliation>
|
|
<orgname><ulink url="&home;">
|
|
Thyrsus Enterprises</ulink></orgname>
|
|
<address>
|
|
<email>esr@thyrsus.com</email>
|
|
</address>
|
|
</affiliation>
|
|
</author>
|
|
|
|
<revhistory id="revhistory">
|
|
<revision>
|
|
<revnumber>3.0</revnumber>
|
|
<date>2004-02-04</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
Major update. Removed out-of-date books, added a new one.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>2.1</revnumber>
|
|
<date>2003-10-28</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
Added TAOUP.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>2.0</revnumber>
|
|
<date>2003-07-31</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
Major revision, cleaned out obsolete stuff.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>1.21</revnumber>
|
|
<date>2003-02-22</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
LDP site has moved.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>1.20</revnumber>
|
|
<date>2001-06-14</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
Removed "Practical Unix Security"; it's five years old and
|
|
the material is now covered better by other books.
|
|
</revremark>
|
|
</revision>
|
|
<revision>
|
|
<revnumber>1.19</revnumber>
|
|
<date>2001-06-14</date>
|
|
<authorinitials>esr</authorinitials>
|
|
<revremark>
|
|
Added Ross Anderson's "Security Engineering". Corrected ISBNs.
|
|
</revremark>
|
|
</revision>
|
|
</revhistory>
|
|
|
|
<copyright>
|
|
<year>2000</year>
|
|
<holder role="mailto:esr@thyrsus.com">Eric S. Raymond</holder>
|
|
</copyright>
|
|
<legalnotice>
|
|
<title>Copyright</title>
|
|
<para>Permission is granted to copy, distribute and/or modify
|
|
this document under the terms of the Open Publication License,
|
|
version 2.0.</para>
|
|
</legalnotice>
|
|
|
|
<abstract><para>
|
|
This document lists the books I think are most valuable to a person
|
|
trying to learn Unix (especially Linux) top to bottom.
|
|
</para></abstract>
|
|
</articleinfo>
|
|
|
|
<sect1 id="introduction"><title>Introduction</title>
|
|
|
|
<sect2 id="purpose"><title>Purpose of this document</title>
|
|
|
|
<para>This document lists what I consider to be the essential book-length
|
|
references for learning Unix (especially Linux) and how to program under
|
|
it.</para>
|
|
|
|
</sect2>
|
|
<sect2 id="newversions"><title>New versions of this document</title>
|
|
|
|
<para>New versions of the Linux Reading List HOWTO will be periodically
|
|
posted to <ulink url="news:comp.os.linux.answers">
|
|
comp.os.linux.answers</ulink>. They will also be uploaded to
|
|
various Linux WWW and FTP sites, including the LDP home page.</para>
|
|
|
|
<para>You can also view the latest version of this on the World Wide
|
|
Web via the URL <ulink
|
|
url="http://sunsite.unc.edu/LDP/HOWTO/Reading-List-HOWTO.html">
|
|
http://sunsite.unc.edu/LDP/HOWTO/Reading-List-HOWTO.html</ulink>.</para>
|
|
|
|
</sect2>
|
|
<sect2 id="feedback"><title>Feedback and Corrections</title>
|
|
|
|
<para>If you have questions or comments about this document (or just
|
|
want to suggest a book that you think should be on it), please feel
|
|
free to mail Eric S. Raymond, at <email>esr@thyrsus.com</email>. I welcome any
|
|
suggestions or criticisms.</para>
|
|
|
|
</sect2>
|
|
<sect2 id="related"><title> Related Resources</title>
|
|
|
|
<para>For on-line HOWTOs, magazines, and other non-book material, see the
|
|
<ulink url="&ldpsite;">Linux Documentation Project
|
|
home page</ulink>.</para>
|
|
|
|
<para>Some years ago I wrote a less Linux-focused Unix bibliography that
|
|
may still be of some interest and retains a certain amusement
|
|
value. You can find the Loginataka <ulink
|
|
url="&home;faqs/loginataka.html">here</ulink>.</para>
|
|
|
|
<para>SAGE, the System Administrator's Guild, maintains an excellent
|
|
<ulink url="http://www.usenix.org/sage/sysadmins/books/booklist.html">
|
|
list of relevant books</ulink>.</para>
|
|
|
|
</sect2>
|
|
<sect2 id="conventions"><title> Conventions Used In This Document</title>
|
|
|
|
<para>Comments not in quotes below are either mine, or I have seen no reason to
|
|
change them from those of Jim Haynes (previous maintainer of this document).
|
|
Comments sent in by others are in quotes, and have the name of the
|
|
commentator before them (JH is Jim Haynes).</para>
|
|
|
|
<para>"See" URLs attached to publishing information point directly into the
|
|
publisher's web catalog and typically take you to a page containing
|
|
a cover shot, blurbs, and ordering information. Books that don't
|
|
have these lack them because the publisher is using frames and the
|
|
catalog pages can't be bookmarked.</para>
|
|
|
|
<para>Topic listings go roughly from the outside in (culture to user-land
|
|
programming to kernel programming to hardware). Within sections I have
|
|
tried to list the most useful books first insofar as I am familiar with them.
|
|
It's just an embarrassing coincidence that this lists one of my books
|
|
first, honest! (Suggestions for a better organization cheerfully
|
|
accepted.)</para>
|
|
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<bibliography><title>Basic Linux and Unix bibliography</title>
|
|
|
|
<bibliodiv><title>Books on Culture, History, and Pragmatics</title>
|
|
|
|
<biblioentry>
|
|
<title>The New Hacker's Dictionary</title>
|
|
<edition>Third Edition</edition>
|
|
<editor><firstname>Eric S.</firstname><surname>Raymond</surname></editor>
|
|
<copyright><year>1996</year></copyright>
|
|
<isbn>ISBN 0-262-68092-0</isbn>
|
|
<publisher><publishername>MIT Press</publishername></publisher>
|
|
<pagenums>547pp.</pagenums>
|
|
<abstract>
|
|
<para>Um, er. A guide to Internet culture. Lots of people like it.
|
|
HTML at the <ulink url="&home;jargon">Jargon File
|
|
Resource Page</ulink>.</para> <para><ulink
|
|
url="http://www-mitpress.mit.edu/book-home.tcl?isbn=0262680920">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>A Quarter Century of Unix</title>
|
|
<editor><firstname>Peter H.</firstname><surname>Salus</surname></editor>
|
|
<copyright><year>1994</year></copyright>
|
|
<isbn>ISBN 0-201-54777-5</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>255pp.</pagenums>
|
|
<abstract>
|
|
<para>Linux is part of the Unix tradition. This book is an oral
|
|
history of Unix -- how it originated, how it evolved, how it spread
|
|
-- by the people who were there.</para>
|
|
|
|
<para><ulink
|
|
url='http://www.awprofessional.com/catalog/product.asp?product_id={CE8A5F8A-8E49-4B84-89D4-F518971D8130}'>Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The Mythical Man Month</title>
|
|
<edition>Anniversary Edition</edition>
|
|
<author><firstname>Frederic P.</firstname><surname>Brooks</surname></author>
|
|
<copyright><year>1995</year></copyright>
|
|
<isbn>ISBN 0-201-83595-9</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>The one book on software engineering everyone should read.</para>
|
|
|
|
<para>Alan Cox: "This I'd recommend not for its technical
|
|
value but for its application of common sense and reality to computing
|
|
projects." JH: "Ah, yes. What if Linus had been given 200
|
|
programmers and had been told to produce Linux in 3 months!"</para>
|
|
|
|
<para><ulink url="http://www.aw-bc.com/catalog/academic/product/0,4096,0201835959,00.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The Cathedral and the Bazaar</title>
|
|
<edition>Second Edition</edition>
|
|
<editor><firstname>Eric S.</firstname><surname>Raymond</surname></editor>
|
|
<copyright><year>1999</year></copyright>
|
|
<isbn>ISBN 0-596-00131-2</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<pagenums>240pp.</pagenums>
|
|
<abstract>
|
|
<para>How and why the Linux development model works.
|
|
HTML <ulink url="&home;writings/cathedral-bazaar">
|
|
here</ulink>.</para>
|
|
<para>Order <ulink
|
|
url="http://www.oreilly.com/catalog/cathbaz/">
|
|
here.</ulink>.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>Linux basics</title>
|
|
|
|
<biblioentry>
|
|
<title>Linux System Administrator's Guide</title>
|
|
<editor><firstname>Lars</firstname><surname>Wirzenius</surname></editor>
|
|
<copyright><year>1997</year></copyright>
|
|
<publisher><publishername>Linux Documentation Project</publishername></publisher>
|
|
<abstract>
|
|
<para>Available on the LDP home page, or
|
|
directly at <ulink url="&ldpsite;LDP/sag/">&ldpsite;/sag/</ulink>.</para>
|
|
|
|
<para>An excellent first book on how to maintain and administer a
|
|
Linux system.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Linux in a Nutshell</title>
|
|
<edition>Fourth Edition</edition>
|
|
<author><firstname>Ellen</firstname><surname>Siever</surname></author>
|
|
<author><firstname>Stephen</firstname><surname>Figgins</surname></author>
|
|
<author><firstname>Aaron</firstname><surname>Weber</surname></author>
|
|
<copyright><year>2003</year></copyright>
|
|
<isbn>ISBN 0-596-00482-6</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>According to O'Reilly, "The Desktop Reference for Linux". For
|
|
Linux users this obsoletes their "Unix In a Nutshell" which was
|
|
SVr4/Solaris-oriented.</para>
|
|
|
|
<para><ulink url="http://www.oreilly.com/catalog/linuxnut3/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Running Linux</title>
|
|
<edition>Fourth Edition</edition>
|
|
<author><firstname>Matt</firstname><surname>Welsh</surname></author>
|
|
<author><firstname>Matthias</firstname><surname>Dallheimer</surname></author>
|
|
<author><firstname>Terry</firstname><surname>Dawson</surname></author>
|
|
<author><firstname>Lar</firstname><surname>Kaufman</surname></author>
|
|
<copyright><year>2002</year></copyright>
|
|
<isbn>0-596-00272-6</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>Everything you need in order to understand, install, and use the
|
|
Linux operating system. Excellent beginner's book.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/runux3/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>A Practical Guide to Linux</title>
|
|
<author><firstname>Mark G.</firstname><surname>Sobell</surname></author>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 0-201-89549-8</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>1072pp.</pagenums>
|
|
<abstract>
|
|
<para>Just what the title says -- practical tutorials in basic Unix,
|
|
shells, editors, mail programs, networking, Web tools, and
|
|
utilities. Covers some system administration fundamentals.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Essential System Administration</title>
|
|
<edition>3rd Edition</edition>
|
|
<author><firstname>Æleen</firstname><surname>Frisch</surname></author>
|
|
<copyright><year>2002</year></copyright>
|
|
<isbn>ISBN 0-596-00343-9</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>More in-depth coverage of normal system-administration tasks.
|
|
Not Linux-specific but contains Linux material.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/esa2/noframes.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>System Security</title>
|
|
|
|
<biblioentry>
|
|
<title>Security Engineering</title>
|
|
<subtitle>A Guide to Building Dependable Distributed Systems</subtitle>
|
|
<author><firstname>Ross</firstname><surname>Anderson</surname></author>
|
|
<copyright><year>2001</year></copyright>
|
|
<isbn>0-471-38922-6</isbn>
|
|
<publisher><publishername>Wiley</publishername></publisher>
|
|
<abstract>
|
|
<para>The best book I've ever seen on technological security
|
|
measures and general computer security.
|
|
The section on "How to Steal a Painting" and physical alarm systems
|
|
is worth the price of admission by itself.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Real World Linux Security</title>
|
|
<subtitle>Intrusion Prevention, Detection, and Recovery</subtitle>
|
|
<edition>2nd edition</edition>
|
|
<author><firstname>Bob</firstname><surname>Toxen</surname></author>
|
|
<copyright><year>2003</year></copyright>
|
|
<isbn>ISBN 0-13-046456-2</isbn>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>This is excellent work, the standard by which future Linux
|
|
security books will be judged. I wrote a foreword for it. Combines
|
|
step-by-step practical instructions on hardining a Linux system
|
|
with good theory on attack paths, rings of protection, and security
|
|
analysis. Describes many counters for specific exploits. </para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>Books on Shell, Script, and Web Programming</title>
|
|
|
|
<biblioentry>
|
|
<title>Programming Perl</title>
|
|
<edition>Third Edition</edition>
|
|
<authorgroup>
|
|
<author><firstname>Larry</firstname><surname>Wall</surname></author>
|
|
<author><firstname>Tom</firstname><surname>Christiansen</surname></author>
|
|
<author><firstname>Jon</firstname><surname>Orwant</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>2000</year></copyright>
|
|
<isbn>ISBN 0-596-00027-8</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<pagenums>1104pp.</pagenums>
|
|
<abstract>
|
|
<para>Shell (as a programming language for more than trivial scripting)
|
|
is dead. Perl rules in its place (though it is now being strongly
|
|
challenged by Python). This is the third edition of
|
|
the definitive Perl book.</para>
|
|
|
|
<para><ulink url="http://www.oreilly.com/catalog/pperl3/">
|
|
Order here.</ulink></para>
|
|
|
|
<para>Emmanuel Pierre keeps a <ulink
|
|
url="http://www.e-nef.com/perl/listeperl.html.en">short list of Perl
|
|
books</ulink>.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Programming Python</title>
|
|
<edition>Second Edition</edition>
|
|
<author><firstname>Mark</firstname><surname>Lutz</surname></author>
|
|
<copyright><year>2001</year></copyright>
|
|
<isbn>ISBN 0-596-00085-5</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>The next step beyond Perl. Python is beautifully designed,
|
|
has better integration with C, and scales up more gracefully to large
|
|
projects.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/python/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>HTML & XHTML: The Definitive Guide</title>
|
|
<edition>Fifth Edition</edition>
|
|
<authorgroup>
|
|
<author><firstname>Chuck</firstname><surname>Musciano</surname></author>
|
|
<author><firstname>Bill</firstname><surname>Kennedy</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>2002</year></copyright>
|
|
<isbn>ISBN 0-596-00382-X</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<pagenums>680pp.</pagenums>
|
|
<abstract>
|
|
<para>The best HTML tutorial/reference I have ever seen, and the only
|
|
HTML book you need unless you also want to do CGI. I don't know of
|
|
any other book on HTML that comes within miles of this one for
|
|
comprehensiveness, depth, and quality of organization.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/html5/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The Unix Programming Environment</title>
|
|
<authorgroup>
|
|
<author><firstname>Brian</firstname><surname>Kernighan</surname></author>
|
|
<author><firstname>Rob</firstname><surname>Pike</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1984</year></copyright>
|
|
<isbn>ISBN 0-13-937681-X</isbn>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>A true classic -- possibly the best single-book exposition of the
|
|
Unix philosophy. Useful for learning shell programming.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>Tex and LaTeX</title>
|
|
|
|
<biblioentry>
|
|
<title>The LaTeX Companion</title>
|
|
<authorgroup>
|
|
<author><firstname>Michael</firstname><surname>Goossens</surname></author>
|
|
<author><firstname>Frank</firstname><surname>Mittelbach</surname></author>
|
|
<author><firstname>Alexander</firstname><surname>Samarin</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1994</year></copyright>
|
|
<isbn>ISBN 0-201-54199-8</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>530pp.</pagenums>
|
|
<abstract>
|
|
<para>`If you are one of those users who would like to know how
|
|
LaTeX can be extended to create the nicest documents possible
|
|
without becoming a (La)TeX guru, then this book is for you' ---
|
|
from the Preface. Bruce Thompson adds: "A very nice book providing
|
|
a lot of information about the new extensions to LaTeX, provides a
|
|
large number of examples showing precisely how your document's
|
|
layout can be manipulated"</para>
|
|
|
|
<para><ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={2B50D478-D4C6-41F2-BD2F-F65E8A99E1C4}">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>LaTeX: A Document Preparation System</title>
|
|
<author><firstname>Leslie</firstname><surname>Lamport</surname></author>
|
|
<copyright><year>1994</year></copyright>
|
|
<isbn>ISBN 0-201-52983-1</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>256pp.</pagenums>
|
|
<abstract>
|
|
<para>Bruce Thompson: "The ultimate reference on LaTeX 2.09 by its
|
|
author. A new edition covering LaTeX2e (the version included in
|
|
the current TeX/LaTeX distribution) is in preparation. LaTeX 2.09
|
|
is fully supported by LaTeX2e. A must for anyone wanting to use
|
|
LaTeX. Provides a gentle introduction to document preparation and
|
|
the various tools that LaTeX provides for producing professional
|
|
quality documents. Lots of examples."</para>
|
|
|
|
<para><ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={3DC3049A-068B-4184-B406-C13CBFC93CEB}">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The TeXbook, Volume A of Computers and Typesetting</title>
|
|
<author><firstname>Donald</firstname><surname>Knuth</surname></author>
|
|
<copyright><year>1986</year></copyright>
|
|
<isbn>ISBN 0-201-13448-9</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>496pp.</pagenums>
|
|
<abstract>
|
|
<para>Bruce Thompson: "The definitive user's guide and complete
|
|
reference manual for TeX. Probably not needed for casual LaTeX
|
|
use, but a fascinating book nonetheless." I'll strengthen that by
|
|
adding that this book is not for the faint of heart.</para>
|
|
|
|
<para><ulink url="http://www.awl.com/cp/TeXbook.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The METAFONT Book, Volume C of Computers and Typesetting</title>
|
|
<author><firstname>Donald</firstname><surname>Knuth</surname></author>
|
|
<copyright><year>1986</year></copyright>
|
|
<isbn>ISBN 0-201-13444-6</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>386pp.</pagenums>
|
|
<abstract>
|
|
<para>Bruce Thompson: "The definitive user's guide and reference
|
|
manual for METAFONT, the companion program to TeX for designing
|
|
fonts. An excellent work if you're planning to design your own
|
|
fonts for use in TeX and LaTeX. METAFONT is included with the
|
|
normal TeX/LaTeX distribution." This book is
|
|
<emphasis>definitely</emphasis> not for the faint of heart.</para>
|
|
|
|
<para><ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={27AADE0A-B3C5-4F6E-B79F-5A53027EA008}">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
<bibliodiv><title>Good Programming Style</title>
|
|
|
|
<biblioentry>
|
|
<title>The Practice of Programming</title>
|
|
<authorgroup>
|
|
<author><firstname>Brian</firstname><surname>Kernighan</surname></author>
|
|
<author><firstname>Rob</firstname><surname>Pike</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1999</year></copyright>
|
|
<isbn>ISBN 0-201-61586-X</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>An excellent treatise on writing high-quality programs,
|
|
surely destined to become a classic of the field.</para>
|
|
|
|
<para><ulink url="http://cm.bell-labs.com/cm/cs/tpop/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Programming Pearls</title>
|
|
<edition>(Second Edition)</edition>
|
|
<author><firstname>Jon</firstname><surname>Bentley</surname></author>
|
|
<copyright><year>2000</year></copyright>
|
|
<isbn>ISBN 0-201-65788-0</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>These are selected essays from Bentley's column in the
|
|
Communications of the ACM. He discusses a wide variety of issues in
|
|
program improvement, often focusing on program efficiency.</para>
|
|
|
|
<para><ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={8D9EB790-15B3-41C9-AE3D-8149347A52AA}">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The Art of Unix Programming</title>
|
|
<editor><firstname>Eric S.</firstname><surname>Raymond</surname></editor>
|
|
<copyright><year>2003</year></copyright>
|
|
<isbn>ISBN 0-131-42901-9</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>512pp.</pagenums>
|
|
<abstract>
|
|
<para>The book on how to think like a Unix expert. Browseable HTML
|
|
and ordering info live <ulink
|
|
url="&home;writings/taoup/">here</ulink>.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Code Reading</title>
|
|
<subtitle>The Open Source Perspective</subtitle>
|
|
<editor><firstname>Diomedis</firstname><surname>Spinellis</surname></editor>
|
|
<copyright><year>2003</year></copyright>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>A good book on an often-neglected skill. Order
|
|
<ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={DE5EA6BB-1743-406B-A680-D1B335BA7EA2}&session_id={D106B2CE-36F1-4EA0-8651-74B623E0CECD}">here</ulink>.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Writing Efficient Programs</title>
|
|
<author><firstname>Jon</firstname><surname>Bentley</surname></author>
|
|
<copyright><year>1982</year></copyright>
|
|
<isbn>ISBN 0-13-970251-2 or 0-13-970244-X</isbn>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>This book presents Bentley's methodology and set of rules for
|
|
improving program efficiency, and includes a large number of
|
|
examples.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
<bibliodiv><title>C and C++</title>
|
|
|
|
<biblioentry>
|
|
<title>The C Programming Language</title>
|
|
<edition>(Second Edition)</edition>
|
|
<authorgroup>
|
|
<author><firstname>Brian</firstname><surname>Kernighan</surname></author>
|
|
<author><firstname>Dennis</firstname><surname>Ritchie</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1988</year></copyright>
|
|
<isbn>ISBN 0-13-110362-8</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>272pp.</pagenums>
|
|
<abstract>
|
|
<para>The improved second edition, covering ANSI C, of the original
|
|
classic C book coauthored by C's designer, "K&R". Still the
|
|
best!</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Who's Afraid of C++?</title>
|
|
<author><firstname>Steve</firstname><surname>Heller</surname></author>
|
|
<copyright><year>1996</year></copyright>
|
|
<isbn>ISBN 0-12-339097-4</isbn>
|
|
<publisher><publishername>Academic Press</publishername></publisher>
|
|
<pagenums>508pp.</pagenums>
|
|
<abstract>
|
|
<para>The best introductory book on C++ I have seen. Now available
|
|
<ulink url="http://www.steveheller.com/whos">on the Web</ulink>.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>C System Call Interface</title>
|
|
|
|
<biblioentry>
|
|
<title>POSIX Programmer's Guide: Writing Portable Unix Programs</title>
|
|
<author><firstname>Donald</firstname><surname>Lewine</surname></author>
|
|
<copyright><year>1992</year></copyright>
|
|
<isbn>ISBN 0-937175-73-0</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<pagenums>607pp.</pagenums>
|
|
<abstract>
|
|
<para>Linux hews very close to the letter of the POSIX standard
|
|
(non-conformance is considered a bug and swiftly fixed).
|
|
This excellent reference for POSIX is thus also an excellent
|
|
reference for the Linux kernel API.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/posix/">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Advanced Programming in the Unix Environment</title>
|
|
<author><firstname>W.</firstname><othername>Richard</othername><surname>Stevens</surname></author>
|
|
<copyright><year>1993</year></copyright>
|
|
<isbn>ISBN 0-201-56317-7</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>A book on general Unix programming that is every bit as good as
|
|
Stevens's classic on network programming.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Linux Application Development</title>
|
|
<authorgroup>
|
|
<author><firstname>Michael K.</firstname><surname>Johnson</surname></author>
|
|
<author><firstname>Erik W.</firstname><surname>Troan</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 0-201-308215</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>The best single reference to the Linux API. Covers the
|
|
features that aren't generic Unix or Posix.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>Books on Networking</title>
|
|
|
|
<biblioentry>
|
|
<title>Unix Network Programming, volume 1 -- Networking APIs: Sockets and XTI</title>
|
|
<author><firstname>W.</firstname><othername>Richard</othername><surname>Stevens</surname></author>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 0-13-490012-X</isbn>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>Everything you might want to know about the subject. Generally
|
|
regarded as definitive on the basics.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Unix Network Programming, volume 2 -- Interprocess Communication</title>
|
|
<author><firstname>Richard</firstname><surname>Stevens</surname></author>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 0-13-081081-9</isbn>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>Ditto...</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Linux Network Administrator's Guide</title>
|
|
<author><firstname>Olaf</firstname><surname>Kirch</surname></author>
|
|
<copyright><year>1995</year></copyright>
|
|
<isbn>ISBN 1-56592-087-2</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>Available on the LDP home page, or
|
|
directly at <ulink url="&ldpsite;nag/nag.html">&ldpsite;nag.html</ulink>.</para>
|
|
|
|
<para>An excellent first book on how to maintain and administer a
|
|
networked Linux system.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>TCP/IP Network Administration</title>
|
|
<author><firstname>Craig</firstname><surname>Hunt</surname></author>
|
|
<copyright><year>1992</year></copyright>
|
|
<isbn>ISBN 0-937175-82-X</isbn>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<pagenums>472pp.</pagenums>
|
|
<abstract>
|
|
<para>Less Linux-specific than the Kirch book. Features deeper
|
|
coverage of the TCP/IP core, including routing and BGP.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/tcp2/noframes.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>DNS and BIND</title>
|
|
<edition>Second Edition</edition>
|
|
<authorgroup>
|
|
<author><firstname>Paul</firstname><surname>Albiz</surname></author>
|
|
<author><firstname>Cricket</firstname><surname>Liu</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 1-56592-512-2</isbn>
|
|
<pagenums>502pp.</pagenums>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>In-depth coverage of DNS, useful for people running complicated
|
|
multiple-subnet installations. Covers BIND library programming.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/dns2/noframes.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Sendmail</title>
|
|
<edition>Third Edition</edition>
|
|
<authorgroup>
|
|
<author><firstname>Bryan</firstname><surname>Costales</surname></author>
|
|
<author><firstname>Eric</firstname><surname>Allman</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>2002</year></copyright>
|
|
<isbn>ISBN 1-56592-839-3</isbn>
|
|
<pagenums>1232pp.</pagenums>
|
|
<publisher><publishername>O'Reilly & Associates</publishername></publisher>
|
|
<abstract>
|
|
<para>An exhaustive (and exhausting) guide to Linux's and Unix's
|
|
default mail-transfer agent.</para>
|
|
|
|
<para><ulink url="http://www.ora.com/catalog/sendmail2/noframes.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
<bibliodiv><title>Ancestors of Linux</title>
|
|
|
|
<biblioentry>
|
|
<title>The Design of the Unix Operating System</title>
|
|
<author><firstname>Maurice J.</firstname><surname>Bach</surname></author>
|
|
<copyright><year>1996</year></copyright>
|
|
<isbn>ISBN 0-13-201799-7</isbn>
|
|
<pagenums>470pp.</pagenums>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>The book that got Linus started.</para>
|
|
|
|
<para><ulink url="http://www.prenhall.com/books/ptr_0132017997.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Operating Systems, Design and Implementation</title>
|
|
<author><firstname>Andrew S.</firstname><surname>Tanenbaum</surname></author>
|
|
<copyright><year>1987</year></copyright>
|
|
<isbn>ISBN 0-13-638677-6</isbn>
|
|
<pagenums>940pp.</pagenums>
|
|
<publisher><publishername>Prentice-Hall</publishername></publisher>
|
|
<abstract>
|
|
<para>Alan Cox likes this book. Tanenbaum designed Minix, which is
|
|
the system Linus bootstrapped Linux up from.</para>
|
|
|
|
<para><ulink url="http://www.prenhall.com/books/esm_0136386776.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
<bibliodiv><title>The Linux kernel</title>
|
|
|
|
<biblioentry>
|
|
<title>The Linux Kernel book</title>
|
|
<authorgroup>
|
|
<author><firstname>Rémy</firstname><surname>Card</surname></author>
|
|
<author><firstname>Èric</firstname><surname>Dumas</surname></author>
|
|
<author><firstname>Frank</firstname><surname>Mével</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1998</year></copyright>
|
|
<isbn>ISBN 0-471-98141-9</isbn>
|
|
<publisher><publishername>John Wiley & Sons</publishername></publisher>
|
|
<abstract>
|
|
<para>(Translated from the French language edition of
|
|
"Programmation Linux 2.0"; same authors; 1997; Éditions
|
|
Eyrolles; Paris, France.)</para>
|
|
|
|
<para>A very interesting and informative examination of the
|
|
operation of the kernel that fills in the gap between the POSIX
|
|
interface and "The Design of the Unix Operating System" and the
|
|
Linux source code. A good understanding of the design and
|
|
operation of a Unix OS is a pre-requisite, but this book is an
|
|
excellent help to going beyond that general understanding into
|
|
actual work.</para>
|
|
|
|
<para>The primary author is one of the core developers for the ext2
|
|
filesystem, and the Linux Kernel book shows a firm grasp of the
|
|
matter and clear explanations and structure. It's surprisingly
|
|
readable for something working at such a low level. The book does
|
|
seem to have suffered a little in the translation to English --
|
|
there are a few typos and grammatical mistakes, but it's quite
|
|
readable. (The code example files are charmingly still named in
|
|
French.)</para>
|
|
|
|
<para>The book is current to Linux 2.0.35 and foreshadows 2.1 and 2.2.
|
|
Network protocol implementations are not covered.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>LINUX Kernel Programming</title>
|
|
<edition>(Third Edition)</edition>
|
|
<authorgroup>
|
|
<author><firstname>Michael</firstname><surname>Beck</surname></author>
|
|
<author><firstname>Harold</firstname><surname>Bohme</surname></author>
|
|
<author><firstname>Mirko</firstname><surname>Dziadka</surname></author>
|
|
<author><firstname>Robert</firstname><surname>Magnus</surname></author>
|
|
<author><firstname>Claus</firstname><surname>Schroter</surname></author>
|
|
<author><firstname>Dirk</firstname><surname>Verworner</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>2002</year></copyright>
|
|
<isbn>ISBN 0-201-719754</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<pagenums>480pp.</pagenums>
|
|
<abstract>
|
|
<para>A guide to Linux kernel programming; covers 2.4. Covers the
|
|
architecture of the Linux core and network layer as well as driver
|
|
construction.</para>
|
|
|
|
<para><ulink url="http://www.awprofessional.com/catalog/product.asp?product_id={8D651984-15AF-4C2D-B17C-C07A7758DF23}">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
<bibliodiv><title>Relatives of Linux</title>
|
|
|
|
<biblioentry>
|
|
<title>The Design and Implementation of the 4.4BSD Unix Operating System</title>
|
|
<authorgroup>
|
|
<author><firstname>Marshall Kirk</firstname><surname>McKusick</surname></author>
|
|
<author><firstname>Keith</firstname><surname>Bostic</surname></author>
|
|
<author><firstname>Michael J.</firstname><surname>Karels</surname></author>
|
|
<author><firstname>John S.</firstname><surname>Quarterman</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1996</year></copyright>
|
|
<isbn>ISBN 0-201-54979-4</isbn>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
|
|
<para>The successor to a classic book on the implementation of the
|
|
4.3 BSD kernel, which influenced Linux's design (especially near
|
|
sockets and networking). This book covers the 4.4BSD base of BSD/OS,
|
|
FreeBSD, and NetBSD.</para>
|
|
|
|
<para><ulink url="http://www.aw-bc.com/catalog/academic/product/0,4096,0201549794,00.html">
|
|
Order here.</ulink></para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
<bibliodiv><title>Books on Intel and PC hacking</title>
|
|
|
|
<biblioentry>
|
|
<title>80386 Programmer's Reference Manual</title>
|
|
<corpauthor>Intel Corporation</corpauthor>
|
|
<copyright><year>1986</year></copyright>
|
|
<isbn>ISBN 1-55512-022-9</isbn>
|
|
<abstract>
|
|
<para>Part I. Applications Programming, data types, memory model,
|
|
instruction set. Part II. Systems Programming, architecture,
|
|
memory management, protection, multitasking, I/O, exceptions and
|
|
interrupts, initialization, coprocessing and multiprocessing. Part
|
|
III. Compatibility (with earlier x86 machines). Part
|
|
IV. Instruction Set</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>80386 System Software Writer's Guide</title>
|
|
<corpauthor>Intel Corporation</corpauthor>
|
|
<copyright><year>1987</year></copyright>
|
|
<isbn>ISBN 1-55512-023-7</isbn>
|
|
<abstract>
|
|
<para>This explains the 386 features for operating system writers. It
|
|
includes a chapter on Unix implementation. A lot of the 80386
|
|
architecture seems to have been designed with Multics in mind; the
|
|
features are not used by DOS or by Unix.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>Programming the 80386</title>
|
|
<authorgroup>
|
|
<author><firstname>John H.</firstname><surname>Crawford</surname></author>
|
|
<author><firstname>Patrick P.</firstname><surname>Gelsinger</surname></author>
|
|
</authorgroup>
|
|
<copyright><year>1987</year></copyright>
|
|
<isbn>ISBN 0-89588-381-3</isbn>
|
|
<pagenums>774pp.</pagenums>
|
|
<abstract>
|
|
<para>This is the book the Jolitzes used when they ported BSD to the
|
|
386 architecture.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>80386 Hardware Reference Manual</title>
|
|
<corpauthor>Intel Corporation</corpauthor>
|
|
<copyright><year>1986</year></copyright>
|
|
<isbn>ISBN 1-55512-024-5</isbn>
|
|
<abstract>
|
|
<para>Pin connections, timing, waveforms, block diagrams, voltages,
|
|
all that kind of stuff.</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
<biblioentry>
|
|
<title>The Indispensable PC Hardware Book</title>
|
|
<author><firstname>Hans-Peter</firstname><surname>Messmer</surname></author>
|
|
<copyright><year>1993</year></copyright>
|
|
<isbn>ISBN 0-201-62424-9</isbn>
|
|
<pagenums>1000pp.</pagenums>
|
|
<publisher><publishername>Addison-Wesley</publishername></publisher>
|
|
<abstract>
|
|
<para>JH: "Covers the more recent stuff like EIDE and PCI."</para>
|
|
</abstract>
|
|
</biblioentry>
|
|
|
|
</bibliodiv>
|
|
|
|
</bibliography>
|
|
|
|
<appendix><title>Administrivia</title>
|
|
|
|
<sect1><title> Terms of Use</title>
|
|
|
|
<para>This document is copyright 1999 by Eric S. Raymond. You may use,
|
|
disseminate, and reproduce it freely, provided you:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Do not omit or alter this copyright notice.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Do not omit or alter or omit the version number and date.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Do not omit or alter the document's pointer to the current WWW
|
|
version.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Clearly mark any condensed, altered or versions as such.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>These restrictions are intended to protect potential readers from
|
|
stale or mangled versions. If you think you have a good case for
|
|
an exception, ask me.</para>
|
|
|
|
</sect1>
|
|
<sect1><title>History</title>
|
|
|
|
<para>This was originally a mini-HOWTO maintained by Jim Haynes.
|
|
I have changed the emphasis somewhat, trying to make it more
|
|
a standalone document and less reliant on the various USENET
|
|
bibliographic postings. The unattributed mini-reviews are mine
|
|
rather than his.</para>
|
|
|
|
</sect1>
|
|
</appendix>
|
|
</article>
|
|
|
|
<!--
|
|
The following sets edit modes for GNU EMACS
|
|
Local Variables:
|
|
fill-prefix:"\t"
|
|
compile-command: "mail -s \"Reading List HOWTO update\" submit@en.tldp.org <Reading-List-HOWTO.xml"
|
|
fill-column:75
|
|
End:
|
|
-->
|