Microsoft Patent applications |
Patent application number | Title | Published |
20140359602 | APPLICATION INSTALL AND LAYOUT SYNCING - Embodiments described herein relate to synchronizing configuration information between devices associated with a user. The synchronized configuration information can relate to application installations and uninstallations as well as to user modifications to user interfaces for managing and invoking the applications. For example, layouts of application representations provided by respective application launchers on a user's respective devices are kept automatically synchronized when the user modifies any of the layouts. Installations and uninstallations are similarly synchronized between the user's devices. Installations and uninstallations that might stem from synchronization may be circumscribed in various ways, such as by allowing the user to specify whether specific applications are to be installed/uninstalled only on specific devices or globally, by filtering propagation of synchronization updates according to hardware or software features and incompatibilities, or others. | 12-04-2014 |
20140358860 | Sync Framework Extensibility - Embodiments described herein may involve enabling applications to cooperate with a system-level sync framework. The sync framework may provide system synchronization of files between user devices and a cloud storage service. Arbitrary applications on a user computing device can communicate with the sync framework to temporarily suspend synchronization of a specified file by the sync framework. The application can register functions with the sync framework that the sync framework can invoke in relation to suspending synchronization, continuing to provide system-level access to the file for arbitrary applications, and resuming synchronization. | 12-04-2014 |
20140358262 | MULTIPLE CONCURRENT AUDIO MODES - Embodiments described herein include devices and processes for concurrently processing different audio streams with different hardware-based audio processing modes. A computing device for such embodiments may have multiple hardware audio signal processing modes capable of parallel execution. An operating system or audio stack thereof may manage audio paths or streams for audio sources producing respective types of audio signals. Which of the audio paths or streams will be connected with which of the hardware audio signal processing modes may be determined according to the types of the audio signals. A first hardware audio signal processing mode may be processing a first type of audio signal of a first audio path or stream while concurrently a second hardware audio signal processing mode processes a second type of audio signal of a second audio path or stream. | 12-04-2014 |
20140351722 | USER INTERFACE ELEMENTS FOR MULTIPLE DISPLAYS - Described herein are techniques for a computing device executing a windowing system that automatically maintains a tiled arrangement of application windows on a first display and on a second display. A user interface element has indicia of applications that can be used to open the applications. Responsive to a first user input the user interface element is displayed on the first display, and while the user interface element is displayed on the first display, the windowing system maintains two or more of the application windows in a tiled arrangement on the second display. The user interface element may be part of a system user interface and may be implemented in a variety of ways. For example, it may be a full-screen set of application representations, possibly user selected, or a list of recently used applications, or a list of open applications, etc. | 11-27-2014 |
20140325432 | SECOND SCREEN VIEW WITH MULTITASKING - Described herein are embodiments performed by a computing device capable of having a first display and a second display. The device may also execute a windowing system. Arbitrary applications execute on the computing device. Each such application has a corresponding application window managed by the windowing system. A start-projecting request may be received from an arbitrary one of the applications, and the windowing system may respond to the start request by generating, displaying, and managing a projection window. The application may generate and display content via the projection window. Responsive to the start-projecting request, display information about the first display and the second display may be used by the windowing system to display the projection window. A stop-projecting request from the application may cause the windowing system to terminate the projection window. | 10-30-2014 |
20140168229 | CPU-GPU PARALLELIZATION - Embodiments described herein relate to improving throughput of a CPU and a GPU working in conjunction to render graphics. Time frames for executing CPU and GPU work units are synchronized with a refresh rate of a display. Pending CPU work is performed when a time frame starts (a vsync occurs). When a prior GPU work unit is still executing on the GPU, then a parallel mode is entered. In the parallel mode, some GPU work and some CPU work is performed concurrently. When the parallel mode is exited, for example when there is no CPU work to perform, the parallel mode may be exited. | 06-19-2014 |
20140137029 | CROSS SLIDE GESTURE - Techniques relating to scrolling, object selection, and object moving are discussed. Strokes are inputted by a user, for instance using a touch sensitive surface. Strokes are directed to a scrollable surface with objects therein. Strokes that end before meeting a condition select the objects, and strokes then end after meeting the condition move the objects or representations thereof. The condition may be a distance. Selection may only occur when strokes meet a threshold condition such as having a particular direction (e.g., perpendicular to a direction for scrolling the surface) or moving a minimal distance. Strokes in a scrolling direction (e.g., horizontal) may scroll the surface in that direction and strokes in another direction (e.g., vertical) may both select and move the objects. Objects selected may slide on rails before moving. | 05-15-2014 |
20140109053 | IDENTIFYING HIGH IMPACT BUGS - Test cases are executed by the software engineering test system. The test cases target software products. Test outputs are generated indicating whether the software engineering test system determined the test cases to have passed or failed. Separately, bug records are stored in a first dataset whose records identify corresponding bugs. Records of the test case executions are stored in a second dataset. Records thereof indicate whether a corresponding test case failed when executed. Such records may have bug identifiers entered by a test engineer and corresponding to bugs identified by the test engineer. The first dataset is parsed to identify records of test runs that have failed, and for each such test run record a bug identifier thereof is identified. Statistics such as failure counts are updated for the bugs found in the test run records. | 04-17-2014 |
20130205174 | LEVERAGING CHIP VARIABILITY - Embodiments are described that leverage variability of a chip. Different areas of a chip vary in terms of reliability under a same operating condition. The variability may be captured by measuring errors over different areas of the chip. A physical factor that affects or controls the likelihood of an error on the chip can be varied. For example, the voltage supplied to a chip may be provided at different levels. At each level of the physical factor, the chip is tested for errors within the regions. Some indication of the error statistics for the regions is stored and then used to adjust power used by the chip, to adjust reliability behavior of the chip, to allow applications to control how the chip is used, to compute a signature uniquely identifying the chip, etc. | 08-08-2013 |
20130160012 | TIMER ACCESS FROM USER MODE THROUGH A SHARED MEMORY PAGE - A computing system in which a software component executing on a platform can reliably and efficiently obtain state information about a component supported by the platform through the use of a shared memory page. State information may be supplied by the platform, but any state translation information needed to map the state information as supplied to a format as used may be provided through the shared page. In a virtualized environment, the state translation information can be used to map the value of a virtual timer counter or other component from a value provided by a virtual processor to a normalized reference time that will yield the same result, regardless of whether the software component is migrated to or from another virtual processor. Use of a shared page avoids the inefficiency of an intercept into a virtualized environment or a system calls in native mode operation. | 06-20-2013 |
20130152190 | Software Firewall Control - A software firewall that may be configured using rules specified for types of network interfaces rather than individual network interfaces. The network types may be specified with type identifiers that have a readily understandable meaning to a user, facilitating ease of configuring the firewall. The network types could include, for example, wired, wireless and remote access. A rule specified based on a network type can be implemented for network interfaces of that network type. The implementation may be performed automatically and may be updated based on network location awareness information. | 06-13-2013 |
20130151737 | Multi-function Device ID with Unique Identifier - A computer system that recognizes multi-function devices and associates functions with multi-function devices. Each multi-function device may be represented by a multi-function object, allowing tools, applications or other components within the computer to take actions relating to the entire device or relating to a function based on the association of that function with other functions in the same device. These actions include displaying information about devices, instead of or in addition to information about functions. Actions also include selecting functions based on proximity within a device. Functions may be associated with a multi-function device using a unique device identifier provided by the device or generated for the function based on a connection hierarchy between functions and the computer. Devices may be configured to provide the same identifier regardless of the transport over which the device is accessed. | 06-13-2013 |
20130151718 | OFFERING AND PROVISIONING SECURED WIRELESSVIRTUAL PRIVATE NETWORK SERVICES - An electronic device may present a user interface for making selections related to connecting to a network or selecting a network from a plurality of available networks. Additionally, a user interface may give a user an opportunity to secure to an open, unsecure, connection, for example, an ad-hoc wireless connection, such as may be found at a coffee shop. A selection of security offerings may be made from a user interface screen including pre-populated service providers. A user may be allowed to save preferences for connecting to new networks, as well as preferences related to previously used networks. Further, the user may save preferences for invoking security services on a per-network or pan-network basis. The security service may a known tunneling protocol (i.e. VPN), such as L2TP or PPTP. | 06-13-2013 |
20130100128 | USING PHOTO COLLECTIONS FOR THREE DIMENSIONAL MODELING - A collection of photos and a three-dimensional reconstruction of the photos are used to construct and texture a mesh model. In one embodiment, a first digital image of a first view of a real world scene is analyzed to identify lines in the first view. Among the lines, parallel lines are identified. A three-dimensional vanishing direction in a three-dimensional space is determined based on the parallel lines and an orientation of the digital image in the three-dimensional space. A plane is automatically generated by fitting the plane to the vanishing direction. A rendering of a three-dimensional model with the plane is displayed. Three-dimensional points corresponding to features common to the photos may be used to constrain the plane. The photos may be projected onto the model to provide visual feedback when editing the plane. Furthermore, the photos may be used to texture the model. | 04-25-2013 |
20130080649 | SECURE RESOURCE NAME RESOLUTION - Techniques for securing name resolution technologies and for ensuring that name resolution technologies can function in modern networks that have a plurality of overlay networks accessible via a single network interface. In accordance with some of the principles described herein, a set of resolution parameters may be implemented by a user, such as an end user or an administrator, to be used during a name resolution process for securing the process and/or for conducting the process in an overlay network. In some implementations, the set of resolution parameters may be maintained as a table of rules, and used to govern name resolution processes. For example, resolution parameters may be created that govern a DNSSEC session, or that govern how to communicate with networks implemented with Microsoft's Direct Access overlay technologies, or that govern communications using any other networking technology. | 03-28-2013 |
20130039211 | INTERFERENCE DETECTION - A computing device configured for wireless communication may effectively control adaptation to channel conditions. The device may be configured to identify and classify conditions impacting performance of a channel so that appropriate adaptations may be made. Interference may be detected by correlating received signal strength and packet errors. High received signal strength correlated to a high packet error rate may signify presence of a source of interference. Once a source of interference is detected, other criteria may be used to determine the nature of the interference so that an adaptation that is minimally disruptive of applications can be selected. Additionally, channel degradation may be predicted by monitoring trends in error rates, including Forward Error Correction rates, and adaptation may be used before packet error rates exceed an unacceptable level. | 02-14-2013 |
20100127985 | INPUT DEVICE WITH FORWARD/BACKWARD CONTROL - In a computer system having a display and a keyboard, a computer readable medium includes instructions for invoking a message hook procedure based on a mouse message indicative of a mouse event. Instructions also provide for identifying at least one focus application that has a current keyboard focus and of converting the mouse message into a command for the focus application. The command is then sent to the focus application and the mouse message is prevented from being routed to any other applications. In one embodiment, the commands include the command to page forward or backward through pages of Internet documents. In other embodiments, instead of converting the mouse message into a command, the message hook procedure displays a graphical user interface based on the focus application and the mouse message. The graphical user interface includes one or more commands that the user may select. Based on the selection made by the user, the message hook procedure sends a corresponding command to the focus application. | 05-27-2010 |
20090244062 | USING PHOTO COLLECTIONS FOR THREE DIMENSIONAL MODELING - A collection of photos and a three-dimensional reconstruction of the photos are used to construct and texture a mesh model. In one embodiment, a first digital image of a first view of a real world scene is analyzed to identify lines in the first view. Among the lines, parallel lines are identified. A three-dimensional vanishing direction in a three-dimensional space is determined based on the parallel lines and an orientation of the digital image in the three-dimensional space. A plane is automatically generated by fitting the plane to the vanishing direction. A rendering of a three-dimensional model with the plane is displayed. Three-dimensional points corresponding to features common to the photos may be used to constrain the plane. The photos may be projected onto the model to provide visual feedback when editing the plane. Furthermore, the photos may be used to texture the model. | 10-01-2009 |