WO2014127684A1 - 内存回收方法及装置 - Google Patents
内存回收方法及装置 Download PDFInfo
- Publication number
- WO2014127684A1 WO2014127684A1 PCT/CN2014/070515 CN2014070515W WO2014127684A1 WO 2014127684 A1 WO2014127684 A1 WO 2014127684A1 CN 2014070515 W CN2014070515 W CN 2014070515W WO 2014127684 A1 WO2014127684 A1 WO 2014127684A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- memory
- nvm
- inactive
- page
- recycling
- Prior art date
Links
- 238000004064 recycling Methods 0.000 title claims abstract description 87
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000011084 recovery Methods 0.000 claims description 41
- 230000001174 ascending effect Effects 0.000 claims description 7
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- YHVACWACSOJLSJ-UHFFFAOYSA-N n-methyl-n-(1-oxo-1-phenylpropan-2-yl)nitrous amide Chemical compound O=NN(C)C(C)C(=O)C1=CC=CC=C1 YHVACWACSOJLSJ-UHFFFAOYSA-N 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/70—Details relating to dynamic memory management
- G06F2212/702—Conservative garbage collection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Definitions
- the present invention relates to the field of computer technologies, and in particular, to a memory recovery method and apparatus. Background technique
- the memory devices that make up the memory unit usually include dynamic random access memory (English full name)
- DRAM Dynamic Random Access Memory
- NVM Non-Volatile Memory
- DRAM can withstand high write times, but low integration, limited storage space
- NVM integration Higher memory, can integrate memory units with larger memory capacity, but can withstand relatively low write times.
- DRAM and NVM can increase the storage capacity of the storage device.
- the operating system of the storage device of the DRAM and the NVM hybrid structure selects the Least Recently Used (LRU) from the head of the inactive NVM page list when performing the page reclaiming operation.
- LRU Least Recently Used
- This method may cause the NVM pages that are frequently written to be recycled first, which causes the NVMs that are frequently written to be worn out seriously, which affects the stability and reliability of the entire storage unit.
- An object of the embodiments of the present invention is to provide a memory recycling method, which aims to solve the problem of uneven wear of memory pages of the NVM.
- the present invention provides a memory recycling method, including:
- the memory recycle request message includes a recycle identifier, where the recycle identifier is used to indicate the number of memory pages requested to be reclaimed; According to the recycling identifier, the NVM inactive pages are reclaimed in order of the number of times the non-volatile memory NVM inactive memory pages are written from small to large.
- the recovering the NVM inactive according to the recycling identifier according to the non-volatile memory NVM inactive memory page being written from small to large Before the page it also includes:
- the NVM inactive memory page into a corresponding segment in the inactive memory page linked list, where the inactive memory page linked list includes multiple segments, each segment Used to store NVM inactive memory pages that set the range of times to be written.
- the multiple segments included in the inactive memory page linked list are written in a small number according to a corresponding setting.
- the order to the big is arranged in the linked list of inactive memory pages.
- Lost Memory NVM Inactive Memory Pages are used to reclaim NVM inactive pages from small to large, including:
- the NVM inactive memory page in the one or more segments matching the number of memory pages reclaimed by the recycling identifier request is returned in an order of setting the number of times of writing to be small to large.
- the recovering the NVM inactive according to the recycling identifier according to the non-volatile memory NVM inactive memory page being written from small to large Before the page it also includes:
- the page list includes a plurality of page groups, and each page group includes a fourth possible implementation that combines the first aspect according to the number of times written
- the multiple page groups included in the inactive memory page linked list are arranged in the inactive memory page linked list in the order of establishment time.
- the recovering the NVM inactive pages according to the recycling identifier according to the number of times the non-volatile memory NVM inactive memory pages are written from small to large include:
- the NVM inactive memory pages in the one or more page groups matching the number of memory pages requested by the recycling identifier request are recovered in the inactive memory page linked list in the order of establishment time.
- an embodiment of the present invention provides a memory recovery device, including:
- a receiving module configured to receive a memory reclamation request message, where the memory reclamation request message includes a return identifier, where the reclaim identifier is used to indicate a number of memory pages requested to be reclaimed;
- the memory recovery module is configured to recover the NVM ⁇ activity page according to the recycling identifier according to the number of times the non-volatile memory NVM inactive memory page is written from 'J to large.
- the method further includes: a determining module, configured, by the memory recycling module according to the recycling identifier, according to a non-volatile memory NVM inactive memory page Determining the number of times the NVM inactive memory page is written before reclaiming the NVM inactive page in a sequence from being small to large;
- a first inserting module configured to include, according to the number of times the NVM inactive memory page is written, a plurality of segments in the linked list of memory pages, each segment for storing an NVM inactive memory page that sets a range of times of writing .
- the multiple segments included in the inactive memory page linked list are written in a small number according to a corresponding setting.
- the order to the big is arranged in the linked list of inactive memory pages.
- the memory recovery module is specifically configured to: in the inactive memory page linked list, the number of memory pages that are reclaimed by the recycling identifier request in the one or more segments in an order of setting the number of times of writing to be small to large. N ⁇ Active memory page.
- the method further includes: a determining module, configured, by the memory recycling module according to the recycling identifier, according to the non-volatile memory NVM inactive memory page Recycling NVM inactive pages in ascending order Pre-determining the number of times the NVM inactive memory page is written; in the last page group in the linked list, the page list includes a plurality of page groups, and each page group is combined with the fourth possible fourth aspect
- the plurality of page groups included in the inactive memory page linked list are arranged in the inactive memory page linked list in the order of establishment time.
- the memory recovery module is configured to: in the inactive memory page linked list, reclaim the NVM ⁇ active memory page in the one or more page groups that matches the number of memory pages requested by the recycling identifier request in the order of establishment time. .
- the memory recovery method and device of the embodiment receive a memory recovery request message, where the memory recovery request message includes a recycling identifier, and the recycling identifier is used to indicate the number of memory pages requested to be recycled, according to the recycling identifier, according to the non-volatile memory NVM non-
- the active memory page is reclaimed NVM inactive pages in the order of the number of writes.
- the NVM inactive memory page is used to reclaim the page with a relatively small number of writes.
- the NVM inactive memory page is written after the page is relatively large. Recycling, which can make the NVM memory page wear and balance, improve the stability and reliability of the storage unit.
- Embodiment 1 is a flowchart of Embodiment 1 of a memory recycling method according to the present invention
- FIG. 2 is a schematic diagram of Embodiment 1 of an NVM inactive memory page linked list organization according to the present invention
- FIG. 3 is a flowchart of Embodiment 2 of a memory recycling method according to the present invention
- FIG. 4 is a schematic diagram of Embodiment 2 of an NVM inactive memory page linked list organization according to the present invention
- FIG. 5 is a flowchart of Embodiment 3 of a memory recovery method according to the present invention
- FIG. 6 is a flowchart of Embodiment 1 of the memory recovery device of the present invention.
- the memory recovery device that is, the memory module of the memory recovery device is composed of a dynamic random access memory (English full name Dynamic Random Access Memory, DRAM for short) and a non-volatile memory (Non-Volatile Memory, NVM for short). Applicable to memory recovery devices with memory modules consisting of NVM.
- the memory module is a hybrid memory recovery device, when performing memory recovery, the inactive memory page in the DRAM can be first recovered. When the number of inactive memory pages in the DRAM cannot meet the recycling requirement, the memory page in the NVM is reclaimed.
- the method for recovering memory pages in the NVM can use the memory recovery method of the embodiment of the present invention. It can be implemented by means of hardware or software.
- the memory recovery device can usually be a component having processing functions in a terminal such as a mobile phone or a computer, for example, a CPU, etc., and can be used to implement a memory recovery method in the terminal.
- Embodiment 1 is a flowchart of Embodiment 1 of a memory recovery method according to the present invention. As shown in FIG. 1, the memory recovery method of this implementation includes:
- S101 Receive a memory reclamation request message, where the memory reclamation request message includes a reclaim identifier, and the reclaim identifier is used to indicate the number of memory pages requested to be reclaimed.
- the memory recovery device when it runs the program, it needs to allocate a memory space for a certain process. At this time, if the free memory is insufficient, the operating system sends a memory recovery request message to the memory management module, and the memory management module receives the memory recovery.
- the request message, the memory recycle request message includes a recycle identifier, where the recycle identifier may be an identifier for indicating the number of memory pages requested by the operating system, that is, the operating system requests the memory management module to allocate the number of memory pages identified by the recycle identifier, and the memory Management
- the module reclaims the corresponding number of memory pages in the NVM inactive memory page list to meet the needs of the operating system.
- the non-active memory page with a small number of writes is continuously reclaimed, so that During the execution of the memory page reclaiming process, the inactive memory pages that are written a small number of times are always reclaimed first, which avoids the memory module of the memory reclamation device. Because some memory pages are damaged due to the number of times of writing, the stability of the entire memory module is affected. Sex and reliability, improve the wear level of NVM memory pages.
- the memory recycling request message includes a recycling identifier, where the recycling identifier is used to indicate the number of memory pages requested to be recycled, and according to the recycling identifier, the non-volatile memory NVM is inactive.
- the NVM inactive pages are reclaimed in the order of the number of times the memory pages are written from small to large.
- the pages in which the NVM inactive memory pages are written relatively small are first recycled.
- the NVM inactive memory pages are reclaimed after the pages with relatively large write times. Utilizing, the NVM memory page wear level is balanced, and the stability and reliability of the storage unit are improved.
- the method further includes: determining the number of times the NVM inactive memory page is written; according to the NVM inactive memory page, the inactive memory page list includes more Segments, each segment is used to store NVM inactive memory pages that set the range of times to be written.
- the memory management module may further determine the number of times the NVM inactive memory page is written before the NVM inactive page is reclaimed according to the recycling identifier according to the order in which the non-volatile memory NVM inactive memory page is written from small to large. For example: the memory management module can obtain the number of times the inactive memory page is written by the number of times the NVM inactive memory page is recorded in the memory controller cache, if there is no corresponding number of times of the inactive memory page in the memory controller cache. When recording, it is still The number of times the corresponding inactive memory page is written can be obtained from the NVM counter.
- the number of times the inactive memory page is written in the memory controller cache can reduce the access to the NVM. frequency.
- the memory management module can also periodically refresh the number of writes of the inactive memory page recorded in the memory controller cache to the counter of the NVM, and the counter of the NVM records the number of times of writing all the memory pages in the NVM.
- the plurality of segments included in the inactive memory page linked list are arranged in the inactive memory page linked list in a descending order from the corresponding setting.
- FIG. 2 is a schematic diagram of Embodiment 1 of an NVM inactive memory page linked list organization.
- the NVM inactive memory page linked list includes a plurality of NVM inactive memory page linked list segments, and each NVM inactive memory.
- the header of the page link table segment contains a range of values indicating the number of times the memory pages in the segment are written. For example, all memory pages in the NVM inactive memory page link segment A are written in the range of 0 to 100. Between the memory pages of the memory list segment A of the NVM inactive memory page in the range of 0 to 100, the memory pages are arranged in the linked list in the order of the number of times of writing.
- the NVM inactive memory page M is inserted into the by-mean by determining that the number of writes of the NVM inactive memory page M to be inserted is 30.
- the number of writes is in the NVM inactive memory page link table A between 0 and 100, and is specifically inserted between the inactive memory pages of the linked list segment A and the number of writes 20 and 50, so that the inserted linked list segment A is inserted.
- the memory pages are still arranged in ascending order of the number of writes. This ensures that when pages are reclaimed, the pages in the NVM inactive memory page list can always be reclaimed from the smallest to the largest.
- the NVM inactive pages are reclaimed according to the number of times the non-volatile memory NVM inactive memory pages are written from small to large, including: in the inactive memory page list Sets the order in which the number of writes is from small to large, and recycles NVM inactive memory pages in one or more segments that match the number of memory pages requested by the recycle ID request.
- FIG. 3 is a flowchart of Embodiment 2 of the memory recovery method of the present invention.
- the memory recovery method provided by this embodiment may be divided into multiple segments, and each segment is used.
- the NVM inactive memory page that stores the range of times the number of writes is set, the plurality of segments included in the inactive memory page list are inactive memory pages in the order of the number of times the corresponding writes are written from small to large.
- the memory management module recycles the inactive memory pages in the NVM, it can be recycled according to the following steps:
- the memory management module selects the NVM inactive memory page in the NVM inactive memory page list.
- the NVM inactive memory page link table segment with the smallest number of write times in the linked list.
- the specified number can be set by the operating system.
- the memory recovery operation is completed; if the number of selected memory pages does not meet the requirements of the operating system, it is recovered from other segments in the NVM inactive memory page list. Memory page.
- the memory reclamation operation is completed; if not, from other segments in the NVM inactive memory page linked list. Recycle the memory page.
- the NVM inactive memory page linked list is selected to have a smaller number of write times than the NVM inactive memory page linked list segment selected in the above 301, and the adjacent NVM inactive memory page link segment is executed 302.
- the memory recycling method of the embodiment recovers the NVM inactive according to the recycling identifier according to the number of times the non-volatile memory NVM inactive memory page is written from small to large.
- the method further includes: determining a written group of the NVM inactive memory page, wherein the page list includes a plurality of page groups, and each of the page groups includes a set number of NVMs that are arranged according to the number of times of writing from small to large. Active memory page.
- the memory management module may first determine the number of times the NVM inactive memory page is written before the NVM inactive page is reclaimed according to the recycling identifier according to the order in which the non-volatile memory NVM inactive memory page is written from small to large.
- the specific process of determining the number of times the NVM inactive memory page is written is the same as that in the foregoing embodiment, and details are not described herein again.
- the page list includes a plurality of page groups, each page group includes, according to the above embodiment, further, a plurality of page groups included in the inactive memory page linked list according to the setup time The order of the ones is arranged in the inactive memory page list.
- FIG. 4 is a schematic diagram of Embodiment 2 of an NVM inactive memory page linked list organization manner.
- the NVM inactive memory page linked list includes multiple page groups, and each page group is in the order of establishment time. Arranged in the list of pages, for example: The set number of NVM inactive memory pages contained in page group 0 is inserted into the linked list. The set number of NVM inactive memory pages contained in page group P is inserted into the linked list. The time is relatively early; the set number of NVM inactive memory pages contained in page group P is inserted into the linked list. The set number of NVM inactive memory pages contained in page group Q is inserted into the linked list. The time is relatively early.
- the number of times the inactive memory pages are written is from small to large.
- the NVM inactive memory page N to be inserted is determined by the judgment.
- the number of writes is 30, and the NVM inactive memory page N is inserted into the page group Q at the end of the NVM inactive memory page list, and is specifically inserted between the inactive memory pages of the page group Q that are written 55 and 20 times. , so that the memory pages in the inserted linked list segment A are still arranged in the order of the number of times of writing, so as to ensure that the pages in the page group can always be recycled from the smallest to the largest in the order of being written. .
- NVM inactive memory pages are reclaimed NVM inactive pages in ascending order of number of writes, including: Recycling one or more page groups in the inactive memory page list in accordance with the order of establishment time The number of memory pages matches the NVM inactive memory page.
- FIG. 5 is a flowchart of a third embodiment of the memory recovery method of the present invention.
- the memory recovery method provided in this embodiment may include multiple page groups in each page group.
- the plurality of page groups included in the linked list are arranged in the page linked list according to the order of establishment time, and the memory tube
- the memory management module starts from the head of the NVM inactive memory page link table segment, selects a specified number of memory pages according to the order in which the inactive memory pages are written from small to large, and recycles the selected memory page to make it a free page. For reuse, the specified number can be determined according to the needs of the operating system.
- the memory recycling operation is completed; if the number of selected memory pages does not meet the requirements of the operating system, from other page groups in the NVM inactive memory page list. Recycle the memory page.
- the foregoing program may be stored in a computer readable storage medium, and the program is executed when executed.
- the foregoing steps include the steps of the foregoing method embodiments; and the foregoing storage medium includes: a medium that can store program codes, such as a ROM, a RAM, a magnetic disk, or an optical disk.
- FIG. 6 is a flowchart of Embodiment 1 of the memory recovery device of the present invention.
- the memory recovery device 600 of the present embodiment includes: a receiving module 601 and a memory recycling module 602, where:
- the receiving module 601 is configured to receive a memory reclamation request message, where the memory reclamation request message includes a recycle Identification, the recycling identifier is used to indicate the number of memory pages requested to be reclaimed;
- the memory reclamation module 602 is configured to reclaim the NVM inactive pages according to the recycling identifier according to the order in which the non-volatile memory NVM inactive memory pages are written from small to large.
- the memory recovery device of this embodiment can be used to perform the memory recovery method in the first embodiment of the memory recovery method.
- the specific implementation process reference may be made to the first embodiment of the memory recovery method, and details are not described herein again.
- the memory collection device of the embodiment receives the memory collection request message by the receiving module, where the memory recycling request message includes a recycling identifier, and the recycling identifier is used to indicate the number of memory pages requested to be recycled, and the memory recycling module according to the recycling identifier, according to the non-volatile
- the memory NVM inactive memory page is reclaimed NVM inactive pages in the order of the number of writes.
- the NVM inactive memory page is reclaimed with a relatively small number of writes.
- the NVM inactive memory page is written a relatively large number of times. The page is recycled, which can make the NVM memory page wear and balance, improving the stability and reliability of the storage unit.
- the memory recovery device 600 may further include: a determining module and a first plug-in module.
- the number of times the NVM inactive memory page is written is determined before the NVM inactive memory page is reclaimed from the smallest to the largest NVM inactive pages.
- the first insertion module may be configured to include a plurality of segments in the NVM table according to the number of times the NVM inactive memory page is written, and each segment is used to store an NVM inactive memory page that sets a range of times of writing.
- the plurality of segments included in the inactive memory page linked list are arranged in the inactive memory page linked list in a descending order from the corresponding setting.
- the memory recovery module may be specifically configured to: in the inactive memory page linked list, reclaim the recovery identifier request in one or more segments according to the order of setting the number of times of writing from small to large. The number of memory pages reclaimed matches the NVM inactive memory page.
- the memory recovery device 600 may further include: a determination module and a second insertion module, where:
- the determining module may be configured to determine the number of times the NVM inactive memory page is written before the memory recycling module reclaims the NVM inactive page according to the recycling identifier according to the order in which the non-volatile memory NVM inactive memory page is written from small to large. ;
- the page list includes a plurality of page groups, each of which is included in the above embodiment, and further, the plurality of page groups included in the inactive memory page linked list are set according to the setup time. The order of the ones is arranged in the inactive memory page list.
- the memory reclaiming module may be specifically configured to reclaim, in the inactive memory page linked list, the number of memory pages in the one or more page groups that are reclaimed by the reclaiming identifier request according to the order of establishment time. Matching NVM inactive memory pages.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14753914.2A EP2921963B1 (en) | 2013-02-22 | 2014-01-13 | Memory recycling method and device |
JP2015552994A JP6014925B2 (ja) | 2013-02-22 | 2014-01-13 | メモリ回収方法および装置 |
KR1020157018254A KR20150095781A (ko) | 2013-02-22 | 2014-01-13 | 메모리 리클레임 방법 및 장치 |
US14/798,094 US20150317246A1 (en) | 2013-02-22 | 2015-07-13 | Memory Reclamation Method and Apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310057351.1A CN104008061B (zh) | 2013-02-22 | 2013-02-22 | 内存回收方法及装置 |
CN201310057351.1 | 2013-02-22 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/798,094 Continuation US20150317246A1 (en) | 2013-02-22 | 2015-07-13 | Memory Reclamation Method and Apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014127684A1 true WO2014127684A1 (zh) | 2014-08-28 |
Family
ID=51368721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2014/070515 WO2014127684A1 (zh) | 2013-02-22 | 2014-01-13 | 内存回收方法及装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20150317246A1 (zh) |
EP (1) | EP2921963B1 (zh) |
JP (1) | JP6014925B2 (zh) |
KR (1) | KR20150095781A (zh) |
CN (1) | CN104008061B (zh) |
WO (1) | WO2014127684A1 (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294189B (zh) * | 2015-05-25 | 2020-09-25 | 中兴通讯股份有限公司 | 内存碎片整理方法及装置 |
CN105159777B (zh) * | 2015-08-03 | 2018-07-27 | 中科创达软件股份有限公司 | 进程的内存回收方法及装置 |
CN105404589B (zh) * | 2015-10-29 | 2019-04-30 | 天脉聚源(北京)教育科技有限公司 | 一种垃圾回收方法及装置 |
CN107885666B (zh) | 2016-09-28 | 2021-07-20 | 华为技术有限公司 | 一种内存管理方法和装置 |
KR20180059208A (ko) * | 2016-11-25 | 2018-06-04 | 삼성전자주식회사 | 리클레임 제어부를 갖는 메모리 콘트롤러 및 그에 따른 동작 제어 방법 |
KR20180076765A (ko) | 2016-12-28 | 2018-07-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN106843756B (zh) * | 2017-01-13 | 2019-12-31 | 中国科学院信息工程研究所 | 基于页面分类的内存页面回收方法及系统 |
KR20180123385A (ko) * | 2017-05-08 | 2018-11-16 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
US20190012259A1 (en) * | 2017-07-06 | 2019-01-10 | Futurewei Technologies, Inc. | Lba eviction in pcm media |
CN109388520B (zh) * | 2017-08-08 | 2022-02-15 | 深圳大心电子科技有限公司 | 数据备份方法、数据恢复方法以及存储控制器 |
CN108228343B (zh) * | 2017-08-21 | 2020-11-17 | 珠海市魅族科技有限公司 | 内存回收方法及装置、计算机装置及计算机可读存储介质 |
CN108228344B (zh) * | 2017-08-22 | 2021-08-10 | 珠海市魅族科技有限公司 | 多进程内存处理方法及装置、计算机装置及可读存储介质 |
KR102419036B1 (ko) * | 2017-12-18 | 2022-07-11 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
US11004495B2 (en) | 2017-12-18 | 2021-05-11 | SK Hynix Inc. | Data storage device and operating method thereof |
CN109992402B (zh) * | 2017-12-29 | 2021-07-09 | Oppo广东移动通信有限公司 | 内存处理方法和装置、电子设备、计算机可读存储介质 |
US11188250B2 (en) | 2018-10-25 | 2021-11-30 | Micron Technology, Inc. | Two-stage hybrid memory buffer for multiple streams |
CN111324288B (zh) * | 2018-12-14 | 2024-02-23 | 兆易创新科技集团股份有限公司 | 一种存储器 |
CN111324284B (zh) * | 2018-12-14 | 2024-02-23 | 兆易创新科技集团股份有限公司 | 一种存储器 |
CN110532198B (zh) * | 2019-09-09 | 2023-08-08 | 成都西山居互动娱乐科技有限公司 | 一种存储空间分配的方法及装置 |
CN115757193B (zh) * | 2019-11-15 | 2023-11-03 | 荣耀终端有限公司 | 一种内存的管理方法及电子设备 |
CN112988610A (zh) * | 2019-12-16 | 2021-06-18 | 深圳市万普拉斯科技有限公司 | 内存回收处理方法、装置、计算机设备和存储介质 |
CN113392037B (zh) * | 2020-03-12 | 2024-06-18 | 深圳市万普拉斯科技有限公司 | 内存回收方法、装置、计算机设备和存储介质 |
CN111782559A (zh) * | 2020-07-06 | 2020-10-16 | Oppo广东移动通信有限公司 | 一种页面管理方法、装置及计算机可读存储介质 |
CN112181863B (zh) * | 2020-10-19 | 2024-06-14 | Oppo广东移动通信有限公司 | 页面回收方法、装置、终端及存储介质 |
CN113778662B (zh) * | 2021-07-28 | 2022-12-06 | 荣耀终端有限公司 | 内存回收方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231619A (zh) * | 2008-02-22 | 2008-07-30 | 浙江大学 | 一种基于非连续页的动态内存管理方法 |
CN101833512A (zh) * | 2010-04-22 | 2010-09-15 | 中兴通讯股份有限公司 | 一种内存回收方法及其装置 |
CN102508783A (zh) * | 2011-10-18 | 2012-06-20 | 深圳市共进电子股份有限公司 | 一种避免数据混乱的内存回收方法 |
CN102880555A (zh) * | 2012-07-28 | 2013-01-16 | 福州大学 | 面向实时系统的内存算法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5577246A (en) * | 1992-09-25 | 1996-11-19 | Lucent Technologies Inc. | Database memory compaction and reclamation method |
JP3507132B2 (ja) * | 1994-06-29 | 2004-03-15 | 株式会社日立製作所 | フラッシュメモリを用いた記憶装置およびその記憶制御方法 |
JP3389186B2 (ja) * | 1999-04-27 | 2003-03-24 | 松下電器産業株式会社 | 半導体メモリカード及び読み出し装置 |
US6654855B1 (en) * | 2000-10-26 | 2003-11-25 | Emc Corporation | Method and apparatus for improving the efficiency of cache memories using chained metrics |
KR100526190B1 (ko) * | 2004-02-06 | 2005-11-03 | 삼성전자주식회사 | 플래시 메모리의 재사상 방법 |
KR100869675B1 (ko) * | 2007-02-05 | 2008-11-21 | 지인정보기술 주식회사 | 디스크립터 배열을 이용한 플래시 메모리 제어 시스템 및방법 |
US7903486B2 (en) * | 2007-11-19 | 2011-03-08 | Sandforce, Inc. | System, method, and computer program product for increasing a lifetime of a plurality of blocks of memory |
US20100174845A1 (en) * | 2009-01-05 | 2010-07-08 | Sergey Anatolievich Gorobets | Wear Leveling for Non-Volatile Memories: Maintenance of Experience Count and Passive Techniques |
JP4666080B2 (ja) * | 2009-02-09 | 2011-04-06 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
WO2011010348A1 (ja) * | 2009-07-23 | 2011-01-27 | 株式会社日立製作所 | フラッシュメモリ装置 |
US8402242B2 (en) * | 2009-07-29 | 2013-03-19 | International Business Machines Corporation | Write-erase endurance lifetime of memory storage devices |
US8688894B2 (en) * | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
US9026716B2 (en) * | 2010-05-12 | 2015-05-05 | Western Digital Technologies, Inc. | System and method for managing garbage collection in solid-state memory |
-
2013
- 2013-02-22 CN CN201310057351.1A patent/CN104008061B/zh active Active
-
2014
- 2014-01-13 KR KR1020157018254A patent/KR20150095781A/ko not_active Application Discontinuation
- 2014-01-13 JP JP2015552994A patent/JP6014925B2/ja active Active
- 2014-01-13 EP EP14753914.2A patent/EP2921963B1/en active Active
- 2014-01-13 WO PCT/CN2014/070515 patent/WO2014127684A1/zh active Application Filing
-
2015
- 2015-07-13 US US14/798,094 patent/US20150317246A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231619A (zh) * | 2008-02-22 | 2008-07-30 | 浙江大学 | 一种基于非连续页的动态内存管理方法 |
CN101833512A (zh) * | 2010-04-22 | 2010-09-15 | 中兴通讯股份有限公司 | 一种内存回收方法及其装置 |
CN102508783A (zh) * | 2011-10-18 | 2012-06-20 | 深圳市共进电子股份有限公司 | 一种避免数据混乱的内存回收方法 |
CN102880555A (zh) * | 2012-07-28 | 2013-01-16 | 福州大学 | 面向实时系统的内存算法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP2921963A4 * |
Also Published As
Publication number | Publication date |
---|---|
US20150317246A1 (en) | 2015-11-05 |
EP2921963B1 (en) | 2020-12-02 |
CN104008061A (zh) | 2014-08-27 |
KR20150095781A (ko) | 2015-08-21 |
JP2016507830A (ja) | 2016-03-10 |
EP2921963A4 (en) | 2015-10-28 |
CN104008061B (zh) | 2018-01-23 |
JP6014925B2 (ja) | 2016-10-26 |
EP2921963A1 (en) | 2015-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014127684A1 (zh) | 内存回收方法及装置 | |
WO2017050028A1 (zh) | 一种固态硬盘的数据擦除方法及装置 | |
US9910786B2 (en) | Efficient redundant array of independent disks (RAID) write hole solutions | |
US10101930B2 (en) | System and method for supporting atomic writes in a flash translation layer | |
US10114749B2 (en) | Cache memory system and method for accessing cache line | |
KR101623119B1 (ko) | 솔리드 스테이트 드라이브의 에러 제어 방법 | |
US9298578B2 (en) | Method and apparatus for power loss recovery in a flash memory-based SSD | |
US9489409B2 (en) | Rollover strategies in a N-bit dictionary compressed column store | |
KR20160124794A (ko) | Dram 결함들의 커널 마스킹 | |
WO2016045483A1 (zh) | 一种地址的处理方法、相关设备和系统 | |
CN102768645B (zh) | 混合缓存的固态硬盘预取方法和固态硬盘ssd | |
CN103995855B (zh) | 存储数据的方法和装置 | |
KR101420754B1 (ko) | 비휘발성 메모리 시스템 및 이를 위한 맵핑 테이블 관리 방법 | |
WO2017041570A1 (zh) | 向缓存写入数据的方法及装置 | |
CN106681934A (zh) | 一种固态硬盘垃圾回收的方法、系统和固态硬盘控制器 | |
EP3196767B1 (en) | Method for writing data into flash memory device, flash memory device and storage system | |
WO2015053966A9 (en) | Memory system with shared file system | |
CN107621927A (zh) | 一种基于超融合系统的纵向扩展方法及其装置 | |
CN110196818A (zh) | 缓存数据的方法、缓存设备和存储系统 | |
CN105204783A (zh) | 一种基于数据生存期的固态盘垃圾回收方法 | |
CN111078143B (zh) | 基于段映射进行数据布局和调度的混合存储方法及系统 | |
CN104216792B (zh) | 数据备份的方法及内存数据库存储引擎 | |
CN116701239A (zh) | 基于伙伴算法的碎片回收管理方法、装置和计算机设备 | |
WO2023124423A1 (zh) | 一种存储空间分配方法、装置、终端设备及存储介质 | |
CN103281358B (zh) | 一种基于一致性hash算法存储资源的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14753914 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2014753914 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 20157018254 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2015552994 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |