v

您的位置:VeryCD图书计算机与网络

图书资源事务区


《Linux设备驱动程序(第三版)》(Linux Device Drivers 3rd)(Corbet Jonathan & Rubini Alessandro & Kroah-Hartman Greg)[PDF]

  • 状态: 精华资源
  • 摘要:
    出版社Oreilly & Associates Inc
    发行时间2005年
    语言英文
  • 时间: 2009/12/03 11:18:14 发布 | 2009/12/04 11:08:17 更新
  • 分类: 图书  计算机与网络 

bright2307

精华资源: 4

全部资源: 4

相关: 分享到新浪微博   转播到腾讯微博   分享到开心网   分享到人人   分享到QQ空间   订阅本资源RSS更新   美味书签  subtitle
该内容尚未提供权利证明,无法提供下载。
中文名Linux设备驱动程序(第三版)
原名Linux Device Drivers 3rd
资源格式PDF
出版社Oreilly & Associates Inc
书号0596005903
发行时间2005年
地区美国
语言英文
简介

IPB Image

推荐大家看英文原版。
翻译其实是一个再创造的过程,会融入译者的个人理解,也就可能引入一些非正确理解。
任何情况下,第一手资料都是最可靠的。

本书是经典著作《Linux 设备驱动程序》的第三版。该版本已针对 Linux 内核的 2.6.10 彻底更新过了。内核的这个版本针对常见任务完成了合理化设计及相应的简化,比如即插即用,利用sysfs文件系统和用户空间交互,以及标准总线上的多设备管理等等。本书提供了完整的示例程序,不需要特殊的硬件即可编译和运行这些示例程序。本书还在单独的章节中讲述了PCI、USB 和 tty(终端)子系统。对期望了解操作系统内部工作原理的读者来讲,本书也深入阐述了地址空间、异步事件以及 I/O 等方面的内容。本书主要介绍:完整的字符、块、tty(终端)及网络驱动程序驱动程序的调试、中断、计时问题、并发、锁定和对称多处理器系统(SMP)、内存管理和DMA、驱动程序模型和 sysfs、热插拔设备、对常见总线的描述,包括 SCSI、PCI、USB 和 IEEE1394(火线)。(摘自China-pub)


所包含内容:原文、示例代码
IPB Image

pdf截图:
IPB Image



目录

Preface
So Here We Are
Kernel Version
Audience
Book Website
Second Edition Acknowledgments
About the Author
We Want to Hear from You!
Reader Services
Chapter 1. Introduction to the Linux Kernel
Along Came Linus: Introduction to Linux
Overview of Operating Systems and Kernels
Linux Versus Classic Unix Kernels
Linux Kernel Versions
The Linux Kernel Development Community
Before We Begin
Chapter 2. Getting Started with the Kernel
Obtaining the Kernel Source
The Kernel Source Tree
Building the Kernel
A Beast of a Different Nature
So Here We Are
Chapter 3. Process Management
Process Descriptor and the Task Structure
Process Creation
The Linux Implementation of Threads
Process Termination
Process Wrap Up
Chapter 4. Process Scheduling
Policy
The Linux Scheduling Algorithm
Preemption and Context Switching
Real-Time
Scheduler-Related System Calls
Scheduler Finale
Chapter 5. System Calls
APIs, POSIX, and the C Library
Syscalls
System Call Handler
System Call Implementation
System Call Context
System Calls in Conclusion
Chapter 6. Interrupts and Interrupt Handlers
Interrupts
Interrupt Handlers
Registering an Interrupt Handler
Writing an Interrupt Handler
Interrupt Context
Implementation of Interrupt Handling
Interrupt Control
Don't Interrupt Me; We're Almost Done!
Chapter 7. Bottom Halves and Deferring Work
Bottom Halves
Softirqs
Tasklets
Work Queues
Which Bottom Half Should I Use?
Locking Between the Bottom Halves
The Bottom of Bottom-Half Processing
Endnotes
Chapter 8. Kernel Synchronization Introduction
Critical Regions and Race Conditions
Locking
Deadlocks
Contention and Scalability
Locking and Your Code
Chapter 9. Kernel Synchronization Methods
Atomic Operations
Spin Locks
Reader-Writer Spin Locks
Semaphores
Reader-Writer Semaphores
Spin Locks Versus Semaphores
Completion Variables
BKL: The Big Kernel Lock
Preemption Disabling
Ordering and Barriers
Synchronization Summarization
Chapter 10. Timers and Time Management
Kernel Notion of Time
The Tick Rate: HZ
Jiffies
Hardware Clocks and Timers
The Timer Interrupt Handler
The Time of Day
Timers
Delaying Execution
Out of Time
Chapter 11. Memory Management
Pages
Zones
Getting Pages
kmalloc()
vmalloc()
Slab Layer
Slab Allocator Interface
Statically Allocating on the Stack
High Memory Mappings
Per-CPU Allocations
The New percpu Interface
Reasons for Using Per-CPU Data
Which Allocation Method Should I Use?
Chapter 12. The Virtual Filesystem
Common Filesystem Interface
Filesystem Abstraction Layer
Unix Filesystems
VFS Objects and Their Data Structures
The Superblock Object
The Inode Object
The Dentry Object
The File Object
Data Structures Associated with Filesystems
Data Structures Associated with a Process
Filesystems in Linux
Chapter 13. The Block I/O Layer
Anatomy of a Block Device
Buffers and Buffer Heads
The bio structure
Request Queues
I/O Schedulers
Summary
Chapter 14. The Process Address Space
The Memory Descriptor
Memory Areas
Manipulating Memory Areas
mmap() and do_mmap(): Creating an Address Interval
munmap() and do_munmap(): Removing an Address Interval
Page Tables
Conclusion
Chapter 15. The Page Cache and Page Writeback
Page Cache
Radix Tree
The Buffer Cache
The pdflush Daemon
To Make a Long Story Short
Chapter 16. Modules
Hello, World!
Building Modules
Installing Modules
Generating Module Dependencies
Loading Modules
Managing Configuration Options
Module Parameters
Exported Symbols
Wrapping Up Modules
Chapter 17. kobjects and sysfs
kobjects
ktypes
ksets
Subsystems
Structure Confusion
Managing and Manipulating kobjects
Reference Counts
sysfs
The Kernel Events Layer
kobjects and sysfs in a Nutshell
Chapter 18. Debugging
What You Need to Start
Bugs in the Kernel
printk()
Oops
Kernel Debugging Options
Asserting Bugs and Dumping Information
Magic SysRq Key
The Saga of a Kernel Debugger
Poking and Probing the System
Binary Searching to Find the Culprit Change
When All Else Fails: The Community
Chapter 19. Portability
History of Portability in Linux
Word Size and Data Types
Data Alignment
Byte Order
Time
Page Size
Processor Ordering
SMP, Kernel Preemption, and High Memory
Endnotes
Chapter 20. Patches, Hacking, and the Community
The Community
Linux Coding Style
Chain of Command
Submitting Bug Reports
Generating Patches
Submitting Patches
Conclusion
Appendix A. Linked Lists
Circular Linked Lists
The Linux Kernel's Implementation
Manipulating Linked Lists
Traversing Linked Lists
Appendix B. Kernel Random Number Generator
Design and Implementation
Interfaces to Input Entropy
Interfaces to Output Entropy
Appendix C. Algorithmic Complexity
Algorithms
Big-O Notation
Big Theta Notation
Putting It All Together
Perils of Time Complexity
Bibliography and Reading List
Books on Operating System Design
Books on Unix Kernels
Books on Linux Kernels
Books on Other Kernels
Books on the Unix API
Books on the C Programming Language
Other Works
Websites
Index

正在读取……

这里是其它用户补充的资源(我也要补充):

emuleworld 2009/12/04 12:25:37 补充
...

该内容尚未提供权利证明,无法提供下载。
正在加载,请稍等...

点击查看所有38网友评论

 

(?) [公告]留口水、评论相关规则 | [活动]每日签到 轻松领取电驴经验

    小贴士:
  1. 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  2. 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  3. 勿催片。请相信驴友们对分享是富有激情的,如果确有更新版本,您一定能搜索到。
  4. 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
  5. 如果您发现自己的评论不见了,请参考以上4条。