P

packages, upgrading, Version Numbering
packets, Splitting the Kernel, The Physical Transport of Packets, Packet TransmissionTransmission Timeouts, The Interrupt Handler, Kernel Support for Multicasting
management, Splitting the Kernel
multicasting, Kernel Support for Multicasting
reception, The Interrupt Handler
transmission, The Physical Transport of Packets, Packet TransmissionTransmission Timeouts
PACKET_BROADCAST flag, The Important Fields
PACKET_HOST flag, The Important Fields
PACKET_MULTICAST flag, The Important Fields
PACKET_OTHERHOST flag, The Important Fields
page frame number (PFN), Physical Addresses and Pages
page-oriented allocation functions, get_free_page and Friends, Quick Reference
page.h header file, Page Size
pages, Oops Messages, The alloc_pages Interface, Using I/O Memory, Page Size, Physical Addresses and Pages, Page Tables, Mapping Memory with nopage
allocators, The alloc_pages Interface
faults caused by invalid pointers, Oops Messages
physical addresses, Physical Addresses and Pages
size and portability, Page Size
tables, Using I/O Memory, Page Tables, Mapping Memory with nopage
I/O memory and, Using I/O Memory
nopage VMA method, Mapping Memory with nopage
page_address macro, The Memory Map and Struct Page
PAGE_SHIFT macro, Physical Addresses and Pages
PAGE_SHIFT symbol, Page Size
PAGE_SIZE symbol, Page Size, The mmap Device Operation
parallel ports, The Kernel Symbol Table, An Overview of the Parallel PortA Sample Driver, Preparing the Parallel Port, Disabling a single interrupt
interrupt handlers, Preparing the Parallel Port, Disabling a single interrupt
disabling, Disabling a single interrupt
preparing for, Preparing the Parallel Port
stacking driver modules, The Kernel Symbol Table
param.h header file, Measuring Time Lapses
parameters, Module ParametersModule Parameters, Module Parameters, A Sample Driver
assigning values, Module Parameters
base module, A Sample Driver
modules, Module ParametersModule Parameters
PARENB bitmask, set_termios
PARODD bitmask, set_termios
partial data transfers, The read Method, The write Method
read method, The read Method
write method, The write Method
passwords, Security Issues
pausing I/O, Pausing I/O
PC parallel interface, An Overview of the Parallel Port
PCI (Peripheral Component Interconnect), vmalloc and Friends, The PCI InterfaceHardware Abstractions, A Look Back: ISAThe Plug-and-Play Specification, PC/104 and PC/104+, MCA, EISA, VLB, SBus, NuBus, External Buses, Quick Reference, Quick Reference, Add a Device, Remove a Device, Add a Driver, Remove a Driver, PCI double-address cycle mappings, A simple PCI DMA example
devices, Add a Device, Remove a Device
adding, Add a Device
deleting, Remove a Device
DMA, A simple PCI DMA example
double-address cycle mappings, PCI double-address cycle mappings
drivers, Add a Driver, Remove a Driver
adding, Add a Driver
deleting, Remove a Driver
EISA, EISA
extended buses, External Buses
interfaces, The PCI InterfaceHardware Abstractions
ISA, A Look Back: ISAThe Plug-and-Play Specification
lists, Quick Reference
MCA, MCA
NuBus, NuBus
PC/104 and PC/104+, PC/104 and PC/104+
SBus, SBus
searching, Quick Reference
VLB, VLB
pci_bus_type variable, Add a Device
PCI_CLASS variable, PCI
PCI_DEVICE macro, Configuration Registers and Initialization
PCI_DEVICE_CLASS macro, Configuration Registers and Initialization
PCI_DMA_FROMDEVICE symbol, Setting up streaming DMA mappings
PCI_DMA_TODEVICE symbol, Setting up streaming DMA mappings
PCI_ID variable, PCI
pci_map_sg function, Scatter/gather mappings
pci_remove_bus_device function, Remove a Device
pci_resource_ functions, Accessing the I/O and Memory Spaces
PCI_SLOT_NAME variable, PCI
PCI_SUBSYS_ID variable, PCI
PDEBUG/PDEBUGG symbols, Turning the Messages On and Off
pending output, flushing, Flushing pending output, Flushing pending output
per-CPU variables, Per-CPU VariablesPer-CPU Variables
performance, Blocking and Nonblocking Operations, get_free_page and Friends, I/O Registers and Conventional Memory, String Operations, The mmap Device Operation, Packet Reception
allocating socket buffers, Packet Reception
degrading by allocating too much memory, get_free_page and Friends
memory barriers and, I/O Registers and Conventional Memory
mmap method, The mmap Device Operation
output buffers and, Blocking and Nonblocking Operations
string operations and, String Operations
Peripheral Component Interconnect, vmalloc and Friends (see PCI)
peripherals (DMA), Direct Memory AccessTalking to the DMA controller
perror calls, Debugging by Watching
persistence of memory, The Design of scull
PFN (page frame number), Physical Addresses and Pages
pfn_to_page function, The Memory Map and Struct Page
PG_locked flag, The Memory Map and Struct Page
PG_reserved flag, The Memory Map and Struct Page
PHYS variable, Input
physical addresses, Address Types, Physical Addresses and Pages, Physical Addresses and Pages
(see also addresses)
pages, Physical Addresses and Pages
physical memory management of, Memory zones, The Size Argument
(see also memory)
pins, Communicating with Hardware, An I/O Port Example, A Sample Driver, Preparing the Parallel Port, Implementing a Handler
9/10 of parallel connector, Preparing the Parallel Port
interrupts (generating), Implementing a Handler
output, Communicating with Hardware, An I/O Port Example, A Sample Driver
pipes (scull), The Design of scull
platform dependency, Version Numbering, Platform Dependency, Platform Dependency, Platform Dependencies, The /proc Interface
for modules, Platform Dependency
porting and, Platform Dependencies
/proc/stat file, The /proc Interface
PLIP (Parallel Line Internet Protocol), The Interrupt Handler, Overriding ARP
using Ethernet headers, Overriding ARP
interrupt handling differences, The Interrupt Handler
Plug and Play (PnP), The Plug-and-Play Specification
PnP (plug and play), The Plug-and-Play Specification
Point-to-Point Protocol (PPP) and interrupt handling differences, The Interrupt Handler
pointers, scull's Memory Usage, ioctl, Pointers and Error Values, Embedding kobjects, tty_driver Function PointersNo read Function?
data type portability, Pointers and Error Values
inode in ioctl method, ioctl
kobject, Embedding kobjects
scull, scull's Memory Usage
tty_driver function, tty_driver Function PointersNo read Function?
policies, The Role of the Device DriverThe Role of the Device Driver, Splitting the Kernel, Security Issues, scull's Memory Usagescull's Memory Usage, Device Control Without ioctl
controlling devices by printing and, Device Control Without ioctl
memory, Splitting the Kernel, scull's Memory Usagescull's Memory Usage
allocation (scull), scull's Memory Usagescull's Memory Usage
security, Security Issues
separation from mechanism, The Role of the Device DriverThe Role of the Device Driver
poll method, File Operations, File Operations, poll and selectThe Underlying Data Structure, The Device Methods
poll.h header file, poll and select, Quick Reference
POLLERR flag, poll and select
POLLHUP flag, poll and select
POLLIN flag, poll and select
POLLOUT flag, poll and select
POLLPRI flag, poll and select
POLLRDBAND flag, poll and select
POLLRDNORM flag, poll and select
POLLWRBAND flag, poll and select
POLLWRNORM flag, poll and select
poll_controller method, Netpoll
poll_table structure, poll and select, The Underlying Data Structure
poll_table_entry structure, The Underlying Data Structure
poll_wait function, poll and select, Quick Reference
pools, Memory Pools, Quick Reference, DMA pools
DMA, DMA pools
memory, Memory Pools, Quick Reference
populate method, The vm_area_struct structure
portability, Platform Dependencies
porting and, Platform Dependencies
ports, I/O Ports and I/O Memoryisa_readb and Friends, Manipulating I/O ports, Platform Dependencies, An Overview of the Parallel PortA Sample Driver, Quick Reference, Quick Reference, Quick Reference, Preparing the Parallel Port, Disabling a single interrupt
(see also connections; parallel ports)
access, Quick Reference
accessing different sizes, Manipulating I/O ports
I/O, I/O Ports and I/O Memoryisa_readb and Friends, Quick Reference
parallel, An Overview of the Parallel PortA Sample Driver, Preparing the Parallel Port, Disabling a single interrupt
disabling interrupt handlers, Disabling a single interrupt
preparing for interrupt handlers, Preparing the Parallel Port
platform dependency and, Platform Dependencies
POS (Programmable Option Select), MCA
power management, The Linux Device Model
PowerPC architecture (porting and), Platform Dependencies
PPP (Point-to-Point Protocol) and interrupt handling differences, The Interrupt Handler
pread method, read and write
precision, temporal, Knowing the Current Time
predefined commands ioctl method, The Predefined Commands, The Predefined Commands
(see also commands)
preemption and concurrency, Concurrency in the Kernel
printing, Debugging by PrintingPrinting Device Numbers, Turning the Messages On and Off, Printing Device Numbers, Using gdb, Device Control Without ioctl, Interface-Specific Types, Interface-Specific Types
controlling devices by, Device Control Without ioctl
to debug code, Turning the Messages On and Off
device numbers, Printing Device Numbers
from gdb debugger, Using gdb
interface-specific data, Interface-Specific Types
kernels, Debugging by PrintingPrinting Device Numbers
_t data items, Interface-Specific Types
printk function, The Hello World Module, printkPrinting Device Numbers, How Messages Get Logged, How Messages Get Logged, How Messages Get Logged, Turning the Messages On and Off, The seq_file interface
circular buffers for, How Messages Get Logged
debugging with, How Messages Get Logged
logging messages from, How Messages Get Logged
seq_file interface (avoiding in), The seq_file interface
turning debug messages on/off, Turning the Messages On and Off
priorities, printk, Allocating Memory, The Flags Argument
allocation, Allocating Memory, The Flags Argument
memory, Allocating Memory
private_data field (file structure), The file Structure
privileged operations, Capabilities and Restricted Operations
probe function (USB), probe and disconnect in Detail
Probes, Dynamic, Dynamic Probes
probe_irq_off function, Kernel-assisted probing
probe_irq_on function, Kernel-assisted probing
probing, Autodetecting the IRQ Number, Autodetecting the IRQ Number, Kernel-assisted probing, Do-it-yourself probing, Old-Style PCI Probing
do-it-yourself, Do-it-yourself probing
for IRQ numbers, Autodetecting the IRQ Number
kernel-assisted, Kernel-assisted probing
PCI, Old-Style PCI Probing
/proc filesystem, Creating your /proc fileThe seq_file interface, Creating your /proc file, The /proc Interface, The /proc Interface and Shared Interrupts
installing interrupt handlers, The /proc Interface
removing /proc entries, Creating your /proc file
shared interrupts and, The /proc Interface and Shared Interrupts
/proc/*/maps, Virtual Memory Areas
/proc/devices file, Dynamic Allocation of Major Numbers
/proc/interrupts file, The /proc Interface, The /proc Interface and Shared Interrupts
/proc/kcore file, Using gdb
/proc/kmsg file, How Messages Get Logged
/proc/modules file, Quick Reference
/proc/slabinfo file, Lookaside Caches
/proc/stat file, The /proc Interface
/proc/sys/kernel/printk file, reading console loglevel with, printk
/proc/tty/driver/ directory, TTY Drivers
processes, Splitting the KernelLoadable Modules, Splitting the Kernel, The Current Process, Blocking I/OTesting the Scullpipe Driver, Access Control on a Device File, Single-Open Devices, The Implementation of Kernel Timers, The Process Memory Map
current, The Current Process
kernel timers for, The Implementation of Kernel Timers
kernels (splitting), Splitting the KernelLoadable Modules
login, Access Control on a Device File
managing, Splitting the Kernel
memory maps, The Process Memory Map
opening devices for each process, Single-Open Devices
sleeps, Blocking I/OTesting the Scullpipe Driver
processor-specific registers, Processor-Specific Registers
proc_read method, Implementing files in /proc
PRODUCT variable, Input, USB
Programmable Option Select (POS), MCA
programming, Setting Up Your Test System, The Hello World ModuleThe Hello World Module, User Space and Kernel Space, Concurrency in the Kernel, Preliminaries, Doing It in User SpaceDoing It in User Space, ISA Programming
concurrency in, Concurrency in the Kernel
hello world module, The Hello World ModuleThe Hello World Module
ISA, ISA Programming
module requirements, Preliminaries
test system setup, Setting Up Your Test System
user space, User Space and Kernel Space, Doing It in User SpaceDoing It in User Space
programs, The Role of the Device Driver, The Role of the Device Driver, Loadable Modules, Loadable Modules, License Terms, Kernel Modules Versus Applications, Redirecting Console Messages, The Linux Trace Toolkit, Device Control Without ioctl, Testing the Scullpipe Driver, Asynchronous Notification, Busy waiting, Use of Standard C Types, Data Alignment, The /sbin/hotplug Utility, Remapping RAM, The Physical Transport of Packets
(see also applications versus kernel modules)
asynctest, Asynchronous Notification
dataalign, Data Alignment
datasize, Use of Standard C Types
insmod, Loadable Modules
jitbusy, Busy waiting
mapper, Remapping RAM
nbtest, Testing the Scullpipe Driver
obtaining, License Terms
rmmod, Loadable Modules
/sbin/hotplug utility, The /sbin/hotplug Utility
setconsole, Redirecting Console Messages
setterm, Device Control Without ioctl
tcpdump, The Physical Transport of Packets
tracing, The Linux Trace Toolkit
tunelp, The Role of the Device Driver
public kernel symbols, The Kernel Symbol TableThe Kernel Symbol Table
put_unaligned function, Data Alignment
put_user function, Using the ioctl Argument, Quick Reference
pwrite method, read and write
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset