Patents by Inventor Nikolaj S. Bjorner

Nikolaj S. Bjorner 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).

  • Patent number: 7624179
    Abstract: A resource naming service (RNS) server receives peer resource requests from peer platforms through a networking environment. The RNS server, possibly in cooperation with other RNS servers and peer registrars generates a response to the request to enable the peer platforms to access the requested peer resources. In one embodiment, a response includes a list of locations of peer devices in the networking environment where a resource is expected to be available. A requesting device can then choose to access the resource from one or more of the listed peer locations.
    Type: Grant
    Filed: February 11, 2005
    Date of Patent: November 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Patent number: 7620721
    Abstract: Aspects of the subject matter described herein relate to replicating initial content in resource replication systems. In aspects, each member participating in a replica group obtains a content set state from a directory service. The content set state indicates whether the member is allowed to synchronize resources with another member participating in the replica group. If the member is designated as a primary member, the member may replicate out resources to its downstream partners. If a member is not designated as a primary member, the member may not replicate out resources to its downstream partners until it has successfully synchronized resources with an upstream partner. Fence values may be set which control which resources win (and are replicated out) during synchronization.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: November 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Guhan Suriyanarayanan, Huisheng Liu, Shobana M. Balakrishnan, Nikolaj S. Bjørner
  • Publication number: 20090271528
    Abstract: The present invention provides a method for chunking an object. The method is arranged to provide efficient chunking of objects such that objects can be efficiently updated between a remote machine and a local machine over a network. The chunking algorithm is applicable in networked application such as file synchronization using remote differential compression (RDC) techniques. The chunking algorithm provides enhanced efficiencies by locating chunk boundaries around local maxima.
    Type: Application
    Filed: April 28, 2009
    Publication date: October 29, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Yuri Gurevich, Nikolaj S. Bjorner, Dan Teodosiu
  • Patent number: 7610378
    Abstract: A resource naming service (RNS) server receives peer resource requests from peer platforms through a networking environment. The RNS server, possibly in cooperation with other RNS servers and peer registrars generates a response to the request to enable the peer platforms to access the requested peer resources. In one embodiment, a response includes a list of locations of peer devices in the networking environment where a resource is expected to be available. A requesting device can then choose to access the resource from one or more of the listed peer locations.
    Type: Grant
    Filed: February 11, 2005
    Date of Patent: October 27, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Patent number: 7594030
    Abstract: A resource naming service (RNS) server receives peer resource requests from peer platforms through a networking environment. The RNS server, possibly in cooperation with other RNS servers and peer registrars generates a response to the request to enable the peer platforms to access the requested peer resources. In one embodiment, a response includes a list of locations of peer devices in the networking environment where a resource is expected to be available. A requesting device can then choose to access the resource from one or more of the listed peer locations.
    Type: Grant
    Filed: September 13, 2001
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Publication number: 20090192767
    Abstract: A method is described for combining models of a plurality of theory solvers in order to produce a model which may be satisfiable by each of the plurality of theory solvers. A model is accessed for a first theory solver which is satisfiable in the first theory solver. It is determined that one or more equalities are implied by the model and it is determined if the equalities are compatible with a second solver. The model is updated in accordance any equalities determined not to be compatible with the second solver. A method is also described for mutation of models using freedom intervals. A freedom interval is determined for a variable within a model and the model is updates by choosing a value for the variable which lies within the freedom interval.
    Type: Application
    Filed: January 24, 2008
    Publication date: July 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Leonardo M. de Moura, Nikolaj S. Bjorner
  • Patent number: 7562149
    Abstract: Peer devices register with a resource locator service so that the peer devices can be uniquely identified in a networking environment. An addressing scheme addresses a peer resource in the networking environment based on the unique identifier of a peer device that is a master publisher of the resource. Based on the addressing scheme, the resource locator service can track the location of the master publisher of the resource as well as additional locations of peer devices that have cached the resource and made it available. In various embodiments, the resource locator service can service requests for peer resources by providing a list of locations where the resource is expected to be available or, in the case of non-compatible requester, provide access to the resource itself.
    Type: Grant
    Filed: February 25, 2005
    Date of Patent: July 14, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Patent number: 7555531
    Abstract: A method and system are related to updating objects over limited bandwidth networks. Objects are updated between two or more computing devices using remote differential compression (RDC) techniques such that required data transfers are minimized. In one aspect, efficient large object transfers are achieved by recursively applying the RDC algorithm to its own metadata; a single or multiple recursion step(s) may be used in this case to reduce the amount of metadata sent over the network by the RDC algorithm. Objects and/or signature and chunk length lists can be chunked by locating boundaries at dynamically determined locations. A mathematical function evaluates hash values associated within a horizon window relative to potential chunk boundary.
    Type: Grant
    Filed: April 15, 2004
    Date of Patent: June 30, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjørner, Yuri Gurevich, Patrick E. Bozeman
  • Publication number: 20090164501
    Abstract: Embodiments are introduced which provide for creation of an E-matching code tree index which works on E-graphs to make E-matching more efficient. Use of the E-matching code tree allows performing matching of several patterns simultaneously. Embodiments are also described which provide for the generation of inverted path indexes. An inverted path index may be used to filter an E-graph to determine terms which may potentially match patterns when an E-graph is updated.
    Type: Application
    Filed: December 21, 2007
    Publication date: June 25, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Leonardo M. de Moura, Nikolaj S. Bjorner
  • Patent number: 7552148
    Abstract: Aspects of the subject matter described herein relate to shutdown recovery for resource replication systems. In aspects, a mechanism is described in which a machine having replicated data thereon can recover from a dirty shutdown. First, the machine determines whether a dirty shutdown has occurred. If so, the machine automatically performs shutdown recovery by causing resource metadata stored by the machine to be consistent with resource data stored by the machine. This may involve fixing the resource metadata for updates to the resource data that were not flushed to disk or may involve deleting the resource metadata and restoring it from another machine replicating the data.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: June 23, 2009
    Assignee: Microsoft Corporation
    Inventors: Huisheng Liu, Guhan Suriyanarayanan, Nikolaj S. Bjorner, Dan Teodosiu
  • Patent number: 7536419
    Abstract: Aspects of the subject matter described herein relate to resource replication systems. In aspects, a mechanism is described that maintains replicated resources on a slave member that participates in a replica group. The slave member detects that a local resource has been updated locally. If the resource was created locally in the update, the slave member deletes the local resource. Otherwise, the slave member determines an upstream partner from which to install a replacement resource and then installs the replacement resource. In aspects, this behavior undoes local updates to local resources that occur on the slave member.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: May 19, 2009
    Assignee: Microsoft Corporation
    Inventors: Huisheng Liu, Nikolaj S. Bjorner, Guhan Suriyanarayanan
  • Patent number: 7536465
    Abstract: Peer devices register with a resource locator service so that the peer devices can be uniquely identified in a networking environment. An addressing scheme addresses a peer resource in the networking environment based on the unique identifier of a peer device that is a master publisher of the resource. Based on the addressing scheme, the resource locator service can track the location of the master publisher of the resource as well as additional locations of peer devices that have cached the resource and made it available. In various embodiments, the resource locator service can service requests for peer resources by providing a list of locations where the resource is expected to be available or, in the case of non-compatible requester, provide access to the resource itself.
    Type: Grant
    Filed: July 22, 2005
    Date of Patent: May 19, 2009
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Publication number: 20090077252
    Abstract: Systems and methods for compression of data to be transmitted are described. A data stream, such as a byte code sequence, is partitioned into one or more data chunks. The data chunks can be associated with an identifier, such as a signature that differentiates one data chunk from the other. Thus, different data chunks would be identifiable through different signatures. The data chunks associated with the signatures can be compared with a repository or a history buffer. The history buffer includes a collection of previously transmitted data chunks each associated with their respective signature.
    Type: Application
    Filed: September 14, 2007
    Publication date: March 19, 2009
    Applicant: Microsoft Corporation
    Inventors: Nadim Y. Abdo, Nikolaj S. Bjorner
  • Patent number: 7506005
    Abstract: A computing device has a file stored on a storage volume by a file system and accessed through such file system. The file is defined to include data and metadata relating to the data, and at least a portion of the data of the file is removed from the file and stored at an alternate location such that the data does not occupy substantially any space on the volume and the file is in a reduced, ghosted form. The ghosted file is reconstituted for use by retrieving the data from the alternate location and associating such retrieved data with such ghosted file to form the reconstituted file.
    Type: Grant
    Filed: July 14, 2005
    Date of Patent: March 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Sarosh Cyrus Havewala, Guhan Suriyanarayanan, Christophe Franck Robert, Shobana Balakrishnan, Dan Teodosiu, Nikolaj S. Bjorner
  • Patent number: 7506007
    Abstract: A method and system for synchronizing objects among members of a replica set. An interval vector is maintained on each member. The interval vector includes one or more intervals each of which has an upper and lower bound. During synchronization, the member sends the interval vector to the member with which it is synchronizing. The other member examines the interval vector and finds resources with versions that are not included in any of the intervals of the interval vector. The other member then transmits these resources to the first member which uses them to update its store. The first member also updates its interval vector to account for the received resources.
    Type: Grant
    Filed: March 1, 2004
    Date of Patent: March 17, 2009
    Assignee: Microsoft Corporation
    Inventor: Nikolaj S. Bjørner
  • Patent number: 7290019
    Abstract: A method and system for synchronizing objects among members of a replica set. Objects on members of the replica set are quickly synchronized via a join algorithm that takes advantage of version vectors. When an object is deleted, the object is tombstoned (i.e., marked as “dead”). Tombstones are also replicated between the connected members of the replica set. After a period of time (e.g., a timeout), the tombstones are deleted. A slow sync algorithm executes periodically to ensure that objects that were not deleted via replicated tombstones are eventually deleted. An époque algorithm provides that members that have been offline for a long period of time will update their objects before they participate in a join synchronization.
    Type: Grant
    Filed: February 13, 2004
    Date of Patent: October 30, 2007
    Assignee: Microsoft Corporation
    Inventors: Nikolaj S. Bjørner, Dan Teodosiu, Rostislav Yavorskiy
  • Patent number: 7200667
    Abstract: Peer devices register with a resource locator service so that the peer devices can be uniquely identified in a networking environment. An addressing scheme addresses a peer resource in the networking environment based on the unique identifier of a peer device that is a master publisher of the resource. Based on the addressing scheme, the resource locator service can track the location of the master publisher of the resource as well as additional locations of peer devices that have cached the resource and made it available. In various embodiments, the resource locator service can service requests for peer resources by providing a list of locations where the resource is expected to be available or, in the case of non-compatible requester, provide access to the resource itself.
    Type: Grant
    Filed: February 25, 2005
    Date of Patent: April 3, 2007
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Patent number: 7072982
    Abstract: Peer devices register with a resource locator service so that the peer devices can be uniquely identified in a networking environment. An addressing scheme addresses a peer resource in the networking environment based on the unique identifier of a peer device that is a master publisher of the resource. Based on the addressing scheme, the resource locator service can track the location of the master publisher of the resource as well as additional locations of peer devices that have cached the resource and made it available. In various embodiments, the resource locator service can service requests for peer resources by providing a list of locations where the resource is expected to be available or, in the case of non-compatible requester, provide access to the resource itself.
    Type: Grant
    Filed: September 13, 2001
    Date of Patent: July 4, 2006
    Assignee: Microsoft Corporation
    Inventors: Dan Teodosiu, Nikolaj S. Bjorner, Markus M. Breunig
  • Publication number: 20040186916
    Abstract: A method and system for synchronizing objects among members of a replica set. An interval vector is maintained on each member. The interval vector includes one or more intervals each of which has an upper and lower bound. During synchronization, the member sends the interval vector to the member with which it is synchronizing. The other member examines the interval vector and finds resources with versions that are not included in any of the intervals of the interval vector. The other member then transmits these resources to the first member which uses them to update its store. The first member also updates its interval vector to account for the received resources.
    Type: Application
    Filed: March 1, 2004
    Publication date: September 23, 2004
    Inventor: Nikolaj S. Bjorner
  • Publication number: 20040177100
    Abstract: A method and system for synchronizing objects among members of a replica set. Objects on members of the replica set are quickly synchronized via a join algorithm that takes advantage of version vectors. When an object is deleted, the object is tombstoned (i.e., marked as “dead”). Tombstones are also replicated between the connected members of the replica set. After a period of time (e.g., a timeout), the tombstones are deleted. A slow sync algorithm executes periodically to ensure that objects that were not deleted via replicated tombstones are eventually deleted. An époque algorithm provides that members that have been offline for a long period of time will update their objects before they participate in a join synchronization.
    Type: Application
    Filed: February 13, 2004
    Publication date: September 9, 2004
    Applicant: MICROSOFT CORPORATION
    Inventors: Nikolaj S. Bjorner, Dan Teodosiu, Rostislav Yavorskiy