KR20080037385A - 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체 - Google Patents

데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체 Download PDF

Info

Publication number
KR20080037385A
KR20080037385A KR1020060104446A KR20060104446A KR20080037385A KR 20080037385 A KR20080037385 A KR 20080037385A KR 1020060104446 A KR1020060104446 A KR 1020060104446A KR 20060104446 A KR20060104446 A KR 20060104446A KR 20080037385 A KR20080037385 A KR 20080037385A
Authority
KR
South Korea
Prior art keywords
data
storage device
block
temporary storage
read
Prior art date
Application number
KR1020060104446A
Other languages
English (en)
Other versions
KR100847021B1 (ko
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 KR1020060104446A priority Critical patent/KR100847021B1/ko
Publication of KR20080037385A publication Critical patent/KR20080037385A/ko
Application granted granted Critical
Publication of KR100847021B1 publication Critical patent/KR100847021B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • 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
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

본 발명은 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 더욱 상세하게는 임시 저장 장치에 저장되는 데이터의 관리 정책을 개선하여 그 성능을 향상하기 위한 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
본 발명의 데이터 저장 장치는 복수의 데이터를 블록 단위로 저장하는 주 저장 장치, 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치를 포함하고, 임시 저장 장치로 입출력되는 데이터를 블록 단위로 처리하는 것을 특징으로 한다. 이러한 본 발명의 데이터 저장 장치는 임시 저장 장치의 데이터 입출력을 주 기억 장치의 특성에 맞추어 처리함으로써, 데이터 저장 장치의 성능을 최적화시킬 수 있는 효과가 있다. 또한, 플래시 메모리를 주 기억 장치로 사용하는 데이터 저장 장치에서 주 기억 장치에 대하여 수행되는 연산 중 비교적 많은 시간을 소모하는 삭제 연산과 쓰기 연산의 연산 횟수를 줄일 수 있는 효과가 있다.
플래시 메모리, 버퍼, 캐시 메모리, 블록 노드, 페이지 노드

Description

데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체{DATA STORAGE APPARATUS, METHOD FOR DATA STORAGE AND COMPUTER READABLE RECORD MEDIUM ON WHICH THE METHOD IS RECORDED}
도 1은 본 발명의 일 실시예에 따른 데이터 저장 장치를 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 임시 저장 장치로 입출력되는 데이터의 구조를 설명하기 위한 도면이다.
도 3은 본 발명의 일 실시예에 따른 임시 저장 장치에 쓰기 연산을 수행할 때의 동작 특성을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 임시 저장 장치의 읽기 연산을 수행할 때의 동작 특성을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 임시 저장 장치의 저장 공간이 포화된 경우의 동작 특성을 설명하기 위한 도면이다.
****** 도면의 주요부분에 대한 부호의 설명 ******
110 : 주 저장 장치 120 : 임시 저장 장치
130 : 중앙처리 장치
본 발명은 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 더욱 상세하게는 임시 저장 장치에 저장되는 데이터의 관리 정책을 개선하여 그 성능을 향상하기 위한 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
플래시 메모리(flash memory)는 종래의 주 저장 장치인 하드 디스크에 비해서 작고, 가볍고, 충격에 안정적이며, 전력 소모가 적은 등의 장점들을 많이 가지고 있다. 이러한 장점들은 이동통신 단말기, 휴대용 멀티미디어 플레이어(PMP, Portable Multimedia Player), 노트북 등과 같은 이동성을 필요로 하는 모바일 디바이스에 있어서 주요한 특성이 되기 때문에, 모바일 디바이스에 더욱더 많이 사용될 것으로 예상된다.
하지만, 플래시 메모리는 다음과 같은 몇 가지 단점도 가지고 있다.
(a) 불균형한 연산 수행 시간: 플래시 메모리는 읽기 연산과 쓰기 연산을 수행하는데 있어서 소모되는 시간이 동일하지 않다. 예컨대, 쓰기 연산이 읽기 연산 보다 8배에서 수십배 정도 느리다.
(b) 직접 업데이트 불가능: 플래시 메모리는 특정 데이터 영역에 바로 새로운 데이터를 저장할 수 없다. 따라서, 데이터를 저장하기 위해서는 해당 영역에 먼저 삭제 연산을 수행한 후, 쓰기 연산을 수행하도록 하고 있다. 여기서, 삭제 연산 은 쓰기 연산에 비해 수십배 느리고, 읽기 연산해 비해서는 수백배 느리다는 단점을 가지고 있다.
(c) 물리적 마모: 플래시 메모리는 하드웨어 특성상 삭제 연산시 물리적으로 마모되기 때문에 삭제 연산을 수행할 수 있는 횟수가 제한된다. 일반적으로 플래시 메모리는 108 번 정도의 삭제 연산이 가능하다. 따라서, 플래시 메모리의 전체적 수명을 연장시키기 위해서 플래시 메모리의 모든 영역을 골고루 사용하는 것을 필요로 한다.
한편, 종래에는 플래시 메모리를 주 저장 장치로 사용하려는 시도가 있었다. 하지만, 종래 디바이스 시스템은 하드 디스크를 기반으로 한 주 저장 장치를 사용하고 있었기 때문에, 종래의 디바이스 시스템에서 플래시 메모리를 직접 적용하는데 한계가 있고, 플래시 메모리의 특성을 충분히 활용하지 못하는 문제점이 있었다. 예를 들어, 플래시 메모리의 입출력 수행은 중앙처리 장치의 연산 속도에 비해 수백에서 수천배 느린 문제점이 있었다.
따라서, 본 발명이 이루고자 하는 기술적 과제는 주 저장 장치로의 입출력 성능을 향상시킬 수 있는 데이터 저장 장치를 제공하는 것이다.
본 발명이 이루고자 하는 다른 기술적 과제는 플래시 메모리를 주 저장 장치로 사용하는 시스템에 있어서, 플래시 파일 시스템이나 플래시 변환 계층 등의 플래시 메모리 관리 정책을 변경 없이 적용할 수 있도록 유연성을 가지는 데이터 저 장 장치를 제공하는 것이다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 플래시 메모리를 주 저장 장치로 사용하는 경우, 플래시 메모리의 물리적 수명을 연장시킬 수 있는 데이터 저장 장치를 제공하는 것이다.
본 발명이 이루고자 하는 또 다른 기술적 과제는 상술한 기술적 과제를 이루기 위한 데이터 저장 방법 및 그 방법이 기록된 컴퓨터로 읽을 수 있는 기록매체를 제공하는 것이다.
본 발명이 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
제1 발명에 관련되는 데이터 저장 장치는 복수의 데이터를 블록 단위로 저장하는 주 저장 장치, 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치를 포함하고, 임시 저장 장치로 입출력되는 데이터를 블록 단위로 처리하는 것을 특징으로 한다.
이 데이터 저장 장치는 주 저장 장치와 임시 저장 장치를 포함한다. 주 저장 장치는 복수의 데이터를 블록 단위로 저장하고, 나아가 쓰기 연산과 읽기 연산 시에 블록 단위로 데이터를 처리한다. 임시 저장 장치는 주 저장 장치를 이용하는 중앙처리 장치의 처리 속도와 주 저장 장치의 처리 속도의 차이를 개선하기 위한 것 으로, 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장한다. 여기서, 임시 저장 장치에 수행되는 모든 데이터 처리를 블록 단위로 행하도록 한다. 따라서, 임시 저장 장치의 데이터 처리 특성을 주 저장 장치의 특성에 맞춤으로써, 주 저장 장치를 보다 효율적으로 동작시킬 수 있다.
제2 발명에 관련되는 데이터 저장 장치는 제1 발명에 관련되는 데이터 저장 장치에 있어서, 임시 저장 장치의 블록은 블록 번호 정보 및 블록에 포함되는 데이터 개수 정보를 포함하는 블록 노드와, 데이터를 포함하는 페이지 노드로 구성되는 것이 바람직하다.
이 데이터 저장 장치는 블록 단위로 데이터를 처리하는데 있어서, 하나의 블록의 구성을 블록 노드와 페이지 노드로 구성한다. 블록 노드는 블록 번호 및 데이터 개수에 대한 정보를 포함하고, 페이지 노드는 적어도 하나의 실제 데이터를 포함한다. 따라서, 복수의 데이터들의 묶음인 블록을 체계적으로 구성함으로써, 블록 관리가 수월하고, 연산 수행시 해당 데이터가 포함된 블록을 쉽게 찾을 수 있으며, 블록이 복수인 경우여도 데이터 처리를 효율 좋게 행할 수 있다.
제3 발명에 관련되는 데이터 저장 장치는, 제1 발명에 관련되는 데이터 저장 장치에 있어서, 주 저장 장치는 플래시 메모리인 것이 바람직하다.
이 데이터 저장 장치는 주 저장 장치로서 플래시 메모리를 사용한다. 플래시 메모리는 종래의 주 저장 장치인 하드 디스크에 비해서 작고, 가볍고, 충격에 안정적이며, 전력 소모가 적은 등의 장점을 가지고 있다. 따라서, 본 발명의 일 실시예에서는 주 저장 장치로서 플래시 메모리를 사용함과 함께, 주 저장 장치의 특성에 맞추어 블록 단위로 데이터를 처리하는 임시 저장 장치를 사용함으로써, 플래시 메모리를 주 저장 장치로서 효율 좋게 사용할 수 있고, 또한 모바일 디바이스 등에 더욱더 많이 활용할 수 있다.
제4 발명에 관련되는 데이터 저장 장치는, 제1 발명에 관련되는 데이터 저장 장치에 있어서, 임시 저장 장치는 버퍼 또는 캐시 메모리 중 적어도 어느 하나인 것이 바람직하다.
이 데이터 저장 장치는 임시 저장 장치로서 버퍼 또는 캐시 메모리 중 적어도 어느 하나를 사용한다. 버퍼 또는 캐시 메모리는 그 처리 속도가 하드 디스크나 플래시 메모리보다 빠른 특징을 가지고 있다. 따라서, 본 발명의 일 실시예에 있어서는 주 저장 장치와 이를 사용하는 중앙처리 장치 간의 속도 밸런스를 맞추기 위한 임시 저장 장치로서 버퍼 또는 캐시 메모리를 사용함과 함께, 주 저장 장치의 특성에 맞추어 블록 단위로 데이터를 처리하는 버퍼 또는 캐시 메모리를 사용함으로써, 주 저장 장치의 성능을 더욱더 향상시킬 수 있다.
제5 발명에 관련되는 데이터 저장 장치는, 제1 발명에 관련되는 데이터 저장 장치에 있어서, 데이터는 블록 단위로 LRU, FIFO 또는 RANDOM 중 어느 하나의 관리 정책에 의하여 관리되는 것이 바람직하다.
이 데이터 저장 장치는 LRU, FIFO 또는 RANDOM 등의 데이터 관리 정책에 의하여 임시 저장 장치로 입출력되는 데이터를 관리하되, 데이터를 블록 단위로 관리하도록 한다. 또한, 플래시 메모리를 주 저장 장치로 사용하는 경우, 플래시 파일 시스템이나 플래시 변환 계층 등의 플래시 메모리 관리 정책을 적용할 수 있다. 따 라서, 본 발명의 일 실시예에 따른 데이터 저장 장치는 효율성과 함께, 유연성을 가질 수 있다.
제6 발명에 관련되는 데이터 저장 장치는, 제1 발명에 관련되는 데이터 저장 장치에 있어서, 데이터의 읽기 또는 쓰기 요청시, 데이터가 임시 저장 장치에 저장되어 있는 경우, 임시 저장 장치에 데이터를 블록 단위로 읽기 또는 쓰기 처리하는 것이 바람직하다.
이 데이터 저장 장치는 중앙처리 장치로부터 데이터의 읽기 또는 쓰기 요청이 있는 경우, 주 저장 장치에서 데이터를 검색하기 이전에 임시 저장 장치에서 데이터 유무를 검색한다. 이때, 데이터가 임시 저장 장치에 저장되어 있으면, 해당 데이터를 블록 단위로 읽어내는 한편, 해당 데이터를 블록 단위로 덮어쓰기 한다. 따라서, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장시킬 수 있으며, 읽기 또는 쓰기의 처리 속도를 높일 수 있다.
제7 발명에 관련되는 데이터 저장 장치는, 제1 발명에 관련되는 데이터 저장 장치에 있어서, 데이터의 읽기 또는 쓰기 요청시, 데이터가 임시 저장 장치에 저장되어 있지 않은 경우, 임시 저장 장치에 데이터를 저장하기 위한 새로운 블록을 할당한 후에, 읽기 또는 쓰기 처리하는 것이 바람직하다.
이 데이터 저장 장치는 중앙처리 장치로부터 데이터의 읽기 또는 쓰기 요청이 있는 경우, 주 저장 장치에서 데이터를 검색하기 이전에 임시 저장 장치에서 데이터 유무를 검색한다. 이때, 데이터가 임시 저장 장치에 저장되어 있지 않으면, 읽기 또는 쓰기 처리를 하기에 앞서, 임시 저장 장치에 데이터를 저장하기 위한 새로운 블록을 할당한다. 이후, 주 기억 저장 장치로부터 해당 데이터를 읽어온 후, 임시 저장 장치의 생성된 블록에 저장하여 읽어내는 한편, 해당 데이터를 임시 저장 장치의 생성된 블록에 쓰기 한다. 따라서, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장시킬 수 있으며, 읽기 또는 쓰기의 처리 속도를 높일 수 있다.
제8 발명에 관련되는 데이터 저장 장치는 제1 발명에 관련되는 데이터 저장 장치에 있어서, 데이터의 읽기 또는 쓰기 요청시, 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록을 선택하고, 선택된 블록의 데이터를 주 저장 장치로 전송시키는 것이 바람직하다.
이 데이터 저장 장치는 중앙처리 장치로부터 데이터의 읽기 또는 쓰기 요청이 있는 경우, 읽기 또는 쓰기 처리에 앞서, 임시 저장 장치에 저장되어 있는 데이터 중 일부를 주 저장 장치로 전송한다. 이때, 전송되는 데이터는 블록 단위로 전송됨과 아울러, 그 전송되는 순위에 규칙을 가진다. 전송되는 순위는 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록의 데이터가 된다. 바꾸어 말하면, 수정된 데이터를 가장 많이 가지고 있는 블록을 선택한다. 따라서, 수정이 가장 많은 블록의 데이터를 주 저장 장치로 전송한 공간에 새로운 블록의 데이터를 읽기 또는 쓰기 처리할 수 있고, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장 시킬 수 있으며, 읽기 또는 쓰기의 처리 속도를 높일 수 있다.
제9 발명에 관련되는 데이터 저장 장치는, 제8 발명에 관련되는 데이터 저장 장치에 있어서, 임시 저장 장치의 저장 공간이 포화된 경우, 블록을 선택하고, 전송시키는 것이 바람직하다.
이 데이터 저장 장치는 임시 저장 장치의 저장 공간이 포화된 경우, 즉 임시 저장 장치의 저장 공간에 데이터가 모두 채워져 더 이상 데이터를 저장할 공간이 없는 경우, 읽기 또는 쓰기 처리에 앞서, 임시 저장 장치에 저장되어 있는 데이터 중 일부를 주 저장 장치로 전송한다. 따라서, 수정이 가장 많은 블록의 데이터를 주 저장 장치로 전송하고, 그 공간에 새로운 블록의 데이터를 읽기 또는 쓰기 처리할 수 있다.
제10 발명에 관련되는 데이터 저장 장치는, 제8 발명에 관련되는 데이터 저장 장치에 있어서, 선택되는 블록이 복수일 경우, 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하는 것이 바람직하다.
이 데이터 저장 장치는 수정이 가장 많은 블록의 데이터가 복수개이면, 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하여 주 저장 장치로 전송한다. 따라서, 전송되는 데이터의 전송 순위를 보다 신뢰성 있게 할 수 있고, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있다.
제11 발명에 관련되는 데이터 저장 방법은, 복수의 데이터를 블록 단위로 저장하는 주 저장 장치와 상기 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치의 데이터 저장 방법이고, 임시 저장 장치로 데이터를 블 록 단위로 입력하는 단계 및 임시 저장 장치에서 데이터를 블록 단위로 출력하는 단계를 포함한다.
제12 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저장 방법에 있어서, 블록은 블록 번호 정보 및 블록에 포함되는 데이터 개수 정보를 포함하는 블록 노드와, 상기 데이터를 포함하는 페이지 노드로 구성되는 것이 바람직하다.
제13 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저장 방법에 있어서, 주 저장 장치는 플래시 메모리인 것이 바람직하다.
제14 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저장 방법에 있어서, 데이터는 블록 단위로 LRU, FIFO 또는 RANDOM 중 어느 하나의 관리 정책에 의하여 관리되는 것이 바람직하다.
제15 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저장 방법에 있어서, 데이터의 읽기 또는 쓰기 요청시, 데이터가 임시 저장 장치에 저장되어 있는 경우, 임시 저장 장치에 데이터를 블록 단위로 읽기 또는 쓰기 처리하는 것이 바람직하다.
제16 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저장 방법에 있어서, 데이터의 읽기 또는 쓰기 요청시, 데이터가 임시 저장 장치에 저장되어 있지 않은 경우, 임시 저장 장치에 데이터를 저장하기 위한 새로운 블록을 할당한 후에, 읽기 또는 쓰기 처리하는 것이 바람직하다.
제17 발명에 관련되는 데이터 저장 방법은, 제11 발명에 관련되는 데이터 저 장 방법에 있어서, 데이터의 읽기 또는 쓰기 요청시, 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록을 선택하고, 선택된 블록의 데이터를 주 저장 장치로 전송시키는 것이 바람직하다.
제18 발명에 관련되는 데이터 저장 방법은, 제17 발명에 관련되는 데이터 저장 방법에 있어서, 임시 저장 장치의 저장 공간이 포화된 경우, 블록을 선택하고, 전송시키는 것이 바람직하다.
제19 발명에 관련되는 데이터 저장 방법은, 제17 발명에 관련되는 데이터 저장 방법에 있어서, 선택되는 블록이 복수일 경우, 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하는 것이 바람직하다.
제20 발명에 관련되는 기록매체는, 복수의 데이터를 블록 단위로 저장하는 주 저장 장치와 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치의 데이터 저장 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체이고, 임시 저장 장치로 데이터를 블록 단위로 입력하는 단계 및 임시 저장 장치에서 데이터를 블록 단위로 출력하는 단계를 포함하는 데이터 저장 방법을 실행하기 위한 프로그램을 기록하여 컴퓨터로 읽을 수 있다.
기타 본 발명의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하에서는 본 발명에 따른 구체적인 실시예를 첨부된 도면을 참조하여 설명 한다.
도 1은 본 발명의 일 실시예에 따른 데이터 저장 장치를 설명하기 위한 도면이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 데이터 저장 장치는 주 저장 장치(110) 및 임시 저장 장치(120)를 구비한다.
주 저장 장치(110)는 복수의 데이터를 블록 단위로 저장한다. 여기서, 본 발명의 일 실시예에서는 주 저장 장치(110)로 플래시 메모리를 사용한다. 주 저장 장치(110)인 플래시 메모리는 내부에 블록과 페이지로 나누어 데이터를 관리한다. 블록은 데이터를 처리하는 단위 묶음이고, 페이지는 블록 내에 실제 데이터가 저장되는 부분이다. 여기서, 블록의 크기는 블록 특성에 따라 달라질 수 있으며, 하나의 블록은 일정한 크기의 복수의 페이지로 나뉜다.
임시 저장 장치(120)는 주 저장 장치(110)로 입출력되는 데이터 중 일부를 임시로 저장한다. 임시 저장 장치(120)로는 주 저장 장치(110)와 중앙처리 장치(130)의 처리 속도 차이를 개선하기 위한 것으로, 처리 속도가 주 저장 장치(110)보다 빠른 버퍼 또는 캐시 메모리 중 적어도 어느 하나를 사용한다. 또한, 임시 저장 장치(120)는 중앙처리 장치(130)로부터의 데이터의 읽기 또는 쓰기 요청을 받아들여 임시 저장 장치(120)의 저장 공간을 활용하여 데이터를 저장하고 있다가 임시 저장 장치(120)의 저장 공간이 포화되거나 필요시에 데이터를 주 저장 장치(110)로 전송함으로써, 주 저장 장치(110)의 입출력 횟수를 줄이는 역할을 수행한다.
본 발명의 일 실시예에서는 임시 저장 장치(120)로 입출력되는 데이터를 블록 단위로 처리하여 관리한다. 즉, 주 저장 장치(110)가 블록 단위로 쓰기 연산 및 삭제 연산을 하므로, 이러한 특성에 맞추어 임시 저장 장치(120)의 데이터 또한 블록 단위로 처리한다. 본 발명의 일 실시예에 따른 데이터를 블록 단위로 처리하는 임시 저장 장치(120)에 관해서는 다음 도 2 내지 도 5를 통하여 더욱 상세하게 기술하기로 한다. 이러한 특성 때문에 임시 저장 장치(120)는 주 저장 장치(110)가 보다 효율적으로 동작하는 데에 큰 도움을 줄 수 있고, 플래시 메모리의 비교적 읽기 연산보다 시간이 많이 소모되는 쓰기 연산과 더 많은 시간이 소모되는 삭제 연산의 상당량을 줄여줄 수 있다. 이로써, 주 저장 장치(110)의 성능을 보다 효과적으로 발휘할 수 있다.
한편, 임시 저장 장치(120)는 실질적인 하드웨어 구성에 있어서 전체 시스템에 사용되는 버퍼 또는 캐시 메모리로 구성하거나, 주 저장 장치(110) 만을 위해 별도의 버퍼 또는 캐시 메모리로 구성하는 것이 가능하다.
또한, 주 저장 장치(110)인 플래시 메모리는 운영체제에 하드 디스크와 동일한 인터페이스를 제공하기 위하여, 운영체제 내부의 파일 시스템이나 플래시 메모리와 운영체제 사이 등에서 사용되는 플래시 메모리용 파일 시스템이나 플래시 변환 계층을 사용하는 것이 가능하다. 본 발명의 일 실시예에 따른 데이터 저장 장치는 임시 저장 장치(120)의 데이터 처리 특성을 주 저장 장치(110)의 특성에 맞춘 것으로, 플래시 파일 시스템이나 플래시 변환 계층 등을 변경 없이 적용할 수 있는 유연성을 가진다.
도 2는 본 발명의 일 실시예에 따른 임시 저장 장치로 입출력되는 데이터의 구조를 설명하기 위한 도면이다.
도 2에 도시된 바와 같이, 임시 저장 장치로 입출력되는 복수의 데이터는 적어도 하나의 블록 단위로 처리된다. 하나의 블록의 구성은 블록 노드와 페이지 노드로 구성된다. 블록 노드는 블록 번호 및 해당 블록에 포함되는 데이터 개수, 즉 페이지 개수에 대한 정보를 포함하고, 페이지 노드는 적어도 하나의 실제 데이터를 포함한다. 여기서, 페이지 노드는 복수의 페이지로 구성되며, 하나의 페이지에는 하나의 실제 데이터가 저장되어 있다. 도 2에서, 복수의 블록 노드가 가로로 나열되어 있는 것처럼, 블록 노드들은 링크 연결 구조를 가지고 있으며, 블록 노드는 임시 저장 장치의 적중률(hit ratio)을 높이기 위하여 LRU(Least Recently Used) 방식의 데이터 관리 정책을 유지하고 있다.
LRU 방식은 가장 최근에 액세스된 데이터는 가까운 시간 내에 다시 액세스될 가능성이 높은 컴퓨팅의 특성을 가지므로, 이를 이용하여 가장 오랫동안 액세스되지 않은 데이터를 임시 저장 장치에서 송출하는 방식이다. 본 발명의 일 실시예에서는 블록 노드를 LRU 방식으로 처리하되, 블록 단위로 데이터들이 묶여 있으므로 블록 내에서 하나의 페이지만 액세스되어도 블록에 속한 데이터 전체를 LRU 리스트의 앞으로 이동시킨다. 따라서, 주 저장 장치가 플래시 메모리인 경우 그 성능을 높일 수 있다. 본 발명의 일 실시예에서는 LRU 방식에 대한 일례만을 들었지만, FIFO(first in, first out) 또는 RANDOM 등의 데이터 관리 정책에 의하여 임시 저장 장치로 입출력되는 데이터를 관리하는 것도 가능하다. FIFO 또는 RANDOM 등의 데이터 관리 정책에서도, 데이터는 블록 단위로 처리된다.
이와 같이, 복수의 데이터들의 묶음인 블록을 체계적으로 구성함으로써, 블 록 관리가 수월하고, 연산 수행시 해당 데이터가 포함된 블록을 쉽게 찾을 수 있으며, 블록이 복수인 경우여도 데이터 처리를 효율 좋게 행할 수 있다.
도 3은 본 발명의 일 실시예에 따른 임시 저장 장치에 쓰기 연산을 수행할 때의 동작 특성을 설명하기 위한 도면이다.
도 3에 도시된 바와 같이, 먼저, 데이터 쓰기 요청이 있는지 유무를 판단한다(S301). 이후, 쓰기 요청이 있으면, 임시 저장 장치 내에서 해당 데이터를 검색한다(S302). 검색 결과에 따라 해당 데이터가 임시 저장 장치 내에 존재하는지 유무를 판단한다(S303). 해당 데이터가 임시 저장 장치 내에 존재하면, 해당 데이터를 덮어쓰기 처리한다(S304). 해당 데이터가 임시 저장 장치 내에 존재하지 않으면, 임시 저장 장치에 새로운 블록 노드와 페이지 노드를 할당한다(S314). 할당된 블록에 해당 데이터를 쓰기 처리한다(S315).
이러한 동작을 통하여, 주 저장 장치의 쓰기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장시킬 수 있으며, 데이터 저장 장치의 쓰기의 처리 속도를 높일 수 있다.
도 4는 본 발명의 일 실시예에 따른 임시 저장 장치의 읽기 연산을 수행할 때의 동작 특성을 설명하기 위한 도면이다.
도 4에 도시된 바와 같이, 먼저, 데이터 읽기 요청이 있는지 유무를 판단한다(S401). 이후, 쓰기 요청이 있으면, 임시 저장 장치 내에서 해당 데이터를 검색한다(S402). 검색 결과에 따라 해당 데이터가 임시 저장 장치 내에 존재하는지 유무를 판단한다(S403). 해당 데이터가 임시 저장 장치 내에 존재하면, 해당 데이터 를 읽기 처리하여 중앙처리 장치로 전송한다(S404). 해당 데이터가 임시 저장 장치 내에 존재하지 않으면, 임시 저장 장치에 새로운 블록 노드와 페이지 노드를 할당한다(S414). 이후, 해당 데이터를 주 저장 장치에서 읽어와 할당된 블록에 저장한다(S415). 이후, 임시 저장 장치에 저장된 해당 데이터를 읽기 처리하여 중앙처리 장치로 전송한다(S416).
이러한 동작을 통하여, 주 저장 장치의 읽기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장시킬 수 있으며, 데이터 저장 장치의 읽기의 처리 속도를 높일 수 있다.
도 5는 본 발명의 일 실시예에 따른 임시 저장 장치의 저장 공간이 포화된 경우의 동작 특성을 설명하기 위한 도면이다.
도 5에 도시된 바와 같이, 먼저, 임시 저장 장치의 저장 공간이 포화되었는지 유무를 판단한다(S501). 여기서, 임시 저장 장치의 저장 공간의 포화는 임시 저장 장치의 데이터를 저장할 수 있는 데이터 저장 공간에 데이터가 모두 채워져 더 이상 데이터를 저장할 수 없는 경우를 의미한다. 임시 저장 장치의 저장 공간이 포화된 것으로 판단되면, 임시 저장 장치 내의 블록 중에서 가장 수정된 페이지를 많이 가지고 있는 블록을 검색하여 선택한다(S502). 이후, 선택된 블록이 복수개인지 유무를 판단한다(S503). 선택된 블록이 하나이면, 선택된 블록에 해당하는 모든 페이지 노드의 데이터를 주 저장 장치로 전송한다(S504). 선택된 블록이 복수개이면, LRU 방식을 이용하여 선택된 블록 중에서 가장 오랫동안 액세스가 없었던 블록을 검색하여 재선택한다(S514). 이후, 재선택된 블록에 해당하는 모든 페이지 노드의 데이터를 주 저장 장치로 전송한다(S515).
이와 같이, 본 발명의 일 실시예에 따른 데이터 저장 장치는 중앙처리 장치로부터 데이터의 읽기 또는 쓰기 요청이 있는 경우, 임시 저장 장치의 저장 공간이 포화되면, 읽기 또는 쓰기 처리에 앞서, 임시 저장 장치에 저장되어 있는 데이터 중 일부를 주 저장 장치로 전송한다. 이때, 전송되는 데이터는 블록 단위로 전송됨과 아울러, 그 전송되는 순위에 규칙을 가진다. 전송되는 순위는 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록의 데이터가 된다. 바꾸어 말하면, 수정된 데이터를 가장 많이 가지고 있는 블록을 선택한다. 이와 같이, 수정이 가장 많은 블록의 데이터를 전송 위선 순위로 하는 것은, 데이터의 수정이 많은 블록이 데이터의 수정이 적은 블록에 비하여 읽기 또는 쓰기 연산시 그 처리 효율성이 높으므로, 읽기 또는 쓰기 연산의 횟수를 줄일 수 있기 때문이다.
따라서, 수정이 가장 많은 블록의 데이터를 주 저장 장치로 전송하고, 그 공간에 새로운 블록의 데이터를 읽기 또는 쓰기 처리할 수 있음으로써, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있고, 주 저장 장치가 플래시 메모리인 경우 횟수가 줄어든 만큼 물리적 수명을 연장시킬 수 있으며, 읽기 또는 쓰기의 처리 속도를 높일 수 있다.
또한, 본 발명의 일 실시예에 따른 데이터 저장 장치는 수정이 가장 많은 블록의 데이터가 복수개이면, 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하여 주 저장 장치로 전송한다. 따라서, 전송되는 데이터의 전송 순위를 보다 신뢰성 있게 할 수 있고, 주 저장 장치의 읽기 또는 쓰기 연산의 횟수를 줄일 수 있다.
이와 같이, 상술한 본 발명의 기술적 구성은 본 발명이 속하는 기술분야의 당업자가 본 발명의 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로 이상에서 기술한 실시예는 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해되어야 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
이상에서와 같이 본 발명은 임시 저장 장치의 데이터 입출력을 주 기억 장치의 특성에 맞추어 처리함으로써, 데이터 저장 장치의 성능을 최적화시킬 수 있는 효과가 있다.
또한, 플래시 메모리를 주 기억 장치로 사용하는 데이터 저장 장치에서 주 기억 장치에 대하여 수행되는 연산 중 비교적 많은 시간을 소모하는 삭제 연산과 쓰기 연산의 연산 횟수를 줄일 수 있는 효과가 있다.
또한, 본 발명은 비교적 작은 부하와 빠른 속도로 데이터의 쓰기 연산과 읽기 연산을 수행할 수 있는 효과가 있다.
또한, 본 발명은 주 기억 장치의 수명을 연장시킬 수 있는 효과가 있다.

Claims (20)

  1. 복수의 데이터를 블록 단위로 저장하는 주 저장 장치; 및
    상기 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치를 포함하고,
    상기 임시 저장 장치로 입출력되는 데이터를 블록 단위로 처리하는, 데이터 저장 장치.
  2. 제1항에 있어서,
    상기 임시 저장 장치의 블록은 블록 번호 정보 및 상기 블록에 포함되는 데이터 개수 정보를 포함하는 블록 노드와, 상기 데이터를 포함하는 페이지 노드로 구성되는 것을 특징으로 하는 데이터 저장 장치.
  3. 제1항에 있어서,
    상기 주 저장 장치는 플래시 메모리인 것을 특징으로 하는 데이터 저장 장치.
  4. 제1항에 있어서,
    상기 임시 저장 장치는 버퍼 또는 캐시 메모리 중 적어도 어느 하나인 것을 특징으로 하는 데이터 저장 장치.
  5. 제1항에 있어서,
    상기 데이터는 블록 단위로 LRU, FIFO 또는 RANDOM 중 어느 하나의 관리 정책에 의하여 관리되는 것을 특징으로 하는 데이터 저장 장치.
  6. 제1항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 데이터가 상기 임시 저장 장치에 저장되어 있는 경우, 상기 임시 저장 장치에 상기 데이터를 블록 단위로 읽기 또는 쓰기 처리하는 것을 특징으로 하는 데이터 저장 장치.
  7. 제1항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 데이터가 상기 임시 저장 장치에 저장되어 있지 않은 경우, 상기 임시 저장 장치에 상기 데이터를 저장하기 위한 새로운 블록을 할당한 후에, 읽기 또는 쓰기 처리하는 것을 특징으로 하는 데이터 저장 장치.
  8. 제1항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록을 선택하고, 상기 선택된 블록의 데이터를 상기 주 저장 장치로 전송시키는 것을 특징으로 하는 데이터 저장 장치.
  9. 제8항에 있어서,
    상기 임시 저장 장치의 저장 공간이 포화된 경우, 상기 블록을 선택하고, 전송시키는 것을 특징으로 하는 데이터 저장 장치.
  10. 제8항에 있어서,
    상기 선택되는 블록이 복수일 경우, 상기 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하는 것을 특징으로 하는 데이터 저장 장치.
  11. 복수의 데이터를 블록 단위로 저장하는 주 저장 장치와 상기 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치의 데이터 저장 방법에 있어서,
    상기 임시 저장 장치로 상기 데이터를 블록 단위로 입력하는 단계; 및
    상기 임시 저장 장치에서 상기 데이터를 블록 단위로 출력하는 단계
    를 포함하는 데이터 저장 방법.
  12. 제11항에 있어서,
    상기 블록은 블록 번호 정보 및 상기 블록에 포함되는 데이터 개수 정보를 포함하는 블록 노드와, 상기 데이터를 포함하는 페이지 노드로 구성되는 것을 특징으로 하는 데이터 저장 방법.
  13. 제11항에 있어서,
    상기 주 저장 장치는 플래시 메모리인 것을 특징으로 하는 데이터 저장 방법.
  14. 제11항에 있어서,
    상기 데이터는 블록 단위로 LRU, FIFO 또는 RANDOM 중 어느 하나의 관리 정책에 의하여 관리되는 것을 특징으로 하는 데이터 저장 방법.
  15. 제11항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 데이터가 상기 임시 저장 장치에 저장되어 있는 경우, 상기 임시 저장 장치에 상기 데이터를 블록 단위로 읽기 또는 쓰기 처리하는 것을 특징으로 하는 데이터 저장 방법.
  16. 제11항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 데이터가 상기 임시 저장 장치에 저장되어 있지 않은 경우, 상기 임시 저장 장치에 상기 데이터를 저장하기 위한 새로운 블록을 할당한 후에, 읽기 또는 쓰기 처리하는 것을 특징으로 하는 데이터 저장 방법.
  17. 제11항에 있어서,
    상기 데이터의 읽기 또는 쓰기 요청시, 상기 임시 저장 장치 내에서 데이터의 수정이 가장 많은 블록을 선택하고, 상기 선택된 블록의 데이터를 상기 주 저장 장치로 전송시키는 것을 특징으로 하는 데이터 저장 방법.
  18. 제17항에 있어서,
    상기 임시 저장 장치의 저장 공간이 포화된 경우, 상기 블록을 선택하고, 전송시키는 것을 특징으로 하는 데이터 저장 방법.
  19. 제17항에 있어서,
    상기 선택되는 블록이 복수일 경우, 상기 선택된 블록 중 가장 오랫동안 액세스가 없었던 블록을 재선택하는 것을 특징으로 하는 데이터 저장 방법.
  20. 복수의 데이터를 블록 단위로 저장하는 주 저장 장치와 상기 주 저장 장치로 입출력되는 데이터 중 일부를 임시로 저장하는 임시 저장 장치의 데이터 저장 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 임시 저장 장치로 상기 데이터를 블록 단위로 입력하는 단계; 및
    상기 임시 저장 장치에서 상기 데이터를 블록 단위로 출력하는 단계
    를 포함하는 데이터 저장 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020060104446A 2006-10-26 2006-10-26 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체 KR100847021B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060104446A KR100847021B1 (ko) 2006-10-26 2006-10-26 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060104446A KR100847021B1 (ko) 2006-10-26 2006-10-26 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체

Publications (2)

Publication Number Publication Date
KR20080037385A true KR20080037385A (ko) 2008-04-30
KR100847021B1 KR100847021B1 (ko) 2008-07-17

Family

ID=39575389

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060104446A KR100847021B1 (ko) 2006-10-26 2006-10-26 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체

Country Status (1)

Country Link
KR (1) KR100847021B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973496B1 (ko) * 2008-05-16 2010-08-03 명지대학교 산학협력단 플래시 메모리 삭제 블록을 고려한 선반입 스왑 인 방법
US8281042B2 (en) 2008-12-05 2012-10-02 Samsung Electronics Co., Ltd. Memory device and management method of memory device
US8645619B2 (en) 2011-05-20 2014-02-04 International Business Machines Corporation Optimized flash based cache memory
US9201794B2 (en) 2011-05-20 2015-12-01 International Business Machines Corporation Dynamic hierarchical memory cache awareness within a storage system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000020105A (ko) * 1998-09-17 2000-04-15 윤종용 플래시 메모리를 구비한 전자 장치
KR100283588B1 (ko) * 1998-11-30 2001-03-02 전주범 디지털 데이터 처리 시스템의 메모리 제어 방법
JP2003248618A (ja) 2002-02-22 2003-09-05 Matsushita Electric Ind Co Ltd 情報保存装置及び情報保存方法
KR100640555B1 (ko) * 2005-02-07 2006-10-31 삼성전자주식회사 데이터 복사 방법 및 이를 위한 어플리케이션 프로세서
KR100673013B1 (ko) 2005-09-21 2007-01-24 삼성전자주식회사 메모리 컨트롤러 및 그것을 포함한 데이터 처리 시스템

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100973496B1 (ko) * 2008-05-16 2010-08-03 명지대학교 산학협력단 플래시 메모리 삭제 블록을 고려한 선반입 스왑 인 방법
US8281042B2 (en) 2008-12-05 2012-10-02 Samsung Electronics Co., Ltd. Memory device and management method of memory device
US8645619B2 (en) 2011-05-20 2014-02-04 International Business Machines Corporation Optimized flash based cache memory
US8656088B2 (en) 2011-05-20 2014-02-18 International Business Machines Corporation Optimized flash based cache memory
US9201794B2 (en) 2011-05-20 2015-12-01 International Business Machines Corporation Dynamic hierarchical memory cache awareness within a storage system
US9201795B2 (en) 2011-05-20 2015-12-01 International Business Machines Corporation Dynamic hierarchical memory cache awareness within a storage system
US9817765B2 (en) 2011-05-20 2017-11-14 International Business Machines Corporation Dynamic hierarchical memory cache awareness within a storage system

Also Published As

Publication number Publication date
KR100847021B1 (ko) 2008-07-17

Similar Documents

Publication Publication Date Title
US11893238B2 (en) Method of controlling nonvolatile semiconductor memory
US9928167B2 (en) Information processing system and nonvolatile storage unit
EP3118745A1 (en) A heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
TWI464586B (zh) 記憶體系統
US20120117328A1 (en) Managing a Storage Cache Utilizing Externally Assigned Cache Priority Tags
US8458394B2 (en) Storage device and method of managing a buffer memory of the storage device
CN106716334A (zh) 文件系统卷内的高效数据移动
KR20100042455A (ko) 플래시 메모리 시스템 및 그것의 플래시 변환 계층 설계 방법
US7711905B2 (en) Method and system for using upper cache history information to improve lower cache data replacement
CN108139972B (zh) 用于管理硬件辅助数据压缩中的存储器碎片的方法和设备
KR20190052546A (ko) 키-밸류 스토리지 장치 및 상기 키-밸류 스토리지 장치의 동작 방법
US9304946B2 (en) Hardware-base accelerator for managing copy-on-write of multi-level caches utilizing block copy-on-write differential update table
US20180307426A1 (en) Storage apparatus and storage control method
US20170097897A1 (en) Information processing device, access controller, information processing method, and computer program
US11593268B2 (en) Method, electronic device and computer program product for managing cache
KR100847021B1 (ko) 데이터 저장 장치, 데이터 저장 방법 및 그 방법이 기록된컴퓨터로 읽을 수 있는 기록매체
KR20190054730A (ko) 스토리지 장치 및 스토리지 장치의 동작 방법
Wongchaowart et al. A content-aware block placement algorithm for reducing PRAM storage bit writes
JP4792335B2 (ja) Raid装置、raid制御プログラムおよびキャッシュ管理方法
JP6482322B2 (ja) メモリ装置及びプログラム
KR101191650B1 (ko) 낸드 플래시 메모리에서 데이터의 주소를 사상시키는 장치 및 방법
EP2381354A2 (en) Data recording device
CN117667299A (zh) 虚拟机迁移方法、芯片、网卡、处理设备、系统及介质
JP6112193B2 (ja) アクセス制御プログラム、ディスク装置及びアクセス制御方法
JP6243884B2 (ja) 情報処理装置、プロセッサ、および情報処理方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120710

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee