An allocation that removes a resource from one process and transfers it to another. When a process requests use of a resource, the appropriate resource controller will at some stage assign the resource to the process. A resource such as a processor is used for a period of time, during which no other process can use the resource. If during this period of use a second process becomes available to run, the processor scheduler may preempt the processor and transfer it to the second higher-priority process.
A more important type of preemptive allocation arises when a nonsharable resource, such as a tape transport, has been allocated to a process but not yet used by it. If a second process requests a tape transport then use of the transport may be denied the first process, and the transport preempted for use by the second process.