×

Detecting the presence of an installation on a data processing system based on the relative storage locations of one or more files

  • US 7,552,474 B2
  • Filed: 03/01/2004
  • Issued: 06/23/2009
  • Est. Priority Date: 03/01/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of detecting the presence of an installation on a data processing system, comprising:

  • providing a signature that comprises m files having paths associated therewith, respectively;

    determining a number n files on the data processing system that match files in the signature;

    determining a files found ratio given by n/m;

    determining if the files found ratio is greater than a files found threshold;

    applying a transformation to the signature by replacing at least a portion of at least one of the paths with a new path, wherein applying the transformation comprises;

    selecting a transformation based on a path associated with one of the m signature files;

    thendetermining the distance between the n files on the data processing system and the m signature files using the selected transformation;

    thendetermining a distance between the n files on the data processing system and the m signature files, the distance corresponding to a sum of a number of path segments associated with the m signature files that cannot be matched to a corresponding path segment associated with files on the data processing system; and

    determining if the installation is present on the data processing system based on the files found ratio and the distance, wherein determining if the installation is present comprises;

    comparing the files found ratio to a files found threshold;

    comparing the distance to a distance threshold; and

    determining that the installation is present on the data processing system if the files found ratio exceeds the files found threshold and the distance is less than the distance threshold;

    wherein determining the distance and determining if the installation is present are performed if the files found ratio is greater than the files found threshold;

    repeating selecting the transformation and determining the distance between the n files on the data processing system and the m signature files using the selected transformation for each one of the m signature files;

    applying a transformation to the signature that is associated with the smallest distance;

    wherein if one of the m signature files matches a plurality of files on the data processing system, then the distance between the one of the m signature files and the plurality of matching files on the data processing system is a smallest distance between the one of the m signatures files and any one of the plurality of matching files on the data processing system;

    wherein determining the number n files on the data processing system that match files in the signature comprises;

    searching the data processing system to find a first file that matches a first one of the m signature files, the found file haying a distance dmax associated therewith;

    searching the data processing system to determine if another file that matches another one of the m signature files can be found within the distance dmax;

    ending the search of the data processing system if the other file that matches the other one of the m signature files is found within the distance dmax;

    updating the distance dmax with a value of a distance associated with the other file that matches the other one of the m signature files if the other file is not found within the distance dmax; and

    performing searching the data processing system to determine if another file matches another one of the m signature files, ending the search, and updating the distance dmax for each of the in signature files;

    wherein the installation comprises one or more of a software program, a firmware program, a documentation file, a printer font, and/or a web file.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×