Understanding the Linux Kernel, D. P. Bovet & M. Cesati



``In the spring semester of 1997, we taught a course on operating systems based on Linux 2.0. The idea was to encourage students to read the source code. To achieve this, we assigned term projects consisting of making changes to the kernel and performing tests on the modified version. We also wrote course notes for our students about a few critical features of Linux like task switching and task scheduling.

We continued along this line in the spring semester of 1998, but we moved on to the Linux 2.1 development version. Our course notes were becoming larger and larger. In July, 1998 we contacted O'Reilly & Associates, suggesting they publish a whole book on the Linux kernel. The real work started in the fall of 1998 and lasted about a year and a half. We read thousands of lines of code, trying to make sense of them. After all this work, we can say that it was worth the effort. We learned a lot of things you don't find in books, and we hope we have succeded in conveying some of this information in the following pages...''

D. P. Bovet, M. Cesati (from the Preface of the first edition)

``The success encountered by this book encouraged us to continue along this line, and in the fall of 2001 we started planning a second edition covering Linux 2.4... As a result, we had to rewrite from scratch two-thirds of the book, increasing its size by roughly 25 percent...''

D. P. Bovet, M. Cesati (from the Preface of the second edition)

LinuxJournal Editor Choice 2003

We have collected here several bits of information about our books. The page is essentially a link container, thus don't expect too much from it. Be aware that the second edition of ULK is not just a slightly revised version of the first edition: rather, it is a whole new book, explaining the inner details of the Linux 2.4 stable version.

ULK, 2nd edition

Title:
Understanding the Linux Kernel, 2nd Edition
Authors:
Daniel P. Bovet and Marco Cesati ([email protected])
Publisher:
O'Reilly & Associates, Inc., 101 Morris Street, Sebastopol, CA 95472.
Editor:
Andy Oram
Production Editor:
Mary Brady
Cover Designer:
Edie Freedman
Interior Designer:
David Futato
Catalog data:
December 2002, ISBN 0-596-00213-0, 766 pages, $49.95
Publisher's links:
Online catalog
Press announce
Retail site
Safari on-line version
Excerpt from the book

Awards

International translations

The publisher maintains a page for to the international translations of its books.

O'Reilly & Associates (original) "Understanding the Linux kernel", 2nd edition, December 2002, ISBN: 0-596-00213-0, 766 pages, 49.95 US$. Contact: Andy Oram

O'Reilly Japan ([Japanese title], 2nd edition, June 2003, ISBN: 4-87311-133-1, 870 pages, 5900 ¥). Contact: Ryoko Akaike. Kudos to the Japanese translators!

Reviews

ULK, 1st edition

Title:
Understanding the Linux Kernel
Authors:
Daniel P. Bovet and Marco Cesati ([email protected])
Publisher:
O'Reilly & Associates, Inc., 101 Morris Street, Sebastopol, CA 95472.
Editor:
Andy Oram
Production Editor:
Catherine Morris
Cover Designer:
Edie Freedman
Catalog data:
January 2001, ISBN 0-596-00002-2, 702 pages, $39.95
Publisher's links:
Online catalog
Press announce
Retail site
Safari on-line version
Excerpt from the book

International translations

The publisher maintains a page for to the international translations of its books.

[18 DPI, 8KB] [72 DPI, 44KB] [150 DPI, 184KB] [300 DPI, 680KB] [600 DPI, 2336KB]
O'Reilly & Associates (original) "Understanding the Linux kernel", 1st edition, October 2000, ISBN: 0-596-00002-2, 684 pages, 39.95 US$. Contact: Andy Oram

[18 DPI, 8KB] [72 DPI, 44KB] [150 DPI, 180KB] [300 DPI, 656KB] [600 DPI, 2152KB]
O'Reilly France ("Le noyau Linux", 1re édition, Juillet 2001, ISBN: 2-84177-141-5, 692 pages, 53 euros ou 347,66 F). Contact: Dominique Buraud

[18 DPI, 8KB] [72 DPI, 44KB] [150 DPI, 176KB] [300 DPI, 680KB] [600 DPI, 2396KB]
O'Reilly Japan ([Japanese title], 1st edition, July 2001, ISBN: 4-87311-048-3, 790 pages, 5800 ¥). Contact: Shinji Nakao or Ryoko Akaike

[18 DPI, 8KB] [75 DPI, 56KB] [150 DPI, 192KB] [300 DPI, 680KB] [600 DPI, 2184KB]
Wydawnictwo RM, Warszawa 2001 (Linux kernel, 1st edition, 2001, ISBN: 83-7243-176-0, 634 pages). Contact: Cindy Wetterlund

[18 DPI, 8KB] [72 DPI, 48KB] [150 DPI, 192KB] [300 DPI, 696KB] [600 DPI, 2204KB]
Beijing China ([Chinese title], 1st edition, 2001, ISBN: 7-5083-0719-4, 719 pages, 79.00 ?; Contact: Douglas Wan

Reviews

Academic courses

Warning: some of the following links could be broken. Sorry.

The book was used (either as a textbook or as a suggested reading) in these academic courses:

  1. CS 3210 2-3-3 Design of Operating Systems (Phillip W. Hutto), Fall 2000, Georgia Tech College of Computing
  2. CS 3210 2-3-3 Design of Operating Systems (Phillip W. Hutto), Spring 2001, Georgia Tech College of Computing
  3. CS 550 Operating Systems (George Blankenship), Spring 2001, Marymount University
  4. COMS W4118 Operating Systems I (Jason Nieh), Fall 2001, Columbia University
  5. COMS E6118 Operating Systems II (Jason Nieh), Spring 2001, Columbia University Also see here
  6. CS162 Operating Systems and System Programming (Matt Welsh), Spring 2001, UC Berkeley
  7. CIS332 Operating Systems () ???
  8. cs99q - Stanford Introductory Seminar: Open Source Project
  9. CS571 ?? (??) G. Mason University
  10. Arquitectura de Clusters (Diego R. Llanos), Departamento de Informática Universidad de Valladolid, España
  11. COSC 614.191: Operating Systems (John M. Cavallo), Spring 2001, BOWIE STATE UNIVERSITY -- DEPARTMENT OF COMPUTER SCIENCE
  12. CS 238/590 Introduction to Operating Systems (John Sterling), Polytechnic University, Dep of Computer and Information Sciences ("This may do for Linux what Bach's book did for System V")
  13. Corso di Sistemi di Elaborazione:Sicurezza (Luigi V. Mancini), Università di Roma "La Sapienza", Dip. di Scienze dell'Informazione
  14. CS325 Principles of Operating Systems (Willie Chang), New Mexico Institute of Mining and Technology, Department of Computer Science
  15. 02.531-3 - Laboratório de Sistemas Operacionais (Hélio Crestana Guardia), Universidade Federal de São Carlos Departamento de Computaçã
  16. CS 600.318/418 Operating Systems (Jonathan S. Saphiro), ???
  17. CPTR352 Operating Systems - 4 (Anthony Aaby), Computer Science Department Walla Walla College
  18. Sistemi Operativi I (Luigi V. Mancini), Dip. di Scienze dell'Informazione, Univ. di Roma "La Sapienza"
  19. Sistemas Operacionais II (Marinho Barcellos), Curso de Informática Universidade do Vale do Rio dos Sinos
  20. CSE 506 Operating Systems, Spring 2001 (Erez Zadok), Computer Science Department of SUNY at Stony Brook
  21. Sistemas de Operação (Pedro Medeiros,João Lourenço), Departamento de Informática da Faculdade de Ciências e Tecnologia da Universidades Nova de Lisboa
  22. Experimental Operating Systems (R. West), Computer Science Dep., Boston University
  23. CPSC 355: Operating Systems (M. Benard), Fall 2001, Electrical Engineering and Computer Science Dept., Tulane University, New Orleans
  24. CSCI 340: Operating Systems (Anthony P. Leclerc), Spring 2001, College of Charleston, South Carolian