1 |
1
비휘발성 메모리(non-volatile memory)에 저장된 데이터를 저장 장치(storage device)의 스왑 영역에 스와핑(swapping)하는 방법에 있어서,상기 비휘발성 메모리를 구성하는 복수의 페이지 중 스왑 아웃의 대상이 되는 페이지인 대상페이지에 대한 레퍼런스정보 및 수정정보를 획득하는 단계;상기 레퍼런스정보 및 상기 수정정보에 기초하여, 상기 대상페이지에 대한 스왑아웃 우선순위를 결정하는 단계; 및상기 대상페이지를 인액티브 페이지 리스트(inactive page list)의 상기 스왑아웃 우선순위에 대응되는 위치에 추가하는 단계를 포함하고,상기 레퍼런스정보는 상기 대상페이지를 참조하는 프로세스의 개수에 관한 정보 또는 상기 대상페이지를 참조하는 프로세스의 존재 여부에 관한 정보를 포함하고, 상기 수정정보는 상기 대상페이지의 수정 여부에 관한 정보를 포함하며, 상기 대상페이지의 수정 여부는 상기 대상페이지의 더티 비트(dirty bit)에 기반하여 결정되는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
2 |
2
제1항에 있어서,상기 스왑아웃 우선순위는상기 레퍼런스정보에서 상기 대상페이지를 참조하는 프로세스의 개수가 적을수록 높아지고, 상기 수정정보에서 상기 대상페이지에 수정이 발생하지 않으면 높아지는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
3 |
3
제2항에 있어서,상기 스왑아웃 우선순위에 대응되는 위치에 추가하는 단계는상기 대상페이지의 스왑아웃 우선순위가 높을수록 상기 인액티브 페이지 리스트의 테일(tail)에 가깝게 위치하도록 추가하고, 상기 대상페이지의 스왑아웃 우선순위가 낮을수록 상기 인액티브 페이지 리스트의 헤드(head)에 가깝게 위치하도록 추가하는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
4 |
4
제3항에 있어서,상기 인액티브 페이지 리스트의 테일에 가깝게 위치한 적어도 하나의 페이지를 빅팀페이지로 선정하여, 상기 저장 장치의 스왑 영역에 스왑 아웃하는 단계를 더 포함하는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
5 |
5
제1항에 있어서,상기 스왑아웃 우선순위는상기 레퍼런스정보에서 상기 대상페이지를 참조하는 프로세스의 개수, 상기 수정정보에서 상기 대상페이지에 수정 여부, 상기 프로세스의 개수에 관한 제1 가중치 및 상기 수정 여부에 관한 제2 가중치에 기초하여 산출되는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
6 |
6
제1항에 있어서,상기 비휘발성 메모리는FRAM(Ferro-electric RAM), PCRAM(Phase-Change RAM), STT-MRAM(Spin Transfer Torque Magneto RAM), Resistive RAM(RRAM), TAS-MRAM(Thermal Assisted Switching Magneto RAM) 및 3DXPoint 중 하나이고,상기 저장 장치는낸드 플래시 메모리(NAND flash memory), 하드디스크드라이브(hard disk drive), SSD(solid state drive) 중 하나인 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 방법
|
7 |
7
비휘발성 메모리;저장 장치; 및상기 비휘발성 메모리에 저장된 데이터를 상기 저장 장치의 스왑 영역에 스와핑하는 프로세서를 포함하고,상기 프로세서는상기 비휘발성 메모리를 구성하는 복수의 페이지 중 스왑 아웃의 대상이 되는 페이지인 대상페이지에 대한 레퍼런스정보 및 수정정보를 획득하고,상기 레퍼런스정보 및 상기 수정정보에 기초하여, 상기 대상페이지에 대한 스왑아웃 우선순위를 결정하고,상기 대상페이지를 인액티브 페이지 리스트(inactive page list)의 상기 스왑아웃 우선순위에 대응되는 위치에 추가하고,상기 레퍼런스정보는 상기 대상페이지를 참조하는 프로세스의 개수에 관한 정보 또는 상기 대상페이지를 참조하는 프로세스의 존재 여부에 관한 정보를 포함하고, 상기 수정정보는 상기 대상페이지의 수정 여부에 관한 정보를 포함하며, 상기 대상페이지의 수정 여부는 상기 대상페이지의 더티 비트(dirty bit)에 기반하여 결정되는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|
8 |
8
제7항에 있어서,상기 스왑아웃 우선순위는상기 레퍼런스정보에서 상기 대상페이지를 참조하는 프로세스의 개수가 적을수록 높아지고, 상기 수정정보에서 상기 대상페이지에 수정이 발생하지 않으면 높아지는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|
9 |
9
제8항에 있어서,상기 프로세서는상기 대상페이지를 인액티브 페이지 리스트의 스왑아웃 우선순위에 대응되는 위치에 추가할 때,상기 대상페이지의 스왑아웃 우선순위가 높을수록 상기 인액티브 페이지 리스트의 테일(tail)에 가깝게 위치하도록 추가하고, 상기 대상페이지의 스왑아웃 우선순위가 낮을수록 상기 인액티브 페이지 리스트의 헤드(head)에 가깝게 위치하도록 추가하는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|
10 |
10
제9항에 있어서,상기 프로세서는상기 인액티브 페이지 리스트의 테일에 가깝게 위치한 적어도 하나의 페이지를 빅팀페이지로 선정하여, 상기 저장 장치의 스왑 영역에 스왑 아웃하는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|
11 |
11
제7항에 있어서,상기 스왑아웃 우선순위는상기 레퍼런스정보에서 상기 대상페이지를 참조하는 프로세스의 개수, 상기 수정정보에서 상기 대상페이지에 수정 여부, 상기 프로세스의 개수에 관한 제1 가중치 및 상기 수정 여부에 관한 제2 가중치에 기초하여 산출되는 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|
12 |
12
제7항에 있어서,상기 비휘발성 메모리는FRAM(Ferro-electric RAM), PCRAM(Phase-Change RAM), STT-MRAM(Spin Transfer Torque Magneto RAM), Resistive RAM(RRAM), TAS-MRAM(Thermal Assisted Switching Magneto RAM) 및 3DXPoint 중 하나이고,상기 저장 장치는낸드 플래시 메모리(NAND flash memory), 하드디스크드라이브(hard disk drive), SSD(solid state drive) 중 하나인 것을 특징으로 하는 비휘발성 메모리의 데이터 스와핑 장치
|