Linux Device Drivers

Valutazione media 4,06
( su 163 valutazioni fornite da GoodReads )
 
9780596005900: Linux Device Drivers

Device drivers literally drive everything you're interested in--disks, monitors, keyboards, modems--everything outside the computer chip and memory. And writing device drivers is one of the few areas of programming for the Linux operating system that calls for unique, Linux-specific knowledge. For years now, programmers have relied on the classic Linux Device Drivers from O'Reilly to master this critical subject. Now in its third edition, this bestselling guide provides all the information you'll need to write drivers for a wide range of devices.Over the years the book has helped countless programmers learn:

  • how to support computer peripherals under the Linux operating system
  • how to develop and write software for new hardware under Linux
  • the basics of Linux operation even if they are not expecting to write a driver
The new edition of Linux Device Drivers is better than ever. The book covers all the significant changes to Version 2.6 of the Linux kernel, which simplifies many activities, and contains subtle new features that can make a driver both more efficient and more flexible. Readers will find new chapters on important types of drivers not covered previously, such as consoles, USB drivers, and more.Best of all, you don't have to be a kernel hacker to understand and enjoy this book. All you need is an understanding of the C programming language and some background in Unix system calls. And for maximum ease-of-use, the book uses full-featured examples that you can compile and run without special hardware.Today Linux holds fast as the most rapidly growing segment of the computer market and continues to win over enthusiastic adherents in many application areas. With this increasing support, Linux is now absolutely mainstream, and viewed as a solid platform for embedded systems. If you're writing device drivers, you'll want this book. In fact, you'll wonder how drivers are ever written without it.

Le informazioni nella sezione "Riassunto" possono far riferimento a edizioni diverse di questo titolo.

L'autore:

Jonathan Corbet got his first look at the BSD Unix source back in 1981, when an instructor at the University of Colorado let him "fix" the paging algorithm. He has been digging around inside every system he could get his hands on ever since, working on drivers for VAX, Sun, Ardent, and x86 systems on the way. He got his first Linux system in 1993, and has never looked back. Mr. Corbet is currently the co-founder and executive editor of Linux Weekly News (http://LWN.net/); he lives in Boulder, Colorado with his wife and two children.

Alessandro installed Linux 0.99.14 soon after getting his degree as electronic engineer. He then received a Ph.D. in computer science at the University of Pavia despite his aversion toward modern technology. He left the University after getting his Ph.D. because he didn't want to write articles. He now works as a free lancer writing device drivers and, um...articles. He used to be a young hacker before his babies were born; he's now an old advocate of Free Software who developed a bias for non-PC computer platforms.

Greg Kroah-Hartman has been writing Linux kernel drivers since 1999, and is currently the maintainer for the USB, PCI, I2C, driver core, and sysfs kernel subsystems. He is also the maintainer of the udev and hotplug userspace programs, as well as being a Gentoo kernel maintainer, ensuring that his email inbox is never empty. He is a contributing editor to Linux Journal Magazine, and works for IBM's Linux Technology Center, doing various Linux kernel related tasks.

Contenuti:

Preface; Jon's Introduction; Alessandro's Introduction; Greg's Introduction; Audience for This Book; Organization of the Material; Background Information; Online Version and License; Conventions Used in This Book; Using Code Examples; We'd Like to Hear from You; Safari Enabled; Acknowledgments; Chapter 1: An Introduction to Device Drivers; 1.1 The Role of the Device Driver; 1.2 Splitting the Kernel; 1.3 Classes of Devices and Modules; 1.4 Security Issues; 1.5 Version Numbering; 1.6 License Terms; 1.7 Joining the Kernel Development Community; 1.8 Overview of the Book; Chapter 2: Building and Running Modules; 2.1 Setting Up Your Test System; 2.2 The Hello World Module; 2.3 Kernel Modules Versus Applications; 2.4 Compiling and Loading; 2.5 The Kernel Symbol Table; 2.6 Preliminaries; 2.7 Initialization and Shutdown; 2.8 Module Parameters; 2.9 Doing It in User Space; 2.10 Quick Reference; Chapter 3: Char Drivers; 3.1 The Design of scull; 3.2 Major and Minor Numbers; 3.3 Some Important Data Structures; 3.4 Char Device Registration; 3.5 open and release; 3.6 scull's Memory Usage; 3.7 read and write; 3.8 Playing with the New Devices; 3.9 Quick Reference; Chapter 4: Debugging Techniques; 4.1 Debugging Support in the Kernel; 4.2 Debugging by Printing; 4.3 Debugging by Querying; 4.4 Debugging by Watching; 4.5 Debugging System Faults; 4.6 Debuggers and Related Tools; Chapter 5: Concurrency and Race Conditions; 5.1 Pitfalls in scull; 5.2 Concurrency and Its Management; 5.3 Semaphores and Mutexes; 5.4 Completions; 5.5 Spinlocks; 5.6 Locking Traps; 5.7 Alternatives to Locking; 5.8 Quick Reference; Chapter 6: Advanced Char Driver Operations; 6.1 ioctl; 6.2 Blocking I/O; 6.3 poll and select; 6.4 Asynchronous Notification; 6.5 Seeking a Device; 6.6 Access Control on a Device File; 6.7 Quick Reference; Chapter 7: Time, Delays, and Deferred Work; 7.1 Measuring Time Lapses; 7.2 Knowing the Current Time; 7.3 Delaying Execution; 7.4 Kernel Timers; 7.5 Tasklets; 7.6 Workqueues; 7.7 Quick Reference; Chapter 8: Allocating Memory; 8.1 The Real Story of kmalloc; 8.2 Lookaside Caches; 8.3 get_free_page and Friends; 8.4 vmalloc and Friends; 8.5 Per-CPU Variables; 8.6 Obtaining Large Buffers; 8.7 Quick Reference; Chapter 9: Communicating with Hardware; 9.1 I/O Ports and I/O Memory; 9.2 Using I/O Ports; 9.3 An I/O Port Example; 9.4 Using I/O Memory; 9.5 Quick Reference; Chapter 10: Interrupt Handling; 10.1 Preparing the Parallel Port; 10.2 Installing an Interrupt Handler; 10.3 Implementing a Handler; 10.4 Top and Bottom Halves; 10.5 Interrupt Sharing; 10.6 Interrupt-Driven I/O; 10.7 Quick Reference; Chapter 11: Data Types in the Kernel; 11.1 Use of Standard C Types; 11.2 Assigning an Explicit Size to Data Items; 11.3 Interface-Specific Types; 11.4 Other Portability Issues; 11.5 Linked Lists; 11.6 Quick Reference; Chapter 12: PCI Drivers; 12.1 The PCI Interface; 12.2 A Look Back: ISA; 12.3 PC/104 and PC/104+; 12.4 Other PC Buses; 12.5 SBus; 12.6 NuBus; 12.7 External Buses; 12.8 Quick Reference; Chapter 13: USB Drivers; 13.1 USB Device Basics; 13.2 USB and Sysfs; 13.3 USB Urbs; 13.4 Writing a USB Driver; 13.5 USB Transfers Without Urbs; 13.6 Quick Reference; Chapter 14: The Linux Device Model; 14.1 Kobjects, Ksets, and Subsystems; 14.2 Low-Level Sysfs Operations; 14.3 Hotplug Event Generation; 14.4 Buses, Devices, and Drivers; 14.5 Classes; 14.6 Putting It All Together; 14.7 Hotplug; 14.8 Dealing with Firmware; 14.9 Quick Reference; Chapter 15: Memory Mapping and DMA; 15.1 Memory Management in Linux; 15.2 The mmap Device Operation; 15.3 Performing Direct I/O; 15.4 Direct Memory Access; 15.5 Quick Reference; Chapter 16: Block Drivers; 16.1 Registration; 16.2 The Block Device Operations; 16.3 Request Processing; 16.4 Some Other Details; 16.5 Quick Reference; Chapter 17: Network Drivers; 17.1 How snull Is Designed; 17.2 Connecting to the Kernel; 17.3 The net_device Structure in Detail; 17.4 Opening and Closing; 17.5 Packet Transmission; 17.6 Packet Reception; 17.7 The Interrupt Handler; 17.8 Receive Interrupt Mitigation; 17.9 Changes in Link State; 17.10 The Socket Buffers; 17.11 MAC Address Resolution; 17.12 Custom ioctl Commands; 17.13 Statistical Information; 17.14 Multicast; 17.15 A Few Other Details; 17.16 Quick Reference; Chapter 18: TTY Drivers; 18.1 A Small TTY Driver; 18.2 tty_driver Function Pointers; 18.3 TTY Line Settings; 18.4 ioctls; 18.5 proc and sysfs Handling of TTY Devices; 18.6 The tty_driver Structure in Detail; 18.7 The tty_operations Structure in Detail; 18.8 The tty_struct Structure in Detail; 18.9 Quick Reference; Chapter 19: Bibliography; 19.1 Books; 19.2 Web Sites;

Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.

I migliori risultati di ricerca su AbeBooks

Edizione Internazionale
Edizione Internazionale

1.

Corbet, Jonathan; Rubini, Alessandro; Kroah-Hartman, Greg
Editore: O'Reilly Media
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Brossura Quantità: > 20
Edizione Internazionale
Da
Sunshine Book Store
(Wilmington, DE, U.S.A.)
Valutazione libreria
[?]

Descrizione libro O'Reilly Media. Condizione libro: New. 0596005903 This is an International Edition. Brand New, Paperback, Delivery within 6-14 business days, Similar Contents as U.S Edition, ISBN and Cover design may differ, printed in Black & White. Choose Expedited shipping for delivery within 3-8 business days. We do not ship to PO Box, APO , FPO Address. In some instances, subjects such as Management, Accounting, Finance may have different end chapter case studies and exercises. International Edition Textbooks may bear a label "Not for sale in the U.S. or Canada" and "Content may different from U.S. Edition" - printed only to discourage U.S. students from obtaining an affordable copy. The U.S. Supreme Court has asserted your right to purchase international editions, and ruled on this issue. Access code/CD is not provided with these editions , unless specified. We may ship the books from multiple warehouses across the globe, including India depending upon the availability of inventory storage. Customer satisfaction guaranteed. Codice libro della libreria NU9780596005900

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 21,34
Convertire valuta

Aggiungere al carrello

Spese di spedizione: GRATIS
In U.S.A.
Destinazione, tempi e costi

2.

Corbet, Jonathan; Rubini, Alessandro; Kroah-Hartman, Greg
Editore: O'Reilly Media
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi PAPERBACK Quantità: > 20
Da
Mediaoutlet12345
(Springfield, VA, U.S.A.)
Valutazione libreria
[?]

Descrizione libro O'Reilly Media. PAPERBACK. Condizione libro: New. 0596005903 *BRAND NEW* Ships Same Day or Next!. Codice libro della libreria SWATI2122350495

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 20,56
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 3,69
In U.S.A.
Destinazione, tempi e costi

3.

Corbet, Jonathan
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: > 20
Print on Demand
Da
BargainBookStores
(Grand Rapids, MI, U.S.A.)
Valutazione libreria
[?]

Descrizione libro Paperback. Condizione libro: New. This item is printed on demand. Item doesn't include CD/DVD. Codice libro della libreria 848260

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 20,72
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 3,69
In U.S.A.
Destinazione, tempi e costi
Edizione Internazionale
Edizione Internazionale

4.

Alessandro Rubini; Greg Kroah-Hartman; Jonathan Corbet
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: > 20
Edizione Internazionale
Da
US_Superfast_Bookstore
(New Castle, DE, U.S.A.)
Valutazione libreria
[?]

Descrizione libro Paperback. Condizione libro: New. This is an International Edition Brand New Paperback Same Title Author and Edition as listed. ISBN and Cover design differs. Similar Contents as U.S Edition. Standard Delivery within 6-14 business days ACROSS THE GLOBE. We can ship to PO Box address in US. International Edition Textbooks may bear a label "Not for sale in the U.S. or Canada" or "For sale in Asia only" or similar restrictions- printed only to discourage students from obtaining an affordable copy. US Court has asserted your right to buy and use International edition. Access code/CD may not provided with these editions. We may ship the books from multiple warehouses across the globe including Asia depending upon the availability of inventory. Printed in English. Customer satisfaction guaranteed. Codice libro della libreria US9780596005900

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 22,52
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 2,45
In U.S.A.
Destinazione, tempi e costi
Edizione Internazionale
Edizione Internazionale

5.

Jonathan Corbet
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Soft cover Quantità: > 20
Edizione Internazionale
Da
University Bookstore
(DELHI, DELHI, India)
Valutazione libreria
[?]

Descrizione libro 2005. Soft cover. Condizione libro: New. This book is BRAND NEW Soft cover International edition with black and white printing. ISBN number & cover page may be different but contents identical to the US edition word by word. Book is in English language. Codice libro della libreria UN-SHRO-656

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 15,54
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 10,00
Da: India a: U.S.A.
Destinazione, tempi e costi

6.

Corbet, Jonathan/ Rubini, Alessandro/ Kroah-Hartman, Greg
Editore: - -
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: 5
Da
Chiron Media
(Wallingford, Regno Unito)
Valutazione libreria
[?]

Descrizione libro - -. Paperback. Condizione libro: New. Codice libro della libreria NU-ING-00449325

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 25,95
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 3,45
Da: Regno Unito a: U.S.A.
Destinazione, tempi e costi

7.

Alessandro Rubini, Jonathan Corbet, Greg Kroah-Hartman
Editore: O Reilly Media, Inc, USA, United States (2005)
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: 10
Da
The Book Depository
(London, Regno Unito)
Valutazione libreria
[?]

Descrizione libro O Reilly Media, Inc, USA, United States, 2005. Paperback. Condizione libro: New. 3rd Revised edition. 232 x 178 mm. Language: English . Brand New Book. Device drivers literally drive everything you re interested in--disks, monitors, keyboards, modems--everything outside the computer chip and memory. And writing device drivers is one of the few areas of programming for the Linux operating system that calls for unique, Linux-specific knowledge. For years now, programmers have relied on the classic Linux Device Drivers from O Reilly to master this critical subject. Now in its third edition, this bestselling guide provides all the information you ll need to write drivers for a wide range of devices. Over the years the book has helped countless programmers learn: * how to support computer peripherals under the Linux operating system * how to develop and write software for new hardware under Linux * the basics of Linux operation even if they are not expecting to write a driver The new edition of Linux Device Drivers is better than ever. The book covers all the significant changes to Version 2.6 of the Linux kernel, which simplifies many activities, and contains subtle new features that can make a driver both more efficient and more flexible. Readers will find new chapters on important types of drivers not covered previously, such as consoles, USB drivers, and more. Best of all, you don t have to be a kernel hacker to understand and enjoy this book. All you need is an understanding of the C programming language and some background in Unix system calls. And for maximum ease-of-use, the book uses full-featured examples that you can compile and run without special hardware. Today Linux holds fast as the most rapidly growing segment of the computer market and continues to win over enthusiastic adherents in many application areas. With this increasing support, Linux is now absolutely mainstream, and viewed as a solid platform for embedded systems. If you re writing device drivers, you ll want this book. In fact, you ll wonder how drivers are ever written without it. Codice libro della libreria AAH9780596005900

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 29,63
Convertire valuta

Aggiungere al carrello

Spese di spedizione: GRATIS
Da: Regno Unito a: U.S.A.
Destinazione, tempi e costi

8.

Corbet, Jonathan; Rubini, Alessandro; Kroah-Hartman, Greg
Editore: O'Reilly Media
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi PAPERBACK Quantità: 3
Da
Movie Mars
(Indian Trail, NC, U.S.A.)
Valutazione libreria
[?]

Descrizione libro O'Reilly Media. PAPERBACK. Condizione libro: New. 0596005903 Brand New Book. Ships from the United States. 30 Day Satisfaction Guarantee!. Codice libro della libreria 4207721

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 25,96
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 3,69
In U.S.A.
Destinazione, tempi e costi

9.

Alessandro Rubini, Jonathan Corbet, Greg Kroah-Hartman
Editore: O Reilly Media, Inc, USA, United States (2005)
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: 10
Da
The Book Depository US
(London, Regno Unito)
Valutazione libreria
[?]

Descrizione libro O Reilly Media, Inc, USA, United States, 2005. Paperback. Condizione libro: New. 3rd Revised edition. 232 x 178 mm. Language: English . Brand New Book. Device drivers literally drive everything you re interested in--disks, monitors, keyboards, modems--everything outside the computer chip and memory. And writing device drivers is one of the few areas of programming for the Linux operating system that calls for unique, Linux-specific knowledge. For years now, programmers have relied on the classic Linux Device Drivers from O Reilly to master this critical subject. Now in its third edition, this bestselling guide provides all the information you ll need to write drivers for a wide range of devices. Over the years the book has helped countless programmers learn: * how to support computer peripherals under the Linux operating system * how to develop and write software for new hardware under Linux * the basics of Linux operation even if they are not expecting to write a driver The new edition of Linux Device Drivers is better than ever. The book covers all the significant changes to Version 2.6 of the Linux kernel, which simplifies many activities, and contains subtle new features that can make a driver both more efficient and more flexible. Readers will find new chapters on important types of drivers not covered previously, such as consoles, USB drivers, and more. Best of all, you don t have to be a kernel hacker to understand and enjoy this book. All you need is an understanding of the C programming language and some background in Unix system calls. And for maximum ease-of-use, the book uses full-featured examples that you can compile and run without special hardware. Today Linux holds fast as the most rapidly growing segment of the computer market and continues to win over enthusiastic adherents in many application areas. With this increasing support, Linux is now absolutely mainstream, and viewed as a solid platform for embedded systems. If you re writing device drivers, you ll want this book. In fact, you ll wonder how drivers are ever written without it. Codice libro della libreria AAH9780596005900

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 29,70
Convertire valuta

Aggiungere al carrello

Spese di spedizione: GRATIS
Da: Regno Unito a: U.S.A.
Destinazione, tempi e costi

10.

Jonathan Corbet
Editore: O'Reilly Media (2017)
ISBN 10: 0596005903 ISBN 13: 9780596005900
Nuovi Paperback Quantità: 20
Print on Demand
Da
Murray Media
(North Miami Beach, FL, U.S.A.)
Valutazione libreria
[?]

Descrizione libro O'Reilly Media, 2017. Paperback. Condizione libro: New. This item is printed on demand. Codice libro della libreria 0596005903

Maggiori informazioni su questa libreria | Fare una domanda alla libreria

Compra nuovo
EUR 27,49
Convertire valuta

Aggiungere al carrello

Spese di spedizione: EUR 2,77
In U.S.A.
Destinazione, tempi e costi

Vedi altre copie di questo libro

Vedi tutti i risultati per questo libro