1.2 NT Driver Design Goals

NT drivers share many of the design goals of NT, in particular, those of the NT I/O Manager. These design goals include the following:

·Portability from one platform to another

·Configurability of hardware and software

·Always preemptible and always interruptible

·Multiprocessor-safe on multiprocessor platforms

·Object-based

·Packet-driven I/O with reusable I/O request packets (IRPs)

·Support for asynchronous I/O

The following sections explain some of the implications of these design goals for NT driver writers.