US2012042123A1PendingUtilityA1

Intelligent cache management

Assignee: KOLOVSON CURTPriority: Jan 27, 2005Filed: Oct 21, 2011Published: Feb 16, 2012
Est. expiryJan 27, 2025(expired)· nominal 20-yr term from priority
Inventors:Curt Kolovson
Y02D10/00G06F 2212/6028G06F 12/0866G06F 12/126G06F 12/0862G06F 12/0804
47
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

An exemplary storage network, storage controller, and methods of operation are disclosed. In one embodiment, a method of managing cache memory in a storage controller comprises receiving, at the storage controller, a cache hint generated by an application executing on a remote processor, wherein the cache hint identifies a memory block managed by the storage controller, and managing a cache memory operation for data associated with the memory block in response to the cache hint received by the storage controller.

Claims

exact text as granted — not AI-modified
1 - 28 . (canceled) 
     
     
         29 . A storage device, comprising:
 at least one disk drive;   a controller to manage data input/output operations between the disk drive and a remote processor; and   a cache memory module communicatively connected to the controller,   wherein the controller is configured to receive a Pin cache hint generated by an application executing on a remote computing device and the controller holds one or more data blocks identified in the Pin cache hint based on the cache hint received by the controller.   
     
     
         30 . The storage device of  claim 29 , wherein the controller holds one or more data blocks identified in the Pin cache hint until an Unpin cache hint identifying one or more data blocks identified in the Pin cache hint is received. 
     
     
         31 . The storage device of  claim 29 , wherein the controller holds the one or more data blocks identified in the Pin cache hint until a time threshold expires. 
     
     
         32 . The storage device of  claim 29 , wherein the controller holds the one or more data blocks identified in the Pin cache hint until a capacity threshold is reached. 
     
     
         33 . The storage device of  claim 29 , wherein the controller receives the Pin cache hint in a header of a data operation request. 
     
     
         34 . The storage device of  claim 29 , wherein the remote computing device comprises a plurality of modules in a software stack executing on the remote computing device wherein the Pin cache hint is generated by a first module in the software stack and analyzed by a second module in the program stack to determine whether the Pin cache hint conflicts with the second module. 
     
     
         35 . The storage device of  claim 34 , wherein the plurality of modules of the program stack comprise at least two of an application software, a database management software, a file management system, and an operating system. 
     
     
         36 . The storage device of  claim 29 , wherein the controller is configured to acknowledge completion of a cache operation to the remote computing device. 
     
     
         37 . A storage device, comprising:
 at least one disk drive;   a controller to manage data input/output operations between the disk drive and a remote processor; and   a cache memory module communicatively connected to the controller,   wherein the controller is configured to receive a Working Set cache hint generated by an application executing on a remote computing device, the Working Set cache hint identifying one or more data blocks; and   the controller caches the one or more data blocks identified in the Working Set cache hint together as a group.   
     
     
         38 . The storage device of  claim 37 , wherein the controller receives the Working Set cache hint in a header of a data operation request. 
     
     
         39 . The storage device of  claim 37 , wherein the remote computing device comprises a plurality of modules in a software stack executing on the remote computing device wherein the Working Set cache hint is generated by a first module in the software stack and analyzed by a second module in the program stack to determine whether the Working Set cache hint conflicts with the second module. 
     
     
         40 . The storage device of  claim 39 , wherein the plurality of modules of the program stack comprise at least two of an application software, a database management software, a file management system, and an operating system. 
     
     
         41 . The storage device of  claim 37 , wherein the controller is configured to acknowledge completion of a cache operation to the remote computing device. 
     
     
         42 . A storage device, comprising:
 at least one disk drive;   a controller to manage data input/output operations between the disk drive and a remote processor, wherein the controller maintains a queue of data blocks for executing cache operations; and   a cache memory module communicatively connected to the controller;   wherein the controller is configured to receive a Priority cache hint that associates a priority level for cache operations associated with one or more data blocks identified in the cache hint, and the storage controller organizes data blocks in the queue in accordance with the priority level.   
     
     
         43 . The storage device of  claim 42 , wherein the Priority cache hint includes a priority parameter associated with a data block identified in the cache hint, and the data block is de-staged to a permanent storage media of the storage device in accordance with the priority parameter associated with the data block. 
     
     
         44 . The storage device of  claim 43 , wherein the controller maintains a de-staging queue comprising the data block, and the data block is positioned in the de-staging queue in accordance with the priority parameter. 
     
     
         45 . The storage device of  claim 42 , wherein the controller receives the Priority cache hint in a header of a data operation request. 
     
     
         46 . The storage device of  claim 42 , wherein the remote computing device comprises a plurality of modules in a software stack executing on the remote computing device wherein the Priority cache hint is generated by a first module in the software stack and analyzed by a second module in the program stack to determine whether the Priority cache hint conflicts with the second module. 
     
     
         47 . The storage device of  claim 46 , wherein the plurality of modules of the program stack comprise at least two of an application software, a database management software, a file management system, and an operating system. 
     
     
         48 . The storage device of  claim 42 , wherein the controller is configured to acknowledge completion of a cache operation to the remote computing device.

Join the waitlist — get patent alerts

Track US2012042123A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.