|
|
|
|
LEADER |
04923nam a22003137a 4500 |
003 |
AR-BaUNH |
005 |
20230513063108.0 |
008 |
230227s2017 ii |r|||| 001 edeng d |
020 |
|
|
|a 9788173668494
|
040 |
|
|
|a AR-BaUNH
|b spa
|c AR-BaUNH
|d AR-BaUNH
|e aacr
|
041 |
0 |
|
|a eng
|
082 |
1 |
|
|a 005.7
|
100 |
1 |
|
|9 6619
|a Corbet, Jonathan
|
100 |
1 |
|
|9 6620
|a Rubini, Alessandro
|
100 |
1 |
|
|9 6621
|a Kroah-Hartman, Greg
|
245 |
|
|
|a Linux device drivers /
|c Jonathan Corbet, Alessandro Rubini and Greg Kroah-Hartman.
|
250 |
|
|
|a 3a ed.
|
260 |
|
|
|a Mumbai :
|b O'Reilly,
|c 2017.
|
300 |
|
|
|a xviii, 615 p. ;
|c 24 cm.
|
505 |
|
|
|a Preface. -- An Introduction to Device Drivers. -- The Role of the Device Driver. -- Splitting the Kernel. -- Classes of Devices and Modules. -- Security Issues. -- Version Numbering. -- License Terms. -- Joining the Kernel Development Community. -- Overview of the Book. -- BUILDING AND RUNNING MODULES. -- Setting Up Your Test System. -- The Hello World Module. -- Kernel Modules Versus Applications. -- Compiling and Loading. -- The Kernel Symbol Table. -- Preliminaries. -- Initialization and Shutdown. -- Module Parameters. -- Doing It in User Space. -- Quick Reference. -- CHAR DRIVERS. -- The Design of scull. -- Major and Minor Numbers. -- Some Important Data Structures. -- Char Device Registration. -- Open and release. -- Scull's Memory Usage. -- Read and write. -- Playing with the New Devices. -- Quick Reference. -- DEBUGGING TECHNIQUES. -- Debugging Support in the Kernel. -- Debugging by Printing. -- Debugging by Querying. -- Debugging by Watching. -- Debugging System Faults. -- Debuggers and Related Tools. -- CONCURRENCY AND RACE CONDITIONS. -- Pitfalls in scull. -- Concurrency and Its Management. -- Semaphores and Mutexes. -- Completions. -- Spinlocks. -- Locking Traps. -- Alternatives to Locking. -- Quick Reference. -- ADVANCED CHAR DRIVER OPERATIONS. -- ioctl. -- Blocking I/O. -- poll and select. -- Asynchronous Notification. -- Seeking a Device. -- Access Control on a Device File. -- Quick Reference. -- TIME, DELAYS, ADN DEFERRED WORK. -- Measuring Time Lapses. -- Knowing the Current Time. -- Delaying Execution. -- Kernel Timers. -- Tasklets. -- Workqueues. -- Quick Reference. -- ALLOCATING MEMORY. -- The Real Story of kmalloc. -- Lookaside Caches. -- get_free_page and Friends. -- vmalloc and Friends. -- Per-CPU Variables. -- Obtaining Large Buffers. -- Quick Reference. -- COMMUNICATION WITH HARDWARE. -- I/O Ports and I/O Memory. -- Using I/O Ports. -- An I/O Port Example. -- Using I/O Memory. -- Quick Reference. -- INTERRUPT HANDLING. -- Preparing the Parallel Port. -- Installing an Interrupt Handler. -- Implementing a Handler. -- Top and Bottom Halves. -- Interrupt Sharing. -- Interrupt-Driven I/O. -- Quick Reference. -- DATA TYPES IN THE KERNEL. -- Use of Standard C Types. -- Assigning an Explicit Size to Data Items. -- Interface-Specific Types. -- Other Portability Issues. -- Linked Lists. -- Quick Reference. -- PCI DRIVERS. -- The PCI Interface. -- A Look Back: ISA. -- PC/104 and PC/104+. -- Other PC Buses. -- SBus. -- NuBus. -- External Buses. -- Quick Reference. -- USB DRIVERS. -- USB Device Basics. -- USB and Sysfs. -- USB Urbs. -- Writing a USB Driver. -- USB Transfers Without Urbs. -- Quick Reference. -- THE LINUX DEVICE MODEL. -- Kobjects, Ksets, and Subsystems. -- Low-Level Sysfs Operations. -- Hotplug Event Generation. -- Buses, Devices, and Drivers. -- Classes. -- Putting It All Together. -- Hotplug. -- Dealing with Firmware. -- Quick Reference. -- MEMORY MAPPING AND DMA. -- Memory Management in Linux. -- The mmap Device Operation. -- Performing Direct I/O. -- Direct Memory Access. -- Quick Reference. -- BLOCK DRIVERS. -- Registration. -- The Block Device Operations. -- Request Processing. -- Some Other Details. -- Quick Reference. -- NETWORK DRIVERS. -- How snull Is Designed. -- Connecting to the Kernel. -- The net_device Structure in Detail. -- Opening and Closing. -- Packet Transmission. -- Packet Reception. -- The Interrupt Handler. -- Receive Interrupt Mitigation. -- Changes in Link State. -- The Socket Buffers. -- MAC Address Resolution. -- Custom ioctl Commands. -- Statistical Information. -- Multicast. -- A Few Other Details. -- Quick Reference. -- TTY DRIVERS. -- A Small TTY Driver. -- tty_driver Function Pointers. -- TTY Line Settings. -- ioctls. -- proc and sysfs Handling of TTY Devices. -- The tty_driver Structure in Detail. -- The tty_operations Structure in Detail. -- The tty_struct Structure in Detail. -- Quick Reference. -- Bibliography. -- Index. -- About the Authors. -- Copyright.
|
650 |
|
0 |
|a INFORMÁTICA
|9 1376
|
650 |
|
7 |
|a SISTEMAS OPERATIVOS (Computadoras)
|9 6492
|
650 |
|
0 |
|a DRIVERS (controladores)
|9 6753
|
650 |
|
7 |
|a SOFTWARE
|9 6491
|
650 |
|
7 |
|a HARDWARE (COMPUTACION)
|9 3550
|
650 |
|
0 |
|a CETI
|9 6648
|
900 |
|
|
|a Bruno
|b Bruno
|
942 |
|
|
|2 ddc
|c LIBROS
|
999 |
|
|
|c 4679
|d 4681
|