摘要:
The embodiments of the present invention provide a method for comparing file tree descriptions and generating a sequenced log of changes that transform an old file tree to a new file tree. According to one embodiment, the inputs to this comparator are two tree-structured descriptions called file tree indices, and the outputs are a sequence of file tree operations that can transform the old tree to the current tree. According to another embodiment, the comparator has two top level steps, where at step one it recursively goes through the old file tree index and compares each folder along with its children with that of the corresponding file tree generating a raw operation log, and at step two after the recursion is done, the comparator processes the raw operation log and optimizes certain sets of operations by transforming them into single operations.
摘要:
The embodiments of the present invention provide a method for resolving conflicting changes encountered when reconciling parallel user changes to two synchronized trees of folders and files. According to one embodiment, these conflicts are presented to the user as an interface that requires an indication from the user to the winner of the conflict. According to another embodiment, since certain conflicts cannot be resolved independently, they have to be combined and presented to the user as a single conflict. According to yet another embodiment, after the user has indicated which operations are the winners of all or some of the conflicts, the winning operations are applied to the file tree with which they are in conflict.
摘要:
Methods and systems are provided for reconciling any changes that have occurred in two file trees since they were last synchronized. A reconciler takes as input two logs of the changes made in the respective file trees. The first log resides on a client computing device, and the second log resides on a server computing device. The reconciler outputs two sets of changes that need to be applied to the respective file trees in order to synchronize them. The reconciler detects and outputs a list of changes that conflict with each other.
摘要:
A system and related method of operation for migrating the memory of a virtual machine from one NUMA node to another. Once the VM is migrated to a new node, migration of memory pages is performed while giving priority to the most utilized pages, so that access to these pages becomes local as soon as possible. Various heuristics are described to enable different implementations for different situations or scenarios.
摘要:
A method and system for executing a software application having a binary size that is larger than an available memory space in an embedded system from which the software application will execute. The software application is split into one or more initialization sequences and a main code sequence. The method includes loading (302) each initialization sequence of the one or more initialization sequences in the memory space prior to its execution, and executing (304) each initialization sequence of the one or more initialization sequences out of the memory space. Further, the method includes loading (306) the main code sequence in the memory space after the execution of the one or more initialization codes and then executing (308) the main code sequence out of the memory space.
摘要:
A system and related method of operation for migrating the memory of a virtual machine from one NUMA node to another. Once the VM is migrated to a new node, migration of memory pages is performed while giving priority to the most utilized pages, so that access to these pages becomes local as soon as possible. Various heuristics are described to enable different implementations for different situations or scenarios.
摘要:
A system and related method of operation for migrating the memory of a virtual machine from one NUMA node to another. Once the VM is migrated to a new node, migration of memory pages is performed while giving priority to the most utilized pages, so that access to these pages becomes local as soon as possible. Various heuristics are described to enable different implementations for different situations or scenarios.
摘要:
The prioritization of large memory page mapping is a function of the access bits in the L1 page table. In a first phase of operation, the number of set access bits in each of the L1 page tables is counted periodically and a current count value is calculated therefrom. During the first phase, no pages are mapped large even if identified as such. After the first phase, the current count value is used to prioritize among potential large memory pages to determine which pages to map large. The system continues to calculate the current count value even after the first phase ends. When using hardware assist, the access bits in the nested page tables are used and when using software MMU, the access bits in the shadow page tables are used for large page prioritization.
摘要:
A method and system for executing a software application having a binary size that is larger than an available memory space in an embedded system from which the software application will execute. The software application is split into one or more initialization sequences and a main code sequence. The method includes loading (302) each initialization sequence of the one or more initialization sequences in the memory space prior to its execution, and executing (304) each initialization sequence of the one or more initialization sequences out of the memory space. Further, the method includes loading (306) the main code sequence in the memory space after the execution of the one or more initialization codes and then executing (308) the main code sequence out of the memory space.