Method and apparatus for grouping asynchronous recording operations
First Claim
1. In a peripheral data storage system having host connection means for connecting the data storage system to a host processor and having a cache and a backing store, means for transferring data signals between said cache store and said backing store, said cache and backing store each having a plurality of addressable data storage areas for storing data, directory means connected to the cache store for enabling the addressing of the cache store areas using backing store addresses;
- the improvement comprising;
first means for maintaining a control list having an entry for each allocated one of said addressable data storage areas in said cache storing data allocated from said backing store, each said entry including a first indicator indicating that data stored in said area associated with said entry has been modified from the corresponding data stored in said backing store, and a second indicator, indicating a relationship of data stored in said area associated with said entry to other data stored in said cache;
first scan means coupled to said first means for scanning a first portion of said control list to identify a first one of said addressable data storage areas in said cache store storing modified data;
second scan means coupled to said first means and to said first scan means for scanning said control list from said first one of said addressable data storage areas in said first portion of said control list through a second portion of said control list to identify further ones of said addressable data storage areas in said cache having a predetermined relationship to data stored in said first one of said addressable data storage areas; and
means coupled to said means for transferring data signals between said cache and said backing store and to said first and second scan means to link addressable data storage areas in cache identified as having said predetermined relationship as data to be transferred as a group of data blocks from said cache to said backing store.
1 Assignment
0 Petitions
Accused Products
Abstract
The disclosure relates to demotion of data to a backing store (disk storage apparatus--DASD) from a random access cache in a peripheral data storage system. A cache replacement control list, such as a least recently used (LRU) list is scanned in a soon-to-be replaced first portion (portion closest to LRU entry) to identify first data to be demoted. Then the control list is scanned in first and second portions to identify further data to be demoted with the first data as a single group of data. In DASD, such data is all storable in the same cylinder of the DASD.
149 Citations
15 Claims
-
1. In a peripheral data storage system having host connection means for connecting the data storage system to a host processor and having a cache and a backing store, means for transferring data signals between said cache store and said backing store, said cache and backing store each having a plurality of addressable data storage areas for storing data, directory means connected to the cache store for enabling the addressing of the cache store areas using backing store addresses;
-
the improvement comprising; first means for maintaining a control list having an entry for each allocated one of said addressable data storage areas in said cache storing data allocated from said backing store, each said entry including a first indicator indicating that data stored in said area associated with said entry has been modified from the corresponding data stored in said backing store, and a second indicator, indicating a relationship of data stored in said area associated with said entry to other data stored in said cache; first scan means coupled to said first means for scanning a first portion of said control list to identify a first one of said addressable data storage areas in said cache store storing modified data; second scan means coupled to said first means and to said first scan means for scanning said control list from said first one of said addressable data storage areas in said first portion of said control list through a second portion of said control list to identify further ones of said addressable data storage areas in said cache having a predetermined relationship to data stored in said first one of said addressable data storage areas; and means coupled to said means for transferring data signals between said cache and said backing store and to said first and second scan means to link addressable data storage areas in cache identified as having said predetermined relationship as data to be transferred as a group of data blocks from said cache to said backing store. - View Dependent Claims (2, 3, 4, 5)
-
-
6. The machine-implemented method of managing data storage space allocations for a cache having a plurality of data storage spaces attached to a host and to a backing store having a plurality of addressable data storage elements, a directory of said data storage spaces for indicating said space allocations with respect to addresses of said data storage elements and whether or not such allocated data storage spaces respectably are storing data which is modified from data stored in related ones of said data storage elements, control list means for indicating and listing accesses to said data storage elements in an order of priority for replacement of data stored in said cache data storage spaces in accordance to predetermined usage characteristics of said stored data;
-
comprising the steps of; establishing a first threshold in said control list means representing a first predetermined number of data storage space allocations listed in said control list means for replacement from a data storage space indicated in said control list means as the data storage space containing data most likely to be replaced; establishing a second threshold in said control list means representing a second predetermined number of indicated data storage space allocations listed in said control list means, said second predetermined number being larger than said first predetermined number; scanning said control list means beginning at said given most likely to be replaced indicated data storage space and proceeding towards that established first threshold; identifying during said scan a data storage space storing modified data;
said modified data having predetermined data storage characteristics;listing data storage spaces identified as storing modified data with a first encountered one of said indicated data storage spaces during said scan of data storage space, storing modified data defined as a first identified one of said data storage spaces; continuing said scan from said first identified one of said spaces storing nodified data to said second threshold for further identifying additional ones of said data storage spaces storing nodified data having said predetermined data storage characteristics; adding said additional ones of said indicated data storage spaces to said list; and transferring data stored in said data storage spaces in said list from said cache to said backing store as a serial stream of data. - View Dependent Claims (7, 8, 9)
-
-
10. A peripheral data-storage system having a plurality of addressable direct-access data-storage devices (DASD), each of said DASDs having a plurality of addressable cylinders wherein each cylinder has a plurality of addressable data-storing memory segments, high-speed buffer store having a plurality of buffer segments, each said buffer segment having a data-storing capacity equal to the data-storing capacity of said memory segments, connection means for attaching the system to a host;
-
the improvement including in combination; receiving means for receiving peripheral commands from host connection means for fetching data from said DASDs; a digital processor connected to said connection means and to said receiving means and having a control store for storing programs of instructions for operating the data-storage system; signal means connected to said connection means, digital processor, said DASDs and said buffer for transferring signals between said DASDs, said buffer and said host connection means; first program means in said control store for enabling said processor to operate the storage system to transfer one segment of data from said DASDs to said high-speed buffer store in response to a one of said received peripheral commands; second program means in said control store for enabling said processor via said first program means to maintain a control list of said buffer segments in an order reflecting host connection means accesses to data stored in the respective buffer segments and to maintain a list of said buffer segments free for allocation for data storage; and third program means in said control store for enabling said processor to first scan said control list for data stored in one of said buffer segments to be transferred from said buffer store to one of said DASDs and secondly to scan said control list for additional data stored in said buffer store having a predetermined DASD address relationship to said one buffer segment DASD address for grouping said one buffer segment DASD address and additional data for transfer to one of said DASDs under control of said first program means and including means to activate said first program means upon completion of said second scan wherein said third program means is coupled to said second program means to transfer identification signals for said one and additional buffer store segments from said control list to said free list. - View Dependent Claims (11)
-
-
12. A hierarchical data-storage system having connection means for connecting the data-storage system to a host processor, the system including a high-speed data cache and a relatively slow-speed backing store, data-transfer paths coupled to said cache and backing store for transferring data between addressable storage locations in said data cache and said backing store, cache replacement control means coupled to said data-transfer paths and said cache for being responsive to the contents of the storage locations in said cache to select particular items of data for replacement in accordance with predetermined replacement criteria, and data-transfer control means coupled to said data-transfer paths and said backing store for identifying locations in said backing store to receive data items so selected;
-
characterized in that; said data-transfer control means grouping said selected data items with that data accessable through one of said data-transfer paths and to activating such data-transfer paths on a group-by-group basis, each group consisting of data items whose transfer involves the one said data-transfer path. - View Dependent Claims (13, 14, 15)
-
Specification