System and method for operating system aware low latency interrupt handling

US9772960B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9772960-B2
Application numberUS-201213649762-A
CountryUS
Kind codeB2
Filing dateOct 11, 2012
Priority dateOct 11, 2012
Publication dateSep 26, 2017
Grant dateSep 26, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The exemplary embodiments described herein relate to systems and methods for operating system aware low latency handling. One embodiment relates to a non-transitory computer readable storage medium including a set of instructions executable by a processor, the set of instructions, when executed, resulting in a performance of receiving a fast interrupt request asserted by a hardware device while the processor is executing within a kernel critical section, executing a fast interrupt handler at a first priority level, raising a second priority level interrupt by the fast interrupt handler based on the fast interrupt request, wherein the second priority level interrupt invokes a kernel service and processing the second priority level interrupt once the processor has executed the kernel critical section.

First claim

Opening claim text (preview).

What is claimed is: 1. A non-transitory computer readable storage medium including a set of instructions executable by a processor, the set of instructions, when executed, results in a performance of the following: executing an operating system within a kernel critical section, wherein executing within the kernel critical section includes masking out a second priority level interrupt request; executing a fast interrupt handler in a user mode when the operating system is within the kernel critical section, wherein the user mode includes a software interrupt instruction that can be utilized by the fast interrupt handler to request a kernel service; receiving, by the fast interrupt handler, a fast interrupt request asserted by a hardware device when the operating system is within the kernel critical section, wherein the fast interrupt request includes a request to invoke a kernel service that corresponds to the second priority level interrupt request; raising, by the fast interrupt handler through the software interrupt instruction when the operating system is within the kernel critical section, the request to invoke the kernel service that corresponds to the second priority level interrupt request; deferring invocation of the kernel service that corresponds to the second priority level interrupt request to avoid invoking the kernel service that corresponds to the second priority level interrupt request until after the operating system has exited the kernel critical section; and processing the second priority level interrupt request after the operating system exited the kernel critical section. 2. The non-transitory computer readable storage medium of claim 1 , wherein the execution of the set of instructions further results in the performance of the following: after the operating system has exited the kernel critical section continuing to execute the fast interrupt handler in the user mode to service the hardware device. 3. The non-transitory computer readable storage medium of claim 1 , wherein the second priority level interrupt request is a regular interrupt request (“IRQ”). 4. The non-transitory computer readable storage medium of claim 1 , wherein the execution of the set of instructions further results in the performance of the following: queuing the requested kernel service that corresponds to the second priority level interrupt request onto a buffer; and managing the buffer with a lockless increment of reader and writer indices. 5. The non-transitory computer readable storage medium of claim 1 , wherein the processor is a component within a reduced instruction set computer (“RISC”) instruction set architecture (“ISA”). 6. The non-transitory computer readable storage medium of claim 1 , wherein the user mode includes a dedicated set of registers that can be utilized by the fast interrupt handler. 7. The non-transitory computer readable storage medium of claim 1 , wherein the operating system is a real-time operating system (“RTOS”). 8. The non-transitory computer readable storage medium of claim 1 , wherein processing the second priority level interrupt request includes enabling the second priority level interrupt request. 9. A system, comprising: a processor executing an operating system within a kernel critical section, wherein executing within the kernel critical section includes masking out a second priority level interrupt request; executing a fast interrupt handler in a user mode when the operating system is within the kernel critical section, wherein the user mode includes a software interrupt instruction that can be utilized by the fast interrupt handler to request a kernel service; receiving, by the fast interrupt handler, a fast interrupt request asserted by a hardware device when the operating system is within the kernel critical section, wherein the fast interrupt request includes a request to invoke a kernel service that corresponds to the second priority level interrupt request; raising, by the fast interrupt handler through the software interrupt instruction when the operating system is within the kernel critical section, the request to invoke the kernel service that corresponds to the second priority level interrupt request; deferring invocation of the kernel service that corresponds to the second priority level interrupt request to avoid invoking the kernel service that corresponds to the second priority level interrupt request until after the operating system has exited the kernel critical section; and processing the second priority level interrupt request after the operating system exited the kernel critical section. 10. The system of claim 9 , wherein after the operating system has exited the kernel critical section continuing to execute the fast interrupt handler in the user mode to service the hardware device. 11. The system of claim 9 , wherein the second priority level is a regular interrupt request (“IRQ”). 12. The system of claim 9 , wherein the processor queues the requested kernel service that corresponds to the second priority level interrupt request onto a buffer, and manages the buffer with a lockless increment of reader and writer indices. 13. A method of updating an address table, comprising: executing an operating system within a kernel critical section, wherein executing within the kernel critical section includes masking out a second priority level interrupt request; executing a fast interrupt handler in a user mode when the operating system is within the kernel critical section, wherein the user mode includes a software interrupt instruction that can be utilized by the fast interrupt handler to request a kernel service; receiving, by the fast interrupt handler, a fast interrupt request asserted by a hardware device when the operating system is within the kernel critical section, wherein the fast interrupt request includes a request to invoke a kernel service that corresponds to the second priority level interrupt request; raising, by the fast interrupt handler through the software interrupt instruction when the operating system is within the kernel critical section, the request to invoke the kernel service that corresponds to the second priority level interrupt request; deferring invocation of the kernel service that corresponds to the second priority level interrupt request to avoid invoking the kernel service that corresponds to the second priority level interrupt request until after the operating system has exited the kernel critical section; and processing the second priority level interrupt request after the operating system exited the kernel critical section. 14. The method of claim 13 , further including: after the operating system has exited the kernel critical section continuing to execute the fast interrupt handler in the user mode to service the hardware device. 15. The method of claim 13 , further including: queuing the requested kernel service that corresponds to the second priority level interrupt request onto a buffer; and managing the buffer with a lockless increment of reader and writer indices. 16. The method of claim 15 , wherein the fast interrupt handler writes the requested kernel service to the buffer before the operating system exits the kernel critical section and a second priority interrupt handler reads the requested kernel service from the buffer after the operating system exited the kernel critical section. 17. The method of claim 13 , wherein the processor is a component within a reduced instruction set computer (“RISC”) instruction set architecture (“ISA”). 18.

Assignees

Inventors

Classifications

  • by interrupt, e.g. masked · CPC title

  • G06F13/26Primary

    with priority control · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9772960B2 cover?
The exemplary embodiments described herein relate to systems and methods for operating system aware low latency handling. One embodiment relates to a non-transitory computer readable storage medium including a set of instructions executable by a processor, the set of instructions, when executed, resulting in a performance of receiving a fast interrupt request asserted by a hardware device while…
Who is the assignee on this patent?
Wind River Systems Inc
What technology area does this patent fall under?
Primary CPC classification G06F13/26. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 26 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).