KR100756135B1 - 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법 - Google Patents

메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법 Download PDF

Info

Publication number
KR100756135B1
KR100756135B1 KR1020050020264A KR20050020264A KR100756135B1 KR 100756135 B1 KR100756135 B1 KR 100756135B1 KR 1020050020264 A KR1020050020264 A KR 1020050020264A KR 20050020264 A KR20050020264 A KR 20050020264A KR 100756135 B1 KR100756135 B1 KR 100756135B1
Authority
KR
South Korea
Prior art keywords
database
file
memory
file system
flash memory
Prior art date
Application number
KR1020050020264A
Other languages
English (en)
Other versions
KR20060099193A (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 KR1020050020264A priority Critical patent/KR100756135B1/ko
Publication of KR20060099193A publication Critical patent/KR20060099193A/ko
Application granted granted Critical
Publication of KR100756135B1 publication Critical patent/KR100756135B1/ko

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • 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

Landscapes

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

Abstract

본 발명은 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법에 관한 것으로서, 특히 램(RAM)에 상주된 메모리 데이터베이스 시스템이 파일 시스템의 역할을 수행하도록 하고, 메모리 데이터베이스 시스템은 파일 시스템의 메타 정보들을 램에 생성된 데이터베이스 파일을 통해 관리한다. 이에 따라 플래시 메모리에 대한 접근 횟수를 줄여 플래시 메모리의 수명을 최대화할 수 있으며, PDA나 휴대폰 등 사용자의 서비스 요청을 실시간으로 빠르게 처리해야 하는 장치의 성능을 향상시킬 수 있게 된다.
플래시 메모리, 파일 시스템, 메모리 데이터베이스

Description

메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법{ Method for processing flash file system using memory database }
도 1은 본 발명에 따른 바람직한 실시예의 흐름도,
도 2는 메모리 데이터베이스를 구성하는 일 실시예,
도 3은 플래시 메모리의 가비지를 회수하는 실시예의 개요,
도 4는 inode 기반의 파일 시스템에 관한 일 실시예,
도 5는 FAT 기반의 파일 시스템에 관한 일 실시예이다.
* 도면의 주요부분에 대한 부호의 설명
21: 프로세스 22: 플래시 메모리
30: 메모리 데이터베이스 시스템 31: 메모리 데이터베이스
31-1: 인터페이스 모듈 31-2: 데이터베이스 관리자 모듈
31-3: 트랜잭션 관리자 모듈 31-4: 회복 관리자 모듈
31-5: 저장 관리자 모듈 31-6: 시스템 관리자 모듈
31-7: 가비지 회수 관리자 모듈 32: 데이터베이스 파일
본 발명은 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법에 관한 것으로서, 특히 플래시 메모리를 사용하는 각종 장치의 램(RAM)에 상주하여 동작하는 메모리 데이터베이스 시스템을 통해 파일 시스템을 처리하도록 하여 플래시 메모리에 대한 접근을 최소화시킬 수 있는 방법에 관한 것이다.
근래에 가전기기, 통신기기, 휴대폰이나 개인휴대단말(PDA) 등의 휴대용 전자기기, 가정용 셋탑박스와 같은 각종 장치에 사용되는 비휘발성 저장 매체로 플래시 메모리의 사용이 증가하고 있다. 플래시 메모리의 사용이 증가하는 것은 플래시 메모리가 하드 디스크 드라이브(HDD)와 같은 기존의 회전식 저장 매체에 비하여 외부 충격에 강하고, 데이터의 기록 및 삭제가 자유로우며, 전원 공급이 차단된 상태에서도 데이터를 보존할 수 있는 비휘발성 저장매체의 성질을 갖고 있기 때문이다. 또한 플래시 메모리는 접근 속도가 빠르고, 저전력 구동이 가능하며 크기가 작은 장점을 가지고 있다.
그러나, 저장매체로 플래시 메모리를 사용할 때는 다음과 같은 문제점을 고려해야 한다.
첫째, 일반 저장매체와는 달리 한 번 데이터를 기록한 영역에 바로 다시 쓸 수 없다는 점이다. 즉, 새로운 데이터를 기록하기 전에는 플래시 메모리를 지워야 하며, 지우기 작업 역시 다른 저장매체와 달리 일정 단위(EU: Erase Unit)로 지워야 하는 제한이 있다.
둘째, 플래시 메모리는 지울 수 있는 횟수가 제한되어 있으므로, 플래시 메모리의 특정 영역에만 데이터가 집중적으로 쓰여지면 플래시 메모리의 수명이 단축된다. 즉, 데이터 저장을 위한 공간이 부족할 때는 무효화된 공간을 회수하기 위해 가비지 회수 작업을 수행해야 하지만, 이 작업은 플래시 메모리의 수명과 직결되므로 플래시 메모리 영역 전반에 걸쳐 골고루 이루어지도록 해야 한다.
한편, 플래시 메모리를 사용하는 각종 장치에는 타 장치에서와 마찬가지로 플래시 메모리에 기록되는 각종 파일을 관리하는 파일 시스템이 사용되는데, 파일 시스템은 저장매체상에 파일을 구성하는 방식을 의미하며 다양한 형태로 이루어질 수 있다. 이러한 파일 시스템은 플래시 메모리에 기록되는 파일의 메타 정보들을 각종 테이블을 통해 관리하며, 실제 플래시 메모리의 파일에 기록될 데이터 이외에도 각종 메타 정보들을 처리하기 위하여 플래시 메모리를 액세스하고 변경시키게 된다. 그러나, 위에서 설명한 바와 같이 플래시 메모리는 일반 저장매체와 다른 특성을 갖고 있으므로, 플래시 메모리에 대한 파일 시스템을 운용할 때도 될 수 있는 한 플래시 메모리의 접근을 줄이는 것이 바람직하다.
이에 본 발명은 상기와 같은 필요성에 부응하기 위하여 안출된 것으로서, 플래시 메모리를 사용하는 각종 장치의 램(RAM)에 상주하여 동작하는 메모리 데이터베이스 시스템을 통해 해당 장치의 파일 시스템을 처리하도록 하여, 플래시 메모리에 대한 접근을 최소화시킬 수 있도록 해 주는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위하여, 본 발명에 따른 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법은, 플래시 메모리를 사용하는 장치가 부팅되는 단계; 파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템을 상기 장치의 램(RAM)에 상주시키는 단계; 및 상기 메모리 데이터베이스 시스템은 상기 파일 시스템의 메타 정보들을 상기 램에 생성된 데이터베이스 파일을 통해 관리하면서 상기 플래시 메모리의 파일을 관리하는 단계를 포함하여 이루어진다.
상기 메모리 데이터베이스 시스템은, 유저 프로세스로부터 질의를 받아 이를 해석하는 인터페이스 모듈; 상기 인터페이스 모듈의 해석에 따라 트랜잭션 관리, 상기 데이터베이스 파일의 회복, 데이터의 읽기와 쓰기를 수행하기 위하여 상기 데이터베이스 파일을 총괄적으로 제어하는 데이터베이스 관리자 모듈; 상기 트랜잭션(transaction)을 유지하고 관리하는 트랜잭션 관리자 모듈; 상기 데이터베이스 파일의 회복 기능을 수행하는 회복 관리자 모듈; 및 상기 데이터베이스 파일과 상기 플래시 메모리에 대한 데이터의 읽기와 쓰기를 실행하는 저장 관리자 모듈을 포함하여 구성될 수 있다.
상기 유저 프로세스는 SQL을 통해 상기 인터페이스 모듈과 서로 인터페이스하도록 구성될 수 있고, 상기 회복 관리자 모듈은 로깅 방법을 이용하여 상기 데이터베이스 파일의 회복 기능을 수행하도록 구성될 수 있다.
상기 메모리 데이터베이스 시스템은 새로운 파일 시스템에 대한 스크립트를 받아서 해당 메모리 데이터베이스 시스템을 생성하는 시스템 관리자 모듈을 더 포함하여 구성될 수 있다.
상기 메모리 데이터베이스 시스템은 상기 플래시 메모리의 무효화된 공간을 회수하는 가비지 회수 관리자 모듈을 더 포함하여 구성될 수 있다.
상기 가비지 회수 관리자 모듈은 상기 플래시 메모리를 복수의 블록으로 나누고 상기 복수의 블록을 원형으로 관리하되, 상기 플래시 메모리에 데이터를 쓰는 위치가 n번째 블록일 때는 n-1번째 불록의 가비지를 회수하도록 구성될 수 있다.
또한, 상기 가비지 회수 관리자 모듈은 상기 플래시 메모리의 가용 공간이 일정 비율 이하일 때 가비지 회수를 수행하도록 구성될 수 있다.
위에서 설명한 각 실시예의 메모리 데이터베이스 시스템은 FAT 기반의 파일 시스템 또는 inode 기반의 파일 시스템의 역할을 수행하도록 구성할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.
도 1을 참조하자면, 플래시 메모리를 사용하는 장치가 부팅되면(S11), 파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템을 해당 장치의 램(RAM: Random Access Memory)에 상주시킨다(S12). 그리고, 램에 상주한 메모리 데이터베이스 시스템은 파일 시스템의 메타 정보들을 램에 생성된 데이터베이스 파일을 통해 관리하면서 플래시 메모리에 대한 파일 시스템으로서의 역할을 수행한다(S13,S14). 여기서, 데이터베이스 파일이란 도 4와 도 5에 도시한 예에서와 같이 파일 시스템을 구성하는 각종 테이블 정보를 기록하는 파일을 의미한다.
이와 같이 본 발명에 따른 파일 시스템은 메모리 데이터베이스 시스템을 이용하여 구성되므로, 실제 파일 시스템의 동작은 데이터베이스를 관리하는 형태를 가지게 된다.
즉, 유저 프로세스가 램에 상주하는 메모리 데이터베이스 시스템에 파일 접근을 요청하면, 메모리 데이터베이스 시스템은 이 요청에 응답하여 유저 프로세스가 플래시 메모리에 접근할 수 있도록 한다. 이 때, 메모리 데이터베이스 시스템은 메타 정보들을 램에 생성되는 데이터베이스 파일을 통해 관리한다.
파일 시스템의 메타 정보들을 램의 데이터베이스 파일을 통해 관리하기 때문에 플래시 메모리에 대한 접근을 최소화할 수 있게 된다. 또한, 파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템은 램에 상주하므로 데이터를 빠르고 효율적으로 처리하거나 저장할 수 있게 되고, 원하는 데이터를 신속하게 검색할 수 있게 된다. 다시 설명하자면, 모든 지원 가능한 파일 시스템의 정보, 오픈 파일 테이블, 파일 기술자 테이블 등을 램의 데이터베이스 파일로 만들어서 관리하도록 함으로써 파일 시스템을 구현할 수 있는 것이며, 메모리 데이터베이스 시스템은 가상 파일 시스템으로서의 역할을 수행하는 것으로 이해될 수도 있다.
또한, 현재 어떤 종류의 파일 시스템을 사용하는지에 관계없이 항상 메모리 데이터베이스 시스템이 제공하는 동일한 인터페이스를 사용함으로써 다양한 파일 시스템을 지원할 수 있다. 즉, 가능한 파일 시스템들의 상태 정보들과 모든 파일들을 메모리 데이터베이스화 하고, 시스템 콜이 발생하면 그에 맞는 데이터베이스와 연결 시켜 줌으로써 다양한 파일 시스템을 지원할 수 있게 된다.
뿐만아니라 파일 시스템의 교환은 현재 연결된 데이터베이스 파일을 교체함으로써 간단히 이루어질 수 있다. 어떠한 종류의 파일 시스템을 이용할 것인지에 관한 설정은 데이터베이스 파일을 수정하여 이루어질 수 있고, 파일의 생성과 삭제, 파일의 열고 닫기, 파일의 읽고 쓰기 등의 파일 연산은 데이터베이스 파일의 생성과 삭제 또는 데이터베이스 파일의 수정 등 메모리 데이터베이스 시스템이 제공하는 기본 연산을 이용하여 간단히 구현할 수 있다.
도 2를 참조하여 파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템의 일 실시예를 설명하기로 한다.
메모리 데이터베이스 시스템(30)은 유저 프로세스(21)가 파일 시스템에 접근할 수 있도록 해주는 메모리 데이터베이스(31), 및 데이터베이스 파일(32)로 이루어질 수 있다.
데이터베이스 파일(32)은 램에 위치하여 파일 시스템의 동작에 필요한 각종 테이블 정보를 저장하는데, 이러한 각종 테이블을 통해 파일 시스템의 메타 정보를 저장한다.
인터페이스 모듈(31-1)은 유저 프로세스(21)로부터 질의를 받아 이를 해석하여 데이터베이스 관리자 모듈(31-2)에게 해당 서비스를 요청하는 역할을 수행한다. 유저 프로세스(21)와 인터페이스 모듈(31-1)은 SQL(Structured Query Language)을 통해 인터페이스하도록 구성할 수 있다. 이러한 실시예에서 인터페이스 모듈(31-1)은 SQL문과 같이 데이터베이스 연산을 위한 기본 함수 등을 제공한다.
데이터베이스 관리자 모듈(31-2)은 인터페이스 모듈(31-1)로부터의 서비스 요청을 받아 트랜잭션 관리자 모듈(31-3), 회복 관리자 모듈(31-4), 저장 관리자 모듈(31-5) 등과 연계하여 작업을 처리하기 위해 데이터베이스 파일(32)에 기록되어 있는 메타 정보를 총괄적으로 관리하는 역할을 수행한다. 즉, 데이터베이스 관리자 모듈(31-2)은 데이터베이스 파일(32)에 기록되어 있는 각종 레코드, 인덱스, 버퍼 등을 관리하며, 실제 데이터베이스에 대한 연산은 데이터베이스 관리자 모듈(31-2)이 수행한다.
트랜잭션 관리자 모듈(31-3)은 데이터베이스 관리자 모듈(31-2)의 제어에 따라 트랜잭션(transaction)을 유지하고 관리하면서 이와 관련된 인터페이스를 지원하는 역할을 수행한다. 이 때, 파일의 락킹(locking)을 담당한다.
회복 관리자 모듈(31-4)은 데이터베이스 관리자 모듈(31-2)의 제어에 따라 데이터베이스 파일(32)의 회복 기능을 수행한다. 즉, 플래시 파일 시스템에 파손이 발생하면 이를 감지하고 파손이 발생하기 이전의 일관성 있는 상태(consistent state)로 데이터베이스 파일(32)을 복구시킨다.
이 때, 파일 시스템의 회복 기법 중 하나인 로깅기법을 사용하도록 구성할 수 있다. 즉, 데이터베이스 파일(32)에 변경이 발생하면 로그 파일에 기록하고, 이를 다시 주기적으로 플래시 메모리(22)에 저장한다. 그리고, 파일 시스템이 다시 부팅될 때는 기존의 데이터베이스 파일과 로그 파일을 바탕으로 수정된 파일 시스템을 램에 로딩한다. 이후, 이전의 로그 파일은 삭제하고 다시 새로운 로그 파일에 이후 변경된 것을 기록한다.
저장 관리자 모듈(31-5)은 데이터베이스 관리자 모듈(31-2)의 제어에 따라 데이터베이스 파일(32)로부터 메타 정보를 읽거나 데이터베이스 파일(32)에 메타 정보를 쓴다. 또한 플래시 메모리(22)에 기록되어 있는 파일 정보를 읽거나, 데이터베이스 파일(32)에 기록되어 있는 메타 정보를 플래시 메모리(22)에 쓰는 역할을 수행하는 등 데이터베이스 파일(32)과 플래시 메모리(22)에 대한 실제 접근은 저장 관리자 모듈(31-5)을 통해 이루어진다.
시스템 관리자 모듈(31-6)은 새로운 파일 시스템을 생성하는 역할을 수행한다. 즉, 사용자로부터 새로운 파일 시스템에 대한 정보들을 작성한 스크립트를 받아서 이를 바탕으로 새로운 파일 시스템을 위한 데이터베이스 파일을 생성한다.
한편, 가비지 회수 관리자 모듈(31-7)은 플래시 메모리(22)의 무효화된 공간을 회수하는 역할을 수행한다.
도 3을 참조하여 가비지를 회수하는 일 실시예를 설명하자면, 플래시 메모리(22)를 복수의 블록(B1~Bk)으로 나누고 복수의 블록(B1~Bk)을 원형으로 관리하되, 플래시 메모리(22)에 데이터를 쓰는 위치가 n번째 블록 Bn일 때는 n-1번째 불록 Bn-1의 가비지를 회수하도록 구성할 수 있다. 이 때, 지우는 위치가 플래시 메모리(22)의 마지막 블록이면 다시 플래시 메모리의 처음 블록부터 쓰면 된다.
이러한 실시예를 이용하면, 부팅될 때 읽고 전원이 차단될 때 쓰는 과정이 플래시 메모리(22) 상에서 순차적으로 이루어질 수 있으므로 마모 평준화는 자동으로 이루어질 수 있다.
즉, 플래시 메모리(22)는 지울 수 있는 횟수가 제한되어 있어서 플래시 메모리(22)의 특정 영역에만 데이터가 집중적으로 쓰여지면 플래시 메모리(22)의 수명이 단축되므로 플래시 메모리(22) 전반에 걸쳐 골고루 삭제되도록 해야 한다. 도 3에 도시한 바와 같은 실시예를 통해 플래시 메모리(22)의 가비지를 회수하게 되면 파일 시스템이 부팅될 때 읽어오고, 전원이 차단될 때는 플래시 메모리(22)에 순차적으로 데이터를 쓰기 때문에 마모 평준화가 자동으로 이루어진다.
또한, 가비지 회수 관리자 모듈(31-7)은 플래시 메모리(22)의 가용공간이 일정 비율(예: 50%) 이하가 되면 가비지 회수 작업을 수행하도록 구성할 수도 있다.
위에서 설명한 각 실시예에서 메모리 데이터베이스 시스템(30)은 inode 기반의 파일 시스템의 역할을 수행하도록 구성할 수 있다.
도 4를 참조하자면, inode 기반의 파일 시스템을 위한 데이터베이스 파일은 다음과 같은 테이블을 가진다. 즉, 첫번째 블록 번호, 블록 크기, 그룹당 필드 수, 파일 시스템 상태, 플래시 상의 inode 크기, 플래시 메모리에의 저장 시간과 같이 파일 시스템 자체에 관한 정보를 갖는 슈퍼블록 테이블, 파일 이름과 파일 테이블 인덱스 등의 정보를 관리하는 파일 디스크립터 테이블, 디렉토리 엔트리 테이블 인덱스를 관리하는 파일 테이블, inode 테이블의 인덱스를 관리하는 디렉토리 테이블을 포함한다. 또한 데이터 블록 인덱스 등 해당 파일의 모든 정보를 관리하는 inode 테이블, 실제 데이터를 저장하거나 간접 또는 이중 간접으로 데이터 블록의 포인터를 저장하는 블록 테이블 등을 포함할 수 있다.
위에서 설명한 각 실시예에서 메모리 데이터베이스 시스템(30)은 FAT 기반의 파일 시스템의 역할을 수행하도록 구성할 수도 있다.
도 5를 참조하자면, 클러스터 기반의 파일 시스템인 FAT 파일 시스템을 위한 데이터베이스 파일은 다음과 같은 테이블을 포함할 수 있다. 즉, 파일 시스템 타입 및 파티션(partition)의 시작과 끝 등의 정보를 포함하는 MBR(Master Boot Record) 테이블, 볼륨 이름, 볼륨 라벨, 파티션 크기, 클러스터 크기 등의 정보를 포함하는 BPB(BIOS Parameter block) 테이블이 필요하다.
또한, 파일 이름 및 속성, 루트 디렉토리 인지 서브 디렉토리 인지를 나타내는 플래그, 클러스터 시작 위치 등의 정보를 포함하는 디렉토리 테이블, 클러스터 할당에 관한 정보를 저장하는 FAT(File allocation table) 테이블 등이 포함될 수 있다.
이상에서 설명한 바와 같이, 플래시 파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템은 메모리(RAM)에 상주하므로, 실시간으로 데이터를 저장하고 인덱스를 사용해서 원하는 데이터에 대한 검색을 빨리 할 수 있게 된다. 또한, 프로세스가 연 파일 정보나 파일 시스템 자체에 관한 각종 정보들을 데이터베이스 테이블을 이용해서 관리하므로, 플래시 메모리에 대한 접근을 줄이고 서비스에 대한 요청을 빨리 처리할 수 있다.
본 발명은 상술한 각 실시예에 한정되지 않고 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 당업자에 의해 다양하게 변형하여 실시할 수 있는 것이다.
본 발명에 따르면, 플래시 파일 시스템을 메모리 데이터베이스 시스템을 이용하여 설계함으로써 플래시 메모리의 제한점을 최소화할 수 있다.
즉, 플래시 메모리에 대한 접근 횟수를 줄여 플래시 메모리의 수명을 최대화할 수 있으며, PDA나 휴대폰과 같이 사용자의 서비스 요청을 실시간으로 빠르게 처리해야 하는 장치의 성능을 크게 향상시킬 수 있다. 또한, 하나의 데이터베이스 시스템으로 다양한 종류의 파일 시스템을 제공할 수 있으며, 필요에 따라 파일 시스템 설정을 변경할 수도 있다. 뿐만아니라 데이터베이스 시스템은 전원차단이나 사용자의 실수로 인해 데이터의 파손이 발생했을 때 회복 기능을 지원하는데, 이는 파일 시스템의 저널링 기능을 대신할 수 있다.

Claims (10)

  1. 삭제
  2. 플래시 메모리를 사용하는 장치가 부팅되는 단계;
    파일 시스템의 역할을 수행하는 메모리 데이터베이스 시스템을 상기 장치의 램(RAM)에 상주시키는 단계; 및
    상기 메모리 데이터베이스 시스템이 상기 파일 시스템의 메타 정보들을 상기 램에 생성된 데이터베이스 파일을 통해 관리하면서 상기 플래시 메모리의 파일을 관리하는 단계를 포함하여 이루어지고,
    상기 메모리 데이터베이스 시스템은,
    유저 프로세스로부터 질의를 받아 이를 해석하는 인터페이스 모듈;
    상기 인터페이스 모듈의 해석에 따라 트랜잭션 관리, 상기 데이터베이스 파일의 회복, 데이터의 읽기와 쓰기를 수행하기 위하여 상기 데이터베이스 파일을 총괄적으로 제어하는 데이터베이스 관리자 모듈;
    상기 트랜잭션(transaction)을 유지하고 관리하는 트랜잭션 관리자 모듈; 상기 데이터베이스 파일의 회복 기능을 수행하는 회복 관리자 모듈; 및
    상기 데이터베이스 파일과 상기 플래시 메모리에 대한 데이터의 읽기와 쓰기를 실행하는 저장 관리자 모듈을 포함하여 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  3. 제 2 항에 있어서,
    상기 유저 프로세스와 인터페이스 모듈은 SQL(Structured Query Language)을 통해 서로 인터페이스되도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  4. 제 2 항에 있어서,
    상기 회복 관리자 모듈은 로깅 방법을 이용하여 상기 데이터베이스 파일의 회복 기능을 수행하도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  5. 제 2 항에 있어서,
    새로운 파일 시스템에 대한 스크립트를 받아서 해당 메모리 데이터베이스 시스템을 생성하는 시스템 관리자 모듈을 더 포함하여 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  6. 제 2 항에 있어서,
    상기 플래시 메모리의 무효화된 공간을 회수하는 가비지 회수 관리자 모듈을 더 포함하여 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  7. 제 6 항에 있어서,
    상기 가비지 회수 관리자 모듈은 상기 플래시 메모리를 복수의 블록으로 나누고 상기 복수의 블록을 원형으로 관리하되, 상기 플래시 메모리에 데이터를 쓰는 위치가 n번째 블록일 때는 n-1번째 블록의 가비지를 회수하도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  8. 제 7 항에 있어서,
    상기 가비지 회수 관리자 모듈은 상기 플래시 메모리의 가용 공간이 일정 비율 이하일 때 가비지 회수를 수행하도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  9. 제 2 항 내지 제 8 항 중 어느 하나의 항에 있어서,
    상기 메모리 데이터베이스 시스템은 FAT 기반의 파일 시스템의 역할을 수행하도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
  10. 제 2 항 내지 제 8 항 중 어느 하나의 항에 있어서,
    상기 메모리 데이터베이스 시스템은 inode 기반의 파일 시스템의 역할을 수행하도록 구성되는 것을 특징으로 하는 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법.
KR1020050020264A 2005-03-10 2005-03-10 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법 KR100756135B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050020264A KR100756135B1 (ko) 2005-03-10 2005-03-10 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050020264A KR100756135B1 (ko) 2005-03-10 2005-03-10 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법

Publications (2)

Publication Number Publication Date
KR20060099193A KR20060099193A (ko) 2006-09-19
KR100756135B1 true KR100756135B1 (ko) 2007-09-05

Family

ID=37630495

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050020264A KR100756135B1 (ko) 2005-03-10 2005-03-10 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법

Country Status (1)

Country Link
KR (1) KR100756135B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100978533B1 (ko) 2008-11-18 2010-08-27 최승일 램을 이용한 컴퓨터용 정보저장장치 자료보호 시스템 및 그방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6513095B1 (en) 1999-05-31 2003-01-28 Sharp Kabushiki Kaisha File system with assured integrity incorporating semiconductor memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6513095B1 (en) 1999-05-31 2003-01-28 Sharp Kabushiki Kaisha File system with assured integrity incorporating semiconductor memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100978533B1 (ko) 2008-11-18 2010-08-27 최승일 램을 이용한 컴퓨터용 정보저장장치 자료보호 시스템 및 그방법

Also Published As

Publication number Publication date
KR20060099193A (ko) 2006-09-19

Similar Documents

Publication Publication Date Title
EP2780796B1 (en) Method of and system for merging, storing and retrieving incremental backup data
US8024507B2 (en) Transaction-safe FAT file system improvements
US8037112B2 (en) Efficient access of flash databases
CN101187901B (zh) 一种实现文件访问的高速缓存系统和方法
US8296264B1 (en) Method and system for file-level continuous data protection
CN101743546B (zh) 用于提供快照的文件系统的分层存储管理
US8315995B1 (en) Hybrid storage system
US20150318046A1 (en) Maintaining versions of data in solid state memory
US6691136B2 (en) Fast data retrieval based upon contiguous consolidation of records according to frequency of access
US7970804B2 (en) Journaling FAT file system and accessing method thereof
US20070112891A1 (en) Converting file-systems that organize and store data for computing systems
US20100332446A1 (en) Storage pool scrubbing with concurrent snapshots
US20070061540A1 (en) Data storage system using segmentable virtual volumes
US20110167049A1 (en) File system management techniques for computing environments and systems
Sarwat et al. Generic and efficient framework for search trees on flash memory storage systems
US20200133511A1 (en) Optimized placement of data contained in a garbage collected storage system
CN102955787A (zh) 一种文件目录表的使用方法、文件写入方法及应用的主电路板、cpu和外部存储器
US8595426B2 (en) Handling commands within a write-once read-many storage device configuration
US7725507B1 (en) Dynamic directories
KR100954603B1 (ko) 파일 시스템의 로그 파일 및 상기 파일 시스템의 오류 복구방법
KR100756135B1 (ko) 메모리 데이터베이스를 이용한 플래시 파일 시스템 처리 방법
KR20100011137A (ko) 고속 파일 복구가 가능한 fat 파일시스템을 사용한데이터 처리장치 및 데이터 처리방법
US7693883B2 (en) Online data volume deletion
US20090287752A1 (en) Recording/reproducing apparatus and information processing method
CN105630692A (zh) 一种利用mram存储文件目录的文件存储系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction
LAPS Lapse due to unpaid annual fee