Claims Analysis
Total Claims: 3
Claim 1
Independent Claim
274 words
A method of processing program interrupts in a computer system having a central processing unit with a plurality of registers, and a main memory with a plurality of addresses, said registers being electrically divided into a plurality of register-sets so as to form a quasi stack of register-sets in which any one of said register sets may be used as the top register-set in said quasi stack, said register-sets in said quasi stack being arranged in a predetermined order to form a loop of register-sets, said main memory storing a program of a main routine and a plurality of programs of interrupt service routines having different priority levels, a first register-set in said quasi stack being normally enabled for the execution of said program of said main routine, said method comprising the steps of: (a) enabling said first register-set for executing the program of said main routine; (b) enabling another one of said register-sets as said top register-set in said predetermined order each time a first interrupt request or an interrupt request having a priority level higher than that of the interrupt service routine on execution is acknowledged for executing a corresponding interrupt service routine by the enabled register-set one after another; (c) enabling another one of said register-sets as said top register-set in an order reverse to said predetermined order each time said corresponding interrupt service routine has been completed for completing suspended interrupt service routine or routines of lower priority levels, if any, one after another; and (d) resuming the execution of the program of said main routine by enabling said first register set after all of the interrupt requests are processed.
Claim 2
Independent Claim
274 words
A method of processing program interrupts in a computer system having a central processing unit with a plurality of registers, and a main memory with a plurality of addresses, said registers being electrically divided into a plurality of register-sets so as to form a quasi stack of register-sets in which any one of said register sets may be used as the top register-set in said quasi stack, said register-sets in said quasi stack being arranged in a predetermined order to form a loop of register-sets, said main memory storing a program of a main routine and a plurality of programs of interrupt service routines having different priority levels, a first register-set in said quasi stack being normally enabled for the execution of said program of said main routine, said method comprising the steps of: (a) enabling said first register-set for executing the program of said main routine; (b) enabling another one of said register-sets as said top register-set in said predetermined order each time a first interrupt request or an interrupt request having a priority level higher than that of the interrupt service routine on execution is acknowledged for executing a corresponding interrupt service routine by the enabled register-set one after another; (c) enabling another one of said register-sets as said top register-set in an order reverse to said predetermined order each time said corresponding interrupt service routine has been completed for completing suspended interrupt service routine or routines of lower priority levels, if any, one after another; and (d) resuming the execution of the program of said main routine by enabling said first register set after all of the interrupt requests are processed.
Claim 3
Dependent Claim
158 words
A method of processing program interrupts in a computer system as claimed in claim 1, wherein said main memory has a saving region for saving data stored in at least one of said register-sets, said method further comprising the steps of: (a) saving, in said saving region of said memory, in said predetermined order, the contents of one of said register sets, in which the oldest data among said register-sets are stored, if all of said register-sets have been loaded, each time an interrupt request having a priority level higher than that of the interrupt service routine on execution is acknowledged for executing a corresponding interrupt service routine by the enabled register-set one after another; and (b) retrieving the saved data by transferring the same from said saving region of said main memory to one of said register-sets, which is enabled, for further completing the suspended interrupt service routine or routines of lower priority levels one after another.