| 개발사 | 디지털 이큅먼트 코퍼레이션 |
|---|---|
| 정식 명칭 | Tru64 UNIX Advanced File System |
| 도입 | 1993년(33년 전)(1993) -OSF/1 |
| 구조 | |
| 불량 블록 | Table |
| 제약사항 | |
| 최대 볼륨 크기 | 16TiB |
| 최대 파일 크기 | 16TiB |
| 최대 파일 이름 길이 | 255 bytes |
| 기타 | |
| 지원운영 체제 | Tru64 UNIX |
AdvFS 또는Tru64 UNIX Advanced File System은 1980년대 후반부터 1990년대 중반까지[1]디지털 이큅먼트 코퍼레이션이 자사의OSF/1 버전유닉스 운영체제(이후Digital UNIX/Tru64 UNIX)를 위해 개발한파일 시스템이다.[2] 2008년 6월,GPL-2.0-only 라이선스 하에 자유 소프트웨어로 출시되었다.[3] AdvFS는 다운타임으로부터의 빠른 복구가 필수적인 고가용성 시스템에서 사용되어 왔다.[4]: 428
AdvFS는 저장소 풀(파일 도메인이라 불림)과 논리 파일 시스템(파일 세트라 불림)이라는 상대적으로 발전된 개념을 사용한다. 파일 도메인은 파티션,LVM 또는LSM 장치가 될 수 있는 여러 블록 장치로 구성된다. 파일 세트는 단일 파일 도메인 내에서 생성된 논리 파일 시스템이다. 관리자는 활성 파일 도메인에서 볼륨을 추가하거나 제거할 수 있으며, 제거 시 남은 파일 도메인에 충분한 공간이 있는 경우에 가능하다. 이는 제거될 디스크에 있는 모든 데이터나 메타데이터가 제거 전에 온라인으로 다른 디스크로 먼저 마이그레이션되어야 했기 때문에 구현하기 까다로운 초기 기능 중 하나였다.
파일 세트는 균형을 이룰 수 있으며, 이는 파일 세트의 파일 내용이 물리적 볼륨 전체에 걸쳐 균형을 이룰 수 있음을 의미한다. 파일 세트의 특정 파일은 사용 가능한 볼륨에 걸쳐스트라이프될 수 있다.
관리자는 활성 또는 비활성 파일 세트의 스냅샷(또는클론)을 찍을 수 있다. 이를 통해 쉬운 온라인 백업 및 편집이 가능하다.
또 다른 기능은 관리자가 활성 사용자가 있는 동안에도 파일 도메인에서 블록 장치를 추가하거나 제거할 수 있도록 한다. 이 추가/제거 기능을 통해 시스템 종료 없이 더 큰 장치로 마이그레이션하거나 잠재적으로 실패할 수 있는 하드웨어에서 마이그레이션할 수 있다.
주요 기능은 다음과 같다:
리눅스에서 AdvFS는 여러 파일에 대한 변경 사항을 원자적으로 커밋하기 위해 추가적인 ‘’syncv’’ 시스템 호출을 지원한다.[6]
Tru64 UNIX Advanced File System으로도 알려진 AdvFS는 1980년대 후반[1]부터벨뷰의디지털 이큅먼트 코퍼레이션공학자들이 개발하기 시작했다(DECwest). 이 프로젝트는 취소된OZIX 운영체제 프로젝트의 파일 시스템으로 시작되었다.[7]
이것은 DEC OSF/1 시스템(이후 Digital UNIX/Tru64 UNIX)에 처음으로 제공되었다. 시간이 지나면서 개발은 워싱턴주 벨뷰와 뉴햄프셔주 내슈아에 위치한 팀으로 옮겨졌다. 버전은 항상 운영체제 버전보다 한 버전 뒤쳐졌다. 따라서 DEC OSF/1 v3.2에는 AdvFS v2.x가, Digital UNIX 4.0에는 AdvFS v3.x가, Tru64 UNIX 5.x에는 AdvFS v4.x가 있었다. 일반적으로 AdvFS v4만이 충분한 도구 세트를 갖추고 관리자들이 어떤 종류의 문제에서도 벗어날 수 있도록 하여 생산 수준의 안정성으로 성숙했다고 간주된다.[2] 원래 팀은 파일 시스템 저널이 항상 미러링된 드라이브에 할당될 것이라는 가정 하에 "fsck" 스타일 복구 유틸리티 없이 로그 기반 복구를 출시할 만큼 충분한 자신감을 가졌다.
1996년, 리와 데카스는[8] Petal로 알려진 새로운 디스크 가상화 계층 위에 AdvFS를 사용하는 방법을 설명했다. 나중 논문에서,[9] 데카스 등은 Petal 위에 구축된 자체 파일 시스템(Frangipani)을 설명하고 동일한 저장 계층에서 실행되는 AdvFS의 성능과 비교했다.
샤피로와 밀러는[10] AdvFS에 저장된 파일의 성능을 Oracle RDBMS 버전 7.3.4 BLOB 저장소와 비교했다.
컴팩 시에라 병렬 파일 시스템(PFS)은 여러 로컬 AdvFS 파일 시스템을 기반으로 클러스터 파일 시스템을 만들었다. 2000-2001년로렌스 리버모어 국립연구소(LLNL)에서 수행된 테스트에 따르면 기본 AdvFS 파일 시스템은 적절한 성능을 보였지만(높은 CPU 사용률에도 불구하고), 그 위에 있는 PFS 클러스터링 계층은 성능이 좋지 않았다.[11]
2008년 6월 23일,휴렛 팩커드[3]는리눅스 커널과도호환되도록GPL-2.0-only 라이선스(최근 출시된GPLv3 대신) 하에소스포지에소스 코드를 공개했다.[12]
AdvFS is a journaled, local file system that provides higher availability, and greater flexibility and recovery than traditional UNIX file systems. The recovery takes just a few seconds for AdvFS...
Log-structured file system implementations include the AIX Journalled File System (JFS), the DEC Advanced File System (AdvFS), and the SUN UFS with Transaction Logging in Solaris DiskSuite.
The only one of any note that I'd like to point out directly is the clarification in the COPYING file, making it clear that it's only _that_particular version of the GPL that is valid for the kernel. This should not come as any surprise, as that's the same license that has been there since 0.12 or so, but I thought I'd make that explicit