Control logic for memory modification tracking with hierarchical dirty indicators
AssigneeSun Microsystems, Inc.
InventorsPaul Jeffrey Garnett, Jeremy Graham Harris
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsPaul Jeffrey Garnett, Jeremy Graham Harris
Estimating the term…
A dirty memory that includes dirty indicators settable to indicate dirtied pages of memory is provided with control logic operable automatically to interrogate the dirty memory to identify dirty indicators that are set. Implementing the control of the dirty RAM in hardware or firmware enables interrogation of the dirty RAM to identify set dirty indicators in a rapid and reliable manner. The control logic can advantageously be operable to interrogate the dirty memory word-by-word to determine words including a set bit. A comparator can be provided for comparing bits of a word to a predetermined value to determine where a dirty indicator is set. The comparison could be performed serially for bits within a word, but it is advantageously done in parallel for the bits of the word. For example, by using associative memory, the interrogation of the dirty memory could be effected associatively in parallel to determine words including a word with a set bit. Address logic enables a determination of a memory page address corresponding to a set dirty indicator. This can be effected by computing the page address given a known dirty bit location and a known mapping between the dirty memory and main memory.
Dirty memory control logic for a computer system, the dirty memory comprising a lower level that includes groups of dirty indicators, the dirty indicators being grouped in words, each dirty indicator being settable to a given state indicative that a block of memory associated therewith has been dirtied, and at least one higher level that includes dirty group indicators grouped in words and each settable to a predetermined state indicative that a group of the lower level associated therewith has at least one dirty indicator in a state indicative that a block of memory associated therewith has been dirtied, the control logic comprising hardware control logic operable to interrogate the dirty memory word-by-word to identify a word with a set bit and the control logic being operable to output an indication of the dirty indicators that are set.
A dirty memory and dirty memory control logic, the dirty memory comprising a lower level that includes groups of dirty indicators, the dirty indicators being grouped in words, each dirty indicator being settable to a given state indicative that a block of memory associated therewith has been dirtied, and at least one higher level that includes dirty group indicators grouped in words and each settable to a predetermined state indicative that a group of the lower level associated therewith has at least one dirty indicator in a state indicative that a block of memory associated therewith has been dirtied, the control logic comprising hardware control logic operable to interrogate the dirty memory word-by-word to identify a word with a set bit and the control logic being operable to output an indication of the dirty indicators that are set.
A computer system comprising a dirty memory, dirty memory control logic, and at least one processing set that includes main memory, the dirty memory comprising a lower level that includes groups of dirty indicators, the dirty indicators being grouped in words, each dirty indicator being settable to a given state indicative that a block of memory associated therewith has been dirtied, and at least one higher level that includes dirty group indicators grouped in words and each settable to a predetermined state indicative that a group of the lower level associated therewith has at least one dirty indicator in a state indicative that a block of memory associated therewith has at least one dirty indicator in a state indicative that a block of memory associated therewith has been dirtied, the control logic comprising hardware control logic operable to interrogate the dirty memory word-by-word to identify a word with a set bit and the control logic being operable to output an indication of the dirty indicators that are set.
A method of managing reinstatement of an equivalent memory state in the main memory of a plurality of processing sets of a fault tolerant computer following a lock step error, the method including the performance of at least one cycle of copying any block of memory that has been dirtied from a first processing set to each other processing set, each cycle including:
Dependencies are inferred from the claim text.