Patents by Inventor Gopal Krishna R. Kakivaya

Gopal Krishna R. Kakivaya 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: 11269927
    Abstract: A transactional replicator applying group commit and barrier concepts is disclosed. Group commit means that the transactional replicator commits multiple transactions in a group and is not restricted to committing single transactions one-at-a-time and is not limited to operating on a single state provider. Barrier means that the transactional replicator does not move forward to commit additional transactions until the previous group of transactions are completed. All state providers must apply their transactions and update state before additional transactions will be committed. A quorum acknowledgement “unlocks” any locks that were acquired to update the state within a state provider. However, as long as there are no lock conflicts, additional transactions can continue to create new group commits as necessary.
    Type: Grant
    Filed: May 6, 2019
    Date of Patent: March 8, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Gopal Krishna R. Kakivaya, Anurag Gupta, Sumukh Shivaprakash, Mihail G. Tarta, Mert Coskun
  • Publication number: 20190324973
    Abstract: A transactional replicator applying group commit and barrier concepts is disclosed. Group commit means that the transactional replicator commits multiple transactions in a group and is not restricted to committing single transactions one-at-a-time and is not limited to operating on a single state provider. Barrier means that the transactional replicator does not move forward to commit additional transactions until the previous group of transactions are completed. All state providers must apply their transactions and update state before additional transactions will be committed. A quorum acknowledgement “unlocks” any locks that were acquired to update the state within a state provider. However, as long as there are no lock conflicts, additional transactions can continue to create new group commits as necessary.
    Type: Application
    Filed: May 6, 2019
    Publication date: October 24, 2019
    Inventors: Gopal Krishna R. KAKIVAYA, Anurag GUPTA, Sumukh SHIVAPRAKASH, Mihail G. TARTA, Mert COSKUN
  • Patent number: 10282364
    Abstract: A transactional replicator applying group commit and barrier concepts is disclosed. Group commit means that the transactional replicator commits multiple transactions in a group and is not restricted to committing single transactions one-at-a-time and is not limited to operating on a single state provider. Barrier means that the transactional replicator does not move forward to commit additional transactions until the previous group of transactions are completed. All state providers must apply their transactions and update state before additional transactions will be committed. A quorum acknowledgement “unlocks” any locks that were acquired to update the state within a state provider. However, as long as there are no lock conflicts, additional transactions can continue to create new group commits as necessary.
    Type: Grant
    Filed: October 22, 2015
    Date of Patent: May 7, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Gopal Krishna R. Kakivaya, Anurag Gupta, Sumukh Shivaprakash, Mihail G. Tarta, Mert Coskun
  • Patent number: 9569274
    Abstract: Embodiments are directed to managing multiple different types of applications using service groups. In one scenario, a computer system receives an indication of one or more application dependencies and characteristics that are to be implemented when an application is provisioned on a distributed host computer system. The computer system creates an application manifest that declaratively defines application dependencies and characteristics for various different service groups. Each service group includes applications that match the declaratively defined application dependencies and characteristics. The computer system also sends the manifest to the distributed host computer system which loads those applications that fit the manifest criteria onto available nodes of the distributed host computer system according to the service groups specified in the manifest.
    Type: Grant
    Filed: October 16, 2012
    Date of Patent: February 14, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mihail G. Tarta, Gopal Krishna R. Kakivaya, Anurag Gupta
  • Publication number: 20160321296
    Abstract: A transactional replicator applying group commit and barrier concepts is disclosed. Group commit means that the transactional replicator commits multiple transactions in a group and is not restricted to committing single transactions one-at-a-time and is not limited to operating on a single state provider. Barrier means that the transactional replicator does not move forward to commit additional transactions until the previous group of transactions are completed. All state providers must apply their transactions and update state before additional transactions will be committed. A quorum acknowledgement “unlocks” any locks that were acquired to update the state within a state provider. However, as long as there are no lock conflicts, additional transactions can continue to create new group commits as necessary.
    Type: Application
    Filed: October 22, 2015
    Publication date: November 3, 2016
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Gopal Krishna R. Kakivaya, Anurag Gupta, Sumukh Shivaprakash, Mihail G. Tarta, Mert Coskun
  • Publication number: 20140108483
    Abstract: Embodiments are directed to managing multiple different types of applications using service groups. In one scenario, a computer system receives an indication of one or more application dependencies and characteristics that are to be implemented when an application is provisioned on a distributed host computer system. The computer system creates an application manifest that declaratively defines application dependencies and characteristics for various different service groups. Each service group includes applications that match the declaratively defined application dependencies and characteristics. The computer system also sends the manifest to the distributed host computer system which loads those applications that fit the manifest criteria onto available nodes of the distributed host computer system according to the service groups specified in the manifest.
    Type: Application
    Filed: October 16, 2012
    Publication date: April 17, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Mihail G. Tarta, Gopal Krishna R. Kakivaya, Anurag Gupta
  • Patent number: 8489759
    Abstract: A system and methods for service discovery and publication are disclosed. Application programs write requests for service discovery, publication, and subscription to a service discovery application programming interface. The service discovery application programming interface invokes one or more lower-level protocols to satisfy the discovery, publication and/or subscription request. Service information retrieved from lower-layer protocols is formatted into a consistent data model and returned to the client application. In addition, service information may be stored in a persistent data store managed by a discovery persistence service communicatively connected to the service discovery API.
    Type: Grant
    Filed: May 6, 2010
    Date of Patent: July 16, 2013
    Assignee: Microsoft Corporation
    Inventors: Jeffrey B. Parham, Charles R. Reeves, Lawrence A. Buerk, Angela Mills, Richard L. Hasha, Gopal Krishna R. Kakivaya, Andrew D. Milligan
  • Publication number: 20120079505
    Abstract: The present invention extends to methods, systems, and computer program products for performing computations in a distributed infrastructure. Embodiments of the invention include a general purpose distributed computation infrastructure that can be used to perform efficient (in-memory), scalable, failure-resilient, atomic, flow-controlled, long-running state-less and state-full distributed computations. Guarantees provided by a distributed computation infrastructure can build upon existent guarantees of an underlying distributed fabric in order to hide the complexities of fault-tolerance, enable large scale highly available processing, allow for efficient resource utilization, and facilitate generic development of stateful and stateless computations. A distributed computation infrastructure can also provide a substrate on which existent distributed computation models can be enhanced to become failure-resilient.
    Type: Application
    Filed: December 9, 2010
    Publication date: March 29, 2012
    Applicant: Microsoft Corporation
    Inventors: Mihail Gavril Tarta, Gopal Krishna R. Kakivaya
  • Publication number: 20100217782
    Abstract: A system and methods for service discovery and publication are disclosed. Application programs write requests for service discovery, publication, and subscription to a service discovery application programming interface. The service discovery application programming interface invokes one or more lower-level protocols to satisfy the discovery, publication and/or subscription request. Service information retrieved from lower-layer protocols is formatted into a consistent data model and returned to the client application. In addition, service information may be stored in a persistent data store managed by a discovery persistence service communicatively connected to the service discovery API.
    Type: Application
    Filed: May 6, 2010
    Publication date: August 26, 2010
    Applicant: Microsoft Corporation
    Inventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
  • Patent number: 7716357
    Abstract: A system and methods for service discovery and publication are disclosed. Application programs write requests for service discovery, publication, and subscription to a service discovery application programming interface. The service discovery application programming interface invokes one or more lower-level protocols to satisfy the discovery, publication and/or subscription request. Service information retrieved from lower-layer protocols is formatted into a consistent data model and returned to the client application. In addition, service information may be stored in a persistent data store managed by a discovery persistence service communicatively connected to the service discovery API.
    Type: Grant
    Filed: October 24, 2003
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Andrew D. Milligan, Charles R. Reeves, Jeffrey B. Parham, Gopal Krishna R. Kakivaya, Lawrence A. Buerk, Angela Mills, Richard L. Hasha
  • Patent number: 7496682
    Abstract: Using a message exchanger (“message exchanger”), data messages are exchanged between entities in a decentralized, distributed, potentially heterogeneous, network environment. The message exchanger employs XML (extensible Markup Language). To accomplish this, the entities on both ends of the message exchange understand, identify, and parse the message format. The message exchanger defines such a mechanism. Data messages are broken down into two portions—one portion (the body) is intended from an ultimate destination and the other portion (the header) is intended for intermediate destination and/or the ultimate destination. The body may be defined so that it must be understood by the ultimate destination. The header may be defined so that it must be understood or changed. Regardless, the data in the body is delivered intact to the ultimate destination. The message exchanger defines a message envelope exchange format in XML over a transport protocol, such as HTTP (HyperText Transport Protocol).
    Type: Grant
    Filed: June 26, 2006
    Date of Patent: February 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte, Henrik F. Nielsen, Robert George Atkinson
  • Patent number: 7437711
    Abstract: Communication among agile objects and context-bound objects within object-oriented programming environments, including communication across contextual boundaries, is disclosed. In one embodiment, a reference to a second object within a second context is wrapped in a proxy wrapper. A first object within a first context calls the second object via the wrapped reference. No direct reference is held by the first object to the second object. Other embodiments relate to agile objects. Agile objects called by context-bound objects execute in the contexts of their callers. The context of a calling context-bound object becomes the context of an agile object for calling of the agile object by the calling context-bound object. Direct reference to the agile object by the context-bound object is thus permitted.
    Type: Grant
    Filed: August 4, 2003
    Date of Patent: October 14, 2008
    Assignee: Microsoft Corporation
    Inventors: Christopher W. Brumme, James M. Lyon, Michael J. Toutonghi, Satish R. Thatte, Gopal Krishna R. Kakivaya, Richard D. Hill, Jan S. Gray, Craig H. Wittenberg, Rebecca A. Norlander, Scott G. Robinson, Eric W. Johnson
  • Patent number: 7281207
    Abstract: Herein is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialized object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Grant
    Filed: July 16, 2004
    Date of Patent: October 9, 2007
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte
  • Patent number: 7278095
    Abstract: Here is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialed object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Grant
    Filed: July 16, 2004
    Date of Patent: October 2, 2007
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte
  • Patent number: 7260775
    Abstract: Described is a system and mechanism by which a client computer may issue a conventional request for a resource on the Web. A response to that request is annotated with information indicating that metadata is available for the resource. Specifically, a special tag or instruction may be included in the response document that indicates the existence and location of a discovery document containing metadata about the resource. The client computer may then retrieve the metadata from the location identified in the response.
    Type: Grant
    Filed: February 11, 2002
    Date of Patent: August 21, 2007
    Assignee: Microsoft Corporation
    Inventors: Erik B. Christensen, Henrik Frystyk Nielsen, Andrew J. Layman, Gopal Krishna R. Kakivaya
  • Patent number: 7149965
    Abstract: The object persister serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialized object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Grant
    Filed: August 9, 2000
    Date of Patent: December 12, 2006
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte
  • Patent number: 7069335
    Abstract: Using a message exchanger (“message exchanger”), data messages are exchanged between entities in a decentralized, distributed, potentially heterogeneous, network environment. The message exchanger employs XML (extensible Markup Language). To accomplish this, the entities on both ends of the message exchange understand, identify, and parse the message format. The message exchanger defines such a mechanism. Data messages are broken down into two portions—one portion (the body) is intended from an ultimate destination and the other portion (the header) is intended for intermediate destination and/or the ultimate destination. The body may be defined so that it must be understood by the ultimate destination. The header may be defined so that it must be understood or changed. Regardless, the data in the body is delivered intact to the ultimate destination. The message exchanger defines a message envelope exchange format in XML over a transport protocol, such as HTTP (HyperText Transport Protocol).
    Type: Grant
    Filed: August 9, 2000
    Date of Patent: June 27, 2006
    Assignee: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte, Henrik F. Neilsen, Robert George Atkinson
  • Publication number: 20040268242
    Abstract: Herein is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialized object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Application
    Filed: July 16, 2004
    Publication date: December 30, 2004
    Applicant: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte
  • Publication number: 20040268241
    Abstract: Here is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialed object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Application
    Filed: July 16, 2004
    Publication date: December 30, 2004
    Applicant: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte
  • Publication number: 20040261020
    Abstract: Herein is described an implementation of an object persister, which serializes an object to preserve the object's data structure and its current data. The serialized object is encoded using XML and inserted within a message. That message is transmitted to an entity over a network. Such a transmission is performed using standard Internet protocols, such as HTML. Upon receiving the serialized object, the receiving entity deserializes the object to use it. Rather than include copies of referenced objects within the serialized object, the object persister includes references to those objects. This avoids redundant inclusion of the same object and potentially infinite inclusion of the object itself that is being serialized.
    Type: Application
    Filed: July 16, 2004
    Publication date: December 23, 2004
    Applicant: Microsoft Corporation
    Inventors: Andrew J. Layman, Gopal Krishna R. Kakivaya, Satish R. Thatte