125 0

TRIM Command를 위한 FTL 설계

Title
TRIM Command를 위한 FTL 설계
Other Titles
FTL Design for TRIM Command
Author
김주현
Alternative Author(s)
Kim, Joo Hyun
Advisor(s)
원유집
Issue Date
2011-02
Publisher
한양대학교
Degree
Master
Abstract
플래시 메모리는 비 휘발성 특성을 갖는 메모리 반도체로서 종래의 자기 디스크보다 빠른 접근과 읽기 속도, 병렬화가 용이하지만, 덮어쓰기가 불가능하고 삭제의 단위가 읽기 쓰기 단위보다 크며, 제한된 쓰기 횟수 등의 다른 특성을 가지고 있다. 플래시 메모리를 기반으로 하는 SSD(Solid State Disk)는 종래의 하드디스크에 비하여 월등히 높은 성능을 나타내지만, 하드 디스크를 사용하기 위에 제공되는 파일 시스템을 그대로 SSD에 사용하면서 여러 가지 어려운 문제 들이 발생한다. 특히 512 Byte 크기의 섹터 단위로 I/O를 처리하는 것, 임의 위치에 데이터 기록, 덮어쓰기 등은 플래시 메모리에서 처리하기 어려운 부분이다. SSD내에 FTL(Flash Translation Layer)은 플래시 메모리에 특성을 감추고 하드디스크와 같이 동작하면서 이로 인한 문제점을 최소화 한다. 특히 하드디스크와 같이 동작하기 위한 여러 가지 연구가 진행되고 있지만 파일 시스템을 SSD에 맞게 구성하는 연구는 많지 않다. 파일 시스템은 O/S를 비롯하여 여러 응용프로그램들이 사용하기 때문에 전반적인 변경은 쉽지 않지만, “Design tradeoffs for SSD performance”[7] 에서 주장한 것과 같이 파일 시스템에서 덮어쓰기를 최소화 하는 방법으로 SSD의 성능을 개선할 수 있다. 하지만, 데이터를 기록하고 사용하는 다양한 응용프로그램의 호환성을 유지하면서 SSD에 적합하게 파일 시스템을 변경하는 것은 어려운 과제 이다. 2007년 Microsoft에서 제안한 “Dataset management Commands Proposal for ATA-8 ACS2”[8] 은 SSD에 최적화된 기능을 포함하는 것으로 ATA-8 표준으로 채택되었다. 이 표준에는 사용하지 않는 섹터의 목록을 파일 시스템에서 스토리지로 전달할 수 있는 TRIM 기능을 포함하는데 현재 Windows 7과 Windows 2008 Server R2에서 사용중인 NTFS 파일 시스템에서 이 기능이 구현되어 있고 이를 지원하는 SSD도 계속 출시되고 있다. TRIM 명령을 좀더 살펴보면, 사용하지 않는 섹터 의 목록을 파일 시스템에서 저장장치로 전달할 수 있도록 할 뿐, 그 것으로 어떠한 성능향상도 기대할 수 없다. 결국 TRIM 명령은 파일 시스템과 저장장치에서 어떻게 처리할 것인지가 매우 중요하다. 본 연구에서는 TRIM을 지원하는 파일 시스템과 연계하여 TRIM을 지원하는 FTL을 설계하고 기능을 분석하여 어느 정도의 효과가 있고 이를 좀더 효과적으로 처리하는 방법을 찾고자 한다. 하지만, 실 시스템에서 I/O 데이터를 추적하고 이를 바탕으로 재현하면서 새로운 기능을 분석하는 기존의 저장장치 성능 분석 방법은 TRIM 명령을 포함하여 내부 구조가 완전히 공개 되지 않은 NTFS와 같은 파일시스템 환경에 사용하기 어렵다. TRIM 명령 자체가 I/O 처리 요청이 아니며 TRIM기능을 NTFS에서 활성화 시키는 방법이나 NTFS에서 발생하는 I/O 정보를 정확하게 수집하기도 어렵기 때문이다. 또한 기존 방법은 I/O처리가 빨라지는 만큼 O/S나 응용프로그램에 어떠한 영향이 있는지 알 수 없다. 따라서 본 연구에서는 이러한 제한 조건이 없는 System Emulator을 사용한 저장장치 분석 도구를 개발하였다. 이것은 System Emulator를 사용하는 만큼 O/S와 응용프로그램이 실시간으로 동작하면서 저장장치의 모든 상태 정보를 제공한다. 이와 더불어 저장장치상에 병렬화 처리가 포함된 Hybrid-mapping FTL과 Page-mapping FTL을 구현하고 각각 TRIM 명령을 사용하였을 때와 사용하지 않을 때를 비교 분석 하였다. 실험결과 전체적으로 10% 이상의 성능 향상이 나타났지만, 특정한 I/O 요청 패턴이나 가용한 용량이 제한되는 등의 특수한 경우에 오히려 성능저하가 발생하는 것을 확인할 수 있었다.
URI
https://repository.hanyang.ac.kr/handle/20.500.11754/139693http://hanyang.dcollection.net/common/orgView/200000415956
Appears in Collections:
GRADUATE SCHOOL[S](대학원) > ELECTRONICS AND COMPUTER ENGINEERING(전자컴퓨터통신공학과) > Theses (Master)
Files in This Item:
There are no files associated with this item.
Export
RIS (EndNote)
XLS (Excel)
XML


qrcode

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.

BROWSE