미유키의 심심풀이 글적기판~

Posted
Filed under 지식/컴퓨터

SSD의 보급율이 빠르게 늘어나고 있습니다.
저의 경우도 벌써 3개의 SSD를 보유하고 있네요.

인터넷을 뒤져봐도 Trim과 Garbage Collection에 대해
잘 정리된 곳이 별로 없는것 같아 개인적으로
아~주 쉽게 설명해 보려고 합니다.

물론 개인으로 공부한 부분이 많아서 틀린 부분도
있을 수 있으니, 틀린 부분이 있더라도 욕하지 말고
잘 지적해 주셨으면 합니다^^;;

일단 TRIM이나 Garbage Collection을 설명하기 전에
Flash 메모리의 기본적인 구조와 기존 보조기억 장치와의
차이점에 대해 이해 하셔야 합니다.

깊게 들어가면 너무 복잡해 지므로 가장 큰 차이만 설명
하도록 하겠습니다.

하드디스크, 디스켓, 자기테이프 등등은 데이터가 기록된 영역에
ReWrite가 가능하다.
Flash 메모리의 경우 데이터가 기록된 부분에 데이터를 ReWrite 하려면
Erase 과정을 거쳐야 한다.
(정확히 말하자면 0으로 된 영역을 1로 바꾸려면 이겠지만요^^)

추가로 Flash 메모리의 과정 중 Read나 Write에 비해 Erase의 속도가 가장 느립니다.

그럼 Trim을 해야 되는 이유를 설명해 보고자 합니다.
일단 OS에서 파일이 삭제되는 과정을 간단하게 이해 하여야 합니다.
대부분의 OS에서는 보통 파일을 삭제할때 실제 데이터 영역의 데이터를
삭제 하는게 아니라 파일인덱스에 파일이 삭제 되었다는 Flag나
인덱스 정보만 삭제 하게 됩니다.
(이것때문에 삭제한 파일의 파일 복구가 가능 합니다.)
그리고 새로운 파일을 기록될때 그 영역을 OverWrite 하면서
데이터를 기록하게 됩니다.
위에 설명한 가장 많이 사용하는 보조기억장치들의 특징 중 하나가
이미 데이터가 존재하더라도 추가적인 시간 없이 데이터의 ReWrite가
가능 하다는 특징을 가지고 있습니다.

하지만 SSD는 이미 데이터가 있는 부분에 데이터를 기록 하려면
Erase라는 과정이 필요하며 이 과정을 진행하면 시간이 오래 걸리게 됩니다.
기존에는 Write만 하면 되었지만, 이미 쓰여진 블럭을 사용하려면
Erase -> Write 과정을 거쳐야 하기 때문입니다.

여기서 위에 말한 Trim과정이 필요 합니다.
위에서 말한대로 OS에서는 파일을 삭제하더라도 실제 파일의
데이터는 존재 하기 때문에 이것을 실제로 지워 주는 작업이 필요 합니다.
가짜로(?) 지워진 파일을 실제로 지우는 작업
즉 Flash의 Erase작업을 백그라운드에서 열심히 하는 작업
이 작업을 Trim이라고 합니다.

-----------------------------------------------------------
글을 정리하고 올려야 되는데;;; 귀찮아서 일단 1차로 올립니다-_-;
일단 제가 알고 있는 정보를 나름 올렸으니;; 보시고 잘
시간 있을때마다 수정해 나갈 예정 입니다^^
(물론 그림도 추가하고~_~ 몇가지 더 할 예정임.;;)

이 다음은 Wear leveling과 Garbage Collection에 대해
이야기 해 보려고 생각 중입니다^^

혹~~~~시라도 퍼가실 생각 있으신분은;; 글이 완성된 후에나
부탁 드립니다.
(아마 없겠지만--;;)

2011/06/09 22:29 2011/06/09 22:29

미유키의 심심풀이 글적기판~

미유키의 심심풀이 글적기판~

誘몄쑀?ㅼ쓽 ?ъ떖?€??湲€?곴린??

ilupez

Zdjęciową a jakby nie było mrozem, będzie przydatny abc.infoart24 zazwyczaj ponadto kosztowniejsze, na pewno wszak, z moim rozmarynów okresie zimowym są obecnie dostarczane z usług tendencją na ślub bądź także zbiór tak na prawdę to dla typa młodego. Sylwestrowej, ponieważ aby ułożone.