본문 바로가기

[+] Forensic

File System - FAT (1)

이번 글부터는 파일시스템 종류 중 하나인 FAT 파일시스템에 대해서 알아 볼 것이다.

이전 글 까지 파일시스템의 참조 모델에 대해서 알아 보았는데 이제부터는 각 파일 시스템 종류에서 각 참조 모델을 통해 어떻게 파일시스템이 이루어져 있는가를 알아 볼 것이다.

그럼 이제부터 FAT에 대해서 알아보자.

[FAT]
FAT(File Allocation Table) 파일시스템은 흔히 볼 수 있는 파일시스템으로 파일시스템 중 가장 간단한 구조를 가지고 있다. 종류에는 FAT12, FAT16, FAT32 가 있으며, 모든 윈도우와 대부분의 유닉스 기반 운영체제들에서 모두 지원하고 보통 우리가 사용하는 디지털 카메라의 플래시 카드와 USB 드라이브에서 볼 수 있다. 
FAT 파일시스템은 가장 간단한 구조이지만 간단한 구조이기 때문에 여러가지 기능들이 추가되어 정확하게 참조 모델로 구분하기가 애매한 구조이다.

 * 참고 : FAT 파일시스템은 응용 프로그램 참조 모델에 속하는 데이터가 존재하지 않는다. 

FAT 파일시스템에는 중요한 두가지의 구조체(디렉토리 엔트리, FAT)가 존재한다.
디렉토리 엔트리는 각 파일과 디렉토리를 데이터 구조체에 할당 할 때 사용되는 구조체를 말하며, 디렉토리 엔트리에는 다음과 같은 데이터가 포함된다.

 - 파일명
 - 크기
 - 파일 내용 시작 주소
 - 다른 메타 데이터


하나의 파일이나 하나의 디렉토리를 하나 이상의 클러스터에 할당 했다면 FAT 구조체를 통하여 나머지 클러스터를 찾을 수 있다.
FAT 구조체에는 파일 다음 클러스터와 클러스터의 할당 상태를 식별하기 위한 데이터가 포함된다.
위에서 FAT 파일 시스템의 종류를 나열 해 보았는데 종류들의 차이는 FAT 구조체 엔트리의 크기에서 차이가 난다.
아래는 디렉토리 엔트리 구조체와 FAT 구조체의 관계를 도식화 한 것이다.

 [그림 1 - 디렉토리 엔트리와 클러스터, FAT의 관계]

FAT 파일시스템의 물리적인 레이아웃은 아래와 같다.

[그림 2 - FAT 파일시스템의 물리적 레이아웃]

 
 - 예약 영역 : 파일시스템 참조 모델 데이터를 포함하는 영역으로, FAT12, FAT16 파일시스템의 경우 해당
                  영역의 크기는 보통 한개의 섹터 크기지만, 어떠한 경우에는 부트 섹터에서 해당 영역의 크기를
                  정의하기도 한다.
 - FAT 영역 : 주 FAT 구조체와 부(백업) FAT 구조체를 포함하는 영역으로, 예약된 영역 바로 다음 섹터부터
                  시작한다. 해당 영역의 크기는 FAT 구조체 수와 크기에 따라 달라진다.
 - 데이터 영역 : 파일과 디렉토리 내용을 저자하는 클러스터를 포함하는 영역이다. 

 

'[+] Forensic' 카테고리의 다른 글

File System - FAT (3)  (0) 2012.01.31
File System - FAT (2)  (0) 2012.01.31
File System (5)  (0) 2012.01.28
File System (4)  (0) 2012.01.27