01. File System
저장 장치 내에서 데이터를 읽고 쓰기 위해 미리 정해놓은 약속.
02. File sytem 종류
(1) FAT
[Microsoft] File Allocation Table의 약어로 크기가 작은 저장 장치를 대상으로 만들었기 때문에 아주 단순한 구조로 되어있다.
현재는 이동식 저장 장치에서 많이 사용하며 연결 리스트 기반의 자료구조라서 검색에 좀더 오랜 시간이 걸리게 된다.
또한 파일 데이터 블록들의 단편화 현상 때문에 한 파일의 데이터일지라도 디스크 헤드가 여러번 이동해야한다.
(2) HPFS
[IBM] High Performance File System의 약어로 NTFS가 나오기까지 많은 영향을 준 파일 시스템이다.
FAT와는 달리 최조 설계부터 대용량 디스크에 적합한 구조로 제작되어 FAT에 비해 파일 손실과 단편화가 적다.
하지만 NTFS의 등장으로 현재는 더이상 사용하지 않는다.
(3) NTFS
[Microsoft] New Technology File System의 약어로 Windows NT 에서 사용되는 파일 시스템을 말한다.
대용량 저장 장치를 타겟으로 제작 되었으며 높은 안정성을 제공한다.
(4) UFS
유닉스의 대표 파일 시스템으로 현존하는 대부분의 유닉스에서 사용되는 파일 시스템의 근간이 된 파일 시스템이다.
(5) EXT2
리눅스의 기본 파일 시스템으로 UFS를 기반으로 제작되었다.
UFS 에서 사용하지 않는 구조를 제거하고 간단 명료하게 제작된 파일 시스템이라고 할 수 있다.
03. File System 요소
(1) Cluster
운영체제가 저장장치에 데이터를 읽고 쓰는 논리적인 기본단위, 즉 현재 사용하는 파일 시스템의 클러스터가 4KB 일때 만약 1KB의 데이터를 읽거나 쓰기 위해서는 한개 클러스터가 할당되는데 이때 4KB 가 할당되고 1KB는 사용되며 사용되지 않은 3KB는 낭비되는 영역이 된다.
[pic 1] 클러스터 할당
일반적으로 클러스터는 최초 포멧하거나 파일 시스템을 생성하는 경우에 지정할 수있으나 대용량 HDD의 경우 4KB 를 기본으로 사용한다.
(2) File
일반적으로 파일은 파일의 실제 위치, 크기 등의 속성이 기록된 "메타 데이터 영역"과 실제 데이터가 기록된 "데이터 영역"으로 나뉜다.
[pic 2] 파일 정보 요청 프로세스
파일 데이터 역시 클러스터 단위로 읽고 쓰이며 1Byte 라도 사용 되면 무조건 클러스터가 할당된다.
(3) Directory
파일을 계층화 하고 그룹화하여 관리하기 쉽도록 도와주는 개념이라고 할 수 있다.
디렉토리 역시 파일과 마찬가지로 메타 데이터와 파일 데이터로 구분이 되는데 디렉토리의 파일 데이터는 하위 디렉토리와 파일 리스트에 대한 정보가 기록된다.
+ 참고 서적 : 임베디드 개발자를 위한 파일 시스템의 원리와 실습
'Security > Forensic (practice)' 카테고리의 다른 글
[WIndows] 00 개요 (0) | 2014.10.16 |
---|---|
[File System] FAT 32 이론 및 수동 분석 (2) | 2014.08.03 |
[File System] MBR 분석 (1) | 2014.08.03 |
[File System] Partition VS Volume (0) | 2014.07.29 |