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