摘要:
Hash tables are used to index an internal database--one that resides in primary memory. The hash tables are segmented into a sequence of segments that increase geometrically in size. To expand a table, an additional segment is allocated which is twice as large as the previously allocated segment. This most recently allocated segment is referred to as an expansion segment, while the previously existing segments are referred to as base segments. As records are added, entries from the base segments are gradually split, and some of the records referenced by these entries are assigned to new entries in the expansion segment. This distributes address recalculations over time, while also using memory quite efficiently.
摘要:
A computer system and method for aligning blocks within source program image in accordance with alignment constraints. The source program image is divided in pages. The alignment system receives an indication of which of the blocks are accessed during each time interval while the source program image is executed. The alignment system determines from the received indications which of the pages are accessed during each time interval. The alignment system then identifies the first block of the source program image that has an alignment constraint and repeats the following until all blocks have been aligned. The alignment system identifies a group of contiguous blocks that are adjacent to the identified block such that the identified blocks can be rearranged without increasing the number of pages that are accessed during each time interval. The alignment system then determines an arrangement of the blocks that tends to minimize the amount of padding that is needed to satisfy the alignment constraints. The alignment system then stores the rearranged blocks along with the padding in a destination program image.
摘要:
Techniques for providing fast, non-write-cycle-limited persistent memory within secure containers, while maintaining the security of the secure containers, are described herein. The secure containers may reside within respective computing devices (e.g., desktop computers, laptop computers, etc.) and may include both volatile storage (e.g., Random Access Memory (RAM), etc.) and non-volatile storage (NVRAM, etc.). In addition, the secure containers may couple to auxiliary power supplies that are located externally thereto and that power the secure containers at least temporarily in the event of a power failure. These auxiliary power supplies may be implemented as short-term power sources, such as capacitors, batteries, or any other suitable power supplies.
摘要:
The subject disclosure relates to a method and apparatus for routing data in a network-based computer game via proxy computers. The method and system includes a set of techniques that utilizes the proxy computers to thwart traffic analysis in high-speed games while continuing to satisfy the games' latency requirements. The method and apparatus facilitates thwarting multiple classes of traffic analysis, including inspection of unencrypted header fields, observation of packet size, correlation of packet timing, and collusion among players. A matchmaking system for matching players in a network-based computer game in a manner that resists traffic analysis is also provided.
摘要:
In a participatory system, a reward is distributed to participants based on their contributions to the system and the contributions of direct and indirect referrals of the participant (descendant referrals). A convex function is applied to the effective contribution of each participant to determine the weighted contribution of the participant, and the participant's reward is based on the participant's weighted contribution less the weighted contributions of child participants referred by the participant.
摘要:
A system is disclosed that transforms offline maps into interactive online maps. In the system, geo-coordinate relationships are determined between geo-coordinates on a source map and geo-coordinates on an online reference map. An image of the source map is transformed to form an image of a modified source map having geo-coordinates that substantially align with corresponding geo-coordinates on the reference map. Modified source tiles are formed with the image of the modified source map and displayed on a portion of the reference map.
摘要:
Techniques for facilitating secure application interoperation via user interface (UI) gestures in computing devices that strictly isolate applications operating thereon are described herein. For instance, applications may define one or more specific UI gestures that, when executed by the user, express that the user desires for the computing device to allow for an instance of directed, ephemeral, by-value communication between two isolated applications. In some implementations, the gesture is an atomic gesture, such as a drag-and-drop operation. That is, the gesture is one that the user completes continuously and without interruption.
摘要:
The described implementations relate to collaborative speed determination in distributed systems. One method estimates upload speeds of a plurality of hosts. The method sends a first bandwidth probe from a first host to a second host. The method receives, at the first host, a second bandwidth probe sent from the second host. The method determines which of the first and second bandwidth probes was relatively slower. The method designates either of the first or second hosts that sent the relatively slower bandwidth probe as a loser and takes a speed of the bandwidth probe of the loser as a first estimate of the loser's upload speed.
摘要:
Techniques for enabling client computing devices to leverage remote server pools for increasing the effectiveness of applications stored on the client computing device are described herein. In some instances, the server pools comprise a “cloud”, “cluster” or “data center” that comprises hundreds or thousands of servers connected together by a network that has an extremely low latency and high bandwidth relative to the network through which the client computing device connects to the server pool. The client computing device may request that the server pool perform a certain task for an application whose canonical state resides on the client. After computation of a result of the task, a server of the server pool then provides the result to the client. By doing so, the techniques dramatically increase the amount of resources working on the request of the client and, hence, dramatically increase the speed and effectiveness of the client-side application.
摘要:
Techniques for leveraging legacy code to deploy native-code desktop applications over a network (e.g., the Web) are described herein. These techniques include executing an application written in native code within a memory region that hardware of a computing device enforces. For instance, page-protection hardware (e.g., a memory management unit) or segmentation hardware may protect this region of memory in which the application executes. The techniques may also provide a narrow system call interface out of this memory region by dynamically enforcing system calls made by the application. Furthermore, these techniques may enable a browser of the computing device to function as an operating system for the native-code application. These techniques thus allow for execution of native-code applications on a browser of a computing device and, hence, over the Web in a resource-efficient manner and without sacrificing security of the computing device.