Dynamic link library integrity checking for handheld medical devices
First Claim
1. A method of checking the integrity of a dynamic link library (DLL) file called by an application being executed on a handheld medical device, the method comprising:
- loading a DLL from nonvolatile memory to volatile memory beginning at a fixed location in the volatile memory,the DLL including a first routine for performing a safety critical function of the handheld medical device and including a second routine for performing a cyclical redundancy check (CRC) for the DLL once the DLL is loaded to the volatile memory;
selectively executing the first routine from the volatile memory to perform the safety critical function;
selectively executing the second routine from the volatile memory to perform the CRC including;
calculating a check value based on the DLL loaded to the volatile memory;
comparing the check value with a predetermined check value set for the CRC; and
generating an output indicating that an error is present when the check value is different than the predetermined check value.
4 Assignments
0 Petitions
Accused Products
Abstract
A method of checking the integrity of a dynamic link library (DLL) file called by an application being executed on a handheld medical device is described. The method includes loading a DLL from a read only memory (ROM) to a random access memory (RAM) beginning at a fixed location in the RAM. The DLL includes a first routine for performing a safety critical function of the handheld medical device and a second routine for performing a cyclical redundancy check (CRC) once the DLL is loaded to the RAM. The method includes selectively executing the first routine from the RAM. The method includes selectively executing the second routine from the RAM including: calculating a check value based on the DLL; comparing the check value with a predetermined check value; and indicating that an error is present when the check value is different than the predetermined check value.
20 Citations
25 Claims
-
1. A method of checking the integrity of a dynamic link library (DLL) file called by an application being executed on a handheld medical device, the method comprising:
-
loading a DLL from nonvolatile memory to volatile memory beginning at a fixed location in the volatile memory, the DLL including a first routine for performing a safety critical function of the handheld medical device and including a second routine for performing a cyclical redundancy check (CRC) for the DLL once the DLL is loaded to the volatile memory; selectively executing the first routine from the volatile memory to perform the safety critical function; selectively executing the second routine from the volatile memory to perform the CRC including; calculating a check value based on the DLL loaded to the volatile memory; comparing the check value with a predetermined check value set for the CRC; and generating an output indicating that an error is present when the check value is different than the predetermined check value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of checking the integrity of a shared library file that is called by an application being executed on a handheld medical device and that is callable by one or more other applications that are executable on the handheld medical device, the method comprising:
-
when called for during execution of the application, loading the shared library file from nonvolatile memory to a volatile memory beginning at a fixed location in the volatile memory, the shared library file is an executable file that includes a first routine for performing a function of the handheld medical device and including a second routine for performing a cyclical redundancy check (CRC) for the shared library file once the shared library file is loaded to the volatile memory; when called for during execution of the application, selectively executing the first routine of the shared library file from the volatile memory to perform the function; when called for during execution of the application, selectively executing the second routine of the shared library file from the volatile memory including; selectively calculating a check value based on the shared library file; comparing the check value with a predetermined value set for the CRC; and generating an output indicating that an error is present when the check value is different than the predetermined value. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of preparing a dynamic link library (DLL) file for execution by an application on a handheld medical device, the application loading the DLL from nonvolatile memory of the handheld medical device to volatile memory of the handheld device beginning at a fixed location of the volatile memory before execution, the method comprising:
-
compiling, at a remote computer, the DLL based on code generated based on user input, the DLL including a first routine for performing a safety critical function of the handheld medical device and including a second routine for a performing a cyclical redundancy check (CRC) on identified portions of the DLL; calculating, at the remote computer, a check value based on the identified portions of the DLL; and selectively setting, at the remote computer, a predetermined value in the DLL to the check value, wherein the performance of the CRC using the handheld medical device includes calculating a second check value based on the identified portions of the DLL once the DLL is loaded to the volatile memory and comparing the second check value with the predetermined value. - View Dependent Claims (23, 24)
-
-
25. A method of preparing a shared library file for execution by an application on a handheld medical device, the application loading the shared library file from non-volatile memory of the handheld medical device to volatile memory of the handheld device beginning at a fixed location of the volatile memory before execution, the method comprising:
-
compiling, at a remote computer, the shared library file based on code generated based on user input, the shared library file including a first routine for performing a safety critical function of the handheld medical device and including a second routine for performing a cyclical redundancy check (CRC) on identified portions of the shared library file; calculating, at the remote computer, a check value based on the identified portions of the shared library file; and selectively setting, at the remote computer, a predetermined value in the shared library file to the check value, wherein the performance of the CRC using the handheld medical device includes calculating a second check value based on the identified portions of the shared library file once the shared library file is loaded to the volatile memory and comparing the second check value with the predetermined value.
-
Specification