Inventors:
Joel A. Farrell - Endicott NY
Stephen E. Record - Ridgefield CT
Brian K. Wade - Apalachin NY
Assignee:
International Business Machines Corporation - Armonk NY
International Classification:
G06F 940
Abstract:
A multitasking operating system permits application programs (and their developers) to influence a schedule of execution of program threads which constitute the application programs by specifying parameters for the program threads. The parameters indicate each thread's priority level and dispatch class in which the thread resides. The application programs specify the thread's parameters based on the following principles of the operating system. The operating system queues the highest priority thread available for execution from each dispatch class onto a run list for execution by a processor. The highest priority thread on the run list is executed first. While this thread is dispatchable and being executed, no other thread from the same dispatch class can preempt it unless this executing thread voluntarily relinquishes control of the processor, even if the other thread has a higher priority. (This other thread would have been created or made available after the currently executing thread was selected for the run list. ) However, the currently executing thread can be involuntarily preempted at any time by another higher priority, available thread from a different dispatch class.