Next: 29.5 Internals
Up: 29 Linux Driver Set:
Previous: 29.3 Introduction
There are a number of assumptions made by some drivers:
if a given assumption is not met by the OS using the framework,
then the drivers that make the assumption will not work,
but other drivers may still be usable.
The specific assumptions made by each partially-compliant driver
are listed in a table in the appropriate section below;
here is a summary of the assumptions some of the drivers make:
- Kernel memory can be allocated from interrupt handlers.
- Drivers can allocate contiguous chunks of physical memory
larger than one page.
- (x86) Drivers can allocate memory specifically in the low 16MB
of memory accessible to the PC's built-in DMA controller.
- Drivers can sleep uninterruptibly.
- Drivers can access the clock timer and DMA registers directly.
- ``Poll-and-Yield:'' polls for short
periods of time and yields the CPU without explicitly going to sleep.
University of Utah Flux Research Group