Patent ID: 8180943

Claim:
Method for scheduling the service of a thread, said method comprising the steps of: creating the thread when a first hardware device of hardware devices is initialized, wherein the thread is created for use during processing of a first interrupt that the first hardware device is configured to generate; freeing the thread when the first hardware device is shut down; masking interrupts from the hardware devices in order to ignore interrupts for other threads; acquiring a latency information associated with the thread, wherein the latency information indicates a time at which the thread needs to be processed; unmasking interrupts from the hardware devices in order to detect interrupts for the other threads; rearranging an order in which the thread and the other threads will be serviced in a single queue to schedule the thread for processing in accordance with said latency information, wherein the rearranging is performed simultaneously for the thread and the other threads, and the thread and the other threads that are ordered in the single queue correspond to all requests received from the hardware devices; and creating an additional thread, wherein a first interrupt identification number is associated with the thread and a second interrupt identification number that is different than the first interrupt identification number is associated with the additional thread and the additional thread is created for use during processing of a second interrupt that the first hardware device is configured to generate; and freeing the additional thread when the first hardware device is shut down.