Rubini 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.
- Greg Kroah-Hartman has been building the Linux kernel since 1996 and started writing Linux kernel drivers in 1999. He is currently the maintainer of the USB, PCI, driver core and sysfs subsystems in the kernel source tree and is also one half of the -stable kernel release team.
- Amazon
- Amazon (Linux Kernel Development)
- Unix/Linux Programming — System and Applications
- Core Lunx
- Unix/Linux System Administration
- Unix and Lunx
- Assembly and Machine Languages Programming
- Books by O’Reilly®
- Linux Device Drivers, 3rd Edition (Jonathan Corbet, et al)
- The Mirror Site (1) — PDF Files
- The Mirror Site (2) — PDF
- The Mirror Site (3) — PDF
- The Mirror Site (4) — PDF
- The Mirror Site (5) — HTML
O’Reilly® Linux Device Drivers, 2nd Edition (Alessandro Rubini) 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. It provides insights into address spaces, asynchronous events, and I/O.
The Linux Kernel Module Programming Guide (Peter Salzman, . ) This book is an excellent guide for people who want to write kernel modules. It takes a hands-on approach starting with writing a small «hello, world» program, and quickly moves from there. Far from a boring text on programming,
O’Reilly® Linux Kernel in a Nutshell (Greg Kroah-Hartman) Written by a leading developer and maintainer of the Linux kernel,this bookl is a comprehensive overview of kernel configuration and building, a critical task for Linux users and administrators.
Linux Kernel Crash Book (Igor Ljubuncic) For systems and network administrators and technical support engineers responsible for maintaining Linux systems and networks, this is a first aid guide, it provides quick solutions to a variety of Linux system and network problems.
Advanced Linux Programming (Mark L. Mitchell, et al) This book focuses mostly on the Application Programming Interface (API) provided by the Linux kernel and the C library. It contains a preliminary introduction to the development tools available.
An Introduction to GCC: for the GNU Compilers GCC and G++ This book provides a complete tutorial introduction to the GNU C/C++ compilers, gcc and g++. GCC is the defacto compiler collection for hundreds of thousands of open source and commercial projects worldwide, and is the standard compiler for academic programs.
O’Reilly® UNIX Systems Programming for SVR4 (David A. Curry) This book gives you the nitty-gritty details on how UNIX interacts with applications. If you’re writing an application from scratch, or if you’re porting an application to any System V Release 4 (SVR4) platform, you need this book.
Unix System Programming in OCaml (Xavier Leroy, et al) This book is an introductory course on Unix system programming, with an emphasis on communications between processes, using OCaml. This gives an unusual perspective on systems programming and on the ML language.
O’Reilly® Using C on the UNIX System (David A. Curry) This book provides a thorough introduction to the UNIX system call libraries. It is aimed at programmers who already know C, but who want to take full advantage of the UNIX programming environment.
The Art of UNIX Programming (Eric Steven Raymond) This book attempts to capture the engineering wisdom and design philosophy of the UNIX, Linux, and Open Source software development community, and as it is applied today by the most experienced programmers.
FreeBSD System Programming (Nathan Boeger, et al) This book is intended as a resource to system programming on BSDs. The reader should be familiar with basic programming in C or C++. The information in this book might be aimed toward the beginning programmer — indeed, it could serve useful for the programmer unfamiliar with the FreeBSD platform.
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
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.
Отзывы — Написать отзыв
Избранные страницы
Содержание
Другие издания — Просмотреть все
Часто встречающиеся слова и выражения
Об авторе (2005)
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.
Библиографические данные
Название | Linux Device Drivers Nutshell handbook O’Reilly Software Series |
Авторы | Jonathan Corbet , Alessandro Rubini , Greg Kroah-Hartman |
Издание: | иллюстрированное |
Издатель | «O’Reilly Media, Inc.», 2005 |
ISBN | 0596005903, 9780596005900 |
Количество страниц | Всего страниц: 615 |
  |   |
Экспорт цитаты | BiBTeX EndNote RefMan |
Linux Device Drivers
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.
- 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 Device Drivers
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.
- 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)