FAT, HPFS 및 NTFS 파일 시스템 개요

이 문서에서는 WINDOWS NT FAT(파일 할당 테이블), HPFS(고성능 파일 시스템) 및 NTFS(NT 파일 시스템)의 차이점과 장점과 단점에 대해 설명합니다.

적용 대상: Windows 10 - 모든 버전, Windows Server 2012 R2
원래 KB 번호: 100108

참고

HPFS는 Windows NT 버전 3.1, 3.5 및 3.51에서만 지원됩니다. Windows NT 4.0은 HPFS 파티션을 지원하지 않으며 액세스할 수 없습니다. 또한 FAT32 파일 시스템에 대한 지원은 Windows 98/Windows 95 OSR2 및 Windows 2000에서 사용할 수 있게 되었습니다.

FAT 개요

FAT는 지금까지 Windows NT 지원하는 파일 시스템의 가장 단순합니다. FAT 파일 시스템은 실제로 볼륨의 "맨 위"에 있는 테이블인 FAT(파일 할당 테이블)로 특징지어집니다. 볼륨을 보호하기 위해 FAT 복사본 2개가 손상될 경우에 대비하여 보관됩니다. 또한 시스템의 부팅 파일을 올바르게 배치할 수 있도록 FAT 테이블 및 루트 디렉터리를 고정된 위치에 저장해야 합니다.

FAT로 포맷된 디스크는 볼륨 크기에 따라 크기가 결정되는 클러스터에 할당됩니다. 파일을 만들면 디렉터리에 항목이 생성되고 데이터가 포함된 첫 번째 클러스터 번호가 설정됩니다. FAT 테이블의 이 항목은 파일의 마지막 클러스터임을 나타내거나 다음 클러스터를 가리킵니다.

FAT 테이블을 업데이트하는 것은 시간이 많이 걸리는 것 뿐만 아니라 매우 중요합니다. FAT 테이블이 정기적으로 업데이트되지 않으면 데이터 손실이 발생할 수 있습니다. FAT 테이블이 업데이트될 때마다 디스크 읽기 헤드의 위치를 드라이브의 논리 트랙 0으로 변경해야 하기 때문에 시간이 많이 걸립니다.

FAT 디렉터리 구조에 대한 조직이 없으며 파일에는 드라이브의 첫 번째 열린 위치가 제공됩니다. 또한 FAT는 읽기 전용, 숨겨진, 시스템 및 보관 파일 특성만 지원합니다.

FAT 명명 규칙

FAT는 기존 8.3 파일 명명 규칙을 사용하며 모든 파일 이름은 ASCII 문자 집합으로 만들어야 합니다. 파일 또는 디렉터리의 이름은 최대 8자, 마침표(.) 구분 기호 및 최대 3자 확장명까지 지정할 수 있습니다. 이름은 문자 또는 숫자로 시작해야 하며 다음을 제외한 모든 문자를 포함할 수 있습니다.

. " / \ [ ] : ; | = ,

이러한 문자를 사용하는 경우 예기치 않은 결과가 발생할 수 있습니다. 이름에 공백을 포함할 수 없습니다.

예약된 이름은 다음과 같습니다.

CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN, NUL

모든 문자는 대문자로 변환됩니다.

FAT의 이점

지원되는 파일 시스템에서 Windows NT 삭제 취소를 수행할 수 없습니다. 삭제 취소 유틸리티는 Windows NT 수행할 수 없는 하드웨어에 직접 액세스하려고 합니다. 그러나 파일이 FAT 파티션에 있고 시스템이 MS-DOS에서 다시 시작되는 경우 파일을 삭제할 수 있습니다. FAT 파일 시스템은 약 200MB 미만의 드라이브 및/또는 파티션에 가장 적합합니다. FAT는 오버헤드가 거의 없는 것으로 시작하기 때문입니다. FAT 이점에 대한 자세한 내용은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

FAT의 단점

200MB 이상의 드라이브 또는 파티션을 사용하는 경우 FAT 파일 시스템을 사용하면 안 됩니다. 볼륨 크기가 증가함에 따라 FAT를 사용한 성능이 빠르게 감소하기 때문입니다. FAT 파티션인 파일에 대한 사용 권한을 설정할 수 없습니다.

FAT 파티션의 크기는 MS-DOS에서 Windows NT 및 2GB에서 최대 4GB로 제한됩니다.

FAT의 다른 단점에 대한 자세한 내용은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Microsoft Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

HPFS 개요

HPFS 파일 시스템은 OS/2 1.2와 함께 처음 도입되어 시장에 출시된 더 큰 하드 드라이브에 더 큰 액세스를 허용했습니다. 또한 네트워크 서버 시장의 증가하는 요구에 대한 명명 시스템, 조직 및 보안을 확장하기 위해 새 파일 시스템이 필요했습니다. HPFS는 FAT의 디렉터리 조직을 유지 관리하지만 파일 이름에 따라 디렉터리의 자동 정렬을 추가합니다. 파일 이름은 최대 254개의 더블 바이트 문자로 확장됩니다. 또한 HPFS를 사용하면 파일을 "데이터"와 특수 특성으로 구성하여 다른 명명 규칙 및 보안을 지원하는 측면에서 유연성을 높일 수 있습니다. 또한 할당 단위가 클러스터에서 실제 섹터(512바이트)로 변경되어 디스크 공간 손실이 줄어듭니다.

HPFS에서 디렉터리 항목은 FAT보다 더 많은 정보를 보유합니다. 특성 파일뿐만 아니라 수정, 생성 및 액세스 날짜 및 시간에 대한 정보가 포함됩니다. 파일의 첫 번째 클러스터를 가리키는 대신 HPFS 아래의 디렉터리 항목은 FNODE를 가리킵니다. FNODE는 파일의 데이터 또는 파일의 데이터를 가리킬 수 있는 포인터 또는 파일의 데이터를 가리키는 다른 구조를 포함할 수 있습니다.

HPFS는 인접한 섹터에 가능한 한 많은 파일을 할당하려고 시도합니다. 이 작업은 파일의 순차적 처리를 수행할 때 속도를 높이기 위해 수행됩니다.

HPFS는 드라이브를 일련의 8MB 대역으로 구성하며 가능한 경우 이러한 밴드 중 하나에 파일이 포함됩니다. 이러한 각 밴드 사이에는 2K 할당 비트맵이 있으며, 이 비트맵은 밴드 내의 어떤 섹터가 할당되어 있고 할당되지 않은 섹터를 추적합니다. 드라이브 헤드가 디스크의 논리적 상단(일반적으로 원통 0)으로 돌아갈 필요가 없지만 파일을 저장할 위치를 결정하기 위해 가장 가까운 대역 할당 비트맵으로 돌아가면 성능이 향상됩니다.

또한 HPFS에는 다음과 같은 몇 가지 고유한 특수 데이터 개체가 포함되어 있습니다.

슈퍼 블록

슈퍼 블록은 논리 섹터 16에 있으며 루트 디렉터리의 FNODE에 대한 포인터를 포함합니다. HPFS를 사용할 때 가장 큰 위험 중 하나는 나쁜 섹터로 인해 슈퍼 블록이 손실되거나 손상된 경우 드라이브의 나머지 부분도 괜찮더라도 파티션 내용이 손상된다는 것입니다. 좋은 섹터 16을 사용하여 모든 것을 다른 드라이브에 복사하고 슈퍼 블록을 다시 빌드하여 드라이브의 데이터를 복구할 수 있습니다. 그러나 이것은 매우 복잡한 작업입니다.

예비 블록

예비 블록은 논리 섹터 17에 있으며 "핫 픽스" 테이블과 예비 디렉터리 블록을 포함합니다. HPFS에서 잘못된 섹터가 감지되면 "핫 픽스" 항목은 잘못된 섹터 대신 기존 양수 섹터를 논리적으로 가리키는 데 사용됩니다. 쓰기 오류를 처리하는 이 기술을 핫 픽스라고 합니다.

핫 픽싱은 잘못된 섹터로 인해 오류가 발생하면 파일 시스템이 정보를 다른 섹터로 이동하고 원래 섹터를 나쁜 것으로 표시하는 기술입니다. 이 모든 작업은 디스크 I/O를 수행하는 모든 애플리케이션에 투명하게 수행됩니다(즉, 애플리케이션은 하드 드라이브에 문제가 있다는 것을 전혀 알지 못합니다). 핫 픽스를 지원하는 파일 시스템을 사용하면 잘못된 섹터가 발생할 때 발생하는 FAT "중단, 다시 시도 또는 실패?" 오류 메시지와 같은 오류 메시지가 제거됩니다.

참고

Windows NT 포함된 HPFS 버전은 핫 고정을 지원하지 않습니다.

HPFS의 이점

HPFS는 200-400MB 범위의 드라이브에 가장 적합합니다. HPFS의 이점에 대한 자세한 내용은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

HPFS의 단점

HPFS와 관련된 오버헤드 때문에 약 200MB 미만의 볼륨에 대해 매우 효율적인 선택이 아닙니다. 또한 볼륨이 약 400MB보다 크면 성능이 저하됩니다. WINDOWS NT HPFS에서 보안을 설정할 수 없습니다.

HPFS는 Windows NT 버전 3.1, 3.5 및 3.51에서만 지원됩니다. Windows NT 4.0은 HPFS 파티션에 액세스할 수 없습니다.

HPFS의 추가 단점은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

NTFS 개요

사용자의 관점에서 NTFS는 계속해서 파일을 HPFS와 같이 정렬된 디렉터리로 구성합니다. 그러나 FAT 또는 HPFS와 달리 디스크에는 "특수" 개체가 없으며 512 바이트 섹터와 같은 기본 하드웨어에 의존하지 않습니다. 또한 디스크에는 FAT 테이블 또는 HPFS 슈퍼 블록과 같은 특별한 위치가 없습니다.

NTFS의 목표는 다음을 제공하는 것입니다.

  • 안정성- 특히 고급 시스템 및 파일 서버에 적합합니다.

  • 추가된 기능을 위한 플랫폼

  • POSIX 요구 사항 지원

  • FAT 및 HPFS 파일 시스템의 제한 사항 제거

안정성

NTFS의 안정성을 보장하기 위해 복구 가능성, 치명적인 단일 섹터 오류 제거 및 핫 픽싱이라는 세 가지 주요 영역이 해결되었습니다.

NTFS는 파일 시스템에 대한 트랜잭션을 추적하므로 복구 가능한 파일 시스템입니다. FAT 또는 HPFS에서 CHKDSK를 수행하면 디렉터리, 할당 및 파일 테이블 내의 포인터 일관성이 검사됩니다. NTFS에서 이러한 구성 요소에 대한 트랜잭션 로그는 유지 관리되므로 CHKDSK는 파일 시스템 내에서 일관성을 복구하기 위해 마지막 커밋 지점으로 트랜잭션만 롤백하면 됩니다.

FAT 또는 HPFS에서 파일 시스템의 특수 개체 중 하나의 위치인 섹터가 실패하면 단일 섹터 오류가 발생합니다. NTFS는 디스크에 특수 개체를 사용하지 않고 디스크에 있는 모든 개체를 추적하고 보호하여 두 가지 방법으로 이를 방지합니다. 둘째, NTFS에서 마스터 파일 테이블의 여러 복사본(숫자는 볼륨 크기에 따라 다름)이 유지됩니다.

OS/2 버전의 HPFS와 마찬가지로 NTFS는 핫 고정을 지원합니다.

추가된 기능

모든 수준에서 Windows NT 주요 디자인 목표 중 하나는 추가 및 빌드할 수 있는 플랫폼을 제공하는 것이며 NTFS도 예외는 아닙니다. NTFS는 다른 파일 시스템에서 사용할 수 있는 풍부하고 유연한 플랫폼을 제공합니다. 또한 NTFS는 Windows NT 보안 모델을 완벽하게 지원하고 여러 데이터 스트림을 지원합니다. 더 이상 데이터 파일이 단일 데이터 스트림이 아닙니다. 마지막으로, NTFS에서 사용자는 자신의 사용자 정의 특성을 파일에 추가할 수 있습니다.

POSIX 지원

NTFS는 다음 POSIX.1 요구 사항을 지원하기 때문에 지원되는 파일 시스템의 가장 POSIX.1 규격입니다.

대/소문자를 구분하는 이름 지정:

POSIX에서 README.TXT, Readme.txt 및 readme.txt 모두 다른 파일입니다.

추가 타임스탬프는 다음과 같습니다.

추가 타임스탬프는 파일이 마지막으로 액세스된 시간을 제공합니다.

하드 링크:

하드 링크는 서로 다른 디렉터리에 있을 수 있는 두 개의 서로 다른 파일 이름이 동일한 데이터를 가리키는 경우입니다.

제한 사항 제거

첫째, NTFS는 파일 및 볼륨의 크기를 크게 증가시켜 이제 최대 2^64바이트(16gb 또는 18,446,744,073,709,551,616바이트)가 될 수 있습니다. 또한 NTFS는 고정 섹터 크기의 HPFS 문제를 방지하기 위해 클러스터의 FAT 개념으로 돌아왔습니다. 이 작업은 Windows NT 이식 가능한 운영 체제이며 특정 시점에 다른 디스크 기술이 발생할 가능성이 있기 때문에 수행되었습니다. 따라서 섹터당 512바이트는 할당에 항상 적합한 것은 아닐 가능성이 큰 것으로 간주되었습니다. 이렇게 하려면 클러스터를 하드웨어의 자연 할당 크기의 배수로 정의할 수 있습니다. 마지막으로 NTFS에서 모든 파일 이름은 유니코드 기반이며 8.3 파일 이름은 긴 파일 이름과 함께 유지됩니다.

NTFS의 이점

NTFS는 약 400MB 이상의 볼륨에서 사용하는 데 가장 적합합니다. 이는 NTFS에서 성능이 저하되지 않기 때문입니다. FAT에서와 마찬가지로 볼륨 크기가 더 크기 때문입니다.

NTFS로 설계된 복구 가능성은 사용자가 NTFS 파티션에서 어떤 종류의 디스크 복구 유틸리티를 실행할 필요가 없도록 하기 위한 것입니다. NTFS의 추가적인 이점은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

NTFS의 단점

NTFS와 관련된 공간 오버헤드의 양 때문에 약 400MB보다 작은 볼륨에서는 NTFS를 사용하지 않는 것이 좋습니다. 이 공간 오버헤드는 일반적으로 100MB 파티션에 4MB 이상의 드라이브 공간을 사용하는 NTFS 시스템 파일 형식입니다.

현재 NTFS에 기본 제공되는 파일 암호화는 없습니다. 따라서 누군가가 MS-DOS 또는 다른 운영 체제에서 부팅하고 하위 수준 디스크 편집 유틸리티를 사용하여 NTFS 볼륨에 저장된 데이터를 볼 수 있습니다.

플로피 디스크를 NTFS 파일 시스템으로 포맷할 수 없습니다. Windows NT NTFS와 관련된 오버헤드가 플로피 디스크에 맞지 않기 때문에 FAT 파일 시스템으로 모든 플로피 디스크의 형식을 지정합니다.

NTFS 단점에 대한 자세한 내용은 다음을 참조하세요.

  • Windows NT 서버 "개념 및 계획 가이드", 5장, "파일 시스템 선택" 섹션

  • Windows NT 워크스테이션 4.0 리소스 키트, 18장, "파일 시스템 선택"

  • Windows NT Server 4.0 리소스 키트 "리소스 가이드" 3장, "어떤 볼륨에서 사용할 파일 시스템" 섹션

NTFS 명명 규칙

파일 및 디렉터리 이름은 확장명을 포함하여 최대 255자까지 가능합니다. 이름은 대/소문자를 유지하지만 대/소문자를 구분하지는 않습니다. NTFS는 대/소문자를 기준으로 파일 이름을 구분하지 않습니다. 이름에는 다음을 제외한 모든 문자가 포함될 수 있습니다.

? " / \ < > * | :

현재 명령줄에서 최대 253자의 파일 이름만 만들 수 있습니다.

참고

기본 하드웨어 제한은 모든 파일 시스템에 추가 파티션 크기 제한을 적용할 수 있습니다. 특히 부팅 파티션의 크기는 7.8GB일 수 있으며 파티션 테이블에는 2테라바이트의 제한이 있습니다.

Windows NT 지원되는 파일 시스템에 대한 자세한 내용은 Windows NT Resource Kit를 참조하세요.