메뉴 닫기

SSD의 삭제가 느린 이유.

저번 TRIM 관련 글에서 SSD의 삭제에 관해 느린점을 살작 언급하고 지나갔는데,

이번엔 SSD의 삭제가 느린 이유에 대해 간략하게 적어 볼까 합니다.

쉽게 이해하시려면 제가 쓴 ‘TRIM이 뭐길래’를 읽고 오시면 좋습니다.

 

우선 OS에서의 삭제 처리를 보도록 하죠. SSDHDD 모두 데이터를 삭제하면 실제로

데이터는 남아있지만 OS에서는 없는걸로 친다고 TRIM관련 글에서 말씀드린적 있습니다.

이후 삭제 처리된 공간을 사용할 때, HDD는 덮어쓰기를, SSD는 실제로 삭제를 한다고 말이죠.

HDDOS에서 사용할 때는 삭제 할 일이 없으니 당연히 삭제가 느릴 일도 없습니다.

SSD의 경우 그제서야 삭제를 하기 때문에, 느려지거나 프리징이 발생하게 되는것이죠.

그러나 TRIM 기능으로 시스템 유휴 상태에 삭제를 하기 때문에, 실제 SSD 사용자가

아 이 디스크는 삭제가 정말 느리군!’ 하고 인지할 일은 없습니다.

느끼고 싶으시면 TRIM을 사용 하지 않으시면 됩니다.

 

그런데 SSD의 삭제 처리가 느리지 않았다면 느려질 일도, 프리징이 생길일도 없습니다.

이는 저장 매체의 구조적 특징으로. 읽기, 쓰기는 ‘페이지’ 단위로 삭제는 ‘블록’ 단위로

하기 때문에 느리다고 말 할 수 있습니다무슨 소리냐! 페이지는 OS의 최소 단위인 4k.

그 페이지들이 모여서 하나의 512k의 블록을 형성합니다.

정리하면 읽기, 쓰기는 4k, 삭제는 512k 단위로 이루어 지는거죠.

그럼 SSD가 삭제하는 순서를 한번 보죠.

005

우선 삭제할 데이터를 찾겠죠.? 삭제 할려고 하는 데이터 용량이 8k 라고 했을경우.

두개 페이지 용량입니다(1페이지=4k) 그럼 두개의 페이지를 삭제 해야 겠죠.

그런데 삭제는 512k단위니 저 2개의 패이지가 있는 블록(512k)을 삭제해야 하는거죠.

문제는 그 블록에 있던 다른 아무 상관없는 데이터도 같이 삭제될 처지가 된 겁니다.

그래서 그 블록에 있는 모든 데이터를 캐시 매모리로 옮긴 후.해당 블록을 삭제 합니다.

그리고 삭제할 8k 데이터를 빼고, 나머지 데이터를 다시 블록으로 옮겨 넣는거죠.

느리겠죠? 이건 느릴 수 밖에 없는 겁니다.

 

[polldaddy rating=”7739789″]

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다