# US 9,519,335 B2 · Methods and articles of manufacture for hosting a safety critical application on an uncontrolled data processing device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,519,335 B2
- Document ID: US9519335B2
- Status: Granted
- Kind: B2
- Application number: 14/747,798
- Filed: 2015-06-23
- Published: 2015-10-15
- Granted: 2016-12-13
- Earliest claimed: 2009-09-08
- Assignees: Abbott Diabetes Care Inc.
- Applicants: Abbott Diabetes Care Inc.
- Inventors: Daniel M. Bernstein; Saeed Nekoomaram; Mark K. Sloan
- Web page: https://patentgrep.com/patent/US9519335B2

## CPC

- G06F 1/3287: by switching off individual functional units in the computer system
- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- G06F 1/3203: Power management, i.e. event-based initiation of a power-saving mode
- G06F 8/61: Installation
- G06F 8/656: while running
- G06F 9/445: Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57)
- G06F 9/5011: {the resources being hardware resources other than CPUs, Servers and Terminals}
- G06F 9/546: {Message passing systems or structures, e.g. queues}
- G06F 11/004: {Error avoidance (G06F11/07 and subgroups take precedence)}
- G06F 11/0721: {within a central processing unit [CPU]}
- G06F 11/0736: {in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function (testing or monitoring of automated control systems G05B23/02)}
- G06F 11/0751: {Error or fault detection not based on redundancy (power supply failures G06F1/30; network fault management H04L41/06)}
- G06F 11/079: {Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36)}
- G06F 11/3668: Testing of software
- G06F 11/3688: {for test execution, e.g. scheduling of test suites}
- G06F 11/3692: {for test results analysis}
- G16H 40/40: for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
- G06F 2201/865: Monitoring of software
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G16H: HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

Methods and articles of manufacture for hosting a safety critical application on an uncontrolled data processing device are provided. Various combinations of installation, functional, host integrity, coexistence, interoperability, power management, and environment checks are performed at various times to determine if the safety critical application operates properly on the device. The operation of the SCA on the UDPD may be controlled accordingly.

## Claims

### Claim 1

A method for executing instructions with an uncontrolled data processing device (UDPD) to determine whether a safety critical application (SCA) is functioning properly on the UDPD by determining whether the codetext of the SCA is uncorrupted, the method comprising:
executing instructions with UDPD to calculate, a host integrity check for a codetext of the SCA;
retrieving a corresponding reference host integrity check calculation;
comparing, with the UDPD, the calculated host integrity check and the retrieved corresponding reference host integrity check calculation; and
determining, with the UDPD, whether a change exists in the calculated host integrity check and the reference host integrity check.

### Claim 2 (depends on 1)

The method of claim 1, wherein the reference host integrity check is a previously calculated stored host integrity check.

### Claim 3 (depends on 1)

The method of claim 1, wherein the reference host integrity check is a host integrity check for the SCA in an uncorrupted state.

### Claim 4 (depends on 1)

The method of claim 1, wherein the reference host integrity check is a host integrity check calculated previously during manufacturing and testing and stored in memory for later retrieval.

### Claim 5 (depends on 1)

The method of claim 1, further comprising determining that the SCA is installed properly on the UDPD and permitting the SCA to operate freely on the UDPD, if a match of the calculated host integrity check and the reference host integrity check is determined.

### Claim 6 (depends on 1)

The method of claim 1, further comprising determining that the SCA is not installed properly on the UDPD, thereby preventing the SCA to operate freely on the UDPD, if a mismatch of the calculated host integrity check and the reference host integrity check is determined.

### Claim 7 (depends on 1)

The method of claim 1, further comprising determining that the SCA is not installed properly on the UDPD, thereby disabling safety critical features of the SCA from being executed on the UDPD and enabling non-safety critical features of the SCA to be executed on the UDPD, if a mismatch of the calculated host integrity check and the reference host integrity check is determined.

### Claim 8 (depends on 7)

The method of claim 7, wherein the safety critical features of the SCA comprises communication of the SCA with a remote device external to the UPDP.

### Claim 9 (depends on 7)

The method of claim 7, wherein the safety critical features of the SCA comprises determining an analyte concentration from a bodily fluid executed on the UDPD.

### Claim 10 (depends on 1)

The method of claim 1, wherein the SCA is an analyte monitoring application.

### Claim 11 (depends on 10)

The method of claim 10, wherein the analyte is glucose or ketone.

### Claim 12 (depends on 1)

The method of claim 1, wherein the UDPD is a hand-help data processing device.

### Claim 13 (depends on 12)

The method of claim 12, wherein the hand-help data processing device is a mobile phone.

### Claim 14 (depends on 12)

The method of claim 12, wherein the hand-help data processing device is a personal digital assistant (PDA).

### Claim 15 (depends on 7)

The method of claim 7, wherein the safety critical features of the SCA comprises receiving data from a sensor subcutaneously implanted in a subject.

### Claim 16 (depends on 1)

The method of claim 1, wherein the instructions are comprised in a test harness application installed on the UDPD.
