KR20150094205A - 플래시 기반 저장 장치의 스왑 관리 방법 - Google Patents

플래시 기반 저장 장치의 스왑 관리 방법 Download PDF

Info

Publication number
KR20150094205A
KR20150094205A KR1020140015218A KR20140015218A KR20150094205A KR 20150094205 A KR20150094205 A KR 20150094205A KR 1020140015218 A KR1020140015218 A KR 1020140015218A KR 20140015218 A KR20140015218 A KR 20140015218A KR 20150094205 A KR20150094205 A KR 20150094205A
Authority
KR
South Korea
Prior art keywords
based storage
flash
storage device
pages
page
Prior art date
Application number
KR1020140015218A
Other languages
English (en)
Inventor
박규호
신동재
김성민
Original Assignee
한국과학기술원
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 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020140015218A priority Critical patent/KR20150094205A/ko
Publication of KR20150094205A publication Critical patent/KR20150094205A/ko

Links

Images

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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 플래시 기반 저장 장치의 스왑 관리 방법으로서, 좀 더 구체적으로는 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용하기 위한 스왑 관리 방법에 관한 것이다.
본 발명의 실시 형태에 따른 방법은, 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용하기 위한 플래시 기반 저장 장치의 스왑 관리 방법으로서, 가상 메모리 주소 영역에서 실행 중인 복수의 프로세스들 중에서 적어도 하나를 희생물 프로세스로 선정하는 단계; 상기 희생물 프로세스의 페이지들을 그룹화하는 단계; 상기 복수의 페이지 그룹들간의 우선 순위를 결정하는 단계; 및 상기 우선 순위에 따라 상기 페이지 그룹과 주소 매핑된 메인 메모리 내의 페이지 그룹을 상기 보조 메모리로 스왑-아웃하는 단계;를 포함한다.

Description

플래시 기반 저장 장치의 스왑 관리 방법{METHOD FOR SWAP MANAGEMENT OF FLASH-BASED STORAGE}
본 발명은 플래시 기반 저장 장치의 스왑 관리 방법으로서, 좀 더 구체적으로는 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용하기 위한 스왑 관리 방법에 관한 것이다.
종래의 PC(Personal Computer)용 SSD(Solid State Disk)와 스마트폰 및 태블릿 등과 같은 모바일 장치용 e-MMC(embedded Multi-Media Card) 등은 낸드(NAND) 플래시 기반 저장 장치(Storage)를 주 저장 장치로 사용하고 있다.
종래의 NAND 플래시 기반 저장 장치는 기존의 주 저장 장치로 사용되던 HDD(Hard Disk Drive)과 비교하여 빠른 접근 시간(수 us)과 높은 전송 속도(수백~수천 MB/s)를 갖는다.
종래의 여러 NAND 플래시 기반 저장 장치 중 낸드 패키지(NAND Package)를 갖는 NAND 플래시 기반 저장 장치는 멀티 채널(Multi Channel) / 멀리 웨이(Multi Way) 구성에 기인하여 랜덤 쓰기 요청(Random Write Request)과 스몰 쓰기 요청(Small Write Request)에 좋지 않은 성능을 보인다(C. Min et al, SFS: Random Write Considered Harmful in Solid State Drives, FAST 2012).
한편, 종래의 컴퓨터 시스템에서 메인 메모리로 사용되는 디램(DRAM)은 다음과 같은 세 가지 장벽에 직면하고 있다(M. K. Quereshi, Scalable High Performance Main Memory System Using PCM Technology, ISCA 2009).
첫 째, 대용량 메모리를 갖추는데 소요되는 비용이 크다는 문제가 있고, 둘 째, DRAM의 미세 공정은 같은 가격으로 더 많은 용량의 메모리를 제조하는 것과 전력 절감을 위해 중요한데, 이러한 DRAM의 미세 공정을 최대한 낮추는데 한계에 이르렀다는 문제가 있으며, 셋 째, DRAM은 비휘발성인 특징 때문에 사용하지 않을 때에도 상태를 보존하는 전력이 필요하는 문제가 있다.
이러한 DRAM의 한계를 보완하기 위해, NAND 플래시 기반 저장 장치를 보조 메모리로 사용하고 있는데, 종래에는 NAND 플래시 기반 저장 장치를 보조 메모리로 사용하기 위해 스왑 기법을 사용하고 있다. 스왑 기법에 대해서 도 1을 참조하여 설명하도록 한다.
도 1은 종래의 플래시 기반 저장 장치를 보조 메모리로 이용하기 위한 스왑 기법을 설명하기 위한 도면이다.
도 1을 참조하면, 종래의 플래시 기반 저장 장치를 보조 메모리로 이용하기 위한 스왑 기법은, 스왑-아웃(swap-out) 및 스왑-인(swap-in)을 이용한다. 스왑-아웃은 메인 메모리(DRAM) 안의 복수의 페이지들 중 어느 하나의 페이지를 보조 메모리(플래시 기반 저장 장치)로 이동하는 것을 의미하고, 스왑-인은 스왑-아웃된 페이지가 나중에 다시 필요하게 된 경우에 메인 메모리 안으로 다시 이동하는 것을 의미한다. 이렇게 종래의 스왑 기법은 페이지 단위로 스왑-아웃 및 스왑-인을 한다.
도 1에 도시된 종래의 스왑 기법은 플래시 기반 저장 장치의 특성을 최대로 활용하지 못하고 있다. 구체적으로, 종래의 낸드 플래시 기반 저장 장치는 128KB(kilobyte) 이상의 입출력(I/O) 요청에 대해 좋은 성능을 보이는데, 4KB에 불과한 페이지를 이용하는 스왑 기법은 낸드 플래시 기반 저장 장치의 성능을 저하시킨다.
한국공개특허 제10-2009-0119617호 (공개일자: 2009.11.19) 한국공개특허 제10-2010-0067248호 (공개일자: 2010.06.21)
Ohhoon Kwon, et al. Swap Space Management Technique for Portable Consumer Electronics with NAND Flash Memory, IEEE Transactions on Consumer Electronics ‘10.
본 발명의 목적은 전술한 종래 기술의 필요성을 충족시키기 위해서 안출된 것으로, 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용함에 있어서, 플래시 기반 저장 장치를 성능을 높일 수 있는 플래시 기반 저장 장치의 스왑 관리 방법을 제공한다.
본 발명의 해결하고자 하는 과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명의 실시 형태에 따른 방법은, 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용하기 위한 플래시 기반 저장 장치의 스왑 관리 방법으로서, 가상 메모리 주소 영역에서 실행 중인 복수의 프로세스들 중에서 적어도 하나를 희생물 프로세스로 선정하는 단계; 상기 희생물 프로세스의 페이지들을 그룹화하는 단계; 상기 복수의 페이지 그룹들간의 우선 순위를 결정하는 단계; 및 상기 우선 순위에 따라 상기 페이지 그룹과 주소 매핑된 메인 메모리 내의 페이지 그룹을 상기 보조 메모리로 스왑-아웃하는 단계;를 포함한다.
여기서, LRU(Least Recently Used) 알고리즘, LFU(Least Frequently Used) 알고리즘, FIFO(First In First out) 알고리즘 및 클록(Clock) 알고리즘 중 어느 하나를 이용하여 상기 복수의 프로세스들 중 어느 하나의 프로세스를 상기 희생물 프로세스로 선정할 수 있다.
여기서, 상기 희생물 프로세스의 페이지들을 그룹화하는 단계는, 상기 페이지들 각각의 매핑 주소의 연속성을 이용하여 상기 페이지들 중 상기 매핑 주소가 연속되는 페이지들을 그룹화할 수 있다.
여기서, 상기 복수의 페이지 그룹들간의 우선 순위를 결정하는 단계는, 상기 희생물 프로세스의 페이지들 각각에 대한 엑세스 비트(Access Bit)를 이용하여 상기 복수의 페이지 그룹들 각각의 엑세스 비트의 개수의 평균 값을 계산하고, 상기 평균 값이 작은 순서대로 상기 복수의 페이지 그룹들의 순서를 결정할 수 있다.
본 발명의 실시 형태에 따르면, 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용함에 있어서, 플래시 기반 저장 장치를 성능을 높일 수 있다.
좀 더 구체적으로, 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용할 때, 플래시 기반 저장 장치의 대역폭을 충분히 이용할 수 있기 때문에, 메모리 접근 시간을 줄일 수 있고, 전체 컴퓨터 시스템의 성능이 향상되는 이점이 있다.
도 1은 종래의 플래시 기반 저장 장치를 보조 메모리로 이용하기 위한 스왑 기법을 설명하기 위한 도면.
도 2는 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법의 순서도.
도 3은 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법을 전체적으로 도시한 도면.
도 4는 희생물 프로세스를 선정하는 하나의 방법을 설명하기 위한 도면.
도 5는 희생물 프로세스 내의 페이지들의 그룹화 방법을 설명하기 위한 도면.
도 6은 복수의 페이지 그룹들 간의 우선 순위를 결정하는 방법을 설명하기 위한 도면.
이하, 본 발명의 바람직한 실시예의 상세한 설명이 첨부된 도면들을 참조하여 설명된다. 도면들 중 인용부호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 인용부호들로 표시됨을 유의해야 한다. 참고로 본 발명을 설명함에 있어서 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 이하 첨부된 도면을 참조하여 본 발명의 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법을 설명한다.
도 2는 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법의 순서도이고, 도 3은 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법을 전체적으로 도시한 도면이다.
도 2 및 도 3을 참조하면, 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법은, 희생물 프로세스(victim process)를 선정하는 단계(100), 희생물 프로세스의 페이지들의 그룹화 단계(200), 복수의 페이지 그룹들 간 우선 순위를 결정하는 단계(300) 및 우선 순위에 따라 페이지 그룹의 스왑-아웃하는 단계(400)를 포함할 수 있다. 이하에서, 각 단계를 구체적으로 설명하도록 한다.
희생물 프로세스(victim process)를 선정하는 단계(100)는, 메인 메모리(20)에 저장 공간이 부족하여 메인 메모리(20)의 일부를 보조 메모리(30)로 이동시켜야 할 때 시작될 수 있다. 하지만, 이에 한정하는 것은 아니며, 희생물 프로세스(victim process)를 선정하는 단계(100)는 메인 메모리(20)의 저장 공간 부족 여부에 따르지 않을 수 있다.
상기 (100) 단계는, 가상 메모리(10)의 가상 메모리 주소 영역에서 실행 중인 복수의 프로세스들(프로세스 1, 프로세스 2, 프로세스 3, … 프로세스 n) 중에서 적어도 하나 이상의 희생물 프로세스(victim process)를 선정하는 단계일 수 있다. 도 3에서 희생물 프로세스는 프로세스 3으로 가정하였다.
여기서, 복수의 프로세스들 중에서 희생물 프로세스를 선정하는 하나의 방법으로서 LRU(Least Recently Used) 알고리즘을 이용할 수 있다. 구체적으로, 도 4를 참조하여 설명하도록 한다.
도 4는 희생물 프로세스를 선정하는 하나의 방법을 설명하기 위한 도면이다.
도 4를 참조하면, LRU 알고리즘은 복수의 프로세스들 중에서 가장 오랫동안 접근되지 않은 프로세스를 선택하는 알고리즘으로서, 가상 메모리(10)의 가상 메모리 주소 영역에서 실행 중인 복수의 프로세스들(프로세스 1, 프로세스 2, 프로세스 3, …, 프로세스 (n-1), 프로세스 n) 각각에 대한 ‘식별자(pid)’와 ‘최근 접근 시간’을 기록한 리스트로 구현될 수 있다.
도 4에 도시된 LRU 알고리즘에 따르면, ‘최근 접근 시간’이 가장 큰 프로세스 1이 희생물 프로세스로 선정될 수 있다.
복수의 프로세스들 중에서 희생물 프로세스를 선정하는 다른 방법에는, LFU(Least Frequently Used) 알고리즘, FIFO(First In First out) 알고리즘 및 클록(Clock) 알고리즘이 사용될 수 있다.
여기서, LFU 알고리즘은, 복수의 프로세스들 중에서 접근 빈도가 가장 낮은 프로세스를 선택하는 알고리즘이고, FIFO 알고리즘은 복수의 프로세스들 중에서 가장 먼저 생성된 프로세스를 선택하는 알고리즘이다.
또한, 클록 알고리즘은, FIFO 알고리즘의 변형된 형태로서, 복수의 프로세스들의 순환형 리스트를 사용하여 세컨드-찬스(second-chance) 알고리즘으로 프로세스를 선택하는 알고리즘이다. 구체적으로, 클록 알고리즘은 복수의 프로세스들의 순환형 리스트를 순회하는 포인터를 사용하여 하나의 프로세스를 선택하는 알고리즘이다. 클록 알고리즘의 방식은 초기값이 1인 레퍼런스 비트(reference bit)를 두고, 원형으로 순회하면서 0인 비트(bit)를 만나면 희생물로 선택하고, 1인 비트(bit)를 만나면 0으로 세트(SET)하고 계속 순회한다. 이러한 클록 알고리즘은 두 번째 만난 프로세스를 선택하는 특징이 있다.
다시, 도 2 및 도 3을 참조하면, 희생물 프로세스의 페이지들의 그룹화 단계(200)는, 상기 (100) 단계에서 희생물 프로세스가 선정된 이후에 시작될 수 있다.
구체적으로, 상기 (200) 단계는, 선정된 희생물 프로세스(프로세스 3)의 가상 주소 매핑을 저장하고 있는 페이지 테이블을 순회하여 메인 메모리(20)에서 보조 메모리(30)로 내보낼 페이지들을 그룹화하는 단계일 수 있다.
여기서, 희생물 프로세스의 페이지 테이블 내에서 보조 메모리(30)로 스왑-아웃될 페이지들을 그룹화하는 하나의 방법으로서, 가상 메모리 주소 영역에서 물리 메모리 주소 영역으로의 매핑 주소의 연속성을 이용할 수 있다. 구체적으로, 도 5를 참조하여 설명하도록 한다.
도 5는 희생물 프로세스 내의 페이지들의 그룹화 방법을 설명하기 위한 도면이다.
도 5를 참조하면, 희생물 프로세스의 페이지 테이블 내의 복수의 페이지들에서 물리 메모리 주소 영역으로의 매핑 주소가 연속되는 페이지들(매핑 주소 3, 4 및 5)을 하나의 그룹으로 그룹화한다.
도 5에 도시된 그룹화 방법은, 사용자의 요청에 의해 메모리 공간을 할당할 때 연속적인 메모리 공간을 할당하는 운영체제(OS)에 매우 적합한 이점이 있다.
다시, 도 2 및 도 3을 참조하면, 복수의 페이지 그룹들간 우선 순위를 결정하는 단계(300)는, 상기 (200) 단계에서 페이지들이 그룹화된 이후에 시작될 수 있다.
구체적으로, 상기 (300) 단계는, 복수의 페이지 그룹들을 상대적인 사용 빈도에 따라 정렬하는 단계일 수 있다.
여기서, 복수의 페이지 그룹들 간 우선 순위를 결정하는 하나의 방법으로서, 엑세스 비트(Access Bit)를 이용할 수 있다. 구체적으로, 도 6을 참조하여 설명하도록 한다.
도 6은 복수의 페이지 그룹들 간의 우선 순위를 결정하는 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 희생물 프로세스의 페이지 테이블의 엑세스 비트(Access Bit) 항목은 사용자에 의해 페이지가 접근되었는지 여부를 나타낸다. 특정 페이지가 사용자에 의해 접근되었으면 ‘v’로 체크된다.
복수의 페이지 그룹별로 엑세스 비트의 개수의 평균 값을 계산하여 페이지 그룹들의 사용 빈도를 추정할 수 있다. 도 6에서 페이지 그룹 1의 엑세스 비트의 개수 평균은 1/3이다.
각 페이지 그룹별로 평균 값을 계산하고, 평균 값이 작은 순서대로 페이지 그룹들의 스왑-아웃될 순서가 선정될 수 있다.
다시, 도 2 및 도 3을 참조하면, 우선 순위에 따라 페이지 그룹별로 스왑-아웃하는 단계(400)는, 상기 (300) 단계에서 복수의 페이지 그룹들별 우선 순위가 결정된 이후에 시작될 수 있다.
구체적으로, 상기 (400) 단계는, 상기 (300) 단계에서 결정된 우선 순위에 따라 가상 메모리(10)의 가상 메모리 주소 영역 내의 페이지 그룹(들)과 주소 매핑된 메인 메모리(20)의 물리 메모리 주소 영역 내의 페이지 그룹을 보조 메모리(30)로 이동시키는 단계일 수 있다.
메인 메모리(20)의 복수의 페이지 그룹들 중 페이지 그룹 1이 우선 순위에 따라 보조 메모리(30)로 스왑-아웃되면, 메인 메모리는 스왑-아웃된 페이지 그룹 1이 차지하는 공간만큼 자유 공간을 확보할 수 있다.
메인 메모리(20)의 페이지 그룹 2가 보조 메모리(30)로 스왑-아웃된 이후에, 사용자의 요청 등에 의해 페이지 그룹 2에 대한 접근 요청이 발생(페이지 폴트, page fault)하면, 메인 메모리(20)는 페이지 그룹 2를 저장할 수 있는 자유 공간을 확보한 후 보조 메모리(30)에 있는 페이지 그룹 2를 스왑-인한다. 여기서, 메인 메모리(20)가 페이지 그룹 2를 위한 자유 공간을 확보하기 위해, 앞서 설명한 100 내지 400 단계를 이용할 수 있다.
이상에서 상세히 설명한 바와 같이, 도 2 내지 도 6에 도시된 실시 형태에 따른 플래시 기반 저장 장치의 스왑 관리 방법은 페이지 단위가 아닌, 페이지 그룹 단위로 스왑이 이루어지므로, 그룹화 된 페이지들을 보조 메모리로 쓰고 읽는 과정에서 입출력(I/O) 요청 크기가 증가하기 때문에 플래시 기반 저장 장치의 전송 속도를 증가시킬 수 있고, 플래시 기반 저장 장치의 대역폭을 충분히 이용할 수 있기 때문에 메모리 접근 시간을 줄일 수 있고, 전체 컴퓨터 시스템의 성능이 향상될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시 형태를 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 형태의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시 형태에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
10: 가상 메모리
20: 메인 메모리
30: 보조 메모리

Claims (4)

  1. 컴퓨터 시스템에서 플래시 기반 저장 장치를 보조 메모리로 사용하기 위한 스왑 관리 방법에 있어서,
    가상 메모리 주소 영역에서 실행 중인 복수의 프로세스들 중에서 적어도 하나를 희생물 프로세스로 선정하는 단계;
    상기 희생물 프로세스의 페이지들을 그룹화하는 단계;
    상기 복수의 페이지 그룹들간의 우선 순위를 결정하는 단계; 및
    상기 우선 순위에 따라 상기 페이지 그룹과 주소 매핑된 메인 메모리 내의 페이지 그룹을 상기 보조 메모리로 스왑-아웃하는 단계;
    를 포함하는, 플래시 기반 저장 장치의 스왑 관리 방법.
  2. 제 1 항에 있어서,
    상기 희생물 프로세스로 선정하는 단계는,
    LRU(Least Recently Used) 알고리즘, LFU(Least Frequently Used) 알고리즘, FIFO(First In First out) 알고리즘 및 클록(Clock) 알고리즘 중 어느 하나를 이용하여 상기 복수의 프로세스들 중 어느 하나의 프로세스를 상기 희생물 프로세스로 선정하는, 플래시 기반 저장 장치의 스왑 관리 방법.
  3. 제 1 항에 있어서,
    상기 희생물 프로세스의 페이지들을 그룹화하는 단계는,
    상기 페이지들 각각의 매핑 주소의 연속성을 이용하여 상기 페이지들 중 상기 매핑 주소가 연속되는 페이지들을 그룹화하는, 플래시 기반 저장 장치의 스왑 관리 방법.
  4. 제 1 항에 있어서,
    상기 복수의 페이지 그룹들간의 우선 순위를 결정하는 단계는,
    상기 희생물 프로세스의 페이지들 각각에 대한 엑세스 비트(Access Bit)를 이용하여 상기 복수의 페이지 그룹들 각각의 엑세스 비트의 개수의 평균 값을 계산하고, 상기 평균 값이 작은 순서대로 상기 복수의 페이지 그룹들의 순서를 결정하는, 플래시 기반 저장 장치의 스왑 관리 방법.
KR1020140015218A 2014-02-11 2014-02-11 플래시 기반 저장 장치의 스왑 관리 방법 KR20150094205A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140015218A KR20150094205A (ko) 2014-02-11 2014-02-11 플래시 기반 저장 장치의 스왑 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140015218A KR20150094205A (ko) 2014-02-11 2014-02-11 플래시 기반 저장 장치의 스왑 관리 방법

Publications (1)

Publication Number Publication Date
KR20150094205A true KR20150094205A (ko) 2015-08-19

Family

ID=54057735

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140015218A KR20150094205A (ko) 2014-02-11 2014-02-11 플래시 기반 저장 장치의 스왑 관리 방법

Country Status (1)

Country Link
KR (1) KR20150094205A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831392B2 (en) 2016-02-04 2020-11-10 Samsung Electronics Co., Ltd. Volatile and nonvolatile memory management method and electronic device
US10884950B2 (en) * 2016-05-16 2021-01-05 International Business Machines Corporation Importance based page replacement
KR20210125948A (ko) * 2020-04-09 2021-10-19 한국과학기술원 이종 메모리 간의 메모리 스왑을 관리하는 전자 장치 및 이의 메모리 관리 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10831392B2 (en) 2016-02-04 2020-11-10 Samsung Electronics Co., Ltd. Volatile and nonvolatile memory management method and electronic device
US10884950B2 (en) * 2016-05-16 2021-01-05 International Business Machines Corporation Importance based page replacement
KR20210125948A (ko) * 2020-04-09 2021-10-19 한국과학기술원 이종 메모리 간의 메모리 스왑을 관리하는 전자 장치 및 이의 메모리 관리 방법

Similar Documents

Publication Publication Date Title
US8621141B2 (en) Method and system for wear leveling in a solid state drive
US8321624B2 (en) Memory device and management method of memory device
EP2517109B1 (en) Hybrid memory architectures
US8375191B2 (en) Non-volatile memory, page dynamic allocation apparatus and page mapping apparatus therefor, and page dynamic allocation method and page mapping method therefor
US9966152B2 (en) Dedupe DRAM system algorithm architecture
US9792227B2 (en) Heterogeneous unified memory
KR102569545B1 (ko) 키-밸류 스토리지 장치 및 상기 키-밸류 스토리지 장치의 동작 방법
US9201787B2 (en) Storage device file system and block allocation
US20120117328A1 (en) Managing a Storage Cache Utilizing Externally Assigned Cache Priority Tags
US8850115B2 (en) Memory package utilizing at least two types of memories
KR101414035B1 (ko) 저장 효율적인 섹터형 캐시
US20120317342A1 (en) Wear leveling method for non-volatile memory
US20140223072A1 (en) Tiered Caching Using Single Level Cell and Multi-Level Cell Flash Technology
US20170286005A1 (en) Virtual bucket multiple hash tables for efficient memory in-line deduplication application
US11630779B2 (en) Hybrid storage device with three-level memory mapping
US20140025921A1 (en) Memory control method utilizing main memory for address mapping and related memory control circuit
CN103473266A (zh) 固态硬盘及其删除重复数据的方法
WO2013101158A1 (en) Metadata management and support for phase change memory with switch (pcms)
TWI475387B (zh) 記憶體控制方法及記憶體控制電路
US10776262B2 (en) Memory system and operating method thereof
KR20150094205A (ko) 플래시 기반 저장 장치의 스왑 관리 방법
EP2755142B1 (en) Data storage in a mobile device with embedded mass storage device
JP6482322B2 (ja) メモリ装置及びプログラム
JP6595654B2 (ja) 情報処理装置
KR20180078512A (ko) 반도체 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application