Microsoft Patent Grants

Display screen with graphical user interface

Granted: October 17, 2017
Patent Number: D800160

Display screen with animated graphical user interface

Granted: October 17, 2017
Patent Number: D800163

Display screen with animated graphical user interface

Granted: October 17, 2017
Patent Number: D800164

Waveguide gratings to improve intensity distributions

Granted: October 17, 2017
Patent Number: 9791696
An apparatus for use in replicating an image associated with an input-pupil to an output-pupil includes a planar optical waveguide including a bulk-substrate, and also including an input-coupler, an intermediate-component and an output-coupler. The input-coupler couples light corresponding to the image into the bulk-substrate and towards the intermediate-component. The intermediate-component performs horizontal or vertical pupil expansion and directs the light corresponding to the image…

Waveguides with extended field of view

Granted: October 17, 2017
Patent Number: 9791703
An input-coupler of an optical waveguide couples light corresponding to the image and having a corresponding FOV into the optical waveguide, and the input-coupler splits the FOV of the image coupled into the optical waveguide into first and second portions by diffracting a portion of the light corresponding to the image in a first direction toward a first intermediate-component, and diffracting a portion of the light corresponding to the image in a second direction toward a second…

Data processing system having a hardware acceleration plane and a software plane

Granted: October 17, 2017
Patent Number: 9792154
A data processing system is described herein that includes two or more software-driven host components. The two or more host components collectively provide a software plane. The data processing system also includes two or more hardware acceleration components (such as FPGA devices) that collectively provide a hardware acceleration plane. A common physical network allows the host components to communicate with each other, and which also allows the hardware acceleration components to…

Hybrid configuration engine

Granted: October 17, 2017
Patent Number: 9792156
A hybrid configuration engine and associated method for reducing the complexity and burden of configuring rich coexistence between an on-premise solution and a cloud-based solution is described herein and illustrated in the accompanying figures. The hybrid configuration engine determines the current state of the on-premise solution and the cloud-based solution and learns the desired configuration state. After obtaining the current and desired configuration state information, the hybrid…

Fast read/write between networked computers via RDMA-based RPC requests

Granted: October 17, 2017
Patent Number: 9792248
An “RDMA-Based RPC Request System” combines the concepts of RPC and RDMA in a way that can be implemented on commodity networking communications hardware, e.g., RDMA-enabled network interface controllers (NICs) in an Ethernet-based network. In various implementations, the RDMA-Based RPC Request System enables fast lock-free and thread-safe execution of RPC requests between different computers in a network via RDMA-based messages. In other words, the RDMA-Based RPC Request System…

Incorporating a spatial array into one or more programmable processor cores

Granted: October 17, 2017
Patent Number: 9792252
Functional units disposed in one or more processor cores are communicatively coupled using both a shared bypass network and a switched network. The shared bypass network enables the functional units to be operated conventionally for general processing while the switched network enables specialized processing in which the functional units are configured as a spatial array. In the spatial array configuration, operands produced by one functional unit can only be sent to a subset of…

Inheritance of rules across hierarchical levels

Granted: October 17, 2017
Patent Number: 9792264
Rules, such as condition-action rules, are configured at different levels of a hierarchy. Rules created at a higher hierarchical level are automatically inherited by lower hierarchical levels in the same branch of the hierarchy. The source of the inherited rule is indicated with its display such that the hierarchical level of creation can readily be determined. The inherited rule(s) may be toggled on/off at the lower hierarchical levels but edits to inherited rule(s) are restricted.…

System and method for a spreadsheet application supporting diverse formulaic functions

Granted: October 17, 2017
Patent Number: 9792273
A spreadsheet application or other application supporting formulaic cells that automatically provides support for a number of diverse formulaic functions. The automatically provided diverse formulaic functions include a function returning the value of the formula logic if the logic can be evaluated without an error. Another function finds a value in a formulaic cell that is in the same row as a particular value from the first column and the same column as a particular value in the first…

Contextual language generation by leveraging language understanding

Granted: October 17, 2017
Patent Number: 9792281
Technology is provided for improving digital assistant performance by generating and presenting suggestions to users for completing a task or a session. To generate the suggestions, a machine learned language prediction model is trained with features extracted from multiple sources, such as log data and session context. When input is received from a user, the trained machine learned language prediction model is used to determine the most likely suggestion to present to the user to lead…

Continuous cloud-scale query optimization and processing

Granted: October 17, 2017
Patent Number: 9792325
Runtime statistics from the actual performance of operations on a set of data are collected and utilized to dynamically modify the execution plan for processing a set of data. The operations performed are modified to include statistics collection operations, the statistics being tailored to the specific operations being quantified. Optimization policy defines how often optimization is attempted and how much more efficient an execution plan should be to justify transitioning from the…

Backlighting a fabric enclosure of a flexible cover

Granted: October 17, 2017
Patent Number: 9793073
Fabric enclosure backlighting techniques are described. In one or more implementations, one or more translucent portions are formed within a plurality of layers of a fabric enclosure assembly. In one approach, regions within one or multiple layers are laser etched to form the translucent portions within the fabric enclosure assembly. A light source is then arranged to selectively transmit light through the layers via the translucent portions to provide backlight for one or more elements…

Shared electrode battery

Granted: October 17, 2017
Patent Number: 9793570
A shared electrode battery includes multiple electrodes of one type (e.g., two or more cathodes) that share an electrode of another type (e.g., a shared anode). The multiple electrodes of the same type (e.g., the multiple cathodes) can have different characteristics, such as different chemistries, particle sizes and distributions, capacities, and so forth that are designed to provide particular features such as high energy density, high power density, high cycle life, fast charge,…

Plug receptacle for an electronic device

Granted: October 17, 2017
Patent Number: 9793641
A plug receptacle is disclosed, comprising a receptacle housing having a passage configured to receive at least a part of a plug of a plug connector, a front side having a first opening and a top side having a second, elongated opening that intersects the first opening, the passage opening to the front side via the first opening and to the top side via the second opening. The plug receptacle also comprises at least one plug receptacle cover that is reversibly extendable between a cover…

Distributed multi-phase clock generator having coupled delay-locked loops

Granted: October 17, 2017
Patent Number: 9793900
Multiple, distributed, clock generating delay-locked loop (DLL) elements are interconnected/coupled in such a way as to reduce the amount of phase error present in the clocks output by these DLL elements. A plurality of DLL elements are interconnected/coupled such that a root input clock is successively relayed down a series of DLL elements. The output clocks from each of these DLL elements are interconnected/coupled to phase-corresponding output clocks from DLL elements in the series.…

Automatic detection of authentication methods by a gateway

Granted: October 17, 2017
Patent Number: 9794227
Disclosed herein is a system and method for allowing access to secure resources through a gateway without having to pre-configure the gateway with each specific URL that access is to be granted as well as maintaining the list of resources that are exposed. The gateway is configured to take incoming requests from client devices, such as the URL, and determine from the URL itself what type of authentication is required to gain access to the resource as opposed to comparing the URL with a…

Consistent messaging with replication

Granted: October 17, 2017
Patent Number: 9794305
A messaging entity configured in a memory of first node of a plurality communicatively coupled nodes is disclosed. The nodes are included in a distributed computing system. The messaging entity is configured to operate as a secondary messaging entity in a messaging server for the plurality communicatively coupled nodes. The messaging entity is communicatively couple to a primary messaging entity configured in a memory of a second node of the plurality of nodes. The primary messaging…

Re-establishing push notification channels via user identifiers

Granted: October 17, 2017
Patent Number: 9794365
Embodiments enable recovery of push notification channels via session information associated with user identifiers. A proxy service creates session information describing push notification channels (e.g., subscriptions) for a user and associates the session information with a user identifier. The session information is stored in a cloud service or other storage area separate from the proxy service. After failure of a user computing device or the proxy service, the session information is…