Patent application number | Description | Published |
20120192186 | Computing Platform with Resource Constraint Negotiation - Various techniques are described for resource management on a computing platform. A computing platform can receive a query message that specifies an amount of a resource proposed for allocation. The computing platform can select a selected recommendation level from a plurality of recommendation levels, based on an evaluation of a request for the amount of the resource proposed for allocation. The computing platform can generate a resource allocation recommendation that includes the selected recommendation level with respect to the amount of the resource proposed for allocation. The computing platform can send the resource allocation recommendation. | 07-26-2012 |
20140101237 | MOBILE APPLICATION MIGRATION TO CLOUD COMPUTING PLATFORM - Technology is disclosed herein for migrating at least portions of computer applications to a server. According to at least one embodiment, a computing device identifies a service component of a computer application executed at the computing device. The service component does not directly interact with a user of the computing device. The computing device transfers an instance of the service component to a server so that the service component can be executed at the server. The computing device then receives from the server a result message generated by the instance of the service component executed at the server. The computing device feeds the result message to a user interface component of the computer application via a procedure call such that the user interface component retrieves the result message as if it were generated by an instance of the service component executed at the computing device. | 04-10-2014 |
20140136611 | MOBILE PHOTO APPLICATION MIGRATION TO CLOUD COMPUTING PLATFORM - Technology is disclosed herein for migrating execution of at least a portion of a photo application to a server. According to at least one embodiment, a computing device monitors the photo application executing at the mobile device to identify a background thread and a foreground thread of the photo application, determine a current workload of the mobile device, transmit a received photo and an instance of the background thread to the server when the determined current workload exceeds a predefined threshold, receive a processed photo from the server, and provide access to the processed photo through the mobile device using the user interface generated by the foreground thread of the photo application. | 05-15-2014 |
20140136729 | OPTIMIZED VIDEO STREAMING USING CLOUD COMPUTING PLATFORM - Technology is disclosed for migrating at least portions of a video streaming application to a cloud server. The migration is based on an optimization factor of a video streaming application. The optimization factor can be computed based on consumption of computing resources of the computing device. The video streaming application is a multi-threaded application in which a background thread performs tasks that may not require user interaction and a foreground thread performs tasks that may require user interaction. A service component of the video streaming application that obtains video streaming data from video servers is one example of the background thread. A user interface component that displays the video streaming data to a user via a user interface is an example of the foreground thread. If the optimization factor of the service component is below a predefined threshold, the service component is transferred to the cloud server for further processing. | 05-15-2014 |
20140244806 | OPTIMIZED VIDEO STREAMING USING CLOUD COMPUTING PLATFORM - Technology is disclosed for migrating at least portions of a video streaming application to a cloud server. The migration is based on an optimization factor of a video streaming application. The optimization factor can be computed based on consumption of computing resources of the computing device. The video streaming application is a multi-threaded application in which a background thread performs tasks that may not require user interaction and a foreground thread performs tasks that may require user interaction. A service component of the video streaming application that obtains video streaming data from video servers is one example of the background thread. A user interface component that displays the video streaming data to a user via a user interface is an example of the foreground thread. If the optimization factor of the service component is below a predefined threshold, the service component is transferred to the cloud server for further processing. | 08-28-2014 |
20140287818 | SYNCHRONIZING AN INSTANCE OF AN APPLICATION BETWEEN MULTIPLE DEVICES - A technique and apparatus for backing up and restoring game application state across multiple devices are disclosed herein. The method includes running an instance of a game application at a first device. Based on any of various criteria, such as the proximity between the first device and a second device or a priority of synchronization, a computer makes a determination to synchronize the application state between the two devices. The computer causes the application state data, which represents an application state of the game application running on the first device, to be saved and made available to the second device, such as by saving the application state data to cloud storage. The second device receives the application state data and restores the game application state. | 09-25-2014 |
20140287827 | GAMING APPLICATION STATE TRANSFER AMONGST USER PROFILES - At least one embodiment of this disclosure includes a method of sharing application states across different user profiles. The method can include: receiving a request from a first computing device associated with a first user profile to load an application state of a game application, wherein the application state is owned by a second user profile; verifying permission for the first user profile to load the application state owned by the second user profile; configuring a sharing instance of the application state of the game application by accessing gameplay state data of the application state associated with the second user profile in a storage service; and sending the sharing instance to be loaded onto the first computing device. | 09-25-2014 |
20140287836 | LOCATION BASED GAME STATE SYNCHRONIZATION - A technique and apparatus for backing up and restoring game application state across multiple devices are disclosed herein. The method includes running an instance of a game application at a first device. Based on any of various criteria, such as the proximity between the first device and a second device, a computer makes a determination to synchronize the application state between the two devices. The computer causes the application state data, which represents an application state of the game application running on the first device, to be saved and made available to the second device, such as by saving the application state data to cloud storage. The second device receives the application state data and restores the game application state. | 09-25-2014 |
20140289189 | PRIORITIZING FILE SYNCHRONIZATION IN A DISTRIBUTED COMPUTING SYSTEM - Technology is disclosed for performing a priority synchronization of a computing device to download a selected set of data files to the computing device from a distributed backup system. Data files are downloaded to a computing device by synchronizing the computing device with a server of the distributed backup system. A priority sync downloads a subset of the data files (“priority files”) rather than all of the data files of the user, thereby minimizing the computing resources consumed to download the data files. The priority sync can select the priority files based on various criteria, including an access pattern of the data files, attributes of the data files, or attributes of the computing device. The priority sync can also download the data files not identified as priority files (“non-priority files”). While the priority files are downloaded in their original format, the non-priority files are downloaded in a downgraded format. | 09-25-2014 |
20140289190 | CLASSIFICATION OF DATA OBJECTS IN A DISTRIBUTED FILE SYSTEM BASED ON APPLICATION CREATION AND/OR ACCESS INFORMATION - Technology is disclosed for classification of data objects (e.g., files) in a distributed file system based on application creation and/or access information. In some embodiments, data objects of a user are stored across multiple computing devices associated with a user, e.g., mobile computing devices such as a tablet, a laptop, or a smartphone, and/or at server systems, e.g., cloud-based storage servers, in a distributed cloud-based storage system. The technology described tracks the applications that create or touch particular data objects in the distributed file system and classifies the data objects according to these applications resulting in various application classifications. For example, a classification engine can process data objects in the distributed file system to identify an application that created the data object and/or applications that have accessed the data object. The classification information can be saved by, for example, a cloud-based storage server. | 09-25-2014 |
20140289191 | CONTEXT SENSITIVE DISTRIBUTED FILE SYSTEM SYNCHRONIZATION AND MERGING SEMANTICS - Technology is disclosed for context sensitive synchronization of a distributed cloud-based file system across multiple devices and for providing seamless merging of conflicting data objects. In some embodiments, data objects of a user are stored across multiple computing devices associated with a user, e.g., mobile computing devices such as a tablet, a laptop, or a smartphone, and/or at server systems, e.g., cloud-based storage servers, in a distributed cloud-based storage system. The described technology intelligently synchronizes the data objects based on context and manages potential conflicts. | 09-25-2014 |
20140289194 | GAME STATE SYNCHRONIZATION AND RESTORATION ACROSS MULTIPLE DEVICES - Technology for a method for backing up and restoring game application state across multiple devices is disclosed herein. The method includes running an instance of a game application, by a distributed system, at a first electronic device, determining a backup event that occurs in the first electronic device, wherein the backup event suggests a backup of application state data and the application state data represent an application state of the game application at the backup event, and transmitting the application state data of the game application to a remote storage service, in response to the backup event. A second electronic device can retrieve the application state data from the remote storage service and restore the game application state. | 09-25-2014 |
20140289195 | CONFIGURABLE APPLICATION STATE SYNCHRONIZATION - Technology is disclosed for providing configurable synchronization mechanisms for automatic synchronization of application states across multiple devices using cloud storage. In accordance with the techniques introduced here, a method includes steps of receiving a request for supplemental application synchronization information associated with a first application on a first remote computing device. In response the request for the supplemental application synchronization information, application-specific configuration information is determined for synchronizing a state of the first application to a cloud-based storage service. The supplemental application synchronization information including the application-specific configuration information is then provided to the first remote computing device for facilitating synchronization of the state of the first application to the cloud-based storage service. | 09-25-2014 |
20140289196 | PRIORITIZING SYNCHRONIZATION OF AUDIO FILES TO AN IN-VEHICLE COMPUTING DEVICE - Technology is disclosed for synchronizing audio files from a computing device of a user to an in-vehicle computing device, such as an audio system, installed in an automobile. In one example, when the user plays an audio file on the in-vehicle computing device from the computing device, the audio file is copied at the in-vehicle computing device. After copying the currently playing audio file, the in-vehicle computing device can also copy at least some of the audio files from the computing device. The in-vehicle computing device computes a popularity score of each of the audio files based on an access pattern of the audio files, and categorizes them into priority files and low-priority files based on their popularity score. While the in-vehicle computing device copies the priority files, it copies metafiles of the low-priority files. The metafiles can include information such as a title, artist, etc. of the audio files. | 09-25-2014 |
20140289201 | ELECTRONIC DEVICE SYSTEM RESTORATION BY TAPPING MECHANISM - Technology disclosed herein includes a method for system restoration between computing devices by a tapping mechanism. A first device detects (e.g., via NFC) a second device in proximity. The first device transmits a user credential of the first device to the second device. Either directly or via a cloud storage service, the first device instructs the second device to download a copy of system data of the first device from the cloud storage service, instead of from the first device. The second device is able to restore a system state of the first device on the second device, using the user credential and the system data. | 09-25-2014 |
20140289203 | USING MOBILE DEVICES OF A USER AS AN EDGE CACHE TO STREAM VIDEO FILES - Technology is disclosed for using computing devices (“the devices”) of a user as an edge cache of a distributed backup system to stream video files. In the distributed backup system, the user can store different data files of the user at different devices of the user and/or at a server. For example, the user may store video files at one of the devices of the user (“a first device”) in addition to storing at the server. When the user requests to stream a particular video file to a particular device, the technology streams the video file to the particular device either from the server or from the first device. If the first device is in proximity to the particular device, the video file is streamed from the first device instead of from the server, thereby minimizing the latency involved in streaming the video file from the server. | 09-25-2014 |
20140289225 | PRIORITIZING DOWNLOADING OF IMAGE FILES - Technology is disclosed for downloading image files associated with a user to a computing device of the user from a distributed backup system. Each of the image files is associated with a popularity score that is determined as a function of a user-related access pattern and a group-related access pattern of the image files. While the user-related access pattern is determined based on an access of the image files by the user, the group-related access pattern is determined based on an access by a group of users. The image files are categorized into priority files and non-priority files based on the popularity score of the image files. The priority files are downloaded in an original format and the non-priority files are downloaded in one or more image qualities that minimize the consumption of computing resources in downloading the image files. | 09-25-2014 |
20140289304 | AUTOMATIC RESOURCE BALANCING FOR MULTI-DEVICE LOCATION-BASED APPLICATIONS - At least one embodiment of this disclosure includes a method of resource balancing execution of a location-based application involving multiple devices. The method can include: identifying an application executing on an operating system of a first computing device; identifying a resource type to facilitate the executing of the location-based application; identifying computing devices each having at least an available resource instance of the identified resource type, wherein the computing devices are reachable by a communication protocol of the first computing device; and selecting a target computing device to offer up a target resource instance of the resource type to the location-based application based at least partly on a comparable limitation of each available resource instance of the computing devices. | 09-25-2014 |
20140289331 | MECHANISM FOR SHARING STATES OF APPLICATIONS AND DEVICES ACROSS DIFFERENT USER PROFILES - At least one embodiment of this disclosure includes a method of sharing application states across different user profiles. The method can include: receiving a request from a first computing device associated with a first user profile to load an application state of a target application, wherein the application state is owned by a second user profile; verifying permission for the first user profile to load the application state owned by the second user profile; configuring a sharing instance of the application state of the target application by accessing application data of the application state associated with the second user profile in a storage service; and sending the sharing instance to be loaded onto the first computing device. | 09-25-2014 |
20140289333 | MECHANISM FOR SHARING STATES OF APPLICATIONS AND DEVICES ACROSS DIFFERENT USER PROFILES - At least one embodiment of this disclosure includes a method of sharing application states across different user profiles. The method can include: receiving a request from a first computing device associated with a first user profile to load an application state of a target application, wherein the application state is owned by a second user profile; verifying permission for the first user profile to load the application state owned by the second user profile; configuring a sharing instance of the application state of the target application by accessing application data of the application state associated with the second user profile in a storage service; and sending the sharing instance to be loaded onto the first computing device. | 09-25-2014 |
20140289376 | OPTIMIZING STORAGE OF DATA FILES - Disclosed are systems, methods, and machine-readable storage mediums for managing storage of a computing device associated with a user. In at least some embodiments, a method includes receiving a request to synchronize a data file from a cloud storage system from a the computing device, determining a classification of the computing device and an access pattern associated with the file, determining a storage optimization operation to be performed on the data file based on the access pattern and the classification, transmitting the file to the device subsequent to execution of the storage optimization operation, and transmitting an updated file based on an updated access pattern. The storage optimization operation can include downsampling, lossy compression, lossless compression, or a combination thereof. | 09-25-2014 |
20140289382 | UTILIZING VERSION VECTORS ACROSS SERVER AND CLIENT CHANGES TO DETERMINE DEVICE USAGE BY TYPE, APP, AND TIME OF DAY - Technology is disclosed for utilizing version vector data of computing devices to optimize performance of the computing devices and/or other computer systems that provide various services to the computing devices (“the technology”). One embodiment includes analyzing version vectors of the computing devices to determining a user's usage pattern, such as the type of computing device used, the computer applications used on the computing device, and the time of day of usage. This information about usage pattern and other information that can be determined using the version vectors can enable system optimizations on both individual user level and a group of users level. For example, on the individual user level, knowing user's usage pattern may enable automatic file synchronization between multiple devices without user intervention. On the group level, a service provider may allocate resources (servers, bandwidth, etc.) to accommodate the group's usage pattern. | 09-25-2014 |
20140289411 | DECENTRALIZED OPERATING SYSTEM - Technology is disclosed for enabling multiple computing devices used by a user to interoperate with one another. The technology enables the user to install a given application on a distributed operating system (“DCOS”) managing the multiple computing devices as a single entity. The user can then use the given application through any of the computing devices when executing the given application through the DCOS. | 09-25-2014 |
20140289413 | AUTOMATIC RESOURCE BALANCING FOR MULTI-DEVICE APPLICATIONS - At least one embodiment of this disclosure includes a method of resource balancing execution of an application involving multiple devices. The method can include: identifying an application executing on an operating system of a first computing device; identifying a resource type to facilitate the executing of the application; identifying multiple computing devices each having at least an available resource instance of the identified resource type, wherein the multiple computing devices are reachable by a communication protocol of the first computing device; and selecting a target computing device to offer up a target resource instance of the resource type to the application based at least partly on a comparable limitation of each available resource instance of the multiple computing devices. | 09-25-2014 |
20140289414 | API FOR RESOURCE DISCOVERY AND UTILIZATION - Various embodiments are disclosed for enabling multiple computing devices having a decentralized operating system to effectively monitor and manage resources across the multiple devices. In some embodiments, the systems are able to identify a set of local resources available for utilization by an application running on the decentralized operating system. A resource message identifying the set of local resources can be generated using a resource discovery and utilization application programming interface. This information can then be sent to a requestor (e.g., an application running on the decentralized operating system) which can create a resource utilization plan. | 09-25-2014 |
20140289415 | CONTINUOUS AND CONCURRENT DEVICE EXPERIENCE IN A MULTI-DEVICE ECOSYSTEM - Various embodiments generally relate to decentralized operating systems spanning multiple devices. More specifically, some embodiments relate to continuous and concurrent device experiences across the multiple devices. For example, a user may be streaming a movie through a service provided via a smart television. When the user's phone detects an incoming video call, the television can recognize that a video call is coming in and ask the user if the user wants to answer the call. If the user responds in the affirmative, the television can pause the streaming video from the service provide allowing the user to answer their phone. In some cases, the television can be used as the display screen to display the video call while the local phone resources (e.g., video camera) can be used as the recording device. | 09-25-2014 |
20140289417 | AUTOMATIC RESOURCE BALANCING FOR MULTI-DEVICE APPLICATIONS - At least one embodiment of this disclosure includes a method of resource balancing execution of an application involving multiple devices. The method can include: identifying an application executing on an operating system of a first computing device; identifying a resource type to facilitate the executing of the application; identifying multiple computing devices each having at least an available resource instance of the identified resource type, wherein the multiple computing devices are reachable by a communication protocol of the first computing device; and selecting a target computing device to offer up a target resource instance of the resource type to the application based at least partly on a comparable limitation of each available resource instance of the multiple computing devices. | 09-25-2014 |
20140289426 | STORAGE OPTIMIZATION IN COMPUTING DEVICES - Disclosed are systems, methods, and machine-readable storage mediums for selectively performing storage optimization processes in a computing device. In at least some embodiments, a method includes monitoring access patterns in association with data of one or more files accessed by a user of the computing device, determining a classification of the computing device, and utilizing the user access patterns and the device classification in determining execution of a storage optimization process based on a storage optimization policy. The storage optimization policy can specify downsampling, lossy compression, lossless compression, or a combination thereof to be applied to the files based on thresholds associated with the user access patterns and/or the device classification. Utilization of the storage optimization policy can enable the computing device to have an infinite local storage capacity. | 09-25-2014 |
20140289717 | DETECTING SERIALIZATION SCHEME USED IN SOFTWARE APPLICATIONS - Technology is disclosed for determining a serialization scheme used in serializing a software object by an application (“the technology”). A source application can serialize the object using multiple serialization schemes. In order for another application to deserialize the object serialized by the source application, the application may have to know the serialization scheme used in serializing the object. The technology can analyze an intermediate code, e.g., bytecode, of the source application to determine the serialization scheme used by the source application. The technology compares a portion of the code of the source application that serializes the objects with multiple serialization scheme templates having code for known serialization schemes and determines the serialization scheme used by the source application based on a matching serialization scheme template. After the serialization scheme is identified, the application can reconstruct the object from the serialized object using the identified serialization scheme. | 09-25-2014 |
20140289824 | SHARING AUTHENTICATION PROFILES BETWEEN A GROUP OF USER DEVICES - Technology is disclosed for sharing an authentication profile of a user between a group of user devices for accessing an access restricted computing environment (“the technology”). The access restricted computing environment can require the user to input authentication information, such as a username, password, or answers to challenge questions, to authenticate the user. For example, to access a wireless network on a first user device, a user may have to input a password for the wireless network. To access the same wireless network on a second user device, the user may have to input the password again on the second user device. The technology facilitates the user to obtain the authentication information required to access the wireless network from another user device, e.g., a device from which the user has accessed the wireless network previously. This can eliminate the need for the user to manually input the authentication information repeatedly. | 09-25-2014 |
20140289825 | CONNECTING TO WI-FI NETWORK BASED OFF APPROVAL FROM ANOTHER USER DEVICE - Technology is disclosed for sharing an authentication profile for accessing a Wi-Fi network between multiple devices. To access a particular Wi-Fi network on a first device and a second device, authentication information, e.g., a password for the Wi-Fi network, may have to be input on both the devices. In some embodiments, the technology facilitates obtaining an approval for accessing the Wi-Fi network on the second device from the first device. Upon receiving a request from a user of the second device to access the Wi-Fi network on the second device, the second device requests if any of the devices, e.g., devices in proximity, can approve the access request. A notification is displayed on the first device regarding the access request. The user associated with first device can then approve the access request, which causes authentication information for accessing the Wi-Fi network to be transmitted to the second device. | 09-25-2014 |
Patent application number | Description | Published |
20090029555 | Multi-Step selective etching for cross-point memory - Multi-step selective etching. Etching an unmasked region associated with each layer of a plurality of layers, the plurality of layers comprising a stack, wherein the unmasked region of each of the plurality of layers is etched while exposed to a temperature, a pressure, a vacuum, using a plurality of etchants, wherein at least one of the plurality of etchants comprises an inert gas and oxygen, wherein the etchant oxidizes the at least one layer that can be oxidized such that the etching stops, the plurality of etchants leaving substantially unaffected a masked region associated with each layer of the plurality of layers, wherein two or more of the plurality of layers comprises a memory stack, and preventing corrosion of at least one of the plurality of layers comprising a conductive metal oxide by supplying oxygen to the stack after etching the unmasked region without breaking the vacuum. | 01-29-2009 |
20100155723 | Memory stack cladding - Examples of memory stack cladding are described, including a memory stack, comprising a first electrode formed on a substrate, a conductive metal oxide layer deposited on the first electrode, a tunnel barrier layer comprising an insulating metal oxide, the tunnel barrier layer being deposited on the conductive metal oxide layer, a second electrode formed on the tunnel barrier layer, a glue layer deposited on the second electrode, a mask layer deposited on the glue layer, and a cladding layer deposited substantially over one or more surfaces of the memory stack, the cladding layer being configured to provide a barrier to prevent one or more hydrogen ions from diffusing through the one or more surfaces of the memory stack. The memory stack may define a two-terminal non-volatile memory cell operative to store data as a plurality of conductivity profiles that can be non-destructively determined by applying a read voltage. | 06-24-2010 |
20100155953 | Conductive oxide electrodes - Conductive oxide electrodes are described, including a bi-layer barrier structure electrically coupled with an adhesion layer, and an electrode layer, wherein the bi-layer barrier structure includes a first barrier layer electrically coupled with the adhesion layer, and a second barrier layer electrically coupled with the first barrier layer and to the electrode layer. The conductive oxide electrodes and their associated layers can be fabricated BEOL above a substrate that includes active circuitry fabricated FEOL and electrically coupled with the conductive oxide electrodes through an interconnect structure that can also be fabricated FEOL. The conductive oxide electrodes can be used to electrically couple a plurality of non-volatile re-writeable memory cells with conductive array lines in a two-terminal cross-point memory array fabricated BEOL over the substrate and its active circuitry, the active circuitry configured to perform data operations on the memory array. | 06-24-2010 |
20100159641 | Memory cell formation using ion implant isolated conductive metal oxide - Memory cell formation using ion implant isolated conductive metal oxide is disclosed, including forming a bottom electrode below unetched conductive metal oxide layer(s), forming the unetched conductive metal oxide layer(s) including depositing at least one layer of a conductive metal oxide (CMO) material (e.g., PrCaMnO | 06-24-2010 |
20110204019 | Method of making a planar electrode - Chemical mechanical polishing (CMP) of thin film materials using a slurry including a surfactant chemical operative to polish high portions of the film being planarized while preventing the polishing of low portions of the film is disclosed. The low portions can be in a step reduction region of a deposited film. The CMP process can be used for form a planar surface upon which subsequent thin-film layers can be deposited, such as an electrically conductive material for an electrode. The subsequently deposited thin-film layers are substantially planar as deposited without having to use CMP. The resulting thin-film layers are planar and have a uniform cross-sectional thickness that can be beneficial for layers of memory material for a memory cell. The processing can be performed back-end-of-the-line (BEOL) on a previously front-end-of-the-line (FEOL) processed substrate (e.g., silicon wafer) and the BEOL process can be used to fabricate two-terminal non-volatile cross-point memory arrays. | 08-25-2011 |
20110315943 | Memory Device Using A Dual Layer Conductive Metal Oxide Structure - Memory cell formation using ion implant isolated conductive metal oxide is disclosed, including forming a bottom electrode below un-etched conductive metal oxide layer(s), forming the un-etched conductive metal oxide layer(s) including depositing at least one layer of a conductive metal oxide (CMO) material (e.g., PrCaMnO | 12-29-2011 |
20110315948 | Memory Device Using Ion Implant Isolated Conductive Metal Oxide - Memory cell formation using ion implant isolated conductive metal oxide is disclosed, including forming a bottom electrode below unetched conductive metal oxide layer(s), forming the unetched conductive metal oxide layer(s) including depositing at least one layer of a conductive metal oxide (CMO) material (e.g., PrCaMnO | 12-29-2011 |