KR101413985B1 - Method for file management using file system adapted to non-volatile memory - Google Patents
Method for file management using file system adapted to non-volatile memory Download PDFInfo
- Publication number
- KR101413985B1 KR101413985B1 KR1020120007547A KR20120007547A KR101413985B1 KR 101413985 B1 KR101413985 B1 KR 101413985B1 KR 1020120007547 A KR1020120007547 A KR 1020120007547A KR 20120007547 A KR20120007547 A KR 20120007547A KR 101413985 B1 KR101413985 B1 KR 101413985B1
- Authority
- KR
- South Korea
- Prior art keywords
- file
- information
- block area
- inode
- directory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
비휘발성 메모리에 적합한 파일시스템을 이용한 파일 관리 방법이 제공된다. 본 파일 관리 방법에서 저장장치에 저장된 파일을 관리하기 위해 이용하는 파일시스템은, 수퍼 블록 영역, 아이노드 블록 영역, 비트맵 블록 영역 및 데이터 블록 영역을 포함한다. 이에 의해, 비휘발성 저장장치에 적합한 파일시스템을 이용한 파일 관리가 가능해진다.A file management method using a file system suitable for a nonvolatile memory is provided. The file system used for managing files stored in the storage device in the present file management method includes a super block area, an inode block area, a bit map block area, and a data block area. Thus, file management using a file system suitable for a nonvolatile storage device becomes possible.
Description
본 발명은 파일 관리 방법에 관한 것으로, 더욱 상세하게는, 파일을 저장 및 관리하기 위한 파일시스템을 이용한 파일 관리 방법에 관한 것이다.
The present invention relates to a file management method, and more particularly, to a file management method using a file system for storing and managing a file.
현재 대부분의 컴퓨터에서 사용하는 파일 시스템은 하드 디스크의 하드웨어 특성을 기반으로 하는 파일 시스템으로 하드디스크의 하드웨어 단점을 보완하고자 다양한 알고리즘이 적용되었다. 하드디스크의 성능을 극대화 하기 위해 EFS(Extended File System)의 경우 블록그룹(Block Group)을 이용하여 한 블록그룹 안에 파일의 정보를 저장하도록 구성되었다.The file system used in most computers is a file system based on the hardware characteristics of the hard disk, and various algorithms have been applied to compensate for the hardware shortcomings of the hard disk. In order to maximize the performance of the hard disk, the EFS (Extended File System) is configured to store file information in a block group using a block group.
최근, 낸드 플래시(Nand Flash)를 기반으로 하는 SSD(Solid State Drive)가 보급되고 있다. SSD에 사용되는 메모리 소자는 DRAM 또는 Nand Flash 등이 있다. Nand Flash SSD의 경우 Nand Flash 하드웨어 특성으로 인하여 HDD기반 File system이 동작하지 않음에 따라 FTL(Flash Translation Layer)이란 기술을 이용하여 하드웨어 특성을 보완하고 있다.Recently, solid state drives (SSDs) based on NAND Flash have become popular. The memory device used for SSD is DRAM or NAND Flash. In the case of Nand Flash SSD, due to Nand Flash hardware characteristics, the HDD based file system does not work and the hardware characteristics are complemented by using the technology called Flash Translation Layer (FTL).
또한, DRAM SSD의 경우 휘발성 메모리이기 때문에 전원이 없을 경우 내부에 저장된 데이터가 삭제되는 단점이 있다. 이와 관련되어 비휘발성 메모리와 함께 비휘발성 메모리를 SSD로 구성하기 위한 연구가 이뤄지고 있으며, 비휘발성 메모리로 PCM(Phase Change Memory), STTM(Spin Torque Transfer Memory), NVRAM(Non-Volatile RAM) 등의 소자가 개발되고 있다.In addition, since the DRAM SSD is a volatile memory, data stored in the DRAM SSD is erased when there is no power source. In this regard, studies have been conducted to construct a nonvolatile memory together with nonvolatile memory as an SSD. Nonvolatile memory such as PCM (Phase Change Memory), STTM (Spin Torque Transfer Memory), NVRAM Devices are being developed.
비휘발성 메모리로 구성된 SSD를 사용할 경우 기존 하드디스크의 특성에 맞춰서 설계된 기존의 파일 시스템들은 비휘발성 메모리 SSD의 성능을 모두 이용할 수 없다. 따라서, SSD를 추후 대용량 스토리지 시스템에서 사용하기 위해서는 기존의 파일 시스템의 설계상 구조적인 문제점을 갖게 되므로, 이를 해결하기 위한 방안의 모색이 요청된다.
In case of using SSD composed of nonvolatile memory, existing file systems designed according to the characteristics of existing hard disk can not utilize all the performance of nonvolatile memory SSD. Therefore, in order to use the SSD in a large capacity storage system in the future, the conventional file system has a structural problem, and therefore, a method for solving the problem is required.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 수퍼 블록 영역, 아이노드 블록 영역, 비트맵 블록 영역, 및 데이터 블록 영역을 포함하는 파일시스템을 이용한 파일 관리 방법을 제공함에 있다.
SUMMARY OF THE INVENTION It is an object of the present invention to provide a file management method using a file system including a super block area, an inode block area, a bit map block area, and a data block area, .
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 파일 관리 방법은, 메모리에 파일을 저장하는 단계; 및 파일시스템으로, 상기 메모리에 저장된 파일을 관리하는 단계;를 포함하고, 상기 파일 시스템은, 상기 파일 시스템의 전체 정보가 저장된 복수개의 수퍼 블록(Super Block)이 저장되는 수퍼 블록 영역; 파일에 대한 정보를 저장하는 복수개의 아이노드(Inode)가 기록되는 아이노드 블록 영역; 모든 블록에 대한 사용 현황을 각 블록별 비트로 표현한 복수개의 비트맵 블록(Bitmap Block)이 기록되는 비트맵 블록 영역; 및 실제 파일 데이터가 저장되는 복수개의 데이터 블록이 기록되는 데이터 블록 영역;을 포함한다.According to an aspect of the present invention, there is provided a file management method comprising: storing a file in a memory; And managing a file stored in the memory with a file system, wherein the file system includes: a super block area storing a plurality of super blocks in which the entire information of the file system is stored; An inode block area in which a plurality of inodes for storing information on files are recorded; A bitmap block area in which a plurality of bitmap blocks (bitmap blocks) representing the usage statuses of all blocks are expressed by bits for each block; And a data block area in which a plurality of data blocks for storing actual file data are recorded.
또한, 파일시스템은, 파일 시스템의 전체 정보가 저장된 복수개의 수퍼 블록(Super Block)이 저장되는 수퍼 블록 영역; 파일에 대한 정보를 저장하는 복수개의 아이노드(Inode)가 기록되는 아이노드 블록 영역; 모든 블록에 대한 사용 현황을 각 블록별 비트로 표현한 복수개의 비트맵 블록(Bitmap Block)이 기록되는 비트맵 블록 영역; 및 실제 파일 데이터가 저장되는 복수개의 데이터 블록이 기록되는 데이터 블록 영역;을 포함할 수 있다.The file system may further include a super block area storing a plurality of super blocks in which the entire information of the file system is stored; An inode block area in which a plurality of inodes for storing information on files are recorded; A bitmap block area in which a plurality of bitmap blocks (bitmap blocks) representing the usage statuses of all blocks are expressed by bits for each block; And a data block area in which a plurality of data blocks storing real file data are recorded.
그리고, 상기 파일시스템은, 하나의 볼륨(volume) 또는 하나의 파티션(partition)을 상기 수퍼 블록 영역, 아이노드 블록 영역, 비트맵 블록 영역, 및 데이터 블록 영역으로 구성할 수도 있다.The file system may comprise a volume or a partition as the super block area, the inode block area, the bit map block area, and the data block area.
또한, 상기 수퍼 블록 영역은, 상기 파일시스템이 적용된 파티션의 전체 크기 정보, 블록의 개수와 크기 정보, 상기 파일시스템으로 포맷될 당시 계산된 아이노드 블록의 개수, 사용가능한 아이노드 블록의 개수와 다음에 사용될 아이노드 블록 정보, 사용가능한 데이터 블록의 개수와 다음에 사용될 블록의 정보, 비트맵 블록 영역의 주소, 및 상기 파일시스템 시간정보 중 적어도 하나를 포함할 수도 있다.The super block area may include at least one of a total size information of a partition to which the file system is applied, a number of blocks and size information, a number of inode blocks calculated at the time of being formatted into the file system, The number of usable data blocks, the information of the next block to be used, the address of the bitmap block area, and the file system time information.
그리고, 상기 수퍼 블록 영역은, 제1 수퍼 블록과 상기 제1 수퍼 블록을 백업하기 위한 제2 수퍼 블록을 포함할 수도 있다.The super block area may include a first super block and a second super block for backing up the first super block.
또한, 상기 아이노드는, 체크섬(CheckSum), 파일이 사용중인 블록의 개수인 블록정보(Blocks), 아이노드 모드(InodeMode), 파일의 UID(User ID), 파일의 GID(Group ID), 링크(LINK), 파일 보안을 위한 권한 정보(MODE(xWRXWRXWRx)), 접근시간(ACCESSTIME), 생성시간(CREATETIME), 수정시간(MODIFYTIME), 파일 전체의 크기(SIZE), 다음 아이노드 정보(NEXT INODE), 삭제시간(DELETE TIME), 플래그(FLAG), 디렉토리 구성 정보, 파일이름 정보, 및 파일 데이터 위치정보 중 적어도 하나를 포함할 수도 있다.In addition, the inode includes a check sum (CheckSum), block information (Blocks) as the number of blocks in use by a file, an inode mode (InodeMode), a UID (User ID) of a file, a GID (LINK), permission information for file security (MODE (xWRXWRXWRx)), ACCESS TIME, CREATETIME, MODIFYTIME, SIZE of the whole file, next inode information ), A delete time (DELETE TIME), a flag (FLAG), directory configuration information, file name information, and file data location information.
그리고, 상기 디렉토리 구성 정보는, 상기 아이노드 블록에 대응되는 파일인 제1 파일이 위치된 제1 디렉토리에 대한 정보, 상기 제1 디렉토리의 하위 디렉토리에 대한 정보, 상기 제1 디렉토리 내에서 상기 제1 파일 바로 전에 생성된 파일 정보, 상기 제1 디렉토리 내에서 상기 제1 파일 바로 다음에 생성된 파일 정보, 상기 제1 디렉토리 내에서 가장 먼저 생성된 파일 정보, 및 상기 제1 디렉토리 내에서 가장 나중에 생성된 파일 정보를 포함할 수도 있다.The directory structure information may include information on a first directory in which a first file, which is a file corresponding to the inode block, is located, information on a subdirectory of the first directory, information on the first directory in the first directory, File information generated immediately before the file, file information generated immediately after the first file in the first directory, file information first created in the first directory, and file information generated last in the first directory, And may include file information.
또한, 상기 파일이름 정보는, 아이노드 번호, 파일이름 길이, 및 파일이름 정보를 포함하고, 상기 아이노드 번호는, 저장장치의 물리적인 주소값에 대응될 수도 있다.The file name information may include an inode number, a file name length, and a file name information, and the inode number may correspond to a physical address value of the storage device.
그리고, 상기 파일시스템은 비휘발성 메모리 장치에 적용될 수도 있다.
And, the file system may be applied to a nonvolatile memory device.
본 발명의 다양한 실시예에 따르면, 수퍼 블록 영역, 아이노드 블록 영역, 비트맵 블록 영역, 및 데이터 블록 영역을 포함하는 파일시스템을 제공할 수 있게 되어, 비휘발성 저장장치에 적합한 파일시스템을 제공할 수 있게 된다.
According to various embodiments of the present invention, it is possible to provide a file system including a super block area, an inode block area, a bit map block area, and a data block area, thereby providing a file system suitable for a nonvolatile storage device .
도 1a는 저장장치의 저장영역에 대한 물리적 구조를 도시한 도면,
도 1b는 본 발명의 일 실시예에 따른, 저장장치의 저장영역에 대한 논리적 파일 시스템 구조를 도시한 도면,
도 2는 본 발명의 일 실시예에 따른, 아이노드의 구조를 도시한 도면,
도 3은 본 발명의 일 실시예에 따른, 디렉토리 구성 정보를 설명하기 위해 제공되는 디렉토리 구조의 일 예이다.IA shows a physical structure for a storage area of a storage device,
Figure 1B illustrates a logical file system structure for a storage area of a storage device, according to one embodiment of the present invention;
2 illustrates a structure of an inode according to an embodiment of the present invention;
3 is an example of a directory structure provided for explaining directory configuration information according to an embodiment of the present invention.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.
도 1a는 저장장치의 저장영역에 대한 물리적 구조를 도시한 도면이다. 도 1a에 도시된 바와 같이 저장장치의 저장영역은 L개의 블럭으로 구성되어 있다. 저장장치는 저장영역을 블럭 단위로 관리한다.IA is a diagram showing the physical structure of a storage area of a storage device. As shown in FIG. 1A, the storage area of the storage device is composed of L blocks. The storage device manages the storage area on a block basis.
저장장치는 파일이 저장되는 비휘발성 메모리 저장장치이다. 구체적으로, 저장장치는 SSD(Solid State Drive), 구체적으로 Nand Flash SSD 등이 될 수 있다.A storage device is a non-volatile memory storage device in which files are stored. Specifically, the storage device may be a solid state drive (SSD), specifically, a Nand Flash SSD or the like.
도 1b는 본 발명의 일 실시예에 따른, 저장장치의 저장영역에 대한 논리적 파일 시스템(100)의 구조를 도시한 도면이다. 파일시스템(100)은 컴퓨터 파일에 이름을 붙이고, 저장이나 검색을 위해 논리적으로 그것들을 물리적 저장영역의 어디에 위치시켜야 하는지 등을 나타내는 논리적 구조이다.1B is a diagram illustrating the structure of a
파일시스템(100)은 이를 구현하기 위한 프로그램에 의해 저장장치에 의해 구현되며, 운영체제 하에서 포맷 프로그램을 통해 파일시스템(100)이 구현 및 설정된다.The
구체적으로, 컴퓨터에서 데이터를 기록하기 위해서는 미리 저장장치(예를 들어, SSD)에 데이터를 읽고, 쓰고, 찾기 위한 준비를 하여야 한다. 파일시스템(100)은 그 준비의 규칙을 정리해 놓은 것으로서 파일에 이름을 붙이고, 저장이나 검색을 위해 파일을 어디에 위치시킬 것인지를 나타내는 체계를 의미한다. 도스 윈도우OS/2,매킨토시,유닉스 등 모든 운영체제가 반드시 갖추고 있는데, 예를 들면 윈도의 FAT16·FAT32·NTFS, 리눅스의 ext2·raiserFS·ext3 등이 있다. 반면, 본 실시예에 따른 파일시스템(100)은, 상술한 기존의 파일시스템들과 달리, 비휘발성 메모리 장치를 위한 파일시스템(100)이다.Specifically, in order to record data on a computer, it is necessary to prepare for reading, writing, and searching data in a storage device (for example, SSD) in advance. The
도 1b에 도시된 바와 같이, 파일시스템(100)은 저장장치에 대한 하나의 볼륨(volume) 또는 하나의 파티션(partition)에 대해 수퍼 블록(Super Block) 영역(110), 아이노드(Inode) 블록 영역(120), 비트맵 블록 영역(130) 및 데이터 블록 영역(140)을 포함한다.As shown in FIG. 1B, the
수퍼 블록 영역(110)은 파일시스템(100)의 전체 정보가 저장된다. 구체적으로, 수퍼 블록 영역(110)은 파일시스템(100)이 적용된 파티션의 전체 크기 정보, 블록의 개수와 크기 정보, 파일시스템으로 포맷될 당시 계산된 아이노드 블록의 개수, 사용가능한 아이노드 블록의 개수와 다음에 사용될 아이노드 블록 정보, 사용가능한 데이터 블록의 개수와 다음에 사용될 블록의 정보, 비트맵 블록 영역(130)의 주소, 및 상기 파일시스템 시간정보 중 적어도 하나를 포함한다. 이와 같은 정보들은 파일시스템(100)을 구성함에 있어서 필요한 정보들에 해당된다.The
또한, 수퍼 블록 영역(110)은 제1 수퍼 블록과 제1 수퍼 블록을 백업하기 위한 제2 수퍼 블록을 포함한다. 이와 같이, 수퍼 블록은 중요한 정보를 포함하고 있으므로, 제1 수퍼 블록과 이와 같은 내용의 백업용 제2 수퍼 블록이 마련된다.In addition, the
아이노드 블록 영역(120)에는 파일에 대한 정보를 저장하는 복수 개의 아이노드(Inode)가 기록된다. 아이노드 블록 영역(120)은 복수개의 아이노드 블록을 포함하고, 하나의 아이노드 블록은 그 크기에 따라 복수개의 아이노드를 포함한다. 아이노드에 대한 상세한 설명은 도 2를 참고하여 이후에 설명한다.In the
비트맵 블록 영역(130)은 모든 물리적 블록에 대한 사용 현황을 각 블록별 비트로 표현한 비트맵을 포함한다. 예를 들어, 비트맵 블록에는 현재 데이터가 기록된 블록을 '1'로 표시하고, 데이터가 기록되지 않은 블록을 '0'으로 표시될 수도 있다.The
데이터 블록 영역(140)은 실제 파일 데이터가 저장되는 복수개의 데이터 블록을 포함한다.The
이와 같은 구조의 파일시스템(100)은 비휘발성 메모리 장치에 적용되어, 이에 따라 빠른 파일 탐색 속도를 가지고 비휘발성 메모리에서 최대의 성능을 낼 수 있게 된다.The
도 2는 아이노드의 구조를 도시한 도면이다. 도 2에 도시된 바와 같이 아이노드(200)는 체크섬(CheckSum), 파일이 사용중인 블록의 개수인 블록 정보(Blocks), 아이노드 모드(InodeMode), 파일의 UID(User ID), 파일의 GID(Group ID), 링크(LINK), 파일 보안을 위한 권한 정보(MODE(xWRXWRXWRx)), 접근시간(ACCESSTIME), 생성시간(CREATETIME), 수정시간(MODIFYTIME), 파일 전체의 크기(SIZE), 다음 아이노드 정보(NEXT INODE), 삭제시간(DELETE TIME), 플래그(FLAG), 디렉토리 구성 정보(210), 파일이름 정보(220), 및 파일 데이터 위치정보(230) 중 적어도 하나를 포함한다.2 is a diagram showing a structure of an inode. As shown in FIG. 2, the inode 200 includes a checksum, block information (Blocks) of the number of blocks in use by a file, an inode mode (InodeMode), a UID (User ID) (MODE (xWRXWRXWRx)), access time (ACCESSTIME), creation time (CREATETIME), modification time (MODIFYTIME), size of whole file (SIZE), next The
여기에서, 디렉토리 구성 정보(210)는 현재 파일이 포함된 디렉토리 내에서 어떤 위치인지를 찾기위해 참고되는 정보들에 해당된다. 구체적으로, 디렉토리 구성 정보(210)는 아이노드 블록에 대응되는 파일인 제1 파일이 위치된 제1 디렉토리에 대한 정보(Parent), 제1 디렉토리의 하위 디렉토리에 대한 정보(Child), 제1 디렉토리 내에서 제1 파일 바로 전에 생성된 파일 정보(Prev), 제1 디렉토리 내에서 제1 파일 바로 다음에 생성된 파일 정보(Next), 제1 디렉토리 내에서 가장 먼저 생성된 파일 정보(Head) 및 제1 디렉토리 내에서 가장 나중에 생성된 파일 정보(Tail)를 포함한다.Here, the
디렉토리 구성 정보(210)에 관하여, 도 3을 참고하여 예를 들어 설명한다. 도 3은 본 발명의 일 실시예에 따른, 디렉토리 구성 정보(210)를 설명하기 위해 제공되는 디렉토리 구조의 일 예이다. 도 3에서 파일 및 디렉토리들은 알파벳 순으로 생성된 것으로 가정한다.The
현재 아이노드(200)가 나타내고 있는 파일이 'h.txt'인 경우, Parent는 디렉토리 "B"가 되고, Child는 디렉토리 "G"가 되며, Prev는 디렉토리 "G"가 되고, Next는 "i.txt"가 되며, Head는 "f.txt"가 되고, Tail은 "i.txt"가 된다.If the file currently indicated by the inode 200 is 'h.txt', Parent becomes directory "B", Child becomes directory "G", Prev becomes directory "G", Next becomes "i .txt ", Head is" f.txt ", and Tail is" i.txt ".
이와 같이, 본 실시예에 따른 파일시스템(100)은 아이노드에 대응되는 파일에 관한 디렉토리 구성 정보를 포함하게 된다.As described above, the
한편, 파일이름 정보(220)는 파일 이름에 관한 정보가 저장되는 영역으로, 아이노드 번호, 파일이름 길이, 및 파일이름 정보를 포함한다. 여기에서, 아이노드 번호는 저장장치의 물리적인 주소값에 대응된다.On the other hand, the
그리고, 파일 데이터 위치정보(230)는 파일 데이터가 데이터 블록 영역(140) 중 어느 곳에 저장되어있는지에 대한 주소 정보들이 저장된다.The file
본 실시예에 따른 파일시스템(100)은 이와 같은 구조의 아이노드(200)를 포함하기 때문에, 부모 디렉토리 및 같은 디렉토리 뎁스(depth)의 파일에 대한 정보가 한 아이노드에 저장되어 있고 아이노드 번호가 저장장치의 물리적인 주소값에 대응되기 때문에, 직관적이고 빠른 파일 탐색구조를 가질 수 있게 된다.Since the
한편, 본 실시예에 따른 파일시스템(100)을 구현하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.Needless to say, the technical idea of the present invention can also be applied to a computer-readable recording medium having a computer program for implementing the
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention.
100 : 파일시스템 110 : 수퍼 블록 영역
120 : 아이노드 블록 영역 130 : 비트맵 블록 영역
140 : 데이터 블록 영역 200 : 아이노드
210 : 디렉토리 구성 정보 220 : 파일이름 정보
230 : 파일 데이터 위치정보100: File system 110: Superblock area
120: inode block area 130: bitmap block area
140: Data block area 200: Inode
210: Directory configuration information 220: File name information
230: File data location information
Claims (6)
파일시스템으로, 상기 저장장치에 저장된 파일을 관리하는 단계;를 포함하고,
상기 파일 시스템은,
상기 파일 시스템의 전체 정보가 저장된 복수개의 수퍼 블록(Super Block)이 저장되는 수퍼 블록 영역;
파일에 대한 정보를 저장하는 복수개의 아이노드(Inode)가 기록되는 아이노드 블록 영역;
데이터 블록에 대한 사용 현황을 각 블록별 비트로 표현한 복수개의 비트맵 블록(Bitmap Block)이 저장되는 비트맵 블록 영역; 및
실제 파일 데이터가 저장되는 복수개의 데이터 블록이 저장되는 데이터 블록 영역;을 포함하고,
상기 아이노드는,
파일이 포함된 디렉토리 내에서 어떤 위치인지를 찾기 위해 참고되는 정보인 디렉토리 구성 정보를 포함하고,
상기 디렉토리 구성 정보는,
아이노드 블록에 대응되는 파일이 위치된 디렉토리에 대한 정보, 디렉토리의 하위 디렉토리에 대한 정보, 디렉토리 내에서 파일 바로 전에 생성된 파일 정보, 디렉토리 내에서 파일 바로 다음에 생성된 파일 정보, 디렉토리 내에서 가장 먼저 생성된 파일 정보 및 디렉토리 내에서 가장 나중에 생성된 파일 정보를 포함하며,
상기 수퍼 블록 영역은,
상기 파일시스템이 적용된 파티션의 전체 크기 정보, 블록의 개수와 크기 정보, 상기 파일시스템으로 포맷될 당시 계산된 아이노드 블록의 개수, 사용가능한 아이노드 블록의 개수와 다음에 사용될 아이노드 블록 정보, 사용가능한 데이터 블록의 개수와 다음에 사용될 블록의 정보, 비트맵 블록 영역의 주소, 및 상기 파일시스템 시간정보를 포함하는 것을 특징으로 하는 파일 관리 방법.
Storing a file in a storage device; And
Managing, as a file system, a file stored in the storage device,
The file system comprises:
A super block area storing a plurality of super blocks in which the entire information of the file system is stored;
An inode block area in which a plurality of inodes for storing information on files are recorded;
A bitmap block area in which a plurality of bitmap blocks (bitmap blocks) representing the usage statuses of data blocks are expressed by bits for each block; And
And a data block area in which a plurality of data blocks storing actual file data are stored,
The in-
Directory configuration information which is information to be referenced to find a location in a directory containing the file,
The directory configuration information includes:
Information about the directory where the file corresponding to the inode block is located, information about the subdirectory of the directory, file information created just before the file in the directory, file information generated immediately after the file in the directory, The file information generated first and the file information generated most later in the directory,
Wherein the super block area comprises:
Information on the total size of the partition to which the file system is applied, the number of blocks and size information, the number of inode blocks calculated at the time of being formatted by the file system, the number of usable inode blocks, The number of possible data blocks, the information of a block to be used next, the address of a bitmap block area, and the file system time information.
상기 파일시스템은,
하나의 볼륨(volume) 또는 하나의 파티션(partition)을 상기 수퍼 블록 영역, 아이노드 블록 영역, 비트맵 블록 영역 및 데이터 블록 영역을 포함하여 구성하는 것을 특징으로 하는 파일 관리 방법.
The method according to claim 1,
The file system comprises:
Wherein one volume or one partition comprises the super block area, the inode block area, the bit map block area, and the data block area.
상기 수퍼 블록 영역은,
제1 수퍼 블록과 상기 제1 수퍼 블록을 백업하기 위한 제2 수퍼 블록을 포함하는 것을 특징으로 하는 파일 관리 방법.
The method according to claim 1,
Wherein the super block area comprises:
And a second super block for backing up the first super block and the first super block.
상기 아이노드는, 파일이름 정보를 포함하고,
상기 파일이름 정보는, 아이노드 번호, 파일이름 길이, 및 파일이름 정보를 포함하며,
상기 아이노드 번호는, 저장장치의 물리적인 주소값에 대응되는 것을 특징으로 하는 파일 관리 방법.
The method according to claim 1,
Wherein the inode includes file name information,
Wherein the file name information includes an inode number, a file name length, and file name information,
Wherein the inode number corresponds to a physical address value of the storage device.
상기 저장장치는,
비휘발성 메모리인 것을 특징으로 하는 파일 관리 방법.
The method according to claim 1,
The storage device comprising:
Wherein the nonvolatile memory is a nonvolatile memory.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120007547A KR101413985B1 (en) | 2012-01-26 | 2012-01-26 | Method for file management using file system adapted to non-volatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120007547A KR101413985B1 (en) | 2012-01-26 | 2012-01-26 | Method for file management using file system adapted to non-volatile memory |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130086694A KR20130086694A (en) | 2013-08-05 |
KR101413985B1 true KR101413985B1 (en) | 2014-07-08 |
Family
ID=49213798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120007547A KR101413985B1 (en) | 2012-01-26 | 2012-01-26 | Method for file management using file system adapted to non-volatile memory |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101413985B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11875036B2 (en) | 2021-01-13 | 2024-01-16 | Samsung Electronics Co., Ltd. | Computing system including host and storage system and having increased write performance |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102524432B1 (en) * | 2018-04-09 | 2023-04-24 | 에스케이하이닉스 주식회사 | Memory system and operation method thereof |
KR102227113B1 (en) | 2019-04-01 | 2021-03-15 | 최재호 | A file processing apparatus based on a shared file system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050053094A (en) * | 2003-12-02 | 2005-06-08 | 주식회사 하우리 | Method for recovering data in ext2 file system, and computer-readable storage medium recorded with data-recover program |
KR20060073431A (en) * | 2004-12-23 | 2006-06-28 | 한국전자통신연구원 | File system for the hardward using the i/o acceleration technique and method for processing data in the same |
KR20110070697A (en) * | 2009-12-18 | 2011-06-24 | 한국전자통신연구원 | Apparatus and method of controlling metadata in asymmetric distributed file system |
-
2012
- 2012-01-26 KR KR1020120007547A patent/KR101413985B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050053094A (en) * | 2003-12-02 | 2005-06-08 | 주식회사 하우리 | Method for recovering data in ext2 file system, and computer-readable storage medium recorded with data-recover program |
KR20060073431A (en) * | 2004-12-23 | 2006-06-28 | 한국전자통신연구원 | File system for the hardward using the i/o acceleration technique and method for processing data in the same |
KR20110070697A (en) * | 2009-12-18 | 2011-06-24 | 한국전자통신연구원 | Apparatus and method of controlling metadata in asymmetric distributed file system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11875036B2 (en) | 2021-01-13 | 2024-01-16 | Samsung Electronics Co., Ltd. | Computing system including host and storage system and having increased write performance |
Also Published As
Publication number | Publication date |
---|---|
KR20130086694A (en) | 2013-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9424185B1 (en) | Method and system for garbage collection of data storage systems | |
US10810161B1 (en) | System and method for determining physical storage space of a deduplicated storage system | |
JP5975473B2 (en) | Backup method, restore method, storage system, and program | |
US9367448B1 (en) | Method and system for determining data integrity for garbage collection of data storage systems | |
US20090049260A1 (en) | High performance data deduplication in a virtual tape system | |
US20100262802A1 (en) | Reclamation of Thin Provisioned Disk Storage | |
US20180107402A1 (en) | System and method for data storage using log-structured merge trees | |
US9383936B1 (en) | Percent quotas for deduplication storage appliance | |
CN103064906B (en) | File management method and device | |
JP2008257725A (en) | Read/write for implementation to top of backup data, and multi-version control file system | |
JP2005166042A (en) | Data restoring method for ext2 file system, and recording medium recorded with its program | |
US8060481B1 (en) | Time indexed file system | |
KR101731606B1 (en) | Recovering method of data in cow-based file system using digital forensic technology | |
CN104199888A (en) | Data recovery method and device for resilient file system | |
US20170235493A1 (en) | Low-Cost Backup and Edge Caching Using Unused Disk Blocks | |
US11841826B2 (en) | Embedded reference counts for file clones | |
CN104484427A (en) | Video file storage device and video file storage method | |
KR101413985B1 (en) | Method for file management using file system adapted to non-volatile memory | |
US11409720B2 (en) | Metadata reduction in a distributed storage system | |
US20170351608A1 (en) | Host device | |
US8639656B2 (en) | Method for implementing persistent file pre-allocation | |
KR100987320B1 (en) | Data processing apparatus and Data procssing method, using FAT file system capable of fast file recovery | |
CN115480692A (en) | Data compression method and device | |
US10831624B2 (en) | Synchronizing data writes | |
CN113535092B (en) | Storage engine, method and readable medium for reducing memory metadata |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170512 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180406 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190313 Year of fee payment: 6 |