Share via


[Askcore]NTFS 파일이 커져가는 4단계

하나의 NTFS 파일이 생성되면 1KB의 레코드가 생기게 됩니다. 여기서 많은 사람들이 오해하기 쉬운 것이 있는데 파일은 하나의 데이터 로 이루어져 있는 것이 아니고 데이터는 파일의 속성 중 하나라는 것 입니다.

파일은 여러개의 속성으로 이루어져 있고 각 속성은 헤더정보를 가지고 있습니다.

 

1단계 : 완전상주(Completely resident)

한 줄짜리 텍스트파일을 만들 경우 베이스 레코드에 모든 정보가 다 존재할 수 있습니다. 이런 것을 상주한다고 합니다. 파일의 모든 데이터가 기본 레코드 세그먼트에 상주하고 있는 것 입니다. 다시 말하면 파일의 모든 내용이 MFT 안에 존재하고 1KB 가 될때까지 이 구조를 유지 합니다.

 

2단계 : 비상주데이터(Nonsident Data)

데이터의 크기가 1KB를 넘어가는 경우 데이터가 디스크의 다른 곳에 위치하게 되고 연결정보를 베이스 레코드에 만들게 됩니다. 하나의 데이터 영역에 위치 시킬 수 없을 경우 분할하여 다른 위치에 위치하게 됩니다.

 

3단계 : 비상주속성 (Nonresident Attribute)

파일의 크기가 커져서 속성 정보가 더 이상 베이스 레코드 안에 존재할 수 없을 경우 기본 레코드에 속성리스트를 생성한 후 자식 리스트를 가리키게 합니다. 자식레코드에는 속성을 추가하여 데이터를 연결 시키고 데이터가 더 많아지면 추가로 자식 레코드를 만듭니다.

 

4단계 : 비상주속성리스트(Nonresident Attribute List)

속성 리스트 마저도 너무 커지면 베이스 레코드 밖에 속성 리스트를 위치하게 됩니다.

 

The Four Stages of NTFS File Growth

https://blogs.technet.com/askcore/archive/2009/10/16/the-four-stages-of-ntfs-file-growth.aspx