← Back to Patent Explorer
US5995745A Expired / Lapsed US ⏱️ 0.0 years remaining

Adding real-time support to general purpose operating systems

Assignee: Wind River Systems Inc
•
Filing: 1997-11-10
•
Granted: 1999-11-30
•
Expires: 2017-11-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A general purpose computer operating system is run using a real time operating system. A real time operating system is provided for running real time tasks. A general purpose operating system is provided as one of the real time tasks. The general purpose operating system is preempted as needed for the real time tasks and is prevented from blocking preemption of the non-real time tasks.

Inventors

  • 👤 Victor J. Yodaiken

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 17:29
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/48; G06F9/4806; G06F9/4812; G06F9/44; G06F9/455; G06F9/45533; G06F9/45537; G06F9/461; G06F9/462

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 78 words
A process for running a general purpose computer operating system using a real time operating system, including the steps of: providing a real time operating system for running real time tasks and components and non-real time tasks; providing a general purpose operating system as one of the non-real time tasks; preempting the general purpose operating system as needed for the real time tasks; and preventing the general purpose operating system from blocking preemption of the non-real time tasks.
Claim 2
Dependent Claim 78 words
A process for running a general purpose computer operating system using a real time operating system, including the steps of: providing a real time operating system for running real time tasks and components and non-real time tasks; providing a general purpose operating system as one of the non-real time tasks; preempting the general purpose operating system as needed for the real time tasks; and preventing the general purpose operating system from blocking preemption of the non-real time tasks.
Claim 3
Dependent Claim 26 words
A process according to claim 1, further including the step of providing a software emulator to disable and enable interrupts from the general purpose operating system.
Claim 4
Dependent Claim 57 words
A process according to claim 2, wherein the software emulator performs the steps of: preventing the general purpose operating system from disabling hardware interrupts from hardware operating in real time; and emulating hardware interrupt control to preserve interrupt behavior expected by the general purpose operating system with only minimal changes to the general purpose operating system code.
Claim 5
Dependent Claim 33 words
A process according to claim 3, further including the steps of allocating the hardware interrupts to either real-time tasks and components of the real-time operating system or to the general purpose operating system.
Claim 6
Dependent Claim 64 words
A process according to claim 4, wherein allocating the hardware interrupts further includes the steps of: passing control directly to real-time tasks or components when the hardware generates interrupts that are allocated to real-time tasks or to components of the real-time operating system; and passing control to the software emulator when the hardware generates interrupts that are allocated to the general purpose operating system.
Claim 7
Dependent Claim 19 words
A process according to claim 2, further including the step of maintaining software interrupt control with the software emulator.
Claim 8
Dependent Claim 240 words
A process for running a general purpose computer operating system using a real time operating system, including the steps of: providing a real time operating system for running real time tasks and components and non-real time tasks; providing a general purpose operating system as one of the non-real time tasks; preempting the general purpose operating system as needed for the real time tasks; preventing the general purpose operating system from blocking preemption of the non-real time tasks; providing a software emulator to disable and enable interrupts from the general purpose operating system; marking interrupts as "soft disabled" and not "soft enabled" in response to requests from the general purpose operating system to disable interrupts; marking interrupts as "pending" and returning control to an interrupted thread of execution in response to hardware interrupts allocated to the general purpose operating system if either the interrupted thread of execution was a real-time task or component of the real-time operating system or if the interrupt has been marked as "soft disabled"; emulating the interrupt in response to hardware interrupts allocated to the general purpose operating system if both the interrupted thread of execution was not a real-time task or component of the real-time operating system and the interrupt has been marked as "soft enabled"; and marking interrupts as "soft enabled" and not "soft disabled" and then emulating any soft enabled interrupts in response to requests from the general purpose operating system to enable interrupts.
Claim 9
Dependent Claim 240 words
A process for running a general purpose computer operating system using a real time operating system, including the steps of: providing a real time operating system for running real time tasks and components and non-real time tasks; providing a general purpose operating system as one of the non-real time tasks; preempting the general purpose operating system as needed for the real time tasks; preventing the general purpose operating system from blocking preemption of the non-real time tasks; providing a software emulator to disable and enable interrupts from the general purpose operating system; marking interrupts as "soft disabled" and not "soft enabled" in response to requests from the general purpose operating system to disable interrupts; marking interrupts as "pending" and returning control to an interrupted thread of execution in response to hardware interrupts allocated to the general purpose operating system if either the interrupted thread of execution was a real-time task or component of the real-time operating system or if the interrupt has been marked as "soft disabled"; emulating the interrupt in response to hardware interrupts allocated to the general purpose operating system if both the interrupted thread of execution was not a real-time task or component of the real-time operating system and the interrupt has been marked as "soft enabled"; and marking interrupts as "soft enabled" and not "soft disabled" and then emulating any soft enabled interrupts in response to requests from the general purpose operating system to enable interrupts.
Claim 10
Dependent Claim 57 words
A process according to claim 7, wherein the software emulator performs the steps of: preventing the general purpose operating system from disabling hardware interrupts from hardware operating in real time; and emulating hardware interrupt control to preserve interrupt behavior expected by the general purpose operating system with only minimal changes to the general purpose operating system code.
Claim 11
Dependent Claim 33 words
A process according to claim 8, further including the steps of allocating the hardware interrupts to either real-time tasks and components of the real-time operating system or to the general purpose operating system.
Claim 12
Dependent Claim 64 words
A process according to claim 9, wherein allocating the hardware interrupts further includes the steps of: passing control directly to real-time tasks or components when the hardware generates interrupts that are allocated to real-time tasks or to components of the real-time operating system; and passing control to the software emulator when the hardware generates interrupts that are allocated to the general purpose operating system.
Claim 13
Dependent Claim 60 words
A process according to claim 7, where the step for emulating the interrupt further consists of the steps of: marking the interrupt as "soft enabled" and not "soft disabled"; passing control to an appropriate interrupt handler of the general purpose operating system; and restoring state after the interrupt handler of the general purpose operating system completes the non-real time task.

References Cited (Backward Citations)

US4553202A Cited
US4993017A Cited
US5291614A Cited
US5721922A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-11-29 2003-05-31 2003-11-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-11-29 2007-05-31 2007-11-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-11-29 2011-05-31 2011-11-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag