Patents by Inventor Chandramohan Thekkath

Chandramohan Thekkath 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: 10098069
    Abstract: Mobile devices periodically send resource usage reports to an energy server. The reports include information such as an amount of energy used during a time interval, and identify processes that are executed on the mobile devices during the time interval. These reports are analyzed by the energy server and are used to generate statistics regarding the energy used by the mobile devices and the processes that are executed by the mobile devices. When a mobile device experiences a suspected energy spike, the mobile device generates and sends a report to the energy server. After confirming the energy spike, the energy server uses the statistics and the received report to identify one or more causes of the energy spike. The causes can include one or more processes, or the mobile device itself. The mobile device can reduce the amount of energy used based on the identified causes.
    Type: Grant
    Filed: February 6, 2014
    Date of Patent: October 9, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ranveer Chandra, Omid Fatemieh, Parya Moinzadeh, Chandramohan A. Thekkath, Yinglian Xie
  • Publication number: 20150223172
    Abstract: Mobile devices periodically send resource usage reports to an energy server. The reports include information such as an amount of energy used during a time interval, and identify processes that are executed on the mobile devices during the time interval. These reports are analyzed by the energy server and are used to generate statistics regarding the energy used by the mobile devices and the processes that are executed by the mobile devices. When a mobile device experiences a suspected energy spike, the mobile device generates and sends a report to the energy server. After confirming the energy spike, the energy server uses the statistics and the received report to identify one or more causes of the energy spike. The causes can include one or more processes, or the mobile device itself. The mobile device can reduce the amount of energy used based on the identified causes.
    Type: Application
    Filed: February 6, 2014
    Publication date: August 6, 2015
    Applicant: Microsoft Corporation
    Inventors: Ranveer Chandra, Omid Fatemieh, Parya Moinzadeh, Chandramohan A. Thekkath, Yinglian Xie
  • Patent number: 8412667
    Abstract: The location of a user over time is monitored by a mobile device. The monitored locations are organized into tracks that describe a path or route that the user took over a period of time. Segments that correspond to each of the tracks are determined. The segments may correspond to road on a map, or some other standardization. The segments are associated with their corresponding tracks, and used to identify similar tracks or to generate similarity scores for pairs of tracks.
    Type: Grant
    Filed: May 13, 2010
    Date of Patent: April 2, 2013
    Assignee: Microsoft Corporation
    Inventors: Li Zhang, Maya Haridasan, Chandramohan A. Thekkath
  • Patent number: 8402110
    Abstract: Remote provisioning of an IT network and/or associated services is provided. Hardware, software, service and/or expertise can be moved from on-premise to a remote location (e.g., central, distributed . . . ). Accordingly, at least a large degree computation can be moved to the center to exploit economies of scale, among other things. In such an architecture, computational resources (e.g., data storage, computation power, cache . . . ) can be pooled, and entities can subscribe to a particular level of resources related to a private entity IT network.
    Type: Grant
    Filed: December 20, 2006
    Date of Patent: March 19, 2013
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, William H. Gates, III, Raymond E. Ozzie, Gary W. Flake, Thomas F. Bergstraesser, Arnold N. Blinn, Christopher W. Brumme, Lili Cheng, Nishant V. Dani, Daniel S. Glasser, Alexander G. Gounares, Galen C. Hunt, James R. Larus, Matthew B. MacLaurin, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath
  • Patent number: 8190703
    Abstract: An enhancement to a web browser offers an extension mechanism for web applications to utilize client-side resources, thereby moving more extensibility and flexibility to the client-side. The web browser may expose some control interfaces to meet various requirements from web applications. Using the extension mechanism, the web applications are able to offload the cloud servers, function when offline, and improve performance. The extension mechanism also provides users with full control to the data passing through their web browsers.
    Type: Grant
    Filed: April 23, 2008
    Date of Patent: May 29, 2012
    Assignee: Microsoft Corporation
    Inventors: Shiding Lin, Lidong Zhou, Chandramohan A. Thekkath, Dahlia Malkhi, Zheng Zhang
  • Publication number: 20110282825
    Abstract: The location of a user over time is monitored by a mobile device. The monitored locations are organized into tracks that describe a path or route that the user took over a period of time. Segments that correspond to each of the tracks are determined. The segments may correspond to road on a map, or some other standardization. The segments are associated with their corresponding tracks, and used to identify similar tracks or to generate similarity scores for pairs of tracks.
    Type: Application
    Filed: May 13, 2010
    Publication date: November 17, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Li Zhang, Maya Haridasan, Chandramohan A. Thekkath
  • Publication number: 20110167079
    Abstract: Tracks associated with a first user are identified by a computing device. Each track may include location identifiers. The identified tracks are clustered to generate a composite track for the first user by the computing device. At least one track that is similar to the composite track is identified by the computing device. The at least one track may be associated with a user other than the first user. Information related to the identified at least one track that is similar to the composite track is provided by the computing device through a network.
    Type: Application
    Filed: January 7, 2010
    Publication date: July 7, 2011
    Applicant: Microsoft Corporation
    Inventors: Maya Haridasan, Iqbal Mohomed, Douglas Brian Terry, Ganesh Ananthanarayanan, Chandramohan A. Thekkath
  • Patent number: 7930197
    Abstract: Personal data mining mechanisms and methods are employed to identify relevant information that otherwise would likely remain undiscovered. Users supply personal data that can be analyzed in conjunction with data associated with a plurality of other users to provide useful information that can improve business operations and/or quality of life. Personal data can be mined alone or in conjunction with third party data to identify correlations amongst the data and associated users. Applications or services can interact with such data and present it to users in a myriad of manners, for instance as notifications of opportunities.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: April 19, 2011
    Assignee: Microsoft Corporation
    Inventors: Raymond E. Ozzie, William H. Gates, III, Gary W. Flake, Thomas F. Bergstraesser, Arnold N. Blinn, Christopher W. Brumme, Lili Cheng, Michael Connolly, Nishant V. Dani, Dane A. Glasgow, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Henricus Johannes Maria Meijer, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath, David R. Treadwell, III, Melora Zaner-Godsey
  • Patent number: 7849354
    Abstract: Multiple versions of data on different sets of machines allow a system to degrade gracefully even when experiencing excessive failures. When excessive failures cause the latest versions to be unavailable, the system becomes degraded, but still offers an old version if available. A most recent coherent set of the available older versions is found and provided. The degree of degradation increases gradually as the system experiences more and more failures. Graceful degradation is desirably complementary to fault tolerance.
    Type: Grant
    Filed: June 12, 2007
    Date of Patent: December 7, 2010
    Assignee: Microsoft Corporation
    Inventors: Vijayan Prabhakaran, Venugopalan Ramasubramanian, Lidong Zhou, Roy Levin, Chandramohan A. Thekkath
  • Patent number: 7783671
    Abstract: An information management system includes a database comprising a B-Tree data structure. The B-Tree includes a plurality of nodes associated with disk blocks, handles stored in the nodes, and version numbers attached to each of the handles and disk blocks. In addition, a method is provided that can include initially assigning version numbers to disk blocks, wherein the disk blocks are associated with nodes in a B-Tree data structure, and then performing an allocate operation whereby a handle identifying a disk block is returned along with the disk block's version number.
    Type: Grant
    Filed: March 16, 2006
    Date of Patent: August 24, 2010
    Inventors: Marc A. Najork, Chandramohan A. Thekkath
  • Patent number: 7751317
    Abstract: Disclosed herein are scheduling techniques for transmitting time-critical data in a cost-aware manner over a network comprising a plurality of heterogeneous transmission interfaces. The scheduling problem is formulated as a linear programming problem with the deliver-by deadlines of the various data blocks as hard constraints and minimizing cost set as an objective (soft) constraint. The problem is simplified by assuming data blocks with the earliest deadlines should be scheduled first and the most aggressive interfaces should be used first. To formulate the linear programming problem, the time domain is divided into bins and various bin-level schedules are enumerated for switching the transmission of the data over various transmission interfaces. The linear programming techniques are applied to the various bin configurations and the least costly of the resulting transmission schedule is selected for submission to a switching layer.
    Type: Grant
    Filed: January 26, 2006
    Date of Patent: July 6, 2010
    Assignee: Microsoft Corporation
    Inventors: Kentaro Toyama, Rohan Narayan Murty, Chandramohan A. Thekkath, Ranveer Chandra
  • Patent number: 7734573
    Abstract: Methods and apparatuses are provided for recovering one or more replicated datasets. In accordance to some embodiments of the invention, this is accomplished by determining whether a log contains one or more entries indicating a corruption in a replicated data item; and recovering the replicated data item if the log contains any such entries. The log, however, is maintained at a higher layer in a software hierarchy than the layer at which the replicated data item is recovered. As a result, there is no need to maintain a separate replication log at the layer where the replicated data item is recovered.
    Type: Grant
    Filed: December 14, 2004
    Date of Patent: June 8, 2010
    Assignee: Microsoft Corporation
    Inventors: John P. MacCormick, Chandramohan A. Thekkath, Lidong Zhou
  • Patent number: 7730101
    Abstract: Tree data storage structures are implemented on respective computers in a distributed environment, such as on a network, so that information associated with nodes of one computer's tree data storage structure may be read or written to by another computer in the network. To promote efficiency, a cache may be employed on the computers in the network such that each computer caches information associated with nodes of tree data storage structures located on the computers in the network. A lock service may implement a caching protocol to provide efficient concurrency of caching operations while ensuring that current information associated with the nodes is available to all computers in the network.
    Type: Grant
    Filed: June 10, 2005
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Lidong Zhou, Chandramohan A. Thekkath
  • Patent number: 7716250
    Abstract: High throughput in data computations and processing is maintained while minimizing latency. A binary tree architecture is provided in which two trees are used simultaneously, and initiation of the trees is staggered to allow for optimal use of bandwidth. These techniques are desirable for erasure codes and other computations where the addition operator is commutative. Additionally, a ternary tree architecture may be used, in which three trees co-exist on the same set of nodes to maintain high throughput while further improving latency.
    Type: Grant
    Filed: May 27, 2005
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Mark Steven Manasse, Alice Silverberg, Chandramohan A Thekkath
  • Patent number: 7716280
    Abstract: The claimed subject matter provides systems and/or methods that facilitate replicating a state associated with a client, user, service, application, and the like. A third party service provider can support any number of services that can be concurrently requested by several clients without user perception of degraded computing performance as compared to conventional systems/techniques due to improved connectivity and mitigated latencies. A replication component can generate replicas of states associated with requested services. Further, the replicas can facilitate seamlessly interacting with the third party service provider (e.g., while transitioning between client devices). Additionally, by providing replicas of the state related information, differing third party service providers can effectuate services based upon a request from a client without regenerating the state.
    Type: Grant
    Filed: December 20, 2006
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, William H. Gates, III, Raymond E. Ozzie, Gary W. Flake, Lili Cheng, Nishant V. Dani, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath
  • Patent number: 7698258
    Abstract: A searchable storage system indexes data, such as a blob (binary large object) as it is stored. The indexes are stored simultaneously with the data by the same storage mechanism. Data cannot be stored without indexing it. Any indexing technique may be used. The indexes are then used to access the data. This ensures that any inconsistencies can handled at the local level, and are not visible to clients of the system. Data can be put in to, or taken out from, the searchable storage system. Additionally, a query on the data in the searchable storage system may be performed.
    Type: Grant
    Filed: June 2, 2006
    Date of Patent: April 13, 2010
    Assignee: Microsoft Corporation
    Inventors: William R Hoffman, Marcus J. Jager, John P. MacCormick, Kristof Roomp, Chandramohan A. Thekkath
  • Patent number: 7689524
    Abstract: An intelligent personalized agent monitors, regulates, and advises a user in decision-making processes for efficiency or safety concerns. The agent monitors an environment and present characteristics of a user and analyzes such information in view of stored preferences specific to one of multiple profiles of the user. Based on the analysis, the agent can suggest or automatically implement a solution to a given issue or problem. In addition, the agent can identify another potential issue that requires attention and suggests or implements action accordingly. Furthermore, the agent can communicate with other users or devices by providing and acquiring information to assist in future decisions. All aspects of environment observation, decision assistance, and external communication can be flexibly limited or allowed as desired by the user.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: March 30, 2010
    Assignee: Microsoft Corporation
    Inventors: Raymond E. Ozzie, William H. Gates, III, Gary W. Flake, Thomas F. Bergstraesser, Arnold N. Blinn, William J. Bolosky, Christopher W. Brumme, Lili Cheng, Michael Connolly, Dane A. Glasgow, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Henricus Johannes Maria Meijer, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath, Melora Zaner-Godsey
  • Patent number: 7680908
    Abstract: The claimed subject matter provides systems and/or methods that facilitate replicating a state associated with a client, user, service, application, and the like. A third party service provider can support any number of services that can be concurrently requested by several clients without user perception of degraded computing performance as compared to conventional systems/techniques due to improved connectivity and mitigated latencies. A replication component can generate replicas of states associated with requested services. Further, the replicas can facilitate seamlessly interacting with the third party service provider (e.g., while transitioning between client devices). Additionally, by providing replicas of the state related information, differing third party service providers can effectuate services based upon a request from a client without regenerating the state.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: March 16, 2010
    Assignee: Microsoft Corporation
    Inventors: William H. Gates, III, Gary W. Flake, James R. Larus, Debi P. Mishra, Chandramohan A. Thekkath, Raymond E. Ozzie, Lili Cheng, Nishant V. Dani, Daniel S. Glasser, Alexander G. Gounares, Henricus Johannes Maria Meijer, Amit Mital, Ira L. Snyder, Jr.
  • Patent number: 7657493
    Abstract: Personal data mining mechanisms and methods are employed to identify relevant information that otherwise would likely remain undiscovered. Users supply personal data that can be analyzed in conjunction with data associated with a plurality of other users to provide useful information that can improve business operations and/or quality of life. Personal data can be mined alone or in conjunction with third party data to identify correlations amongst the data and associated users. Applications or services can interact with such data and present it to users in a myriad of manners, for instance as notifications of opportunities.
    Type: Grant
    Filed: December 20, 2006
    Date of Patent: February 2, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, William H. Gates, III, Raymond E. Ozzie, Gary W. Flake, Thomas F. Bergstraesser, Arnold N. Blinn, Christopher W. Brumme, Lili Cheng, Michael Connolly, Nishant V. Dani, Dane A. Glasgow, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Debi P. Mishra, Amit Mital, Ira L. Snyder, Jr., Chandramohan A. Thekkath, David R. Treadwell, III, Melora Zaner-Godsey
  • Patent number: 7636868
    Abstract: A global state management service manages replication in a distributed system. A distributed system can have several replica groups. The global state management service manages state associated with each replica group. Data replication is implemented without implementing an instance of a state machine on each device in a replica group. A replica group comprises a primary device and at least one secondary device. Each device in a replica group contains a replica of data of interest. The global state management service manages the allocation of primary and secondary devices. In the absence of a failure in either a primary device or a secondary device, read and write operations are performed without consulting the global state management service. When a failure is detected, the global state management service manages failover.
    Type: Grant
    Filed: June 27, 2006
    Date of Patent: December 22, 2009
    Assignee: Microsoft Corporation
    Inventors: William R. Hoffman, Marcus J. Jager, John P. MacCormick, Kristof Roomp, Chandramohan A. Thekkath, Lidong Zhou