CN106469121B - Memory allocation method and device - Google Patents

Memory allocation method and device Download PDF

Info

Publication number
CN106469121B
CN106469121B CN201610813881.8A CN201610813881A CN106469121B CN 106469121 B CN106469121 B CN 106469121B CN 201610813881 A CN201610813881 A CN 201610813881A CN 106469121 B CN106469121 B CN 106469121B
Authority
CN
China
Prior art keywords
slab
class
objects
memory
source
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610813881.8A
Other languages
Chinese (zh)
Other versions
CN106469121A (en
Inventor
罗秋明
郭超
张义军
刘刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen University
Original Assignee
Shenzhen University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen University filed Critical Shenzhen University
Priority to CN201610813881.8A priority Critical patent/CN106469121B/en
Publication of CN106469121A publication Critical patent/CN106469121A/en
Application granted granted Critical
Publication of CN106469121B publication Critical patent/CN106469121B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

the invention discloses a method and a device for memory allocation, which are characterized in that the information of each slab class is obtained; calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information; selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within a period of time as a target slab; clearing and recycling one of the slab memories in the source slab classes, then redistributing the memory to the target slab, proposing a minimum influence factor selection algorithm, comprehensively considering the characteristics of stored data under the compression condition, and reasonably selecting proper source slab classes and target slab for recycling and redistributing; and adjusting a memory allocation mechanism of Memcached, effectively dividing the region according to the empty and full storage states of the slab, and starting to recycle from the slab with the idle tail when the memory is needed.

Description

memory allocation method and device
Technical Field
the embodiment of the invention relates to the technical field of memory allocation, in particular to a memory allocation method and device.
Background
And the Memcached allocates the memory to the corresponding slab class according to the size of the request object. Once all the available memories in the Memcached are allocated, when the request distribution changes, the problem of memory reallocation occurs, which is referred to as Calcification (Calcification), that is, the number proportion of all the slab classes in the Memcached is already fixed, and cannot be dynamically adjusted according to the changed external request. If the size distribution of objects that Memcached needs to store does not change over time, then the calcification problem will not affect the performance of Memcached, because the basic swap-out strategy already implemented in Memcached can guarantee well that hot objects are stored. However, if the size distribution of the storage objects changes at any time, the calcification problem has a large influence on the hit rate of Memcached.
A straightforward approach to solve the problem of Memcached calcification is to allow Memcached to reclaim and re-allocate already allocated memory to the required slab class. Data compression exacerbates the calcification problem of Memcached. When the Memcached starts the data compression function, not only the space left in the compressed slab class cannot be returned to the Memcached, but also a large pressure is applied to the compressed slab class. In Memcached to which a data compression function is added, although data compression brings different performance improvement effects to Memcached, the calcification problem of Memcached is also aggravated.
Disclosure of Invention
the embodiment of the invention aims to provide a memory allocation method and device, aiming at solving the problem of calcification in Memcached added with a data compression function.
to achieve the purpose, the embodiment of the invention adopts the following technical scheme:
In a first aspect, a method for memory allocation includes:
Acquiring information of each slab class, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of exchanged objects;
calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information;
selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within a period of time as a target slab;
and clearing and recycling one slab memory in the source slab class and then redistributing the cleared slab memory to the target slab.
preferably, the calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information includes:
Wherein the used _ chunks represents the number of used objects in the specific slab class, the request represents the number of requests in the specific slab class in a period of time, and the total _ chunks represents the total number of objects in the specific slab class.
Preferably, the clearing and recycling one of the slab memories in the source slab class and then reallocating the cleared slab memory to the destination slab comprises:
Obtaining the slab with the largest amount of free space in the source slab class;
And emptying the slab memory with the largest quantity of free space in the source slab class, and recovering and redistributing the emptied memory to the target slab.
Preferably, the method further comprises:
and (3) the used space and the unused space in Memcached are treated differently, the used area is concentrated at the front end of the slab, and the unused area is concentrated at the rear end of the slab.
preferably, the method further comprises:
And setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start for identifying a first storage object in the slab, a pointer slab _ end for identifying a last storage object in the slab, and a pointer cur _ free for identifying a currently available storage object in the slab.
in a second aspect, an apparatus for memory allocation, the apparatus comprising:
The system comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring information of each slab class, and the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects;
The selection module is used for calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information;
the selecting module is used for selecting the slab class with the smallest influence factor as a source slab class and setting the slab with the largest quantity exchanged within a period of time as a target slab class;
And the allocation module is used for emptying and recycling one slab memory in the source slab class and then reallocating the slab memory to the target slab.
preferably, the selection module includes:
wherein the used _ chunks represents the number of used objects in the specific slab class, the request represents the number of requests in the specific slab class in a period of time, and the total _ chunks represents the total number of objects in the specific slab class.
Preferably, the allocation module is configured to:
obtaining the slab with the largest amount of free space in the source slab class;
and emptying the slab memory with the largest quantity of free space in the source slab class, and recovering and redistributing the emptied memory to the target slab.
preferably, the apparatus further comprises:
and the adjusting module is used for distinguishing and treating used space and unused space in Memcached, concentrating the used area at the front end of the slab, and concentrating the unused area at the rear end of the slab.
Preferably, the apparatus further comprises:
And the setting module is used for setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start used for identifying a first storage object in the slab, a pointer slab _ end used for identifying a last storage object in the slab, and a pointer cur _ free used for identifying a currently available storage object in the slab.
the embodiment of the invention provides a method and a device for memory allocation, wherein the method comprises the steps of obtaining information of each slab class, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects; calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information; selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within the period of time as a target slab; clearing and recycling one of the slab memories in the source slab classes, then redistributing the memory to the target slab, proposing a minimum influence factor selection algorithm, comprehensively considering the characteristics of stored data under the compression condition, and reasonably selecting proper source slab classes and target slab for recycling and redistributing; and adjusting a memory allocation mechanism of Memcached, effectively dividing the region according to the empty and full storage states of the slab, and starting to recycle from the slab with the idle tail when the memory is needed.
drawings
fig. 1 is a schematic flowchart of a method for allocating memory according to an embodiment of the present invention;
fig. 2 is another flow chart illustrating a method for memory allocation according to an embodiment of the present invention;
FIG. 3 is a schematic diagram of a method for allocating space according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of another method for allocating space according to an embodiment of the present invention;
Fig. 5 is a schematic diagram illustrating a pointer structure of memory allocation according to an embodiment of the present invention;
FIG. 6 is a comparison of calcification problems before and after memory allocation according to an embodiment of the present invention;
Fig. 7 is a functional block diagram of a memory allocation apparatus according to an embodiment of the present invention.
Detailed Description
the embodiments of the present invention will be described in further detail with reference to the drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of and not restrictive on the broad invention. It should be further noted that, for convenience of description, only some structures, not all structures, relating to the embodiments of the present invention are shown in the drawings.
referring to fig. 1, fig. 1 is a flowchart illustrating a method for allocating a memory according to an embodiment of the present invention.
In fig. 1, the method for allocating memory includes:
Step 101, obtaining information of each slab class, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects;
specifically, as a data compression function is newly added to Memcached, the data characteristics of the storage object in Memcached are changed. From the perspective of the number of compressions, the number of requests, and the total number of objects, a minimum impact factor selection algorithm is proposed. The Impact Factor (IF) is an index obtained by integrating the Impact of the compression amount, the request amount and the total number of objects on the slab recycling process.
102, calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information;
preferably, the calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information includes:
wherein the used _ chunks represents the number of used objects in the specific slab class, the request represents the number of requests in the specific slab class in a period of time, and the total _ chunks represents the total number of objects in the specific slab class.
Specifically, the smaller the impact factor, the more suitable the slab is to provide memory as the source slab class.
103, selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within a period of time as a target slab;
Specifically, the number of used objects, the number of requests, the total number of objects, and the number of swapped out for each slab class are collected. And calculating influence factors for each slab class, and selecting the slab class with the smallest influence factor from the calculated influence factors as a source slab class. And selecting the slab class with the most (frequent) number from the slab classes as the target slab.
And 104, emptying and recycling one slab memory in the source slab class and then redistributing the emptied and recycled slab memory to the target slab.
Preferably, the clearing and recycling one of the slab memories in the source slab class and then reallocating the cleared slab memory to the destination slab comprises:
Obtaining the slab with the largest amount of free space in the source slab class;
and emptying the slab memory with the largest quantity of free space in the source slab class, and recovering and redistributing the emptied memory to the target slab.
the memory space is a memory with a fixed size of 1M.
Specifically, referring to fig. 2, fig. 2 is another schematic flow chart of a memory allocation method according to an embodiment of the present invention.
step 201, if it is judged that the slab needs to be recycled and redistributed, selecting a source slab class;
step 202, selecting a target slab;
Step 203, judging whether to carry out slab recovery and redistribution;
step 204, if the slab does not need to be recycled and redistributed, judging whether the selected slab is effective or not;
and step 205, if the selected slab is valid, performing slab recycling and redistribution work.
Preferably, the method further comprises:
And (3) the used space and the unused space in Memcached are treated differently, the used area is concentrated at the front end of the slab, and the unused area is concentrated at the rear end of the slab.
specifically, the used space and the free space of the Memcached in fig. 3 are treated separately, that is, the occupied area is concentrated on the front end of the slab, and the free area is concentrated on the rear end of the slab. When the calcification problem occurs, the memory is preferentially recycled and redistributed in the rear end area.
fig. 4 is a schematic diagram of a modified slab distributor of Memcached, which not only concentrates occupied areas on the front end, but also makes pointers between slabs more regular, thereby facilitating chain breaking operation of a linked list when a memory is recycled. When Memcached recovers the memory, objects stored in the selected slab are emptied and are re-segmented into small blocks with other sizes. The operation of emptying objects may affect the hit rate of Memcached to some extent, and the use of the slab divider structure shown in fig. 4 may reduce this effect.
Preferably, the method further comprises:
And setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start for identifying a first storage object in the slab, a pointer slab _ end for identifying a last storage object in the slab, and a pointer cur _ free for identifying a currently available storage object in the slab.
specifically, referring to fig. 5, fig. 5 is a schematic diagram of a pointer structure for memory allocation according to an embodiment of the present invention. Fig. 5 is a specific modification method, which needs to add corresponding processing codes in the memory allocation function in addition to adding 3 pointers as shown in the figure in the slab structure.
referring to fig. 6, fig. 6 is a schematic diagram illustrating comparison of calcification problems before and after memory allocation according to an embodiment of the present invention. The dashed gray line in figure 6 is the experimental effect from which it can be seen that the improvement in hit rate under the calcification problem is significantly improved when transitioning from request type a to request type B, which effectively ameliorates the problem of reduced hit rate of Memcached under compression caused by calcification. The grey curve is the hit rate curve for Memcached under compression, which is affected by calcification.
the embodiment of the invention provides a memory allocation method, which comprises the steps of obtaining information of each slab class, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects; calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information; selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within the period of time as a target slab; clearing and recycling one of the slab memories in the source slab classes, then redistributing the memory to the target slab, proposing a minimum influence factor selection algorithm, comprehensively considering the characteristics of stored data under the compression condition, and reasonably selecting proper source slab classes and target slab for recycling and redistributing; and adjusting a memory allocation mechanism of Memcached, effectively dividing the region according to the empty and full storage states of the slab, and starting to recycle from the slab with the idle tail when the memory is needed.
referring to fig. 7, fig. 7 is a functional block diagram of a memory allocation apparatus according to an embodiment of the present invention.
in fig. 7, the memory allocation apparatus includes:
an obtaining module 701, configured to obtain information of each slab class, where the information includes a used object number, a request number, an object total number, and a swap-out number;
a selecting module 702, configured to calculate an influence factor of each slab class according to a preset minimum influence factor selecting algorithm and the information;
preferably, the selecting module 702 includes:
Wherein the used _ chunks represents the number of used objects in the specific slab class, the request represents the number of requests in the specific slab class in a period of time, and the total _ chunks represents the total number of objects in the specific slab class.
a selecting module 703, configured to select the slab class with the smallest impact factor as the source slab class, and set the slab class with the largest amount exchanged within a period of time as the target slab class;
and an allocating module 704, configured to empty and recycle one of the source slab classes and then reallocate the same to the destination slab.
preferably, the allocating module 704 is configured to:
Obtaining the slab with the largest amount of free space in the source slab class;
and emptying the slab memory with the largest quantity of free space in the source slab class, and recovering and redistributing the emptied memory to the target slab.
Preferably, the apparatus further comprises:
And the adjusting module is used for distinguishing and treating used space and unused space in Memcached, concentrating the used area at the front end of the slab, and concentrating the unused area at the rear end of the slab.
Preferably, the apparatus further comprises:
and the setting module is used for setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start used for identifying a first storage object in the slab, a pointer slab _ end used for identifying a last storage object in the slab, and a pointer cur _ free used for identifying a currently available storage object in the slab.
The embodiment of the invention provides a device for allocating memory, which is characterized in that information of each slab class is obtained, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects; calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the information; selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within the period of time as a target slab; clearing and recycling one of the slab memories in the source slab classes, then redistributing the memory to the target slab, proposing a minimum influence factor selection algorithm, comprehensively considering the characteristics of stored data under the compression condition, and reasonably selecting proper source slab classes and target slab for recycling and redistributing; and adjusting a memory allocation mechanism of Memcached, effectively dividing the region according to the empty and full storage states of the slab, and starting to recycle from the slab with the idle tail when the memory is needed.
The technical principle of the embodiment of the present invention is described above in conjunction with the specific embodiments. The description is only intended to explain the principles of embodiments of the invention and should not be taken in any way as limiting the scope of the embodiments of the invention. Based on the explanations herein, those skilled in the art will be able to conceive of other embodiments of the present invention without inventive step, and these embodiments will fall within the scope of the present invention.

Claims (8)

1. A method of memory allocation, the method comprising:
acquiring information of each slab class in Memcached with a data compression function, wherein the information comprises the number of used objects, the number of requests, the total number of the objects and the number of swapped-out objects;
Calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the used object number, the request number and the total number of the objects in the information; the number of used objects is associated with a number of compressions; the minimum impact factor selection algorithm is represented as follows:
Wherein the used _ chunks represents the number of used objects, the request represents the number of requests, and the total _ chunks represents the total number of objects;
Selecting the slab class with the smallest influence factor as a source slab class, and setting the slab with the largest quantity exchanged within a period of time as a target slab;
And clearing and recycling one slab memory in the source slab class and then redistributing the cleared slab memory to the target slab.
2. The method of claim 1, wherein said deallocating said one of said source slab class to said destination slab after flushing and reclaiming said one of said slab class comprises:
Obtaining the slab with the largest amount of free space in the source slab class;
and emptying the slab memory with the largest quantity of free space in the source slab class, and recycling and redistributing the emptied memory to the target slab.
3. the method according to any one of claims 1 to 2, further comprising:
and (3) the used space and the unused space in Memcached are treated differently, the used area is concentrated at the front end of the slab, and the unused area is concentrated at the rear end of the slab.
4. The method according to any one of claims 1 to 2, further comprising:
and setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start for identifying a first storage object in the slab, a pointer slab _ end for identifying a last storage object in the slab, and a pointer cur _ free for identifying a currently available storage object in the slab.
5. An apparatus for memory allocation, the apparatus comprising:
the device comprises an acquisition module, a processing module and a processing module, wherein the acquisition module is used for acquiring information of each slab class in Memcached with a data compression function, and the information comprises the number of used objects, the number of requests, the total number of objects and the number of swapped-out objects;
The selection module is used for calculating the influence factor of each slab class according to a preset minimum influence factor selection algorithm and the used object number, the request number and the total number of the objects in the information; the number of used objects is associated with a number of compressions; the minimum impact factor selection algorithm is represented as follows:
Wherein the used _ chunks represents the number of used objects, the request represents the number of requests, and the total _ chunks represents the total number of objects;
The selecting module is used for selecting the slab class with the smallest influence factor as a source slab class and setting the slab with the largest quantity exchanged within a period of time as a target slab class;
and the allocation module is used for emptying and recycling one slab memory in the source slab class and then reallocating the slab memory to the target slab.
6. the apparatus of claim 5, wherein the assignment module is configured to:
obtaining the slab with the largest amount of free space in the source slab class;
and emptying the slab memory with the largest quantity of free space in the source slab class, and recovering and redistributing the emptied memory to the target slab.
7. The apparatus of any one of claims 5 to 6, further comprising:
And the adjusting module is used for distinguishing and treating used space and unused space in Memcached, concentrating the used area at the front end of the slab, and concentrating the unused area at the rear end of the slab.
8. the apparatus of any one of claims 5 to 6, further comprising:
And the setting module is used for setting three pointers for specifying the range of each slab in each slab class, wherein the three pointers comprise a pointer slab _ start used for identifying a first storage object in the slab, a pointer slab _ end used for identifying a last storage object in the slab, and a pointer cur _ free used for identifying a currently available storage object in the slab.
CN201610813881.8A 2016-09-09 2016-09-09 Memory allocation method and device Active CN106469121B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610813881.8A CN106469121B (en) 2016-09-09 2016-09-09 Memory allocation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610813881.8A CN106469121B (en) 2016-09-09 2016-09-09 Memory allocation method and device

Publications (2)

Publication Number Publication Date
CN106469121A CN106469121A (en) 2017-03-01
CN106469121B true CN106469121B (en) 2019-12-13

Family

ID=58230412

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610813881.8A Active CN106469121B (en) 2016-09-09 2016-09-09 Memory allocation method and device

Country Status (1)

Country Link
CN (1) CN106469121B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110209594B (en) * 2018-02-28 2020-01-24 贵州白山云科技股份有限公司 Memory management method and device suitable for slab structure
CN113434285B (en) * 2020-03-23 2024-03-26 阿里巴巴集团控股有限公司 Memory management method and device based on key value cache system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101676883A (en) * 2008-09-17 2010-03-24 英业达股份有限公司 Memory allocation and management method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798745B2 (en) * 2014-09-13 2017-10-24 Samsung Electronics Co., Ltd. Methods, devices and systems for caching data items

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101676883A (en) * 2008-09-17 2010-03-24 英业达股份有限公司 Memory allocation and management method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Memory Partitioning in Memcached: An Experimental Performance Ayalysis;Damiano Carra et al.;《IEEE ICC 2014-Communication Qos,Reliability and Modeling Sysmposium》;20141231;第1154-1159页 *

Also Published As

Publication number Publication date
CN106469121A (en) 2017-03-01

Similar Documents

Publication Publication Date Title
CN108038002B (en) Embedded software memory management method
CN108132842B (en) Embedded software memory management system
US10409526B2 (en) Adaptive garbage collection
CN105677242B (en) The separation method and device of cold and hot data
EP2921963A1 (en) Memory recycling method and device
JP4996073B2 (en) Generational garbage collection program
US10083181B2 (en) Method and system for storing metadata of log-structured file system
CN106469121B (en) Memory allocation method and device
US20140281132A1 (en) Method and system for ram cache coalescing
US6820183B2 (en) Methods, systems, and computer program products for memory pool management using variable size sub-pools
KR20160106240A (en) Semiconductor device and operating method thereof
CN109753361A (en) A kind of EMS memory management process, electronic equipment and storage device
CN103488577A (en) Method and device of memory allocation and batch recovery for user applications based on use numbering
KR101626218B1 (en) Block based page mapping method
CN107912063A (en) A kind of method for recovering internal storage and device
KR101950759B1 (en) Garbage collection method for performing memory controller of storage device and memory controler
KR101077901B1 (en) Apparatus and method for managing flash memory using log block level mapping algorithm
CN107924350B (en) Electronic equipment and data compression method thereof
CN115793987B (en) Wear balancing method and device, electronic equipment and storage medium
KR20150107197A (en) Apparatus and method for storage using bad block
CN110199265B (en) Storage device and storage area management method
JPWO2019159472A1 (en) Memory management device, memory management method, and information processing device
CN106648882A (en) Garbage recycling method and device based on virtual machine
CN112559388B (en) Data caching method and device
CN107077420B (en) Overlay Erase Block mapping

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant