IP Library Granted Patent US 7,039,738
Granted Patent B2
US 7,039,738 · App. 09/859,134 · Granted May 2, 2006

Method and system for handling device driver interrupts

Assignee: Esmertec AG
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,039,738
App. No.
09/859,134
Granted
May 2, 2006
Kind
B2
Abstract

A method and system for handling device driver interrupts in a computer system. An interrupt handling Method is initiating prior to the occurrence of any interrupts in the computer system. The interrupt handling Method is executed to a waiting state, and execution is then resumed when an interrupt occurs. When an interrupt is detected control is transferred to the operating system and the interrupt is dismissed.

Claims (27)

1. A method of handling interrupts in a computer system having an operating system and a virtual machine for executing non-native code the non-native code having a corresponding non-native thread and the virtual machine having a machine initiation process, the method comprising:

requesting a device handler thread of a device handler interrupt routine to provide a selected device handler thread during the machine initiation process;

executing the selected device handler thread to a point determined in accordance with the completion of predetermined device handler interrupt routine tasks to provide a partially executed device handler thread;

placing the partially executed device handler thread into a waiting state during the machine initiation process to provide a waiting partially executed device handler thread for awaiting a device handler interrupt request;

executing a non-native thread;

when an unscheduled device handler interrupt request occurs before execution of the non-native thread is complete ending execution of the non-native thread at the time that the unscheduled device handler interrupt request occurs in response to the occurrence of the unscheduled device handler interrupt request to provide an unscheduled ending of execution of the non-native thread;

placing the non-native thread into a waiting state at the time that the unscheduled device handler interrupt request occurs in response to the occurrence of the unscheduled device handler interrupt request;

reactivating the waiting partially executed device handler thread at the time that the unscheduled device handler interrupt request occurs in response to the occurrence of the unscheduled device handler interrupt request whereby the reactivating of the selected device handler thread is unscheduled;

executing the waiting partially executed device handler thread to perform the device handling routine;

terminating the device handler thread when the device handler interrupt routine is complete; and

reactivating the non-native thread in response to the completion of the interrupt handler routine.

2. A method as claimed in claim 1 , further comprising executing a native Method return sequence.

3. A method as claimed in claim 2 , further comprising:

switching control back to an operating system; and

dismissing the interrupt.

4. A method a claimed in claim 3 , further comprising waiting for a second interrupt to occur.

5. A method as claimed in claim 4 , further comprising providing a channel of communication between interrupt and non-interrupt Methods.

6. A method as claimed in claim 1 , further comprising determining whether the system is operating in a synchronous or an asynchronous mode.

7. A method a claimed in claim 1 , further comprising pre-resolving an interrupt handling Method.

8. A method as claimed in claim 7 , further comprising pre-compiling the interrupt handling Method.

9. A method as claimed in claim 1 , further comprising:

destroying operating system components; and

leaving a stack.

10. A method as claimed in claim 1 , further comprising registering an entry point of a device handler thread with an operating system.

11. A method as claimed in claim 1 , further comprising executing a native Method return sequence.

12. A method as claimed in claim 1 , further comprising providing a channel of communication between interrupt and non-interrupt Methods.

13. A method as claimed in claim 1 , further comprising determining whether the system is operating in a synchronous or an asynchronous mode.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CORPORATION
Reel/Frame 054486/0422 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 046486/0433 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2017
From: MYRIAD GROUP, AG
To: RPX CORPORATION
Reel/Frame 044087/0323 →
PATENTEE CHANGE OF ADDRESS Recorded Feb 5, 2016
From: MYRIAD GROUP, AG
To: MYRIAD GROUP, AG
Reel/Frame 037701/0866 →
CHANGE OF NAME Recorded Jul 9, 2009
From: ESMERTEC AG
To: MYRIAD GROUP AG
Reel/Frame 022928/0730 →
CHANGE OF NAME Recorded Jul 7, 2009
From: ESMERTEC AG
To: MYRIAD GROUP AG
Reel/Frame 022917/0525 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2004
From: INSIGNIA SOLUTIONS, INC.
To: ESMERTEC AG
Reel/Frame 014852/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2003
From: INSIGNIA SOLUTIONS, PLC
To: ESMERTEC AG
Reel/Frame 014250/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2001
From: PLUMMER, WAYNE; CHARNELL, WILLIAM THOMAS; DARNELL, STEPHEN; DIAS, BLAISE ABEL ALEC; GUTHRIE, PHILIPPA JOY; KRAMSKOY, JEREMY PAUL; SEXTON, JEREMY JAMES; WYNN, MICHAEL JOHN; RAUTENBACH, KEITH; THOMAS, STEPHEN PAUL
To: INSIGNIA SOLUTIONS, PLC
Reel/Frame 012095/0865 →
Priority Claims (1)
GB 9825102 · Nov 16, 1998 · national
Continuity (2)
Continuation PCTGB990078800 · Mar 16, 1999
Related Publication 20020032822A1 · Mar 14, 2002