Patents by Inventor Artem Livshits

Artem Livshits has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20070271289
    Abstract: A configuration management system that uses a data compression method to compress entries in a data set. An entry is selected as a prefix value and prefix compression of the data set is performed. The entry to serve as the prefix value is quickly selected using an iterative approach. In each iteration, subgroups of entries are formed from groups formed in prior iterations based on the values of characters at successive positions in the entries. The approach is readily implemented using data structures represented as lists.
    Type: Application
    Filed: July 31, 2007
    Publication date: November 22, 2007
    Applicant: Microsoft Corporation
    Inventor: Artem Livshits
  • Publication number: 20070255709
    Abstract: The present invention extends to methods, systems, computer program products, and data structures for managing database snapshot storage. Spatial properties database transactions are used to manage database snapshot storage allocation and reclamation. When a read transaction and subsequent write transactions refer to disjoint portions of a database, the read transaction can continue to read portions of data directly from the database. When a read transaction and subsequent write transactions refer to intersecting portions of a database, the read transaction can be transitioned to “snapshot” mode. The write transaction can publish a database snapshot can configure the read transaction to read contested portions of data from the published snapshot.
    Type: Application
    Filed: April 26, 2006
    Publication date: November 1, 2007
    Applicant: Microsoft Corporation
    Inventor: Artem Livshits
  • Publication number: 20060218170
    Abstract: A configuration management system that uses a data compression method to compress entries in a data set. An entry is selected as a prefix value and prefix compression of the data set is performed. The entry to serve as the prefix value is quickly selected using an iterative approach. In each iteration, subgroups of entries are formed from groups formed in prior iterations based on the values of characters at successive positions in the entries. The approach is readily implemented using data structures represented as lists.
    Type: Application
    Filed: March 24, 2005
    Publication date: September 28, 2006
    Applicant: Microsoft Corporation
    Inventor: Artem Livshits
  • Publication number: 20060123033
    Abstract: A method and system provides an improved representation of merge conflicts in a three-way merge operation of three sequences: Original, Version1, and Version2. A merge program first compares the three sequences to identify a list of difference chunks of elements between the Original and Version1, and a list of difference chunks between the Original and Version2. From the two sets of difference chunks, the merge program creates an annotated list of chunks. Each chunk in the annotated list is identified by a conflict flag that indicates whether the chunk is a part of a conflict and if it is, what sequence(s) being merged it belongs to. A merged document is then constructed based on the annotated list of chunks, with the chunks identified in the merged document with conflict markers for viewing by a user.
    Type: Application
    Filed: January 6, 2006
    Publication date: June 8, 2006
    Applicant: Microsoft Corporation
    Inventor: Artem Livshits
  • Publication number: 20050131860
    Abstract: Methods and data structures are disclosed for carrying out identifying differences between large files comprising many lines (or other units of comparison such as rows, words, paragraphs, sentences, etc.). The disclosed methods and data structures facilitate and carry out a streamlined, yet thorough comparison of two files to identify differences between them. The streamlining is achieved by pre-processing the files prior to submitting them to any known longest common subsequence (LCS) search engine. The output of the LCS generator is post-processed to compensate for changes to the sequences introduced by the pre-processing stage.
    Type: Application
    Filed: January 14, 2005
    Publication date: June 16, 2005
    Applicant: Microsoft Corporation
    Inventor: Artem Livshits