Method for reducing interrupt latency in embedded systems
US-10489188-B2 · Nov 26, 2019 · US
US12493485B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12493485-B2 |
| Application number | US-202318469069-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 18, 2023 |
| Priority date | Mar 17, 2021 |
| Publication date | Dec 9, 2025 |
| Grant date | Dec 9, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method for processing an interrupt request includes: receiving a first interrupt request, where operations that the first interrupt request requests to execute include a first operation, execution of the first operation needs to occupy a critical resource, and the critical resource cannot be simultaneously occupied by a plurality of operations; determining, based on at least the received first interrupt request, that the first operation is an operation that does not need to be executed immediately; and storing the first operation into a temporary storage area.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: receiving a first interrupt request requesting to execute a first operation, wherein requesting to execute the first operation comprises requesting to occupy a critical resource that cannot be simultaneously occupied by a plurality of second operations, and wherein the second operations comprise the first operation; storing, when the first operation is not to be executed immediately, the first operation into a temporary storage area storing an operation that occupies the critical resource and that a received interrupt request requests to execute, wherein storing the first operation into the temporary storage area is based on a context corresponding to the first interrupt request being a first interrupt context; and wherein the first interrupt request is further for requesting to execute a third operation different from the first operation, and wherein the method further comprises: executing the third operation; when executing the third operation has ended: return a second interrupt context corresponding to a second interrupt request; or return a task context, wherein a second priority of the second interrupt request is lower than a first priority of the first interrupt request; and wherein to return the task context and the task context indicates that the third operation does not occupy the critical resource includes: setting a mutual exclusion flag; reading and executing at least one operation temporarily stored in the temporary storage area, wherein the at least one operation comprises the first operation; and clearing the mutual exclusion flag when the temporary storage area does not comprise a remaining operation. 2 . The method of claim 1 , wherein before receiving the first interrupt request, the method further comprises: executing a fourth operation by occupying the critical resource; determining, based on the mutual exclusion flag that is set in an operating system, that the first operation cannot be executed immediately, wherein the mutual exclusion flag indicates that the critical resource is occupied; and further storing, in response to determining that the first operation cannot be executed immediately, the first operation into the temporary storage area. 3 . The method of claim 2 , wherein before executing the fourth operation, the method further comprises: when the mutual exclusion flag is not set in the operating system: disabling task preemption; and setting the mutual exclusion flag. 4 . The method of claim 3 , wherein after executing the fourth operation, the method further comprises: reading and executing at least one fifth operation temporarily stored in the temporary storage area, wherein the at least one fifth operation comprises the first operation; and when the temporary storage area does not comprise a remaining operation: clearing the mutual exclusion flag; and enabling the task preemption. 5 . The method of claim 4 , further comprising: disabling reception of a third interrupt request; determining that the temporary storage area temporarily stores the at least one fifth operation; reading a sixth operation from the temporary storage area; enabling reception of the third interrupt request; and executing the sixth operation, wherein the sixth operation is one of the at least one fifth operation. 6 . The method of claim 1 , wherein before setting the mutual exclusion flag, the method further comprises obtaining a spin lock, and wherein the spin lock prevents a plurality of processors from performing parallel processing. 7 . The method of claim 1 , further comprising: receiving a task request requesting to execute a fourth operation, wherein requesting to execute the fourth operation comprises requesting to occupy the critical resource; disabling task preemption and setting a mutual exclusion flag in an operating system based on a context corresponding to the task request being a task context, wherein the mutual exclusion flag indicates that the critical resource is occupied; and executing the fourth operation, wherein after executing the fourth operation has ended, the method further comprises: reading and executing at least one operation temporarily stored in the temporary storage area; and clearing the mutual exclusion flag when the temporary storage area does not comprise a remaining operation. 8 . The method of claim 1 , wherein before storing the first operation into the temporary storage area, the method further comprises: disabling reception of a third interrupt request; and enabling reception of the second interrupt request when the temporary storage area is not full and after storing the first operation into the temporary storage area. 9 . An apparatus comprising: a memory configured to store instructions; and one or more processors coupled to the memory and configured to execute the instructions to cause the apparatus to: receive a first interrupt request requesting to execute a first operation, wherein requesting to execute the first operation comprises requesting to occupy a critical resource that cannot be simultaneously occupied by a plurality of second operations, and wherein the second operations comprise the first operation; store, when the first operation is not to be executed immediately, the first operation into a temporary storage area storing an operation that occupies the critical resource and that a received interrupt request requests to execute, wherein storing the first operation into the temporary storage area is based on a context corresponding to the first interrupt request being a first interrupt context; and wherein the first interrupt request is further for requesting to execute a third operation different from the first operation, and wherein the instructions further cause the apparatus to: execute the third operation; when executing the third operation has ended: return a second interrupt context corresponding to a second interrupt request; or return a task context, wherein a second priority of the second interrupt request is lower than a first priority of the first interrupt request; and wherein to return the task context and the task context indicates that the third operation does not occupy the critical resource includes to: set a mutual exclusion flag; read and execute at least one operation temporarily stored in the temporary storage area, wherein the at least one operation comprises the first operation; and clear the mutual exclusion flag when the temporary storage area does not comprise a remaining operation. 10 . The apparatus of claim 9 , wherein the one or more processors are further configured to execute the instructions to cause the apparatus to: execute a fourth operation by occupying the critical resource; determine, based on the mutual exclusion flag that is set in an operating system, that the first operation cannot be executed immediately, wherein the mutual exclusion flag indicates that the critical resource is occupied; and further store, in response to determining that the first operation cannot be executed immediately, the first operation into the temporary storage area. 11 . The apparatus of claim 10 , wherein the one or more processors are further configured to execute the instructions to cause the apparatus to: when the mutual exclusion flag is not set in the operating system: disable task preemption; and set the mutual exclusion flag. 12 . The apparatus of claim 11 , wherein the one or more processors are further configured to execute the instructions to cause the apparatus to: read and execute at least one fifth operation tempora
Mutual exclusion algorithms · CPC title
Resource constraint · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
Event management; Broadcasting; Multicasting; Notifications · CPC title
considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.