Anomaly detection in real-time multi-threaded processes on embedded systems and devices using hardware performance counters and/or stack traces

US12450353B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12450353-B2
Application numberUS-202318225080-A
CountryUS
Kind codeB2
Filing dateJul 21, 2023
Priority dateMay 4, 2018
Publication dateOct 21, 2025
Grant dateOct 21, 2025

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.

An aspect of behavior of an embedded system may be determined by (a) determining a baseline behavior of the embedded system from a sequence of patterns in real-time digital measurements extracted from the embedded system; (b) extracting, while the embedded system is operating, real-time digital measurements from the embedded system; (c) extracting features from the real-time digital measurements extracted from the embedded system while the embedded system was operating; and (d) determining the aspect of the behavior of the embedded system by analyzing the extracted features with respect to features of the baseline behavior determined.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for determining an aspect of behavior of an embedded system, the computer-implemented method comprising: a) determining a baseline behavior of the embedded system from a sequence of patterns in real-time digital measurements extracted from each of at least two of multiple process threads of the embedded system; b) extracting, while the embedded system is operating, real-time digital measurements from each of the at least two of multiple process threads of the embedded system; c) extracting features from the real-time digital measurements extracted from each of the at least two of multiple process threads of the embedded system while the embedded system was operating; and d) determining the aspect of the behavior of the embedded system by analyzing temporal relationships between the extracted features of different ones of the multiple process threads with respect to temporal relationships between features extracted from the real-time digital measurements, extracted from different ones of the multiple process threads, from which the baseline behavior was determined. 2. The computer-implemented method of claim 1 wherein the aspect of behavior determined is whether the embedded system is functioning as desired. 3. The computer-implemented method of claim 1 wherein the aspect of behavior determined is whether code in the embedded system has been subject to an unauthorized modification. 4. The computer-implemented method of claim 1 wherein the embedded system consists of at least one embedded device. 5. The computer-implemented method of claim 1 wherein the embedded system includes at least one embedded device and at least one peripheral device. 6. The computer-implemented method of claim 5 wherein the at least one peripheral device is selected from a group of devices consisting of (a) sensors, (b) actuators, (c) displays, and (d) storage devices. 7. The computer-implemented method of claim 1 wherein determining the aspect of the behavior of the embedded system uses at least one of a trained machine learning classifier and statistical analysis. 8. The computer-implemented method of claim 1 wherein the embedded system includes at least one of a general purpose computer, an embedded microprocessor, or a specialized machine running code. 9. The computer-implemented method of claim 1 wherein the real-time digital measurements are extracted from each of the at least two of multiple process threads of the embedded system via at least one hardware performance counter on the embedded system. 10. The computer-implemented method of claim 1 wherein the real-time digital measurements are extracted from each of the at least two of multiple process threads of the embedded system via at least one stack trace on the embedded system. 11. Apparatus for determining an aspect of behavior of an embedded system, the apparatus comprising: a) a baseline determination module configured to determine a baseline behavior of the embedded system from a sequence of patterns in real-time digital measurements extracted from each of at least two of multiple process threads of the embedded system; b) a measurement module configured to extract, while the embedded system is operating, real-time digital measurements from each of the at least two of multiple process threads of the embedded system; c) a feature extraction module for extracting features from the real-time digital measurements extracted from each of the at least two of multiple process threads of the embedded system while the embedded system was operating; and d) an analyzer adapted to determine the aspect of the behavior of the embedded system by analyzing temporal relationships between the extracted features of different ones of the multiple process threads with respect to temporal relationships between features extracted from the real-time digital measurements, extracted from different ones of the multiple process threads, from which the baseline behavior was determined. 12. The apparatus of claim 11 wherein the aspect of behavior determined is whether the embedded system is functioning as desired. 13. The apparatus of claim 11 wherein the aspect of behavior determined is whether code in the embedded system has been subject to an unauthorized modification. 14. The apparatus of claim 11 wherein the embedded system consists of at least one embedded device. 15. The apparatus of claim 11 wherein the embedded system includes at least one embedded device and at least one peripheral device, and wherein the at least one peripheral device is selected from a group of devices consisting of (a) sensors, (b) actuators, (c) displays, and (d) storage devices. 16. The apparatus of claim 11 wherein the analyzer is least one of a trained machine learning classifier and a statistical analyzer. 17. The apparatus of claim 11 wherein the embedded system includes at least one of a general purpose computer, an embedded microprocessor, or a specialized machine running code. 18. The apparatus of claim 11 wherein the baseline determination module and the measurement module each extract real-time digital measurements from each of the at least two of multiple process threads of the embedded system via at least one hardware performance counter on the embedded system. 19. The apparatus of claim 11 wherein the baseline determination module and the measurement module each extract real-time digital measurements from each of the at least two of multiple process threads of the embedded system via at least one stack trace on the embedded system. 20. A non-transitory computer-readable storage medium storing processor executable code which, when executed by at least one processor, cause the at least one processor to perform a method for determining an aspect of behavior of an embedded system, the method comprising: a) determining a baseline behavior of the embedded system from a sequence of patterns in real-time digital measurements extracted from each of at least two of multiple process threads of the embedded system; b) extracting, while the embedded system is operating, real-time digital measurements from each of the at least two of multiple process threads of the embedded system; c) extracting features from the real-time digital measurements extracted from each of the at least two of multiple process threads of the embedded system while the embedded system was operating; and d) determining the aspect of the behavior of the embedded system by analyzing temporal relationships between the extracted features of different ones of the multiple process threads with respect to temporal relationships between features extracted from the real-time digital measurements, extracted from different ones of the multiple process threads, from which the baseline behavior was determined.

Assignees

Inventors

Classifications

  • Generating training patterns; Bootstrap methods, e.g. bagging or boosting · CPC title

  • by assessing time · CPC title

  • Machine learning · CPC title

  • Authenticate client device independently of the user · CPC title

  • within a central processing unit [CPU] · 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 US12450353B2 cover?
An aspect of behavior of an embedded system may be determined by (a) determining a baseline behavior of the embedded system from a sequence of patterns in real-time digital measurements extracted from the embedded system; (b) extracting, while the embedded system is operating, real-time digital measurements from the embedded system; (c) extracting features from the real-time digital measurement…
Who is the assignee on this patent?
Univ New York
What technology area does this patent fall under?
Primary CPC classification G06F21/57. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 21 2025 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).