Aho,A.V., Kernighan,B.W., and Weinberger,P. J. 1988. The AWK Programming Language. Addison-Wesley, Reading, Massachusetts.
Albitz,P., and Liu,C. 2006. DNS and BIND (5th edition). O’Reilly, Sebastopol, California.
Anley,C., Heasman,J., Lindner,F., and Richarte,G. 2007. The Shellcoder’s Handbook: Discovering and Exploiting Security Holes. Wiley, Indianapolis, Indiana.
Bach,M. 1986. The Design of the UNIX Operating System. Prentice Hall, Englewood Cliffs, New Jersey.
Bhattiprolu,S., Biederman,E.W., Hallyn,S., and Lezcano,D. 2008. “Virtual Servers and Checkpoint/Restart in Mainstream Linux,” ACM SIGOPS Operating Systems Review, , Issue 5, July 2008, pages 104–113.
Note
http://www.mnis.fr/fr/services/virtualisation/pdf/cr.pdf
Bishop,M. 2003. Computer Security: Art and Science. Addison-Wesley, Reading, Massachusetts.
Bishop,M. 2005. Introduction to Computer Security. Addison-Wesley, Reading, Massachusetts.
Borisov,N., Johnson,R., Sastry,N., and Wagner,D. 2005. “Fixing Races for Fun and Profit: How to abuse atime,” Proceedings of the 14th USENIX Security Symposium.
Note
http://www.cs.berkeley.edu/~nks/papers/races-usenix05.pdf
Bovet,D.P., and Cesati,M. 2005. Understanding the Linux Kernel (3rd edition). O’Reilly, Sebastopol, California.
Butenhof,D.R. 1996. Programming with POSIX Threads. Addison-Wesley, Reading, Massachusetts.
Note
Further information, as well as source code for the programs in this book, can be found at http://homepage.mac.com/dbutenhof/Threads/Threads.html.
Chen,H., Wagner,D., and Dean,D. 2002. “Setuid Demystified,” Proceedings of the 11th USENIX Security Symposium.
Note
http://www.cs.berkeley.edu/~daw/papers/setuid-usenix02.pdf
Comer,D.E. 2000. Internetworking with TCP/IP Vol. I: Principles, Protocols, and Architecture (4th edition). Prentice Hall, Upper Saddle River, New Jersey.
Note
Further information about the Internetworking with TCP/IP book series (including source code) can be found at http://www.cs.purdue.edu/homes/dec/netbooks.html.
Comer,D.E., and Stevens,D.L. 1999. Internetworking with TCP/IP Vol. II: Design, Implementation, and Internals (3rd edition). Prentice Hall, Upper Saddle River, New Jersey.
Comer,D.E., and Stevens,D.L. 2000. Internetworking with TCP/IP, Vol. III: Client-Server Programming and Applications, Linux/Posix Sockets Version. Prentice Hall, Englewood Cliffs, New Jersey.
Corbet,J. 2002. “The Orlov block allocator.” Linux Weekly News, 5 November 2002.
Note
http://lwn.net/Articles/14633/
Corbet,J., Rubini,A., and Kroah-Hartman,G. 2005. Linux Device Drivers (3rd edition). O’Reilly, Sebastopol, California.
Note
http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
Deitel,H.M., Deitel,P. J., and Choffnes,D. R. 2004. Operating Systems (3rd edition). Prentice Hall, Upper Saddle River, New Jersey.
Dijkstra,E.W. 1968. “Cooperating Sequential Processes,” Programming Languages, ed. F. Genuys, Academic Press, New York.
Drepper,U. 2004 (a). “Futexes Are Tricky.”
Note
http://people.redhat.com/drepper/defprogramming.pdf
Erickson,J.M. 2008. Hacking: The Art of Exploitation (2nd edition). No Starch Press, San Francisco, California.
Floyd,S. 1994. “TCP and Explicit Congestion Notification,” ACM Computer Communication Review, , No. 5, October 1994, pages 10–23.
Note
http://www.icir.org/floyd/papers/tcp_ecn.4.pdf
Franke,H., Russell,R., and Kirkwood,M. 2002. “Fuss, Futexes and Furwocks: Fast Userlevel Locking in Linux,” Proceedings of the Ottawa Linux Symposium 2002.
Note
http://www.kernel.org/doc/ols/2002/ols2002-pages-479-495.pdf
Frisch,A. 2002. Essential System Administration (3rd edition). O’Reilly, Sebastopol, California.
Gallmeister,B.O. 1995. POSIX.4: Programming for the Real World. O’Reilly, Sebastopol, California.
Gammo,L., Brecht,T., Shukla,A., and Pariag,D. 2004. “Comparing and Evaluating epoll, select, and poll Event Mechanisms,” Proceedings of the Ottawa Linux Symposium 2002.
Note
http://www.kernel.org/doc/ols/2004/ols2004v1-pages-215-226.pdf
Gancarz,M. 2003. Linux and the Unix Philosophy. Digital Press.
Garfinkel,S., Spafford,G., and Schwartz,A. 2003. Practical Unix and Internet Security (3rd edition). O’Reilly, Sebastopol, California.
Gont,F. 2008. Security Assessment of the Internet Protocol. UK Centre for the Protection of the National Infrastructure.
Note
http://www.gont.com.ar/drafts/urgent-data/
Goodheart,B., and Cox,J. 1994. The Magic Garden Explained: The Internals of UNIX SVR4. Prentice Hall, Englewood Cliffs, New Jersey.
Goralski,W. 2009. The Illustrated Network: How TCP/IP Works in a Modern Network. Morgan Kaufmann, Burlington, Massachusetts.
Gorman,M. 2004. Understanding the Linux Virtual Memory Manager. Prentice Hall, Upper Saddle River, New Jersey.
Note
http://www.ibm.com/developerworks/library/l-posixcap.html
Harbison,S., and Steele,G. 2002. C: A Reference Manual (5th edition). Prentice Hall, Englewood Cliffs, New Jersey.
Herbert,T.F. 2004. The Linux TCP/IP Stack: Networking for Embedded Systems. Charles River Media, Hingham, Massachusetts.
Hubička,J. 2003. “Porting GCC to the AMD64 Architecture,” Proceedings of the First Annual GCC Developers’ Summit.
Note
http://www.ucw.cz/~hubicka/papers/amd64/index.html
Johnson,M.K., and Troan,E.W. 2005. Linux Application Development (2nd edition). Addison-Wesley, Reading, Massachusetts.
Josey,A. (ed.). 2004. The Single UNIX Specification, Authorized Guide to Version 3. The Open Group.
Note
See http://www.unix-systems.org/version3/theguide.html for details on ordering this guide. A newer version of this guide (published in 2010) for version 4 of the specification can be ordered online at http://www.opengroup.org/bookstore/catalog/.
Kent,A., and Mogul,J.C. 1987. “Fragmentation Considered Harmful,” ACM Computer Communication Review, , No. 5, August 1987.
Note
http://www.acm.org/sigcomm/ccr/archive/1995/jan95/ccr-9501-mogulf1.pdf
Kernighan,B.W., and Ritchie,D.M. 1988. The C Programming Language (2nd edition). Prentice Hall, Englewood Cliffs, New Jersey.
Kopparapu,C. 2002. Load Balancing Servers, Firewalls, and Caches. John Wiley and Sons.
Kozierok,C.M. 2005. The TCP/IP Guide. No Starch Press, San Francisco, California.
Note
http://www.kroah.com/linux/talks/ols_2003_udev_paper/Reprint-Kroah-Hartman-OLS2003.pdf
Kumar,A., Cao,M., Santos,J., and Dilger,A. 2008. “Ext4 block and inode allocator improvements,” Proceedings of the 2008 Linux Symposium, Ottawa, Canada.
Note
http://www.iecc.com/linker/
Lewine,D. 1991. POSIX Programmer’s Guide. O’Reilly, Sebastopol, California.
Liang,S. 1999. The Java Native Interface: Programmer’s Guide and Specification. Addison-Wesley, Reading, Massachusetts.
Note
http://java.sun.com/docs/books/jni/
Libes,D., and Ressler,S. 1989. Life with UNIX: A Guide for Everyone. Prentice Hall, Englewood Cliffs, New Jersey.
Lions,J. 1996. Lions’ Commentary on UNIX 6th Edition with Source Code. Peer-to-Peer Communications, San Jose, California.
Note
[Lions, 1996] was originally produced by an Australian academic, the late John Lions, in 1977 for use in an operating systems class that he taught. At that time, it could not be formally published because of licensing restrictions. Nevertheless, pirated photocopies became widely distributed within the UNIX community, and, in Dennis Ritchie’s words, “educated a generation” of UNIX programmers.
Love,R. 2010. Linux Kernel Development (3rd edition). Addison-Wesley, Reading, Massachusetts.
Lu,H.J. 1995. “ELF: From the Programmer’s Perspective.”
Note
http://www.trunix.org/programlama/os/elf-hl/Documentation/elf/elf.html
Mann,S., and Mitchell,E.L. 2003. Linux System Security (2nd edition). Prentice Hall, Englewood Cliffs, New Jersey.
Matloff,N. and Salzman,P.J. 2008. The Art of Debugging with GDB, DDD, and Eclipse. No Starch Press, San Francisco, California.
Maxwell,S. 1999. Linux Core Kernel Commentary. Coriolis, Scottsdale, Arizona.
Note
This book provides an annotated listing of selected parts of the Linux 2.2.5 kernel.
McKusick,M.K., Joy,W.N., Leffler,S.J., and Fabry,R.S. 1984. “A fast file system for UNIX,” ACM Transactions on Computer Systems, , Issue 3 (August).
Note
This paper can be found online at a variety of locations.
McKusick,M.K. 1999. “Twenty years of Berkeley Unix,” Open Sources: Voices from the Open Source Revolution, C. DiBona, S. Ockman, and M. Stone (eds.). O’Reilly, Sebastopol, California.
McKusick,M.K., Bostic,K., and Karels,M.J. 1996. The Design and Implementation of the 4.4BSD Operating System. Addison-Wesley, Reading, Massachusetts.
McKusick,M.K., and Neville-Neil,G.V. 2005. The Design and Implementation of the FreeBSD Operating System. Addison-Wesley, Reading, Massachusetts.
Mecklenburg,R. 2005. Managing Projects with GNU Make (3rd edition). O’Reilly, Sebastopol, California.
Mills,D.L. 1992. “Network Time Protocol (Version 3) Specification, Implementation and Analysis,” RFC 1305, March 1992.
Note
http://www.rfc-editor.org/rfc/rfc1305.txt
Mochel,P. “The sysfs Filesystem,” Proceedings of the Ottawa Linux Symposium 2002.
Mosberger,D., and Eranian,S. 2002. IA-64 Linux Kernel: Design and Implementation. Prentice Hall, Upper Saddle River, New Jersey.
Peek,J., Todino-Gonguet,G., and Strang,J. 2001. Learning the UNIX Operating System (5th edition). O’Reilly, Sebastopol, California.
Peikari,C., and Chuvakin,A. 2004. Security Warrior. O’Reilly, Sebastopol, California.
Plauger,P.J. 1992. The Standard C Library. Prentice Hall, Englewood Cliffs, New Jersey.
Quarterman,J.S., and Wilhelm,S. 1993. UNIX, Posix, and Open Systems: The Open Standards Puzzle. Addison-Wesley, Reading, Massachusetts.
Ritchie,D.M. 1984. “The Evolution of the UNIX Time-sharing System,” AT&T Bell Laboratories Technical Journal, 63, No. 6 Part 2 (October 1984), pages 1577–93.
Note
Dennis Ritchie’s home page (http://www.cs.bell-labs.com/who/dmr/index.html) provides a pointer to an online version of this paper, as well as [Ritchie & Thompson, 1974], and has many other pieces of UNIX history.
Ritchie,D.M., and Thompson,K.L. 1974. “The Unix Time-Sharing System,” Communications of the ACM, 17 (July 1974), pages 365–375.
Robbins,K.A., and Robbins,S. 2003. UNIX Systems Programming: Communication, Concurrency, and Threads (2nd edition). Prentice Hall, Upper Saddle River, New Jersey.
Rochkind,M.J. 1985. Advanced UNIX Programming. Prentice Hall, Englewood Cliffs, New Jersey.
Rochkind,M.J. 2004. Advanced UNIX Programming (2nd edition). Addison-Wesley, Reading, Massachusetts.
Rosen,L. 2005. Open Source Licensing: Software Freedom and Intellectual Property Law. Prentice Hall, Upper Saddle River, New Jersey.
St. Laurent,A.M. 2004. Understanding Open Source and Free Software Licensing. O’Reilly, Sebastopol, California.
Salus,P.H. 1994. A Quarter Century of UNIX. Addison-Wesley, Reading, Massachusetts.
Salus,P.H. 2008. The Daemon, the Gnu, and the Penguin. Addison-Wesley, Reading, Massachusetts.
Note
http://www.groklaw.net/staticpages/index.php?page=20051013231901859
A short history of Linux, the BSDs, the HURD, and other free software projects.
Sarolahti,P., and Kuznetsov,A. 2002. “Congestion Control in Linux TCP,” Proceedings of USENIX 2002/Freenix Track.
Note
http://www.cs.helsinki.fi/research/iwtcp/papers/linuxtcp.pdf
Schimmel,C. 1994. UNIX Systems for Modern Architectures. Addison-Wesley, Reading, Massachusetts.
Snader,J.C. 2000. Effective TCP/IP Programming: 44 tips to improve your network programming. Addison-Wesley, Reading, Massachusetts.
Stevens,W.R. 1992. Advanced Programming in the UNIX Environment. Addison-Wesley, Reading, Massachusetts.
Note
Further information about all of the books of the late W. Richard Stevens (including program source code, with some modified code versions for Linux submitted by readers) can be found at http://www.kohala.com/start/.
Stevens,W.R. 1998. UNIX Network Programming, Volume 1 (2nd edition): Networking APIs: Sockets and XTI. Prentice Hall, Upper Saddle River, New Jersey.
Stevens,W.R. 1999. UNIX Network Programming, Volume 2 (2nd edition): Interprocess Communications. Prentice Hall, Upper Saddle River, New Jersey.
Stevens,W.R. 1994. TCP/IP Illustrated, Volume 1: The Protocols. Addison-Wesley, Reading, Massachusetts.
Stevens,W.R. 1996. TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols. Addison-Wesley, Reading, Massachusetts.
Stevens,W.R., Fenner,B., and Rudoff,A.M. 2004. UNIX Network Programming, Volume 1 (3rd edition): The Sockets Networking API. Addison-Wesley, Boston, Massachusetts.
Note
Source code for this edition is available at http://www.unpbook.com/.
In most cases where we make reference to [Stevens et al., 2004] in this book, the same material can also found in [Stevens, 1998], the preceding edition of UNIX Network Programming, Volume 1.
Stevens,W.R., and Rago,S.A. 2005. Advanced Programming in the UNIX Environment (2nd edition). Addison-Wesley, Boston, Massachusetts.
Stewart,R.R., and Xie,Q. 2001. Stream Control Transmission Protocol (SCTP). Addison-Wesley, Reading, Massachusetts.
Stone,J., and Partridge,C. 2000. “When the CRC and the TCP Checksum Disagree,” Proceedings of SIGCOMM 2000.
Note
http://www.acm.org/sigcomm/sigcomm2000/conf/abstract/9-1.htm
Strang,J. 1986. Programming with Curses. O’Reilly, Sebastopol, California.
Strang,J., Mui,L., and O’Reilly,T. 1988. Termcap & Terminfo (3rd edition). O’Reilly, Sebastopol, California.
Tanenbaum,A.S. 2007. Modern Operating Systems (3rd edition). Prentice Hall, Upper Saddle River, New Jersey.
Tanenbaum,A.S. 2002. Computer Networks (4th edition). Prentice Hall, Upper Saddle River, New Jersey.
Tanenbaum,A.S., and Woodhull,A.S. 2006. Operating Systems: Design And Implementation (3rd edition). Prentice Hall, Upper Saddle River, New Jersey.
Torvalds,L.B., and Diamond,D. 2001. Just for Fun: The Story of an Accidental Revolutionary. HarperCollins, New York, New York.
Tsafrir,D., da Silva,D., and Wagner,D. “The Murky Issue of Changing Process Identity: Revising ‘Setuid Demystified’,” ;login: The USENIX Magazine, June 2008.
Note
http://www.usenix.org/publications/login/2008-06/pdfs/tsafrir.pdf
Vahalia,U. 1996. UNIX Internals: The New Frontiers. Prentice Hall, Upper Saddle River, New Jersey.
van der Linden,P. 1994. Expert C Programming—Deep C Secrets. Prentice Hall, Englewood Cliffs, New Jersey.
Vaughan,G.V., Elliston,B., Tromey,T., and Taylor,I.L. 2000. GNU Autoconf, Automake, and Libtool. New Riders, Indianapolis, Indiana.
Note
http://sources.redhat.com/autobook/
Viega,J., and McGraw,G. 2002. Building Secure Software. Addison-Wesley, Reading, Massachusetts.
Viro,A. and Pai,R. 2006. “Shared-Subtree Concept, Implementation, and Applications in Linux,” Proceedings of the Ottawa Linux Symposium 2006.
Note
http://www.trustedbsd.org/trustedbsd-bsdcon-2000.pdf
Williams,S. 2002. Free as in Freedom: Richard Stallman’s Crusade for Free Software. O’Reilly, Sebastopol, California.
Wright,G.R., and Stevens,W.R. 1995. TCP/IP Illustrated, Volume 2: The Implementation. Addison-Wesley, Reading, Massachusetts.