Patents by Inventor Thomas Moscibroda

Thomas Moscibroda 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: 9936335
    Abstract: Technologies pertaining to sharing an application installed on a mobile computing device with another computing device are described herein. An indication is received that the application is desirably shared with the another computing device. Responsive to receiving such indication, a communications channel is automatically established between the mobile computing device and the another computing device, and display data generated at the mobile computing device is transmitted to the another computing device by way of the communications channel. The display data is displayed on the another computing device.
    Type: Grant
    Filed: December 13, 2012
    Date of Patent: April 3, 2018
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Alastair Wolman, Nicholas D. Lane, David Chu, Thomas Moscibroda, Jaebaek Seo
  • Patent number: 9916116
    Abstract: Dynamically replicated memory is usable to allocate new memory space from failed memory pages by pairing compatible failed memory pages to reuse otherwise unusable failed memory pages. Dynamically replicating memory involves detecting and recording memory faults, reclaiming failed memory pages for later use, recovering from detected memory faults, and scheduling access to replicated memory pages.
    Type: Grant
    Filed: May 9, 2016
    Date of Patent: March 13, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Engin Ipek, Douglas Christopher Burger, Thomas Moscibroda, Edmund Bernard Nightingale, Jeremy P. Condit
  • Patent number: 9918313
    Abstract: Embodiments include processes, systems, and devices that allow a white space base station to request available frequency ranges for white space transmission in a local area. A white space finder service models a primary user device's transmission signal propagation area using terrain data associated with the local area of the primary user device. The white space finder service also determines, based on the location of the white space base station and the modeled propagation area, one or more locally available, non-interfering frequency ranges and provides them to the white space base station. The white space base station compares the provided frequency ranges to policies and selects one or more of the available frequencies that accommodate the policies. The white space base station also maps the transmission frequency ranges to virtual frequency ranges for transmission by a software-defined radio employing spectrum virtualization.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: March 13, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Kun Tan, Jiansong Zhang, Yongguang Zhang, Ranveer Chandra, Yong He, Thomas Moscibroda, Paramvir Bahl, Haichen Shen
  • Publication number: 20180066944
    Abstract: In accordance with implementations of the subject matter described herein, a new approach for creating a navigation trace is proposed. In these implementations, a reference signal is obtained, where the reference signal includes time series data collected by at least one environment sensor along a reference path from a start point to a destination. Then, a navigation trace is created for the reference path based on the obtained reference signal, where magnitudes at locations of the navigation trace reflect measurements collected by the at least one environment sensor at respective time points of the reference signal. In accordance with implementations of the subject matter described herein, a new approach for generating a navigation instruction from a navigation trace.
    Type: Application
    Filed: September 7, 2016
    Publication date: March 8, 2018
    Inventors: Yuanchao Shu, Börje Felipe Fernades Karlsson, Thomas Moscibroda, Yundie Zhang, Zhuqi Li
  • Publication number: 20180059753
    Abstract: Various embodiments provide techniques and devices for scheduling power loads in devices having multiple batteries. Loads are characterized based on the power required to serve them. Loads are then assigned to batteries in response to the type of load and relative monitored characteristics of the batteries. The monitored battery characteristics can change over time. In some embodiments, stored profile information of the batteries can also be used in scheduling loads. In further embodiments, estimated workloads can also be used to schedule loads.
    Type: Application
    Filed: September 8, 2017
    Publication date: March 1, 2018
    Inventors: Bojun Huang, Julia L. Meinershagen, Thomas Moscibroda, Stephen E. Hodges, Ranveer Chandra
  • Publication number: 20170317493
    Abstract: This document describes techniques and apparatuses of load allocation for multi-battery devices. In some embodiments, these techniques and apparatuses determine an amount of load power that a multi-battery device consumes to operate. Respective efficiencies at which the device's multiple batteries are capable of providing power are also determined. A respective portion of load power is then drawn from each of the batteries based on their respective efficiencies.
    Type: Application
    Filed: July 14, 2017
    Publication date: November 2, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Bojun Huang, Thomas Moscibroda, Ranveer Chandra, Stephen E. Hodges, Julia L. Meinershagen, Nissanka Arachchige Bodhi Priyantha, Anirudh Badam, Pan Hu, Anthony John Ferrese, Evangelia Skiani
  • Publication number: 20170269670
    Abstract: This document describes techniques and apparatuses for suppressing power spikes. In some embodiments, these techniques and apparatuses determine an available amount of power that a battery is capable of providing while maintaining a particular voltage level and a requisite amount of power that components will consume to perform a task. When the requisite amount of power exceeds the available amount of power, execution of the task or other tasks can be rescheduled effective to enable the battery to maintain the particular voltage level.
    Type: Application
    Filed: June 5, 2017
    Publication date: September 21, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Ranveer Chandra, Stephen E. Hodges, Julia L. Meinershagen, Nissanka Arachchige Bodhi Priyantha, Anirudh Badam, Thomas Moscibroda, Pan Hu, Anthony John Ferrese, Evangelia Skiani
  • Patent number: 9760138
    Abstract: Various embodiments provide techniques and devices for scheduling power loads in devices having multiple batteries. Loads are characterized based on the power required to serve them. Loads are then assigned to batteries in response to the type of load and relative monitored characteristics of the batteries. The monitored battery characteristics can change over time. In some embodiments, stored profile information of the batteries can also be used in scheduling loads. In further embodiments, estimated workloads can also be used to schedule loads.
    Type: Grant
    Filed: April 25, 2014
    Date of Patent: September 12, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Bojun Huang, Julia L. Meinershagen, Thomas Moscibroda, Stephen E. Hodges, Ranveer Chandra
  • Patent number: 9748765
    Abstract: This document describes techniques and apparatuses of load allocation for multi-battery devices. In some embodiments, these techniques and apparatuses determine an amount of load power that a multi-battery device consumes to operate. Respective efficiencies at which the device's multiple batteries are capable of providing power are also determined. A respective portion of load power is then drawn from each of the batteries based on their respective efficiencies.
    Type: Grant
    Filed: February 26, 2015
    Date of Patent: August 29, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Bojun Huang, Thomas Moscibroda, Ranveer Chandra, Stephen E. Hodges, Julia L. Meinershagen, Nissanka Arachchige Bodhi Priyantha, Anirudh Badam, Pan Hu, Anthony John Ferrese, Evangelia Skiani
  • Publication number: 20170245214
    Abstract: The techniques described herein reduce a rate at which a mobile device consumes energy when receiving, processing and storing data events (e.g., emails, instant messages, social networking messages and notifications, etc.). In various embodiments, the techniques may be implemented in accordance with a connected standby mode of operation for the mobile device. Therefore, the techniques may decouple data reception from data processing when exchanging data events in the connected standby mode. In various embodiments, the techniques may store persistent memory operations for multiple data events in a temporary cache and process the stored persistent memory operations as a batch (e.g., perform the persistent memory operations together). In various embodiments, the techniques may partition data storage space allocated for data communications applications on the mobile device.
    Type: Application
    Filed: May 5, 2017
    Publication date: August 24, 2017
    Inventors: Yunxin Liu, Thomas Moscibroda, Ranveer Chandra, Yongguang Zhang, Fengyuan Xu
  • Patent number: 9730186
    Abstract: Functionality is described by selecting a channel in an environment in which non-privileged entities have subordinate access rights to spectrum compared to privileged entities. The functionality operates by identifying spectrum that is available to all nodes involved in communication (where the nodes are associated with non-privileged entities). The functionality then generates a suitability assessment for each candidate channel within the available spectrum. The functionality selects a channel having the most desirable suitability assessment. The functionality can form a suitability assessment for a candidate channel of arbitrary width, e.g., by combining suitability assessments associated with constituent spectrum units within the candidate channel.
    Type: Grant
    Filed: May 16, 2014
    Date of Patent: August 8, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ranveer Chandra, Thomas Moscibroda, Rohan Narayana Murty, Paramvir Bahl
  • Patent number: 9696782
    Abstract: This document describes techniques and apparatuses for suppressing power spikes. In some embodiments, these techniques and apparatuses determine an available amount of power that a battery is capable of providing while maintaining a particular voltage level and a requisite amount of power that components will consume to perform a task. When the requisite amount of power exceeds the available amount of power, power states of the components are altered effective to enable the battery to maintain the particular voltage level.
    Type: Grant
    Filed: February 9, 2015
    Date of Patent: July 4, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ranveer Chandra, Stephen E. Hodges, Julia L. Meinershagen, Nissanka Arachchige Bodhi Priyantha, Anirudh Badam, Thomas Moscibroda, Pan Hu, Anthony John Ferrese, Evangelia Skiani
  • Patent number: 9681378
    Abstract: The techniques described herein reduce a rate at which a mobile device consumes energy when receiving, processing and storing data events (e.g., emails, instant messages, social networking messages and notifications, etc.). In various embodiments, the techniques may be implemented in accordance with a connected standby mode of operation for the mobile device. Therefore, the techniques may decouple data reception from data processing when exchanging data events in the connected standby mode. In various embodiments, the techniques may store persistent memory operations for multiple data events in a temporary cache and process the stored persistent memory operations as a batch (e.g., perform the persistent memory operations together). In various embodiments, the techniques may partition data storage space allocated for data communications applications on the mobile device.
    Type: Grant
    Filed: April 12, 2013
    Date of Patent: June 13, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yunxin Liu, Thomas Moscibroda, Ranveer Chandra, Yongguang Zhang, Fengyuan Xu
  • Patent number: 9674661
    Abstract: Techniques for generating a real-time 3D position of one device relative another device are described herein. In one embodiment, a first device may be equipped with one or more transmitters and receivers to collect location information based on direct localized signal transmission between the first device and a second device. The first device may also be equipped with an accelerometer and/or digital compasses to assist in resolving ambiguous locations when the first device and the second device are not at an alignment position. Each device may transmit part or all of its collected location information to another device to assist in obtaining the relative location. Alternatively, a separate server may receive the location information from the devices and calculate the relative location of each device based on the received location information.
    Type: Grant
    Filed: October 21, 2011
    Date of Patent: June 6, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: David Chiyuan Chu, Xiangying Meng, Thomas Moscibroda, Jian Qiu
  • Publication number: 20170139465
    Abstract: Latency-based selections of energy storage devices are described herein. In implementations, latency behavior of computing tasks performed by a computing device is predicted for a period of time. Based on the predicted latency behavior of the computing device over the period of time, an assessment is made regarding which of multiple heterogeneous energy storage devices are most appropriate to service the system workload. For example, high energy density devices may be favored for latency sensitive tasks whereas high energy density devices may be favored when latency sensitivity is not a concern. A combination of energy storage devices to service the current workload is selected based upon the latency considerations and then power supply settings are adjusted to cause supply of power from the selected combination of energy storage devices during the time period.
    Type: Application
    Filed: November 13, 2015
    Publication date: May 18, 2017
    Inventors: Anirudh Badam, Ranveer Chandra, Nissanka Arachchige Bodhi Priyantha, Jonathan Alan Dutra, Julia L. Meinershagen, Stephen E. Hodges, Thomas Moscibroda
  • Publication number: 20170139459
    Abstract: Schedule-based energy storage device selection is described for a device having an energy storage device system with heterogeneous energy storage devices, such as heterogeneous battery cells. The techniques discussed herein use information regarding a user's schedule (e.g., the user's calendar) to predict future workload patterns for a computing device and reserve energy storage device capacities across multiple heterogeneous energy storage devices to improve efficiency of the energy storage devices. For example, if a user is expected to attend a video conference call later in the day (e.g., due to the video conference call being on the user's calendar), then energy in an energy storage device that is better capable of handling such a workload (providing power during the video conference call) more efficiently is preserved so that the energy is available when the video conference call occurs.
    Type: Application
    Filed: November 17, 2015
    Publication date: May 18, 2017
    Inventors: Anirudh Badam, Ranveer Chandra, Nissanka Arachchige Bodhi Priyantha, Jonathan Alan Dutra, Julia L. Meinershagen, Stephen E. Hodges, Thomas Moscibroda
  • Patent number: 9588810
    Abstract: Parallelism-aware scheduling of memory requests of threads in shared memory controllers. Parallel scheduling is achieved by prioritizing threads that already have requests being serviced in the memory banks. A first algorithm prioritizes requests of the last-scheduled thread that is currently being serviced. This is accomplished by tracking the thread that generated the last-scheduled request (if the request is still being serviced), and then scheduling another request from the same thread if there is an outstanding ready request from the same thread. A second algorithm prioritizes the requests of all threads that are currently being serviced. This is accomplished by tracking threads that have at least one request currently being serviced in the banks, and assigning the highest priority to these threads in the scheduling decisions. If there are no outstanding requests from any thread having requests that are being serviced, the algorithm defaults back to a baseline scheduling algorithm.
    Type: Grant
    Filed: August 8, 2007
    Date of Patent: March 7, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Onur Mutlu, Thomas Moscibroda
  • Patent number: 9526125
    Abstract: Described herein are technologies that facilitate transfer of data-intensive content between portable telephones. Phones are configured to transmit data indicative of phone location to a proxy server by way of respective cellular network data connections. When a user of a phone wishes to acquire content that is labeled as shareable on another phone, the user of the phone initiates a location-based request, which causes the proxy server to provide a list of phones that are estimated to be in Wi-Fi range of such phone. The user thereafter selects a particular phone, and the proxy server instructs that phone to activate its Wi-Fi radio. The phone of the user additionally activates its Wi-Fi radio, and a peer-to-peer connection between phones is established. Thereafter, rich content is transferrable between the phones.
    Type: Grant
    Filed: July 12, 2013
    Date of Patent: December 20, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ranveer Chandra, Thomas Moscibroda, Ki-Woong Park
  • Patent number: 9455992
    Abstract: Techniques for utilizing trusted hardware components for mitigating the effects of equivocation amongst participant computing devices of a distributed system are described herein. For instance, a distributed system employing a byzantine-fault-resilient protocol—that is, a protocol intended to mitigate (e.g., tolerate, detect, isolate, etc.) the effects of byzantine faults—may employ the techniques. To do so, the techniques may utilize a trusted hardware component comprising a non-decreasing counter and a key. This hardware component may be “trusted” in that the respective participant computing device cannot modify or observe the contents of the component in any manner other than according to the prescribed procedures, as described herein. Furthermore, the trusted hardware component may couple to the participant computing device in any suitable manner, such as via a universal serial bus (USB) connection or the like.
    Type: Grant
    Filed: June 12, 2009
    Date of Patent: September 27, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: John R. Douceur, David M Levin, Jacob R. Lorch, Thomas Moscibroda
  • Publication number: 20160253101
    Abstract: Dynamically replicated memory is usable to allocate new memory space from failed memory pages by pairing compatible failed memory pages to reuse otherwise unusable failed memory pages. Dynamically replicating memory involves detecting and recording memory faults, reclaiming failed memory pages for later use, recovering from detected memory faults, and scheduling access to replicated memory pages.
    Type: Application
    Filed: May 9, 2016
    Publication date: September 1, 2016
    Inventors: Engin Ipek, Douglas Christopher Burger, Thomas Moscibroda, Edmund Bernard Nightingale, Jeremy P. Condit