Amiga Fast File 시스템
Amiga Fast File System특징들 | |
---|---|
특성 | 필로노트 |
투과적 압축 | 아니요. |
투과적 암호화 | 아니요. |
다른. | |
지원되는 운영 체제 | 아미가OS |
Amiga Fast File System(약칭 AFS, 또는 더 일반적으로 FFS)은 Amiga 개인용 컴퓨터에서 사용되는 파일 시스템입니다.이전의 Amiga 파일 시스템에는 특정 이름이 부여되지 않았으며 원래 단순히 "DOS" 또는 AmigaDOS로 알려졌습니다.FFS가 출시되자 원래 파일 시스템은 Amiga Old File System(OFS)으로 알려지게 되었습니다.주로 플로피 디스크용으로 설계된 OFS는 당시의 하드 드라이브를 따라잡는 속도가 느리다는 것이 입증되었습니다.FFS는 원래 Amiga 파일 시스템을 완전히 대체하기 위해 설계되었습니다.FFS는 주로 중복 정보를 제거하는 점에서 이전 FFS와 다릅니다.데이터 블록에는 데이터만 포함되므로 파일 시스템은 호스트 어댑터에서 최종 대상으로 직접 대용량 데이터 청크를 전송할 수 있습니다.
특성.
![]() |
OFS는 FFS의 전신입니다.FFS 출시 전 아미가OS에는 Amiga라고 불리는 단일 파일 시스템이 있었다.DOS: 다중 데이터에는 섹터당 24바이트가 사용되므로 플로피 디스크 등 신뢰성이 낮은 미디어에 구조 데이터를 재구성할 수 있습니다.Amiga에서 고속 미디어(하드 디스크 등)를 사용할 수 있게 되자 모든 데이터를 애플리케이션에 전달하기 위해 재조정해야 했기 때문에 이 중복 데이터는 병목 현상을 초래했습니다.FFS에 의해 용장성이 삭제되어 미디어에서 읽혀진 데이터가 어플리케이션에 직접 전달됩니다.이전 파일 시스템인 AmigaDOS는 OFS(Old File System)로 이름이 바뀌어 FFS와 구별됩니다.FFS는 하위 호환성이 있으며 OFS로 포맷된 디바이스에 액세스할 수 있습니다.
이러한 장점을 고려하여 FFS는 거의 모든 Amiga 사용자가 사용하는 가장 일반적인 파일 시스템으로 빠르게 채택되었습니다.그러나 OFS는 서드파티 소프트웨어 벤더의 플로피 디스크에서 계속 널리 사용되고 있습니다.(이는 Amiga 이전 버전과의 호환성을 목적으로 한 것입니다.)Amiga가 실제로 필요하지 않은 게임 및 애플리케이션 OS 2 시스템OS 2+ (ROM에 FFS가 없는 이전 버전의 OS를 실행하고 있는 머신은 FFS가 설치되어 있으면 읽을 수 있었지만, 이러한 플로피로부터 기동할 수 없었습니다.)
Amiga FFS는 심플하고 효율적이며, 도입 시점에서는 충분하고도 남았으며, 다른 플랫폼의 파일 시스템에 비해 많은 이점을 가지고 있었습니다.그러나 OFS는 이전과 마찬가지로 노후화되었습니다. 드라이브의 크기가 커지고 파일 수가 증가함에 따라 일상적인 파일 시스템으로 사용하는 것이 유지보수의 어려움과 일반적인 성능의 경쟁력 측면에서 더욱 문제가 되었습니다.그럼에도 불구하고, 그것은 여전히 아미가에서 사용되고 있다.MorphOS와 AmigaOS 4에 탑재된 OS 시스템.
AmigaOS의 마지막 Commodore 릴리즈인 3.1까지, FFS는 Amiga와 함께 표준으로 출하된 유일한 파일 시스템이었지만, 이미 기술이 발전함에 따라 그 나이를 보여주고 있었다.FFS(및 OFS)는 파일 시스템의 "비트맵"을 단일 섹터에 저장합니다.쓰기 시 먼저 비활성 상태로 표시되고 쓰기가 완료된 다음 비트맵이 업데이트되어 유효하게 표시됩니다.크래시 또는 디스크 제거로 인해 쓰기 작업이 중단되면 '디스크 검증 프로그램'이 손상을 복구할 수 있습니다.이것은 매우 단순한 형태의 파일 시스템 저널링과 유사했습니다.비활성화된 OFS 또는 FFS 파일 시스템에서 디스크를 다시 사용하려면 디스크 전체를 완전히 검사하고 비트맵을 재구축해야 하지만 쓰기 중에 수정되는 데이터만 손실됩니다.이 검색 중에는 디스크 검증자가 기능을 수행하는 경우를 제외하고 디스크에 쓸 수 없으며 읽기 액세스가 매우 느립니다.
AmigaOS는 원래 모든 부팅 디스크에 디스크 검증기가 포함되어 있었습니다.이 디스크 검증기는 바이러스(예를 들어 "Saddam Hussein" 바이러스)로 대체되기 쉽습니다.이후 Kickstart 2.x 이후부터는 ROM의 일부가 되어 악의적인 교환으로부터 보호합니다.디스크 유효성 검사기가 비활성화된 드라이브의 비트맵을 쓰기 방지 및 스캔하여 복구하려고 했습니다. 이 작업은 시간이 오래 걸릴 수 있으며 특히 느린 미디어에서 완료될 때까지 디스크에 액세스하는 속도가 매우 느려질 수 있습니다.하드 드라이브가 커지고 파일이 더 많이 저장됨에 따라 검증 프로세스에는 몇 시간이 걸릴 수 있습니다.또한 파일 및 디렉토리의 데이터 해시가 손상되었을 경우 프로세스 중에 파일 및 디렉토리가 손실될 수 있습니다(대부분 사용자에게 통지되거나 인식되지 않을 수도 있습니다.경우에 따라서는 검증에 실패하여 디스크를 검증되지 않은 상태로 둘 수 있습니다.사용자는 DiskSalv와 같은 서드파티제의 디스크 도구를 사용하여 볼륨을 다시 쓰기 가능하게 하거나 파일을 새 파티션에 복사하여 저장해야 합니다.이것은 매우 느린 프로세스입니다.
또한 FFS는 원래 32비트 주소 지정으로 제한되었기 때문에 약 4GB 드라이브 또는 더 큰 드라이브에서는 최소 4GB로 제한되었습니다.이 제한을 넘는 FFS 파티션을 사용하려고 하면 드라이브 전체에 심각한 데이터 손상이 발생했습니다.FFS는 뒤늦게 일부 서드파티제 64비트 패치를 취득한 후 공식 업데이트(Commodore 이외)를 실시하여 이러한 제한을 회피했습니다.후자는 Haage & Partner에서 AmigaOS 3.5 및 3.9와 함께 제공되었습니다.전자는 많은 경우 대용량 Disk를 사용할 수 있는 기능이 세일즈 포인트였던 단계 5의 Disk 컨트롤러와 같은 타사 Disk 컨트롤러와 함께 제공되었습니다.그 두 시스템은 상호 호환성이 없었다.
지원 툴에 관해서는 Commodore 자체에는 DiskDoctor라는 애플리케이션만 탑재되어 있었지만(나중에 Amiga에서 삭제)OS 디스크), FFS에는 파일 시스템을 유지 보수하고 복구 및 검증하는 서드파티 툴(특히 DiskSalv)이 소량 있었습니다.파일 삭제 취소 또는 파일 시스템 초기화 리버스(퀵 포맷)가 있습니다.OFS 또는 FFS 볼륨은 파손을 방지하기 위해 조각 모음 또는 다른 FFS 모드로 변환하기 위해 잠겨야 했습니다.이 때문에 툴 조각 모음 이외의 모든 것에 액세스할 수 없게 되었습니다.이러한 툴의 대부분은 FFS가 64비트 어드레싱을 가능하게 되어 4GB 미만의 파티션에서만 동작할 수 있게 되었을 때 갱신되지 않았습니다.또한 4GB보다 큰 파티션을 읽을 수 없어 일반적으로 4GB 경계를 넘어서는 파티션이 파손됩니다.Amiga 사용자가 사용하는 하드 드라이브의 크기가 4GB에 달했을 때 이것이 문제가 되었습니다.
이러한 이유로 FFS는 1990년대 중반에 사용자가 스마트 파일 시스템(SFS)이나 프로페셔널 파일 시스템(PFS)과 같은 최신 대체 제품으로 대체되는 경우가 많았습니다.이러한 제한은 없고, 보다 안전하고 빠르고 효율적인 것으로 간주되었습니다.특히 SFS는 계속 개발되어 현재는 일반적인[when?] Amiga에 가깝습니다.FFS로서의 OS 파일 시스템.
역사
FFS는 Amiga 버전 1.3에서 도입되었습니다.1988년에[1] [2]OS를 도입하여 Kickstart ROM(또는 A1000의 경우 Kickstart FD)과 Workbench FD를 모두 업데이트된 소프트웨어로 교체하였습니다.다른 AmigaOS 1.3 컴포넌트와 마찬가지로 버전 번호 v34가 포함되어 있습니다.
Kickstart 1.3은 자동 부팅을 지원하여 머신을 하드 디스크 또는 리셋 프루프 RAM 디스크("RAD:")에서 부팅할 수 있게 되었습니다.이전의 Kickstart 릴리스는 플로피 디스크에서만 부팅할 수 있었습니다.Workbench 1.3은 FFS 파일 시스템 디바이스 드라이버를 디스크에 제공했으며, 하드 디스크의 RDB(Rigid Disk Block)에 복사할 수 있었습니다.준거 블록 디바이스는 파일 시스템이 마운트되기 전에 파일 시스템 드라이버를 로드 및 설치하여 하드 디스크에서 로드 가능한 파일 시스템을 사용할 수 있도록 합니다.Kickstart 1.2는 플로피 디스크에서 Workbench 1.3을 부팅할 수 있었지만 FFS 포맷 하드 디스크를 자동 부팅하려면 Kickstart와 Workbench 1.3이 모두 필요했습니다.
FFS 지원은 Kickstart 2.0 이후 ROM 기반 파일시스템에 통합되었기 때문에 RDB에 FFS를 설치할 필요가 없어졌습니다.RDB에서 파일 시스템을 로드할 수 있는 기능은 ROM 버그를 수정하거나 새로운 FFS 기능을 얻거나 서드파티 파일 시스템을 사용하는 경우에도 사용할 수 있습니다.
플로피 디스크는 RDB가 없는 분할되지 않은 디바이스이며 자동 부팅 메커니즘도 사용하지 않으므로 디스크의 dostype이 ROM 기반 파일 시스템에서 인식되는 유형일 경우에만 부팅할 수 있습니다.그 결과 FFS 포맷된 플로피는 Kickstart 2.0이 출시될 때까지 부팅이 불가능했으며 Workbench 1.3으로 마운트하는 과정에서 지원되지 않는 추악한 해킹이 발생했습니다.마찬가지로 "디렉토리 캐시" 변형은 Kickstart 3.0까지 부팅이 불가능하거나 지원되지 않았습니다.
다양한 FFS 플레이버는 Amiga 소프트웨어와의 호환성 문제가 없었으며, 심지어 "시스템이 비우호적"으로 간주된 플레이버도 마찬가지였습니다.소프트웨어는 시스템 호출을 사용하여 파일 시스템에서 작동하거나 파일 시스템을 전혀 사용하지 않고 "트랙로더"가 됩니다.
FFS는 "dostypes"로 정의되는 여러 모드로 작동합니다.AmigaOS 파일 시스템은 RDB 또는 마운트리스트 또는 dosdriver에 지정된4글자 디스크립터로 식별됩니다.또한 (플로피 디스크와 같은 트랙 디스크와 같은 디바이스에서와 같이) 디스크 자체를 지정된 임의의 디스크 타입으로 포맷할 수 있습니다.
FFS dostypes는 다음과 같습니다.[3]
DOS\0: 오리지널 Amiga 파일 시스템(OFS).이것은 호환성을 위해 남겨진 상태로, 소프트웨어 회사나 잡지 표지 디스크로 출하된 대부분의 플로피 디스크는 Amiga 500과 같은 2.x 이전의 머신에서 부팅하기 위해 이 디스크 유형을 사용했습니다.또한 기존 OFS 포맷 드라이브를 가진 사용자는 RDB에 FFS를 설치한 후 이를 읽을 수 있었습니다.
DOS\1: 새로운 파일 시스템 FFS.FFS의 첫 번째 디스크 기반 릴리스에는 추가 모드가 없었습니다.
AmigaOS 2.04는 FFS(현재의 v37)를 Kickstart ROM의 일부로 만들고 파일명의 [4]국제문자를 처리하는 새로운 모드와 온디스크 디렉토리 캐시를 도입했습니다.각 새로운 모드는 OFS와 FFS의 두 가지 유형으로 사용할 수 있습니다.이 이상한 시스템은 패리티를 위한 것이었다: DOS\0 이외의 OFS 모드는 거의 사용되지 않았지만 사용할 수 있었다. (OFS는 FFS가 없는 Amiga 시스템과 여전히 호환성이 없었다.)
FFS의 v37에서 도입된 4가지 새로운 스타일:
DOS\2: "International"(OFS-INTL) 모드에서는 OFS가 "International Characters"(국제 문자) 즉, 영어(라틴 문자 집합)에서 찾을 수 없는 파일 이름을 처리할 수 있습니다.
DOS\3: FFS(FFS-INTL)의 국제 모드.이것은 가장 일반적으로 사용되는 FFS 모드입니다.(모든 상위 dostypes는 항상 international 모드를 유효하게 합니다.)
DOS\4: "Directory Cache"(OFS-DC) 모드에서는 디스크상에 흩어져 있는 링크된 디렉토리/파일 엔트리를 픽업할 필요 없이 전용 디렉토리 목록을 생성하여 프리미티브 캐시를 실행할 수 있습니다.디렉토리 데이터를 격납하는 일정한(작은) 디스크 영역이 [5]할당된다.DirCache 옵션은 디렉토리 읽기 속도를 대폭 향상시켰지만 파일 작성, 삭제 및 이름 변경 속도가 느려졌습니다.이것은 개별 파일을 읽는 속도를 높이지 않았다.
FFS2의 저자인 Olaf Barthel에 따르면 플로피 디스크는 dircache 모드를 사용하는 것이 하드 드라이브보다 더 [citation needed]낫다고 합니다. dircache가 없는 경우보다 전반적인 성능 저하를 일으킬 수 있습니다.그럼에도 불구하고 특히 캐시가 귀중한 공간을 소비하고 공간이 한정되어 많은 파일을 캐시할 수 없기 때문에 플로피 디스크에는 거의 사용되지 않았습니다.dircache 모드에는 "쓰레기 컬렉션" 메커니즘이 없습니다.즉, 부분적으로 채워진 캐시 블록은 통합되지 않고 공간을 [6]계속 차지합니다.
DOS\5: FFS(FFS-DC)를 사용한 디렉토리 캐시.두 dircache 모드 모두 이전 버전의 FFS와 하위 호환성이 없었습니다.
버전 40.1은 Commodore에 의해 출시된 FFS의 마지막 버전으로, AmigaOS 3.1과 함께 OS 디스크와 ROM 모두에서 제공되었습니다.이후, 64비트 어드레싱 시스템 TrackDisk64 또는 TD64 (파일 크기 제한은 2GB이지만)를 사용하여 하드 디스크의 최초 2GB 이후 드라이브에서 사용할 수 있는 비공식 패치가 몇 개 등장했습니다.파티션 사이즈는 Amiga의 제한이었기 때문에 127 GB의 제한이 남아 있었습니다.OS dos.library 및 당시 모든 Amiga 소프트웨어)를 지원하며 버전 번호를 v44로 전송합니다.AmigaOS 3.5 및 3.9와 함께 제공된 FFS 버전은 v45이며 다른 64비트 주소 지정 시스템인 New Style Device 또는 NSD를 사용한다는 점에서 다릅니다.
최근(2003년부터) MorphOS와 AmigaOS 4는 Olaf Barthel(각각 FFS v46, v50)에 의해 약간 업데이트된 "FFS2"를 지원하게 되었습니다.이것은 오래된 FFS와 호환성이 있습니다.PowerPC 네이티브로 2종류의 dostypes를 추가했습니다(구 FFS에서는 읽을 수 없습니다).
DOS\6: "긴 파일 이름"(OFS-LNFS)이것에 의해, 파일의 파일명은, 통상의 Amiga 제한(31 문자)[6]보다 길어집니다(최대 107 문자).
DOS\7: FFS(FFS-LNFS)의 긴 파일 이름.
LNFS dostypes에 사용할 수 있는 디렉토리 캐싱 모드는 없었고, International Mode는 항상 활성화되어 있었습니다.
긴 파일명을 사용할 수 있었지만, 이 시점까지 FFS는 사용 가능한 플랫폼의 다른 파일 시스템에 비해 매우 저조했습니다.이러한 추가 dostypes를 제외하고 FFS와 FFS2 사이에는 기능상의 차이가 거의 없으며(일부 오래된 불특정 버그가 처리되었을 가능성이 있습니다), 레거시 용도 이외에는 사용하지 말아 주세요.FFS2에서도 FFS와 마찬가지로 디스크 검증이 필요합니다(데이터 손실이 발생할 수 있습니다). 그러나 초기 생각은 정반대입니다.
2018년 9월, Hyperion Entertainment는 Amiga OS 3.1 소스에서 Amiga OS 3.1.4를 출시했습니다.Kickstart ROM에는 업데이트된 Fast File System V46이 포함되어 있습니다.V46 FFS는 기본적으로 TD_64, NSD 및/또는 기존 32비트 TD_ 스토리지 호출용 API를 지원했습니다.이것에 의해, Amiga OS v3.x 는 네이티브로 대용량 미디어(4 GB 이상)로부터 기동해, 2 GB이상의 파티션 사이즈를 서포트할 수 있습니다.2019년 7월 3.1.4.1 [7]업데이트에 FFS에 대한 추가 파일 기반 업데이트가 포함되었습니다.2021년 5월에 업데이트된 Amiga OS 3.2가 출시되어[8] 몇 가지 사소한 기능과 수정을 얻은 ROM 기반 V47 FFS 업데이트가 제공되었습니다.
기타 구현
FFS 파일 시스템을 읽을 수 있는 다른 구현은 거의 없었습니다.이것에 의해, 통상은 Amiga 에뮬레이터와 operating system ROM 의 카피가 읽혀집니다.특히 Affs(Amiga Fast File System)를 Linux 커널로 컴파일할 수 있으며 DOS\6 및 DOS\7을 제외한 모든 dostyp의 FFS 및 OFS 파티션에서 완전한 읽기, 쓰기 및 포맷을 지원합니다.
Amiga에서 프리웨어 애플리케이션[9] xfs는 많은 파일 시스템 중 OFS 또는 FFS로 포맷된 디바이스에서 읽고 쓸 수 있으며 FFS/FFS2를 제외한 유일한 Amiga 파일 시스템이었을 것입니다.이전 버전인 DOS\6 또는 DOS\7 또는 디바이스 포맷은 지원하지 않습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "wb_13chg.txt". Retrieved Nov 12, 2012.
- ^ 1988년 9월 16일, 아미가에서 CATS의 Carolyn Scheppner에 의해 1.3 발매가 확정되었다.BIX에서 개발합니다.USENET의 BIX 발표 복사
- ^ AmigaOS 사용자 매뉴얼 3.1
- ^ 모든 Amiga 파일 시스템은 국제 문자를 처리할 수 있지만 International 버전 이전에는 대문자와 소문자를 완전히 다른 문자로 취급했습니다.
- ^ "Amiga History Guide". www.AmigaHistory.co.uk. Retrieved May 1, 2017.
- ^ a b "DCFS and LNFS Low Level Data Structures - AmigaOS Documentation Wiki". wiki.amigaos.net. Retrieved 2017-05-07.
- ^ "Update to AmigaOS 3.1.4 released".
- ^ "News".
- ^ http://de4.aminet.net/disk/misc/xfs.readme