Patents Assigned to Microsoft
  • Patent number: 8983233
    Abstract: Techniques are provided for determining depth to objects. A depth image may be determined based on two light intensity images. This technique may compensate for differences in reflectivity of objects in the field of view. However, there may be some misalignment between pixels in the two light intensity images. An iterative process may be used to relax a requirement for an exact match between the light intensity images. The iterative process may involve modifying one of the light intensity images based on a smoothed version of a depth image that is generated from the two light intensity images. Then, new values may be determined for the depth image based on the modified image and the other light intensity image. Thus, pixel misalignment between the two light intensity images may be compensated.
    Type: Grant
    Filed: August 30, 2013
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sagi Katz, Avishai Adler
  • Patent number: 8984531
    Abstract: An episodic execution of program instances and a coordinated message exchange protocol are combined to achieve eventual consistency in the communication between nodes of a distributed system. Program instances run in episodic loops that are triggered by defined input events and that generate checkpoints. The checkpoints indicate when messages are to be sent from the one instance to another instance or other device. The coordinated message exchange protocol allows the instance to send a message to a receiver, to acknowledge that the message has been received, and to confirm the acknowledgement to the receiver.
    Type: Grant
    Filed: June 1, 2011
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: John Taylor, Justin Brown, Kenneth Wolf, Edmund Pinto, Stefan Batres, Nathan Talbert
  • Patent number: 8984433
    Abstract: An enterprise management system may present data in a user interface that contains tabular data and a graphical representation of the tabular data. The graphical representation may change based on portions of the tabular data that may be selected, and may show a graphical data summary if no rows are selected, or detailed graphical illustrations of the selected rows. In some cases, filters may be applied to the data, and a selection tool may enable a user to select from several different parameters in each row.
    Type: Grant
    Filed: October 10, 2007
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC.
    Inventors: Peter Francis Martone, David James, Jeff Liu, Ransom VanOrman, Jun Wang, Sobia Tariq
  • Patent number: 8983793
    Abstract: Techniques for data gathering in large-scale wireless sensor networks are described. A data collection device receives aggregate data from at least one sensor node of a group of N sensor nodes. The aggregate data includes M weighted sums. Each of the M weighted sums includes a respective sum of N products each of which being a product of a respective coefficient and a sensor reading from a respective one of the N sensor nodes. M and N are positive integers and M is less than N. Computation is performed on the aggregate data to recover sensor readings from the N sensor nodes.
    Type: Grant
    Filed: October 1, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Chong Luo, Feng Wu
  • Patent number: 8984244
    Abstract: Various mechanisms are disclosed herein for the saving and restoring of virtual machine environment state. For example, virtual machine state can be either be saved or (multiple) snapshots can be taken of the virtual machine state. In the latter case, virtual processors can be allowed to run while the memory of the virtual machine state is being saved. In either case, virtual devices associated with the virtual machine environment can be quiesced such that these devices can prepare themselves to be saved. Once such virtual devices and memory are saved, they can also be restored. For example, restoration of memory can occur while virtual processors are running at the same time. And, moreover, restoration can occur in batches of pages, thus optimizing the response time for restoring saved data.
    Type: Grant
    Filed: November 13, 2013
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrew Ernest Nicholas, Aaron S. Giles, Eric P. Traut, Idan Avraham, Xiongjian Fu, Osama M. Salem
  • Patent number: 8984482
    Abstract: Techniques and a graphical user interface for abstracting a request from a development environment to an object model of an object store are disclosed herein. A request for data is made by the development environment, and the request is abstracted to make in compatible with the object model (e.g., by negating properties related to bitness, versioning, etc.). The request is transmitted to a broker process that retrieves a method and/or data commands corresponding to the request. The broker process may also decode one or more method parameters of the request. If one or more method parameters are not compatible with the object model, an adapter may be loaded into the object model to make the object model compatible with the request. The broker process may also transmit the method, data commands, and/or request to the object model wherein the request is fulfilled by the object model.
    Type: Grant
    Filed: December 9, 2008
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Michael William Morton, Vladimir Yuryevich Morozov, Iouri Borisovitch Simernitski, Karim Jouini
  • Patent number: 8983201
    Abstract: The techniques discussed herein discover three-dimensional (3-D) visual phrases for an object based on a 3-D model of the object. The techniques then describe the 3-D visual phrases. Once described, the techniques use the 3-D visual phrases to detect the object in an image (e.g., object recognition).
    Type: Grant
    Filed: July 30, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rui Cai, Zhiwei Li, Lei Zhang, Qiang Hao
  • Patent number: 8984332
    Abstract: A primary active manager can manage a first copy of a database in a first computer system cluster according to a set of management rules that provide for an active copy and one or more passive copies of the database at a given time. The primary active manager can also manage a second copy of the database in a second computer system cluster according to the rules. The rules can allow the first copy of the database or the second copy of the database to be the active copy if one or more criterion in the rules is met for that active copy. The first copy can be designated as the active copy and the second copy can be designated as a passive copy. A failure of the first copy can be detected, and in response, the second copy can be automatically designated as the active copy.
    Type: Grant
    Filed: June 8, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gregory Thiel, Yogesh Bansal
  • Patent number: 8984392
    Abstract: Example systems, methods, and data structures are directed at synchronizing documents. One example data structure includes receiving a request from a first client to edit a document, and sending short-term check out metadata to the first client to begin an editing session. The data structure includes a plurality of cells and a plurality of data objects defining content of the document. Each data object is associated with one of the cells and has an object identifier that uniquely identifies the data object within the associated cell, and is configured to communicate with other cells and with objects within the associated cell. In addition, each of the cells is defined so that each other cell remains unaffected by changes to data objects of the cell.
    Type: Grant
    Filed: December 8, 2011
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Simon P. Clarke, Miko Arnab Sakhya Singha Bose, Peter P. Baer, Hani Saliba, Xuelei Sun
  • Patent number: 8984233
    Abstract: Aspects of the subject matter described herein relate to error detection for files. In aspects, before allowing updates to a clean file, a flag marking the file as dirty is written to non-volatile storage. Thereafter, the file may be updated as long as desired. Periodically or at some other time, the file may be marked as clean after all outstanding updates to the file and error codes associated with the file are written to storage. While waiting for outstanding updates and error codes to be written to storage, if additional requests to update the file are received, the file may be marked as dirty again prior to allowing the additional requests to update the file. The request to write a clean flag regarding the file may be done lazily.
    Type: Grant
    Filed: June 20, 2014
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Thomas J. Miller, Jonathan M. Cargille, William R. Tipton, Surendra Verma
  • Patent number: 8983911
    Abstract: A storage abstraction system is described herein that exposes storage from an operating system as a uniform storage device and abstracts from applications the selection of a particular storage location and different properties of storage devices. The application provides the data to store and some information about the application's goals for storing the data, and lets the operating system route the data to the right place based on the data's characteristics. The operating system may choose to store data anywhere from L2 cache to a cloud-based storage service and anything in between, based on information about the data's persistence requirements, expected usage, access frequency, security needs, and so forth. The system lets applications and users focus on expressing their goals and needs for the data, and lets the operating system manage the hardware.
    Type: Grant
    Filed: June 20, 2011
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dominique Fortier, Steven Maillet, Jered Aasheim
  • Patent number: 8984292
    Abstract: A human interactive puzzle (HIP) authorization architecture where keyed and animated puzzles are executed by HIP players which are distinct and obfuscated to the point where breaking a single player is a relatively costly operation. A key is created in response to a request for a service, a HIP player is created based on the key, and a small installation executable is created that expands during installation to produce a computationally expensive data structure on the client relative to verification of the solution at the server. Thus, copying of the player or relay of the puzzle to a third system requires more time than allowed to receive the solution at the server.
    Type: Grant
    Filed: June 24, 2010
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Jesper B. Lind, Darko Kirovski, Christopher A. Meek
  • Patent number: 8982542
    Abstract: A hinge mechanism for a mobile electronic device includes a first leaf comprising first and second fixed pivot axes and a second leaf comprising third and fourth fixed pivot axes, the four pivot axes being substantially parallel to one another. A first linkage is pivotally coupled to the first leaf at the first pivot axis and pivotally coupled to the second leaf at the fourth pivot axis. A second linkage is pivotally coupled to the first leaf such at the second pivot axis and pivotally coupled to the second leaf at the third pivot axis. The first and second leaves are pivotable at least about 180° relative to one another. A cam mechanism can be included to bias the pivotal motion of the leaves. An FPC or other electrical connector linking the leaves can pass through a passage in at least one of the linkages.
    Type: Grant
    Filed: November 17, 2010
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: David Bohn
  • Patent number: 8983954
    Abstract: In one embodiment, datasets are stored in a catalog. The datasets are enriched by establishing relationships among the domains in different datasets. A user searches for relevant datasets by providing examples of the domains of interest. The system identifies datasets corresponding to the user-provided examples. The system them identifies connected subsets of the datasets that are directly linked or indirectly linked through other domains. The user provides known relationship examples to filter the connected subsets and to identify the connected subsets that are most relevant to the user's query. The selected connected subsets may be further analyzed by business intelligence/analytics to create pivot tables or to process the data.
    Type: Grant
    Filed: April 10, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: John C. Platt, Surajit Chaudhuri, Lev Novik, Henricus Johannes Maria Meijer, Efim Hudis, Kunal Mukerjee, Christopher Alan Hays
  • Patent number: 8983989
    Abstract: Systems, methods, and computer-storage media for generating contextual queries are provided. The system includes a search engine to receive user queries and contexts, a query understanding component to generate a semantic representation of the query, and a data source command generator to transform the semantic representation into commands for multiple data sources. The data source command generator is connected to the query understanding component. The data source command generator selects data source commands based on lexical information associated with each data source.
    Type: Grant
    Filed: February 5, 2010
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Munirathnam Srikanth, Phani Vaddadi, Tarek Najm
  • Patent number: 8983925
    Abstract: Embodiments of a method for creating a methodology implementation that supplements a business application are described. In one embodiment, a comprehensive customer engagement methodology is maintained on a server and defines processes and disciplines related to the business application. A series of requests is received from a collaborative computing environment. The series of requests collectively represent a request for a collection of documents and related metadata included in the comprehensive customer engagement methodology. The series of requests are then responded to by providing a copy of the collection of documents and related metadata.
    Type: Grant
    Filed: January 4, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Brian R. Allrich, Gregory M. Holman, John R. Nannenga, Lori K. Thalmann Pytlik, Nilesh R. Thakkar
  • Patent number: 8983995
    Abstract: Systems, methods and computer-storage media are provided for identifying query formulation suggestions in response to receiving a search query. A portion of a search query is received. Query formulation suggestions are identified by semantically analyzing the search query. The query formulation suggestions are used to further formulate the received search query. The query formulation suggestions include semantic-pattern-based query suggestions that are derived from semantic query patterns, one or more entities, and information associated with these entities. The query formulation suggestions are transmitted for presentation.
    Type: Grant
    Filed: June 23, 2011
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Bo-June Hsu, Kuansan Wang, Yu-Ting Kuo, Chao-Chia Liu, Heung-Yeung Shum, Cornelia Carapcea, Yusuf Furkan Fidan, Lawrence William Colagiovanni, Arun Sacheti
  • Patent number: 8984012
    Abstract: Embodiment described herein are directed to an enhanced search engine with multiple feedback loops for providing optimal search results that are responsive a user's search query. The user's search query is parsed, and based on the underlying terms, different linguistic models and refinement techniques generate alternative candidate search queries that may yield better results. Searches are performed for the original search query and the candidate search queries, and different scores are used to select the best search results to present to the user. Results making it onto the list, as well as the underlying candidate search query, linguistic model, or refinement technique for generating that search query, will have their corresponding scores updated to reflect their success of generating a search result. Scores are stored and used by future searches to come up with better results.
    Type: Grant
    Filed: June 20, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: William D. Ramsey, Benoit Dumoulin, Nicholas Eric Craswell
  • Patent number: 8984526
    Abstract: An algorithm for dynamically adjusting the number of processors servicing Virtual Machine Queues (VMQ) and the mapping of the VMQ to the processors based on network load and processor usage in the system. The algorithm determines the total load on a processor and depending on whether the total load exceeds or falls below a threshold respectively, the algorithm moves at least one of the VMQs to a different processor based on certain criteria such as whether the destination processor is the home processor to the VMQ or whether it shares a common NUMA node with the VMQ. By doing so, better I/O throughput and lower power consumption can be achieved.
    Type: Grant
    Filed: March 9, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Pankaj Garg, Alireza Dabagh, Meiying Li
  • Patent number: D724613
    Type: Grant
    Filed: November 7, 2012
    Date of Patent: March 17, 2015
    Assignee: Microsoft Corporation
    Inventors: Peiyu Liu, Gautam Satalkar, Gaurang Prajapati