2nd ed. Reading: Addison-Wesley, 1995.UNIX for the Impatient.
Adobe Systems Inc. PostScript Language Reference. 3rd ed. Reading: Addison-Wesley, 1999.
The definitive reference to the PostScript page description language.
Adobe Systems Inc. PostScript Language Tutorial and Cookbook. Reading: Addison-Wesley, 1985.
A guide to learning the PostScript page description language. Includes many examples.
Reading: Addison-Wesley, 1988.The AWK Programming Language.
By the creators of this language.
Reading: Addison-Wesley, 1986.Compilers: Principles, Techniques, and Tools.
The classic textbook for compiler construction, also known as "the dragon book." Although nearly 20 years old, this textbook still covers more than enough for a course.
4th ed. Sebastopol: O'Reilly & Associates, 2001.DNS and BIND.
The domain name service maps names to IP addresses. If you need to administer domain names and you have no prior experience, you probably need this book.
Cambridge: Cambridge University Press, 1997.Modern Compiler Implementation in ML.
One of the many newer compiler books on the market, Appel's guide spends less time with tokenizing and parsing, focusing instead on intermediate representation, code generation, and advanced topics such as optimization.
2nd ed. Indianapolis: New Riders, 2001.Python Essential Reference.
A no-nonsense reference to the Python language and library.
"The Inside Story on Shared Libraries and Dynamic Loading." Computing in Science and Engineering no. 5 (2001): 90–97.
An overview of how shared libraries and dynamic loading work, and the things you can do with them.
2nd ed. Washington, D.C.: International Thompson Publishing, 1995.Plan 9: Programmer's Manual.
Plan 9 is the operating system that the creators of Unix made after they got sick of Unix, featuring many interesting improvements in networking and the underlying filesystem infrastructure.
2nd ed. Sebastopol: O'Reilly & Associates, 1997.sed & awk.
A two-for-one guide to the stream editor and the AWK programming language.
Filesystem Hierarchy Standard Group. "Filesystem Hierarchy Standard," Version 2.3 (2004), Rusty Russell, Daniel Quinlan, and Christopher Yeoh, eds. http://www.pathname.com/fhs/(accessed March 2004).
A document describing why the Linux directory structure looks as it does.
2nd ed. Sebastopol: O'Reilly & Associates, 2002.Mastering Regular Expressions.
The regular expression is the basis of Unix pattern matching. You will use them in basic utilities such as grep, in configuration files, and in scripting languages such as Perl.
3rd ed. San Francisco: Morgan-Kaufmann, 2002.Computer Architecture: A Quantitative Approach.
Explains why computer hardware works as it does, and why it is designed as it is. This book is comprehensive, covering topics from economic aspects to pipelining and performance analysis.
2nd ed. Reading: Addison-Wesley, 2000.Introduction to Automata Theory, Languages, and Computation.
The classic textbook for finite state automata, turing machines, and elementary complexity in computer science theory.
San Francisco: No Starch Press, 2003.The Art of Assembly Language.
Covers how to program in x86 assembly language.
2nd ed. Englewood Cliffs: Prentice Hall PTR, 1991.MIPS RISC Architecture.
Describes MIPS RISC architecture and assembly language. An excellent overview of RISC design.
Englewood Cliffs: Prentice Hall, 1978.The UNIX Programming Environment.
The classic guide to programming Unix system, covering the C compiler, shell scripts, and make. Although this book is showing its age (many of the programming components are outdated), it shows you the basic structure of development environment that is still used today.
2nd ed. Upper Saddle River: Prentice Hall, 1988.The C Programming Language.
Probably the best computer book ever written.
"Processes as files." Proceedings of the Summer 1984 USENIX Conference, pages 203–207. Salt Lake City, 1984.
The origin of the /proc filesystem.
3rd ed. Indianapolis: Sams, 2003.Unix Shell Programming.
6th ed. Sebastopol: O'Reilly & Associates, 1998.Learning the vi Editor.
San Francisco: No Starch Press, 2004.How Samba Works.
A refreshingly short guide to how Samba, SMB/CIFS, and NetBIOS work.
San Francisco: Morgan-Kaufmann, 2000.Linkers and Loaders.
A comprehensive textbook for how linkers, shared libraries, and dynamic loaders work.
2nd ed. Sebastopol: O'Reilly & Associates, 1991.Managing Projects with make.
5th ed. Sebastopol: O'Reilly & Associates, 2002.Learning the UNIX Operating System.
Sebastopol: O'Reilly & Associates, 1999.UNIX Backup and Recovery.
Backups for the enterprise, including automated backup systems such as Amanda.
Raymond, Eric S., ed., The New Hacker's Dictionary. 3rd ed. Cambridge: MIT Press, 1996.
The in-print version of the so-called jargon file.
Reading: Addison-Wesley, 1994.A Quarter Century of UNIX.
Where Unix came from and how it evolved.
2nd ed. Hoboken: Wiley, 1995.Applied Cryptography.
The only guide to cryptography that you're likely to need; explains the theory of cryptographic algorithms and how to implement them.
3rd ed. Sebastopol: O'Reilly & Associates, 2001.Learning Perl.
6th ed. Hoboken: Wiley, 2002.Operating System Concepts.
The classic textbook for operating systems kernels, sometimes called "the dinosaur book."
9th ed. Cambridge: Free Software Foundation, 2002.Debugging with GDB.
15th ed. Cambridge: Free Software Foundation, 2002.GNU Emacs Manual.
4th ed. Upper Saddle River: Prentice Hall PTR, 2002.Computer Networks.
Explains just about anything you'd want to know about the theory of computer networks and how they are built. This is not a programmer's guide.
3rd ed. Sebastopol: O'Reilly & Associates.Programming Perl.