Per thread exception management for multitasking multithreaded operating system
First Claim
Patent Images
1. A multitasking data processing system comprising:
- a memory system having an address space divided into a user address space (UAS) and a kernel address space (KAS);
a process stored in said UAS, said process owning system resources assigned to said process, said process comprising a plurality of threads, each thread being a dispatchable unit of work having access to said system resources owned by said process;
a multitasking operating system kernel stored in said KAS including means for handling user exception son a per thread basis;
a processor for selectively executing said process out of said UAS and for selectively executing said operating system out of said KAS, said processor being operative to notify said operating system when exceptions occur, which exceptions include an abnormal process termination exception arising during execution of one of said threads;
said operating system comprising a kernel exception dispatcher operative to receive exception notifications from said processor and, in response thereto, dispatch exceptions to said process;
a subsystem accessible during execution of another thread for performing a transaction for said another thread;
said process further comprisinga plurality of user defined handlers for handling exceptions caused by execution of respective ones of said threads, said user defined handlers including an abnormal process termination exception handler for handling said abnormal process termination for said another thread by completing said transaction prior to abnormal termination of said process, anda user exception dispatcher for receiving exceptions dispatched from said kernel exception dispatcher and, in response thereto, selectively dispatching user defined handlers for handling exceptions dispatched thereto, said user exception dispatcher being operable, in response to receiving said abnormal process termination exception, to sequentially search through said plurality of user defined handlers for said plurality of threads to locate said abnormal process termination handler and to dispatch said abnormal process termination exception handler, prior to abnormal termination of said process.
0 Assignments
0 Petitions
Accused Products
Abstract
A data processing system is operable in a multitasking mode to include at least one process having a plurality of threads. Exception management is done on a per thread basis, as opposed to a per process basis. Further, when a process termination exception occurs, each thread is accessed to execute any process termination exception handler associated with the thread.
-
Citations
3 Claims
-
1. A multitasking data processing system comprising:
-
a memory system having an address space divided into a user address space (UAS) and a kernel address space (KAS); a process stored in said UAS, said process owning system resources assigned to said process, said process comprising a plurality of threads, each thread being a dispatchable unit of work having access to said system resources owned by said process; a multitasking operating system kernel stored in said KAS including means for handling user exception son a per thread basis; a processor for selectively executing said process out of said UAS and for selectively executing said operating system out of said KAS, said processor being operative to notify said operating system when exceptions occur, which exceptions include an abnormal process termination exception arising during execution of one of said threads; said operating system comprising a kernel exception dispatcher operative to receive exception notifications from said processor and, in response thereto, dispatch exceptions to said process; a subsystem accessible during execution of another thread for performing a transaction for said another thread; said process further comprising a plurality of user defined handlers for handling exceptions caused by execution of respective ones of said threads, said user defined handlers including an abnormal process termination exception handler for handling said abnormal process termination for said another thread by completing said transaction prior to abnormal termination of said process, and a user exception dispatcher for receiving exceptions dispatched from said kernel exception dispatcher and, in response thereto, selectively dispatching user defined handlers for handling exceptions dispatched thereto, said user exception dispatcher being operable, in response to receiving said abnormal process termination exception, to sequentially search through said plurality of user defined handlers for said plurality of threads to locate said abnormal process termination handler and to dispatch said abnormal process termination exception handler, prior to abnormal termination of said process. - View Dependent Claims (2, 3)
-
Specification