운영체제는 저마다 고유의 디스크 포맷 방식을 사용합니다. 여기서 포맷이란 하드디스크에 자료를 기록하는 방법, 즉 하드디스크의 어느 부분에 어떤 방법으로 자료를 담을 것인지를 정하는 것입니다. 이러한 포맷 방식으로는 FAT16, FAT32 등이 있습니다. FAT16은 윈도우즈 95까지 사용된 포맷이며 FAT32는 윈도우즈 95 OSR2부터 사용된 포맷입니다. NTFS는 윈도우즈 NT를 위한 디스크 포맷 방식으로, 윈도우즈 2000 이상의 운영체제에서 사용됩니다. 한편, 리눅스는 MINIX, EXT, EXT2, EXT3 등을 사용하고 있습니다.
참고로 FAT의 뒤에 붙는 숫자는 하나의 드라이브에 존재하는 총 클러스터의 수를 의미합니다. 즉, FAT16에서 다룰 수 있는 총 클러스터의 수는 2의 16 제곱 = 65,536개가 됩니다. 곧, 드라이브 1개의 크기가 1GB라면 클러스터 1개의 크기는 1,073,741,824 / 65,536 = 16,384byte가 됩니다. 파일의 크기가 클러스터의 크기보다 작다고 하더라도 하나의 파일은 1개의 클러스터를 차지합니다. 그러므로 이렇게 큰 클러스터를 쓰게 되면 디스크에 슬랙(클러스터 중, 파일이 차지하고 남은 나머지 공간)이 많아지므로 디스크의 낭비가 심해집니다.
FAT16과 FAT32의 클러스터 지원 용량 비교
FAT16 | FAT32 | ||
파티션 | 클러스터 | 파티션 | 클러스터 |
128MB | 2KB | 260MB | 512B |
256MB | 4KB | 260MB ~ 8GB | 512B, 1KB, 2KB, 4KB |
512MB | 8KB | 8 ~ 16GB | 4, 8KB |
1GB | 16KB | 16 ~ 32GB | 8, 16KB |
2GB | 32KB | 32GB 이상 | 16, 32KB |