Linux Device Drivers, 2/e
暫譯: Linux 裝置驅動程式, 第二版

Jonathan Corbet, Alessandro Rubini

  • 出版商: O'Reilly
  • 售價: $1,570
  • 貴賓價: 9.5$1,492
  • 語言: 英文
  • 頁數: 562
  • 裝訂: Paperback
  • ISBN: 0596000081
  • ISBN-13: 9780596000080
  • 相關分類: Linux
  • 已過版

買這商品的人也買了...

相關主題

商品描述

This book is for anyone who wants to support computer peripherals under the Linux operating system or who wants to develop new hardware and run it under Linux. Linux is the fastest-growing segment of the Unix market, is winning over enthusiastic adherents in many application areas, and is being viewed more and more as a good platform for embedded systems. Linux Device Drivers, already a classic in its second edition, reveals information that heretofore has been shared by word of mouth or in cryptic source code comments, on how to write drivers for a wide range of devices.

Version 2.4 of the Linux kernel includes significant changes to device drivers, simplifying many activities, but providing subtle new features that can make a driver both more efficient and more flexible. The second edition of this book thoroughly covers these changes, as well as new processors and buses.

You don't have to be a kernel hacker to understand and enjoy this book; all you need is an understanding of C and some background in Unix system calls. You'll learn how to write drivers for character devices, block devices, and network interfaces, guided by full-featured examples that you can compile and run without special hardware. Major changes in the second edition include discussions of symmetric multiprocessing (SMP) and locking, new CPUs, and recently supported buses. For those who are curious about how an operating system does its job, this book provides insights into address spaces, asynchronous events, and I/O.

Portability is a major concern in the text. The book is centered on version 2.4, but includes information for kernels back to 2.0 where feasible. Linux Device Driver also shows how to maximize portability among hardware platforms; examples were tested on IA32 (PC) and IA64, PowerPC, SPARC and SPARC64, Alpha, ARM, and MIPS.


Contents include:


  • Building a driver and loading modules

  • Complete character, block, and network drivers

  • Debugging a driver

  • Timing

  • Handling symmetric multiprocessing (SMP) systems

  • Memory management and DMA

  • Interrupts

  • Portability issues

  • Peripheral Component Interconnect (PCI)

商品描述(中文翻譯)

本書適合任何希望在 Linux 作業系統下支援電腦周邊設備或希望開發新硬體並在 Linux 上運行的人。Linux 是 Unix 市場中增長最快的部分,正在許多應用領域贏得熱情的支持者,並且越來越被視為嵌入式系統的良好平台。《Linux 裝置驅動程式》(Linux Device Drivers)已經是第二版的經典之作,揭示了之前僅透過口耳相傳或隱晦的源代碼註解分享的資訊,教你如何為各種設備編寫驅動程式。

Linux 核心的 2.4 版本對裝置驅動程式進行了重大更改,簡化了許多操作,但提供了微妙的新功能,使驅動程式更加高效和靈活。本書的第二版徹底涵蓋了這些變更,以及新的處理器和匯流排。

你不必是核心黑客才能理解和享受本書;你只需要了解 C 語言和一些 Unix 系統調用的背景知識。你將學會如何為字符設備、區塊設備和網路介面編寫驅動程式,並通過完整的範例進行指導,這些範例可以在不需要特殊硬體的情況下編譯和運行。第二版的主要變更包括對對稱多處理(SMP)和鎖定的討論、新的 CPU 以及最近支援的匯流排。對於那些對作業系統如何運作感到好奇的人,本書提供了對地址空間、非同步事件和 I/O 的深入見解。

可攜性是本書的一個主要關注點。該書以 2.4 版本為中心,但在可行的情況下也包括了對 2.0 版本核心的資訊。《Linux 裝置驅動程式》還展示了如何在硬體平台之間最大化可攜性;範例在 IA32(PC)、IA64、PowerPC、SPARC 和 SPARC64、Alpha、ARM 和 MIPS 上進行了測試。

內容包括:
- 建立驅動程式和加載模組
- 完整的字符、區塊和網路驅動程式
- 驅動程式的除錯
- 時間管理
- 處理對稱多處理(SMP)系統
- 記憶體管理和 DMA
- 中斷
- 可攜性問題
- 周邊元件互連(PCI)