Determining a criterion for movement of data from a primary cache to a secondary cache
First Claim
Patent Images
1. An apparatus comprising:
- a non-volatile main storage;
a volatile, primary cache mirroring a first portion of the main storage;
a non-volatile secondary cache mirroring a second portion of the main storage, wherein the secondary cache is used for storing read data only; and
a processor configured to;
cause a new segment of data to be copied to the primary cache in response to a data read access request from a host;
determine a criterion for copying of data from the primary cache to the secondary cache, wherein the criterion gives segments having addresses not yet selected for reading by the host higher priority than segments having addresses selected for reading by the host; and
in response to the new segment of data being copied into the primary cache, copy a selected segment of data from the primary cache to the secondary cache in response to the selected segment satisfying the criterion and where the criterion prevents the copying of the selected segment based on the selected segment containing write data.
1 Assignment
0 Petitions
Accused Products
Abstract
A new segment of data is copied to a volatile, primary cache based on a host data read access request. The primary cache mirrors a first portion of a non-volatile main storage criterion is determined for movement of data from the primary cache to a non-volatile, secondary cache that mirrors a second portion of the main storage. The criterion gives higher priority to segments having addresses not yet selected for reading by the host. In response to the new segment of data being copied to the primary cache, a selected segment of data is copied from the primary cache to the secondary cache in response to the selected segment satisfying the criterion.
-
Citations
16 Claims
-
1. An apparatus comprising:
-
a non-volatile main storage; a volatile, primary cache mirroring a first portion of the main storage; a non-volatile secondary cache mirroring a second portion of the main storage, wherein the secondary cache is used for storing read data only; and a processor configured to; cause a new segment of data to be copied to the primary cache in response to a data read access request from a host; determine a criterion for copying of data from the primary cache to the secondary cache, wherein the criterion gives segments having addresses not yet selected for reading by the host higher priority than segments having addresses selected for reading by the host; and in response to the new segment of data being copied into the primary cache, copy a selected segment of data from the primary cache to the secondary cache in response to the selected segment satisfying the criterion and where the criterion prevents the copying of the selected segment based on the selected segment containing write data. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
causing a new segment of data to be copied to a volatile, primary cache based on a data read access request from a host, the primary cache mirroring a first portion of a non-volatile main storage; determining a criterion for copying of data from the primary cache to a non-volatile, secondary cache that mirrors a second portion of the main storage and is used for storing read data only, wherein the criterion gives segments having addresses not yet selected for reading by the host higher priority than segments having addresses selected for reading by the host; and in response to the new segment of data being copied to the primary cache, causing a selected segment of data to be copied from the primary cache to the secondary cache in response to the selected segment satisfying the criterion and wherein the criterion prevents the copying of the selected segment in response to the selected segment containing write data. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A method comprising:
-
defining a list that references segments of a primary cache eligible for copying to a secondary cache, the primary and secondary caches respectively mirroring first and second portions of a non-volatile main storage and wherein the secondary cache stores read data only; adding candidate segments from the primary cache to the list in response to logical block address ranges of the candidate segments satisfying an address criterion of the secondary cache wherein the candidate segments are added to the list further based on the candidate segments not including write data; and in response to new data being added to the primary cache, copying at least one of the candidate segments to the secondary cache. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification