USRE49418EActiveUtility
Information processing apparatus and cache control method
Est. expiryJun 2, 2031(~4.9 yrs left)· nominal 20-yr term from priority
Inventors:Takehiko Kurashige
G06F 12/0866G06F 2212/222G06F 2212/217G06F 12/0871G06F 12/0864
63
PatentIndex Score
0
Cited by
26
References
26
Claims
Abstract
According to one embodiment, an information processing apparatus includes a storage device, a volatile memory, and a processor. The storage device includes a controller, a first nonvolatile storage module, and a second nonvolatile storage module whose access speed is higher than an access speed of the first nonvolatile storage module. The processor is configured to execute an operating system and a cache driver that are loaded into the volatile memory. The cache driver uses at least part of an area in the second nonvolatile storage module as a cache for the first nonvolatile storage module.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. An information processing apparatus comprising:
a storage device comprising a controller, a first nonvolatile storage module, and a second nonvolatile storage module whose access speed is higher than an access speed of the first nonvolatile storage module; a volatile memory; and a processor configured to execute an operating system and a cache driver that are loaded into the volatile memory, the cache driver using at least part of an area in the second nonvolatile storage module as a cache for the first nonvolatile storage module.
2. The apparatus of claim 1 , wherein the cache driver is configured to store, in the volatile memory, first cache management information to manage cache data stored in the second nonvolatile storage module, and
the cache driver is configured to store, in the first nonvolatile storage module or the second nonvolatile storage module as second cache management information, the first cache management information stored in the volatile memory at shutdown of the apparatus.
3. The apparatus of claim 2 , wherein the controller is configured to execute read cache control processing and cache management information managing processing, using at least part of the area in the second nonvolatile storage module as a read cache device of the first nonvolatile storage module based on the second cache management information at startup of the apparatus.
4. The apparatus of claim 3 , wherein the cache driver is configured to issue an operation start notification to the controller after the cache driver is loaded into the volatile memory, and
the controller is configured to stop the execution of the read cache control processing and the cache management information managing processing in response to the operation start notification.
5. The apparatus of claim 3 , wherein the controller is configured to write, into the second cache management information, data to identify data for which a read access request is made at the startup of the apparatus.
6. The apparatus of claim 5 , wherein the cache driver is configured to rewrite the data which identifies the data for which the read access request is made at the startup to a condition in which the read access request is not made when a write access request is issued to the area where the data for which the read access request is once made at startup is stored.
7. The apparatus of claim 2 , wherein the controller is configured to write a first value into one of the nonvolatile storage module at normal shutdown of the apparatus, and
the cache driver is configured to judge whether the first value is written in the nonvolatile storage module after the cache driver is loaded into the volatile memory, and the cache driver is configured to rewrite the first value to a second value when the cache driver judges that the first value is written, and the cache driver is configured to invalidate the cache data in the second nonvolatile storage module when the cache driver judges that the first value is not written.
8. The apparatus of claim 1 , wherein the cache driver is configured to use at least part of the area in the second nonvolatile storage module as a cache for the first nonvolatile storage module and the second storage device when the second storage device is connected to the apparatus.
9. The apparatus of claim 1 , wherein the operating system is configured to recognize the first nonvolatile storage module and the second nonvolatile storage module as independent storage devices.
10. The apparatus of claim 1 , wherein the first nonvolatile storage module comprises a hard disk drive, and
the second nonvolatile storage module comprises a flash memory.
11. An information processing apparatus comprising:
a first nonvolatile storage device; a second nonvolatile storage device whose access speed is higher than an access speed of the first nonvolatile storage device; a volatile memory; and a processor configured to execute an operating system and a cache driver that are loaded into the volatile memory, the cache driver using at least part of an area in the second nonvolatile storage device as a cache for the first nonvolatile storage device.
12. The apparatus of claim 11 , further comprising an external additional bus,
wherein the second nonvolatile storage device is connected to the external additional bus.
13. The apparatus of claim 11 , wherein the first nonvolatile storage device comprises a controller,
the controller is configured to record, in the first nonvolatile storage device, an address of data for which a write access request is made when a value stored in a flag area of the first nonvolatile storage device is a first value, the controller is configured to rewrite the first value in the flag area to a second value when the address is not allowed to be recorded in the first nonvolatile storage device, the cache driver is configured to judge whether the first value is recorded in the flag area at start of operation of the cache driver, the cache driver is configured to invalidate all the cache data in the second nonvolatile storage device when the cache driver judges that the first value is not recorded, the cache driver is configured to invalidate the cache data in the second nonvolatile storage device in accordance with the address of the data for which the write access request is made when the cache driver judges that the first value is recorded, the cache driver is configured to rewrite the value in the flag area to the second value after the cache driver invalidates all the cache data in the second nonvolatile storage device or after the cache driver invalidates the cache data in the second nonvolatile storage device in accordance with the address of the data for which the write access request is made, and the cache driver is configured to record the first value in the flag area at shutdown of the apparatus or at the completion of processing of the operating system associated with normal removal of the second nonvolatile storage device.
14. The apparatus of claim 11 , wherein the controller is configured to record, in the first nonvolatile storage device, an address of data for which a write access request is made when an identifier recorded in an identifier storage area of the first nonvolatile storage device is a valid value,
the controller is configured to set the value in the identifier storage area to an invalid value when the address is not allowed to be recorded in the first nonvolatile storage device, the cache driver is configured to generate the identifier, the cache driver is configured to judge whether the identifier stored in the identifier storage area and the generated identifier correspond to each other at the start of operation of the cache driver, the cache driver is configured to invalidate all the cache data in the second nonvolatile storage device when the cache driver judges that the identifier storage area and the identifier do not correspond to each other, the cache driver is configured to invalidate the cache data in the second nonvolatile storage device in accordance with the address of the data for which the write access request is made when the cache driver judges that the identifier storage area and the identifier correspond to each other, the cache driver is configured to set the value in the area to an invalid value after the cache driver invalidates all the cache data in the second nonvolatile storage device or after the cache driver invalidates the cache data in the second nonvolatile storage device in accordance with the address of the data for which the write access request is made, and the cache driver is configured to record the identifier in the identifier storage area at shutdown of the apparatus or at the completion of processing of the operating system associated with normal removal of the second nonvolatile storage device.
15. The apparatus of claim 11 , wherein the first nonvolatile storage device comprises a hard disk drive, and
the second nonvolatile storage device comprises a flash memory.
16. A cache control method of an information processing apparatus which comprises a volatile memory and a storage device, the storage device comprising a controller, a first nonvolatile storage module, and a second nonvolatile storage module whose an access speed is higher than an access speed of the first nonvolatile storage module, the method comprising:
executing, by a processor which that is outside of the storage device and executes an operating system, a cache driver which that uses at least part of an area in the second nonvolatile storage module as a cache for the first nonvolatile storage module;
storing in the volatile memory, by the processor executing the cache driver, first cache management information to manage cache data cached in the second nonvolatile storage module;
at shutdown of the information processing apparatus, requesting, by the processor executing the cache driver, the controller to write the first cache management information into the second nonvolatile storage module as second cache management information; and
at boot-up of the information processing apparatus, using, by the controller referring to the second cache management information, the at least part of the area in the second nonvolatile storage module as the cache for the first nonvolatile storage module.
17. The cache control method of claim 16, wherein
the cache driver is loaded into the volatile memory.
18. The cache control method of claim 17, wherein
the operating system is loaded into the volatile memory, and the cache driver operates under the operating system.
19. The cache control method of claim 16, wherein
the operating system is configured to recognize the first nonvolatile storage module and the second nonvolatile storage module as independent storage devices.
20. The cache control method of claim 16, wherein
the first nonvolatile storage module comprises a hard disk drive, and the second nonvolatile storage module comprises a flash memory.
21. The cache control method of claim 16, wherein
the first nonvolatile storage module comprises a hard disk drive, and the second nonvolatile storage module comprises a solid state drive.
22. The cache control method of claim 16, wherein
the information processing apparatus further includes an external bus, and the second nonvolatile storage module is connected to the external bus.
23. The cache control method of claim 16, further comprising:
recording in the first cache management information, by the processor executing the cache driver, whether data is cached in the second nonvolatile storage module.
24. The cache control method of claim 16, further comprising:
at the boot-up of the information processing apparatus, after the cache driver is loaded in the volatile memory, requesting, by the processor executing the cache driver, the controller to stop management of the cache data cached in the second nonvolatile storage module.
25. The cache control method of claim 24, further comprising:
at the boot-up of the information processing apparatus, after the cache driver is loaded in the volatile memory, requesting, by the processor executing the cache driver, the controller to transfer the second cache management information from the second nonvolatile storage module.
26. The cache control method of claim 25, further comprising:
after receiving the second cache management information from the controller and storing the received second cache management information in the volatile memory as the first cache management information, starting, by the processor executing the cache driver, management of the cache data cached in the second nonvolatile storage module.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.