News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

New book reveals the inner workings of the Linux Kernel

Jan 16, 2003 — by LinuxDevices Staff — from the LinuxDevices Archive — views

Sebastopol, CA — (PR excerpt) — To thoroughly understand what makes Linux tick and why it's so efficient, one needs to delve deep into the heart of the operating system — into the Linux kernel itself. The kernel is Linux — in the case of the Linux operating system, it's the only bit of software to which the term “Linux” applies. The kernel handles all the requests or completed I/O operations and determines which programs will share its processing time, and in what order. Responsible for the sophisticated memory management of the whole system, the Linux kernel is the force behind the legendary Linux efficiency.

“Understanding the Linux Kernel, Second Edition” by Daniel P. Bovet and Marco Cesati (O'Reilly, US $49.95) takes readers on a guided tour through the most significant data structures, many algorithms, and programming tricks used in the kernel. Probing beyond the superficial features, the authors offer valuable insights to people who want to know how things really work inside their machine. Relevant segments of code are dissected and discussed line by line. The book covers more than just the functioning of the code, it explains the theoretical underpinnings of why Linux does things the way it does.

The new edition of “Understanding the Linux Kernel” has been updated to cover version 2.4 of the kernel, which is quite different from version 2.2: the virtual memory system is entirely new, support for multiprocessor systems is improved, and whole new classes of hardware devices have been added.

“The kernel code has been significantly enlarged,” Bovet and Cesati explain. “The 2.2 version occupies about 58 megabytes of disk space, while the 2.4 version occupies about 144 megabytes. In order to list all of the code of the 2.4 version, we would need more than forty books like 'Understanding the Linux Kernel,' without commenting on it!” While refraining from listing all the code, the authors explore each significant new feature in detail. Other topics in the book include:

  • Memory management including file buffering, process swapping, and Direct Memory Access (DMA)
  • The Virtual Filesystem and the Second Extended Filesystem
  • Process creation and scheduling
  • Signals, interrupts, and the essential interfaces to device drivers
  • Timing
  • Synchronization in the kernel
  • Interprocess Communication (IPC)
  • Program execution

The second edition of “Understanding the Linux Kernel” will acquaint readers with all the inner workings of Linux, but is more than just an academic exercise. Readers will learn what conditions bring out Linux's best performance, and see how it meets the challenge of providing good system response during process scheduling, file access, and memory management in a wide variety of environments.

Chapter 17, “The Ext2 and Ext3 Filesystems,” is available free online, here. Other information about the book, including Table of Contents, index, author bios, and samples, is here.

 
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.