1. A digital data processing system, comprising: at least one scarce or serially re-usable hardware resource; a plurality of process threads requesting access to said hardware resource; and a multi-tasking operating system supported by a hardware device driver for managing simultaneous access to said hardware resource by said plurality of process threads, said multi-tasking operating system maintaining a stationary queue for allocating access to said hardware resource amongst said threads one at a time in the exact order in which they began waiting for said resource wherein no data is moved into or out of said stationary queue; wherein said stationary queue comprises: a wait counter for counting the cumulative number of threads that have been temporarily denied access to said hardware resource; and a satisfied counter for counting the cumulative number of threads that have been temporarily denied access to said hardware resource and subsequently granted access to said hardware resource; wherein said multi-tasking operating system creates a block identifier of a blocked thread of said plurality of process threads placed on said stationary queue by adding a base value associated with said hardware resource to a value of said wait counter.