본문 바로가기
리눅스

(번역) Hierarchical file system

by 다움위키 2025. 1. 9.

원문 보기: https://dawoum.duckdns.org/wiki/Hierarchical_file_system

 

Original article: w:Hierarchical file system

컴퓨팅에서, 계층적 파일 시스템디렉토리를 파일을 트리 구조로 구성하기 위해 사용하는 파일 시스템입니다.

계층적 파일 시스템에서, 디렉토리파일하위 디렉토리라고 하는 다른 디렉토리 둘 다에 대한 정보를 포함하며, 하위 디렉토리는 다시 다른 하위 디렉토리를 가리키고, 이런 식으로 계속됩니다. 이것은 일반적으로 꼭대기에 루트를 갖는 트리 구조 또는, 계층 구조로 구성됩니다. 루트 디렉토리는 계층 구조의 기반이고, 보통 디스크의 어떤 고정된 위치에 저장됩니다.

계층적 파일 시스템은 플랫 파일 시스템과 대조적인데, 여기서 모든 파일에 대한 정보가 단일 디렉토리에 저장되고 하위 디렉토리가 없습니다.

오늘날 거의 모든 파일 시스템은 계층적입니다. 파일 시스템이라고 참조되는 것은 계층적 시스템의 특정 인스턴스입니다. 예를 들어, NTFS, HPFS, 및 ext4는 모두 버퍼링, 파일 할당, 및 파일 복구를 위한 다양한 기능을 갖춘 계층적 시스템을 구현합니다.

Concepts

Path

파일 경로는 컴퓨터의 파일 구조에서 파일의 위치를 ​​포함하는 문자열입니다. 즉, 그것은 루트 디렉토리에서 파일로 방문한 디렉토리 노드를 노드 이름 목록으로 나타내며, 목록에서 항목은 경로 구분 기호로 분리됩니다. 경로 구분 기호는 Multics에서 >, 유닉스-계열 시스템에서 /, 및 MS-DOS 2.0 이상, Windows, OS/2 시스템에서 \입니다.

절대 경로는 루트 디렉토리에서 시작합니다; 즉, 경로 구분 문자로 시작하며, 이는, 경로의 시작 부분에서, 루트 디렉토리를 나타냅니다. 경로 구분 문자만으로 구성된 경로는 루트 디렉토리를 참조합니다.

Working directory

프로세스작업 디렉토리는 각 프로세스와 동적으로 결합된 디렉토리입니다. 파일은 루트 디렉토리가 아닌 작업 디렉토리를 기준으로 검색됩니다. 로그인 시, 사용자의 작업 디렉토리는 그들의 홈 디렉토리로 설정됩니다; 그것은 나중에 명령을 사용함으로써 설정될 수 있습니다.

상대 경로는 루트 디렉토리에서 파일로 가는 것이 아니라 작업 디렉토리에서 파일로 가는 디렉토리 노드를 나타냅니다. 상대 경로는 경로 구분 문자로 시작하지 않습니다.

History

Multics

Multics는 계층적 파일 시스템을 제공하기 위한 최초의 운영 시스템입니다. 파일 이름은 임의의 길이나 형식이 될 수 있고, 특정 파일이나 디렉토리에 대한 여러 이름, 및 디렉토리 사이의 심볼릭 연결 (심링크)은 Multics가 계층적 파일 시스템에 도입한 여러 기능 중 하나입니다.

IBM OS/360

OS/360은 초기부터 계층 시스템을 갖고 있었습니다.

시스템 카탈로그는 플랫 파일 시스템의 꼭대기에 계층화되어 있으며, 여기서 디스크 파일의 "디렉토리 엔트리"는 각 볼륨의 볼륨 목차(Volume Table of Contents, VTOC)에 저장되고, 파일은 카탈로그를 통해 또는 볼륨 일련 번호를 직접 지정함으로써 참조될 수 있습니다. JCL에서 일련 번호를 지정하지 않고 데이터-집합 이름을 지정하는 것은 카탈로그 검색을 의미합니다. 카탈로그는 볼륨에 대한 포인터만 저장합니다.

OS/360 카탈로그는 다른 계층적 파일 시스템과 여러 가지 차이점이 있습니다. SYSCTLG라는 이름-지은 데이터-집합, "루트 디렉토리"는 파일 포인터나 CVOLS라고 하는 하위 디렉토리에 대한 링크를 포함할 수 있습니다. 경로 구분 기호는 .입니다. 모든 경로는 절대 경로이며, 선행하는 .이 항상 가정되고 코딩될 수 없습니다. 경로 구성 요소 (. 사이)는 8 문자로 제한됩니다. 카탈로그는 디스크 (DASD) 파일에 국한되지 않지만, 자기 테이프 데이터-집합도 카탈로그화될 수 있습니다. 카탈로그에 표시된 모든 볼륨이 온라인 상태일 필요는 없고, 카탈로그 검색 후 요청 시 디스크와 테이프 볼륨을 마운트할 수 있습니다.

다른 대부분의 시스템과 달리, 그것은 카탈로그화하지 않고도 파일을 만들 수 있습니다. 카탈로그화는 JCL 또는 유틸리티 프로그램을 통해 요청됩니다.

카탈로그화된 데이터-집합 이름은 PAYROLL.WEEKLY.HOURS와 같이 보일 수 있습니다.

IBM 가상 저장 장치 운영 시스템은 SYSCTLG를 VSAM Catalog로 대체했습니다. 카탈로그화는 VSAM 데이터-집합에 필수적이지만, 이전과 마찬가지로, 비-VSAM 데이터-집합은 카탈로그화되거나 카탈로그화되지 않을 수 있습니다. 프로그램 "접근 방법 서비스" (IDCAMS)는 VSAM 카탈로그를 유지 관리합니다.

Personal computers

DOS and Windows

CP/M 운영 시스템은 최대 64개 파일에 대한 정보를 포함하는 디렉토리를 갖는 플랫 파일 시스템을 사용합니다—이는 플로피 디스크가 128KB만 저장할 수 있을 때 적합합니다. IBM PC DOS와 MS-DOS 1.0은 같은 구조를 계승했습니다. 하드 디스크 드라이브를 지원하는 DOS 2.0은 계층적 파일 시스템을 도입했습니다. 성능상의 이유로 플랫 디렉토리를 단순히 확장하는 대신 계층적 파일 시스템이 사용되었습니다."단일 디렉토리와 10배 많은 파일을 갖는 플랫 DOS 파일 구조는 검색하는 데 논리적으로 10배 더 오랜 시간이 필요합니다."[2] OS/2Windows도 DOS와 같은 경로 구문을 사용하는 계층적 파일 시스템을 지원합니다.

Classic Mac OS

System 2.1 이전의 Classic Mac OS의 모든 버전은 모든 파일을 단일 목록에 유지하는 플랫 파일 시스템, Macintosh 파일 시스템을 사용했으며, 어쨌든 Finder는 데스크탑 파일에서 유지되는 레코드를 갖는 폴더의 환상을 제공했습니다. System 2.1부터, Macintosh 파일 시스템은 여러 계층의 폴더와 파일을 허용하는 계층적 파일 시스템으로 대체되었습니다.

See also