맨위로가기

애플 프로도스

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

ProDOS는 초기 Apple DOS의 단점을 해결하기 위해 출시된 Apple II 컴퓨터용 운영 체제이다. 하드 디스크 및 3.5인치 플로피 드라이브 지원, 계층적 파일 시스템, RAM 디스크 지원 등 Apple DOS의 여러 제약을 개선했다. ProDOS는 Apple III의 Apple SOS 운영 체제를 기반으로 하며, ProDOS 8과 ProDOS 16 버전이 존재한다. ProDOS 8은 64KB 메모리가 필요하며, ProDOS 16은 Apple IIGS에서 사용되었다.

더 읽어볼만한 페이지

  • 디스크 운영체제 - MS-DOS
    MS-DOS는 마이크로소프트가 개발한 개인용 컴퓨터용 디스크 운영 체제로, IBM PC의 표준 운영 체제로 널리 사용되었으며, 단일 작업 환경과 명령줄 인터페이스를 특징으로 한다.
  • 디스크 운영체제 - CP/M
    CP/M은 게리 킬달이 개발한 8비트 마이크로컴퓨터용 운영체제로, 플로피 디스크 기반의 다양한 하드웨어 플랫폼에서 작동하며, 뛰어난 이식성과 방대한 소프트웨어 라이브러리를 바탕으로 1980년대 초반 널리 사용되었으나, MS-DOS의 부상으로 시장 점유율을 잃었지만 MS-DOS와 초기 윈도우 운영체제에 영향을 미쳤다.
  • 애플의 운영 체제 - 맥 OS X 서버 1.0
    맥 OS X 서버 1.0은 애플이 1999년에 출시한 서버 운영 체제로, 클래식 맥 OS와 넥스트스텝 기술을 결합하여 넷부트 서버, 아파치 웹 서버, 퀵타임 스트리밍 서버 등의 기능을 제공했지만, 높은 가격과 일부 단점으로 인해 빠르게 단종되었다.
  • 애플의 운영 체제 - WatchOS
    watchOS는 애플 워치를 위한 iOS 기반 운영체제로, Digital Crown을 이용한 앱 확대/축소, 햅틱 터치, HealthKit을 통한 건강 지표 측정 및 추적 기능을 제공하며, 2015년 출시 후 지속적인 업데이트를 통해 기능이 강화되었다.
  • 애플의 소프트웨어 - 아이튠즈
    아이튠즈는 애플이 개발한 멀티미디어 플랫폼이자 디지털 미디어 플레이어 소프트웨어로, 초기에는 음악 재생 및 관리에 집중했으나 이후 기능이 확장되어 macOS Catalina부터는 개별 앱으로 기능이 분리되었고 윈도우에서는 'Apple 기기' 앱에 관련 기능이 통합되었다.
  • 애플의 소프트웨어 - 사파리 (웹 브라우저)
    사파리는 애플이 개발한 웹 브라우저로, 2003년 처음 출시되어 웹킷 엔진을 기반으로 빠른 속도와 웹 표준 지원을 제공하며, macOS, iOS, iPadOS 등에서 기본 브라우저로 사용된다.
애플 프로도스 - [IT 관련 정보]에 관한 문서
ProDOS 8
개발애플 컴퓨터
소스 모델사유 소프트웨어 (그러나 버전 1.7)
커널 유형모놀리딕 커널
지원 플랫폼애플 II
사용자 인터페이스주로 텍스트 사용자 인터페이스
계열SOS
출시일1983년 10월
단종 여부
최신 버전2.0.3
최신 버전 출시일1993년 5월 6일
프로그래밍 언어어셈블리어
언어영어
라이선스애플 소프트웨어 라이선스 계약
ProDOS 16
ProDOS 16 v1.6 - Apple IIGS Finder의 이전 버전 실행
개발애플 컴퓨터
소스 모델클로즈드 소스
커널 유형모놀리딕 커널
지원 플랫폼애플 II
계열SOS
출시일1986년 9월
최신 버전1.6
최신 버전 출시일1988년 6월 14일
언어영어
라이선스애플 소프트웨어 라이선스 계약

2. 역사적 배경

ProDOS는 초기의 애플 운영 체제인 Apple DOS가 가진 여러 단점을 해결하고 시대의 변화에 발맞추기 위해 개발되었다. 기존 Apple DOS는 5.25인치 플로피 디스크 외의 저장 장치 지원이 제한적이었고, 관리 가능한 볼륨 크기가 작았으며, 계층적 파일 시스템을 지원하지 않는 등의 한계가 있었다.

이에 ProDOS는 하드 디스크 드라이브나 3.5인치 플로피 디스크 같은 다양한 저장 장치를 표준화된 방식으로 지원하도록 개선되었다. 최대 볼륨 크기는 약 400KB에서 32MB로 크게 확장되었고, 하드 디스크 관리에 필수적인 계층적 파일 시스템(하위 디렉토리 구조)이 도입되었다. 또한, 128KB 이상의 메모리를 가진 기기에서는 RAM 드라이브 기능을 사용할 수 있게 되었고, 하드웨어 인터럽트 처리 방식 개선, 실시간 시계(RTC) 지원 등 다양한 기능 향상이 이루어졌다.

ProDOS는 실패한 Apple III 컴퓨터의 운영 체제였던 SOS에 개발 기반을 두고 있어, 디스크 포맷이나 프로그래밍 인터페이스가 Apple DOS와는 완전히 달랐다. 이 때문에 DOS 3.3 디스크와는 직접적인 호환성이 없었고, 대부분의 기계어 프로그램은 ProDOS에서 실행되지 않았다. 다만 BASIC 프로그램은 약간의 수정을 거치면 대부분 호환되었다. ProDOS 환경에서 BASIC 프로그래밍은 `BASIC.SYSTEM`이라는 별도의 시스템 프로그램을 통해 이루어졌다.

ProDOS의 여러 장점에도 불구하고, 초기에는 기존 Apple DOS 환경에 익숙했던 사용자들의 저항이 있었다. 파일 이름 길이가 30자에서 15자로 줄어든 점도 불편함으로 작용했다. 그러나 1983년 64KB 메모리를 탑재한 Apple IIe가 출시되고, 1984년 통합 소프트웨어 패키지인 AppleWorks가 큰 성공을 거두면서 ProDOS는 점차 Apple II 시리즈의 표준 운영 체제로 자리 잡게 되었다.

이후 16비트 Apple IIGS를 지원하기 위해 ProDOS 16이 출시되면서 기존 ProDOS는 ProDOS 8로 이름이 변경되었으나, ProDOS 16은 곧 GS/OS로 대체되었다.

2. 1. Apple DOS의 한계

Apple DOS는 초기의 애플 운영 체제로, 시간이 지나면서 여러 한계점을 드러내기 시작했다.

가장 큰 한계 중 하나는 저장 장치 지원에 있었다. Apple DOS는 기본적으로 5.25인치 플로피 디스크만 지원했다. 하드 디스크 드라이브나 3.5인치 플로피 디스크 드라이브와 같은 다른 종류의 디스크 장치를 사용하려면 별도의 패치가 필요했다. 또한, 관리할 수 있는 최대 볼륨 크기가 약 400 KB에 불과하여 대용량 저장 장치를 효율적으로 사용하기 어려웠다. 파일 시스템 역시 계층적인 디렉토리 구조를 지원하지 않아, 특히 용량이 큰 하드 디스크의 파일을 체계적으로 정리하고 관리하는 데 불편함이 따랐다.

메모리 활용에도 제약이 있었다. 이후 등장한 ProDOS는 128KB 이상의 메모리를 가진 기기에서 RAM 드라이브 기능을 지원했지만, Apple DOS는 이러한 기능을 제공하지 않았다. 하드웨어 인터럽트 처리 방식에도 문제가 있었으며, 프로그래머가 활용할 수 있는 잘 정의되고 문서화된 프로그래밍 인터페이스나 확장 기능 인터페이스가 부족했다. 실시간 시계(RTC) 기능 역시 지원하지 않았다.

SOS 운영 체제에 기반을 둔 ProDOS와는 디스크 포맷 방식과 프로그래밍 인터페이스가 완전히 달랐다. 이 때문에 ProDOS 환경에서는 별도의 변환 유틸리티 없이는 Apple DOS 3.3 디스크를 읽거나 쓸 수 없었다. 5.25인치 디스크의 경우, 하위 레벨의 트랙과 섹터 형식은 유지되었지만 파일과 디렉토리를 구성하는 상위 레벨 구조는 호환되지 않았다. 결과적으로 Apple DOS에서 실행되던 대부분의 기계어 프로그램은 ProDOS 환경에서 작동하지 않았다. 다만, BASIC으로 작성된 프로그램들은 약간의 수정만 거치면 대부분 호환되었다.

2. 2. ProDOS의 등장과 발전

기존 애플 운영 체제(Apple DOS)는 시대의 흐름에 뒤처지기 시작했고, 이러한 단점을 해결하고자 ProDOS가 출시되었다. Apple DOS는 기본적으로 5.25인치 플로피 디스크만 지원했기 때문에, 하드 디스크 드라이브나 Disk-II 방식이 아닌 플로피 디스크 드라이브(3.5인치 플로피 드라이브 포함) 같은 주변 장치를 사용하려면 별도의 패치가 필요했다.

ProDOS는 여러 기능을 개선했다. 디스크 장치용 확장 카드에 내장된 ROM 기반 장치 드라이버에 접근하는 표준 방식을 추가했고, 최대 볼륨 크기를 약 400kB에서 32MB로 크게 늘렸다. 또한, 하드 디스크의 저장 공간을 효율적으로 관리하는 데 필수적인 계층적 파일 시스템을 지원하여 하위 디렉토리 구조를 사용할 수 있게 했으며, 128kB 이상의 메모리를 가진 기기에서는 RAM 디스크 기능도 사용할 수 있게 되었다. ProDOS는 하드웨어 인터럽트 처리와 관련된 문제를 해결하고, Apple DOS에는 부족했던 잘 정의되고 문서화된 프로그래밍 및 확장 인터페이스를 제공했다. 실시간 시계(RTC) 지원 기능도 포함했지만, 이 기능은 RTC를 기본 내장한 최초의 애플 II 시리즈 기기인 Apple II GS가 출시될 때까지는 널리 사용되지 않았다. 다만, II Plus, IIe, IIc용으로 출시된 타사 시계 장치도 존재했다.

ProDOS는 1980년에 출시되었으나 성공하지 못한 Apple III 컴퓨터의 운영 체제인 SOS에 개발 뿌리를 둔다. 디스크 형식과 프로그래밍 인터페이스는 Apple DOS와 완전히 달라, ProDOS는 변환 유틸리티 없이는 DOS 3.3 디스크를 읽거나 쓸 수 없었다. 5.25인치 디스크의 경우, 하위 레벨의 트랙 및 섹터 형식은 유지되었지만 파일과 디렉토리를 구성하는 상위 레벨 방식은 완전히 달랐다. 이 때문에 Apple DOS에서 실행되던 대부분의 기계어 프로그램은 ProDOS에서 작동하지 않았다. 하지만 대부분의 BASIC 프로그램은 약간의 수정만 거치면 작동했다. 사용자는 DOS.MASTER라는 타사 프로그램을 이용해 더 큰 ProDOS 볼륨 안에 여러 개의 가상 DOS 3.3 파티션을 만들어 사용할 수도 있었다.

ProDOS 출시와 함께 Integer BASIC 및 초기 애플 II 모델 지원이 중단되었다. 이 모델들은 이미 Applesoft BASIC과 Apple II Plus로 사실상 대체된 상태였다. DOS 3.3은 항상 BASIC 프로그래밍 지원 기능을 기본적으로 불러왔지만, ProDOS에서는 BASIC.SYSTEM이라는 별도의 시스템 프로그램을 실행해야 Applesoft BASIC 프로그램을 실행하고 작성할 수 있었다. BASIC 자체는 계속 애플 컴퓨터의 ROM에 내장되어 있었다. BASIC.SYSTEM은 BASIC 프로그램이 기존 DOS 3.3에서 사용하던 동일한 "Control-D" 텍스트 출력을 통해 ProDOS 기능에 접근하도록 하는 명령어 인터프리터 개선 기능을 제공했다. BASIC.SYSTEM 하나만으로도 DOS 3.3 전체만큼의 메모리가 필요했다. ProDOS 커널 자체가 "언어 카드" RAM에 저장되었으므로, BASIC 프로그래머가 사용할 수 있는 RAM의 양은 DOS 3.3에서와 ProDOS에서 동일하게 유지되었다.

ProDOS의 많은 장점에도 불구하고, 일부 사용자와 프로그래머는 한동안 이를 받아들이기를 주저했다. 기존 Apple DOS 환경에 익숙해져 있었고 관련 소프트웨어 및 데이터 형식에 이미 투자를 했기 때문이다. 또한 ProDOS가 Apple DOS의 30자에 비해 파일 이름 길이를 15자만 허용한 것도 이유 중 하나였다. 그러나 1984년 출시된 애플의 통합 소프트웨어 패키지인 AppleWorks는 전환할 만한 강력한 이유가 되었고, 1985년 말까지 이전 운영 체제용 신규 소프트웨어는 거의 출시되지 않았다. 애플 II는 이전 DOS를 계속 부팅할 수 있었지만(심지어 Apple II GS도 이전 DOS 플로피를 부팅할 수 있었음), 3.5인치 플로피와 하드 디스크가 더 널리 사용되면서 대부분의 사용자는 ProDOS에서 대부분의 시간을 보냈다.

1983년에 출시된 Apple IIe는 64kB의 메모리를 내장한 최초의 애플 II 컴퓨터였다. 한동안 애플은 새로운 컴퓨터와 함께 DOS 3.3과 ProDOS를 모두 제공했다.

원래 ProDOS는 16비트 Apple II GS 컴퓨터를 지원하기 위해 ProDOS 16이 출시되었을 때 ProDOS 8로 이름이 변경되었다. 하지만 ProDOS 16(본질적으로 8비트)은 곧 GS/OS로 대체되었다.

2. 3. Apple IIe와 ProDOS의 보급

1983년에 출시된 Apple IIe는 64KB 메모리를 기본으로 탑재한 첫 Apple II 시리즈 컴퓨터였다. 애플은 한동안 새로운 컴퓨터에 기존 DOS 3.3과 ProDOS를 함께 제공했다.

ProDOS는 여러 장점을 가졌지만, 초기에는 많은 사용자와 프로그래머들이 기존 Apple DOS 환경과 관련 소프트웨어 및 데이터 형식에 익숙했기 때문에 ProDOS로의 전환을 꺼렸다. 특히 ProDOS는 파일 이름 길이를 최대 15자까지만 허용했는데, 이는 30자까지 가능했던 Apple DOS보다 짧아 불편함으로 작용하기도 했다.

그러나 1984년에 출시된 애플의 통합 소프트웨어 패키지인 AppleWorks는 사용자들에게 ProDOS로 전환할 강력한 동기를 제공했다. AppleWorks의 성공으로 1985년 말부터는 기존 DOS 3.3을 위한 새로운 소프트웨어가 거의 출시되지 않았다. Apple II 컴퓨터에서 이전 DOS를 계속 사용할 수는 있었지만, 점차 3.5인치 플로피 디스크하드 디스크 드라이브 사용이 보편화되면서 대부분의 사용자는 자연스럽게 ProDOS 환경에서 더 많은 시간을 보내게 되었다.

2. 4. ProDOS 8과 ProDOS 16

원래 ProDOS는 16비트 Apple IIGS 컴퓨터를 지원하기 위해 ProDOS 16이 출시되었을 때 ProDOS 8로 이름이 변경되었다. 하지만 ProDOS 16은 곧 GS/OS로 대체되었다.

3. 요구 사항

ProDOS의 모든 에디션은 애플 II 또는 호환 기종을 필요로 한다. 버전별로 구체적인 하드웨어 및 메모리 요구 사항에는 차이가 있다.

3. 1. 하드웨어 요구 사항

ProDOS의 모든 에디션은 애플 II 또는 호환 기종을 필요로 한다.

ProDOS 8은 실행을 위해 64KB의 메모리가 필요하다. 초기 ProDOS(8) 1.0부터 1.0.2 버전까지는 커널에 48KB만 필요했지만, Applesoft BASIC을 사용하기 위해 필요한 BASIC.SYSTEM을 포함한 거의 모든 프로그램은 64KB를 필요로 했다. 따라서 48KB 시스템은 실제로 ProDOS를 사용하기에 적합하지 않았고, 48KB 머신에 대한 지원은 버전 1.1에서 중단되었다.

ProDOS 8 버전 2.x는 65C02 또는 이후(65802, 65816) CPU를 필요로 한다. ProDOS 8 2.x는 64KB에서 실행되지만, 시스템 디스크의 유틸리티 프로그램은 128KB 메모리를 필요로 한다. 65C02 대신 6502 CPU를 가진 시스템은 버전 2.0 이전의 ProDOS 8 버전을 사용해야 한다.

ProDOS 16은 Apple IIGS를 필요로 한다.

3. 2. 메모리 요구 사항

ProDOS의 모든 에디션은 애플 II 또는 호환 기종을 필요로 한다.

ProDOS 8은 실행을 위해 64KB의 메모리가 필요하다. 초기 ProDOS(8) 1.0부터 1.0.2 버전까지는 커널에 48KB만 필요했지만, Applesoft BASIC을 사용하기 위해 필요한 BASIC.SYSTEM을 포함한 거의 모든 프로그램은 64KB를 필요로 했으므로, 48KB 시스템은 실제로 ProDOS를 사용하기에 적합하지 않았으며, 48KB 시스템에 대한 지원은 버전 1.1에서 중단되었다.

ProDOS 8 버전 2.x는 65C02 또는 이후(65816) CPU를 필요로 한다. ProDOS 8 2.x는 64KB에서 실행되지만, 시스템 디스크의 유틸리티 프로그램은 128KB를 필요로 한다. 65C02 대신 6502 CPU를 가진 시스템은 버전 2.0 이전의 ProDOS 8 버전을 사용해야 한다.

ProDOS 16은 Apple IIGS를 필요로 한다.

3. 3. 비인가 Apple II 클론

ProDOS 버전 1.01 이상이 출시되면서, 정식 애플에서 제조한 컴퓨터인지 확인하는 기능이 추가되었다. 컴퓨터의 롬(ROM) 펌웨어에서 "Apple"이라는 문자열을 찾아, 이 문자열이 발견되면 ProDOS가 정상적으로 로드된다. 하지만 "Golden", "프랭클린", "Elite" 등 다른 이름이 발견되면 ProDOS는 실행을 거부하고 부팅 스플래시 화면에서 멈추게 된다. 이는 애플이 라이선스 없이 제작된 애플 II 클론 컴퓨터의 사용을 막기 위한 조치였다.

그러나 사용자들은 특정 버전의 ProDOS에 작은 바이트 패치를 적용하여 클론 컴퓨터에서도 최신 ProDOS를 실행할 수 있었다. 일부 사용자들은 더 나아가 물리적인 ROM 칩 자체를 애플 정품 ROM의 불법 복제본이나 "Apple" 문자열이 추가되도록 수정된 ROM으로 교체하기도 했다.

4. 디스크 지원

ProDOS 8은 기본적으로 디스크 II 호환 플로피 드라이브, 128KB 이상의 RAM을 가진 컴퓨터에서 약 59KB 크기의 RAM 드라이브, 그리고 파스칼 펌웨어 프로토콜을 지원하는 블록 장치를 지원한다. 파스칼 펌웨어 프로토콜은 원래 UCSD p-System과 함께 사용하기 위해 도입된, 블록 단위 읽기와 쓰기를 처리하는 표준화된 방식이다. 이 프로토콜을 지원하는 장치에는 3.5인치 플로피 드라이브와 하드 드라이브가 포함된다. 또한, 사용자가 직접 만든 블록 장치 드라이버도 운영 체제에 연결하여 사용할 수 있다.

5. 파일 시스템

ProDOS는 애플 III의 애플 SOS와 동일한 파일 시스템을 사용한다. 이 파일 시스템은 이후 GS/OS까지 여러 애플 운영체제에서 사용되었으며, 일부 클래식 Mac OS 버전에서는 Apple File Exchange 유틸리티를 통해 접근할 수 있었다.

파일 시스템은 512바이트 블록 단위로 볼륨을 관리하고, 각 볼륨과 파일에는 고유한 이름을 부여할 수 있다. 하위 디렉토리 구조와 현재 작업 디렉토리를 지정하는 '접두사'(prefix) 개념을 지원하여 파일 관리를 용이하게 했다. 파일 시스템은 희소 파일(sparse file)을 지원하며, 사용된 디스크 블록은 비트맵으로 관리하고 중앙 파일 할당 테이블(FAT) 방식은 사용하지 않는다.

애플 II애플 III 컴퓨터 모두에서 부팅될 수 있도록 설계된 부트 섹터를 가지고 있으며, 부팅 시 각각 'PRODOS' 또는 'SOS.KERNEL' 파일을 로드한다.[4]

이전 애플 DOS 3.3과는 파일 시스템 구조가 달라 직접적인 호환성은 없으며, 파일 전송을 위해서는 별도의 변환 유틸리티가 필요했다. DOS 3.2 파일 시스템과의 데이터 교환은 DOS 3.3을 중간 단계로 거쳐야 했다.

5. 1. 파일 시스템 특징

ProDOS는 애플 III에서 사용된 이전 애플 SOS와 동일한 파일 시스템을 사용한다. 이 SOS/ProDOS 파일 시스템은 애플 SOS, ProDOS 8, ProDOS 16, GS/OS에 기본적으로 내장되어 있으며, 일부 클래식 Mac OS 버전에는 Apple File Exchange라는 파일 시스템 변환기를 통해 이 파일 시스템을 다룰 수 있는 기능이 포함되어 있다.

볼륨은 512바이트 블록 단위로 할당된다. 다만, 5.25인치 플로피 디스크는 컨트롤러 ROM이 디스크 부팅에 필요한 형식 때문에 여전히 256바이트 섹터로 포맷되며, ProDOS는 이러한 드라이브에서 256바이트 섹터 두 개를 하나의 블록으로 취급한다. 볼륨의 최대 용량은 32MB이고, 각 파일의 최대 크기는 16MB이다. 모든 볼륨(플로피 디스크 또는 하드 드라이브 파티션)은 "볼륨 이름"이라는 파일 이름을 가지며, 이 이름은 최상위 디렉토리의 이름으로 사용된다. 동일한 볼륨 이름을 가진 두 개의 볼륨이 시스템에 존재하면 충돌이 발생할 수 있다. ProDOS는 필요한 경우 지정된 이름의 볼륨을 찾기 위해 사용 가능한 모든 드라이브를 검색한다. 하위 디렉토리가 지원되며, 이를 편리하게 사용하기 위해 "접두사"(prefix)라는 개념이 도입되었는데, 이는 현재 작업 디렉토리 또는 경로를 의미한다.

파일, 디렉토리, 볼륨의 이름은 1~15자이며, 반드시 문자로 시작해야 하고 이후에는 문자, 숫자, 마침표를 포함할 수 있다. 각 파일 항목에는 파일 데이터의 시작 블록(또는 인덱스 블록)을 가리키는 16비트 포인터, 16비트 블록 수, 24비트 파일 크기, 8비트 파일 형식, 16비트 보조 유형(파일 유형에 따라 의미가 다름), 생성 및 수정 타임스탬프 정보가 저장된다. 또한 파일이 볼륨에 저장되는 방식과 관련된 데이터도 포함된다. 희소 파일(sparse file)이 지원되지만, 파일 내 0으로 채워진 블록을 제거하여 공간을 절약하는 방식의 희소화는 이루어지지 않는다. 볼륨 헤더에도 볼륨 자체에 대한 유사한 정보가 담겨 있다.

루트 디렉토리를 포함한 모든 디렉토리는 순차적으로 색인화되어 관리된다. 각 디렉토리 블록은 이전 블록의 주소(없으면 0)와 다음 블록의 주소(없으면 0)로 시작한다. 대부분의 디스크에서 루트 디렉토리는 4개의 블록으로 초기화되어, 볼륨 헤더를 제외하고 51개의 항목을 저장할 수 있다. 이 크기는 특별한 도구를 사용한 수동 조작 없이는 변경되지 않는다. 반면, 하위 디렉토리는 처음에는 1개의 블록으로 시작하여 필요에 따라 자동으로 크기가 늘어난다.

일반 파일은 점진적인 방식으로 색인화된다. 512바이트 미만의 단일 블록 파일은 별도의 인덱스 블록이 없으며, 디렉토리 항목이 데이터 블록을 직접 가리킨다. 513바이트에서 128KB 사이(2~256 블록)의 파일은 디렉토리 항목이 가리키는 단일 인덱스 블록을 가지며, 이 인덱스 블록에는 최대 256개의 데이터 블록 주소 목록이 포함된다. 더 큰 파일은 최대 256개의 인덱스 블록 주소를 담는 마스터 인덱스 블록을 사용한다. 애플 IIgs가 도입되면서, IIgs 시스템 및 프로그램 파일에서 흔히 사용되는 두 개의 포크(fork)를 가진 파일을 위한 새로운 저장 형식이 추가되었다. 이 경우 디렉토리 항목은 두 포크의 저장 형식을 알려주는 정보 블록을 가리킨다. 이러한 파일은 ProDOS 8에서 기본적으로 읽거나 쓸 수 없지만, 볼륨 자체는 호환성을 유지한다.

볼륨에는 사용된 블록을 표시하는 비트맵이 있다. 이 외에 중앙 집중적인 파일 할당 테이블(FAT)은 존재하지 않는다.

애플의 도구로 포맷된 ProDOS 8 볼륨은 부팅되는 컴퓨터 기종에 따라 ProDOS와 SOS를 모두 지원하는 부트 섹터를 가진다. 블록 0은 애플 II 부트 블록이고, 블록 1은 SOS 부트 블록이다. 이를 통해 애플 II 또는 애플 III 컴퓨터에서 해당 운영체제 커널 파일을 최상위 디렉토리에 두는 것만으로 디스크를 부팅할 수 있다. 애플 II 부트 섹터는 'PRODOS' 파일을 찾고, 애플 III 부트 섹터는 'SOS.KERNEL' 파일을 찾는다.[4] 타사 포맷 유틸리티는 SOS 부트 블록을 제공하지 않는 경우가 많았고, 일부는 블록 1을 사용자 데이터 영역으로 사용 가능하게 만들기도 했다.

ProDOS는 다른 파일 시스템에 대한 커널 수준의 지원을 내장하고 있지 않다. 따라서 ProDOS와 이전 애플 DOS 3.3 디스크 간에 파일을 전송하려면 주 시스템 디스크에 포함된 변환 유틸리티를 사용해야 한다. DOS 3.3과 ProDOS는 하위 수준 디스크 형식이 달라, DOS 3.2 디스크에서 ProDOS로 데이터를 옮기려면 DOS 3.3 디스크를 중간 매체로 사용하는 2단계 과정(DOS 3.3 유틸리티 MUFFIN 등 사용)이 필요하다.

5. 2. ProDOS와 다른 파일 시스템 간의 호환성

ProDOS는 이전 애플 DOS 버전과는 디스크 형식과 프로그래밍 인터페이스가 완전히 다르다. 따라서 ProDOS는 별도의 변환 유틸리티를 사용하지 않고는 DOS 3.3 디스크를 읽거나 쓸 수 없다. 5.25인치 디스크의 경우, 디스크의 하위 레벨 트랙 및 섹터 형식은 DOS 3.3과 동일하게 유지되었지만, 파일과 디렉토리를 구성하는 상위 레벨 방식은 완전히 달랐다. 이러한 차이 때문에 애플 DOS에서 실행되던 대부분의 기계어 프로그램은 ProDOS에서 작동하지 않았다. 다만, BASIC 프로그램은 약간의 수정만 거치면 대부분 작동했다. 사용자들이 ProDOS 환경에서도 DOS 3.3을 계속 사용할 수 있도록 돕는 'DOS.MASTER'와 같은 타사 프로그램도 등장했는데, 이를 이용하면 더 큰 ProDOS 볼륨 안에 여러 개의 가상 DOS 3.3 파티션을 만들 수 있었다.

ProDOS는 애플 III 컴퓨터의 운영 체제였던 애플 SOS와 동일한 파일 시스템을 사용한다. 이 SOS/ProDOS 파일 시스템은 애플 SOS, ProDOS 8, ProDOS 16, 그리고 애플 GS/OS 운영 체제에 기본적으로 내장되어 있다. 일부 클래식 Mac OS 버전에서는 Apple File Exchange라는 파일 시스템 변환기를 통해 이 파일 시스템을 처리할 수 있었다.

애플의 도구로 포맷된 ProDOS 8 볼륨은 어떤 컴퓨터에서 부팅하느냐에 따라 ProDOS와 SOS를 모두 지원하는 부트 섹터를 가지고 있다. 디스크의 블록 0은 애플 II 부트 블록이고, 블록 1은 SOS 부트 블록이다. 이를 통해 디스크의 최상위 디렉토리에 해당 운영 체제의 커널 파일을 넣어두면 애플 II 또는 애플 III 컴퓨터에서 모두 부팅 디스크로 사용할 수 있었다. 애플 II 부트 섹터는 'PRODOS' 파일을 찾고, 애플 III 부트 섹터는 'SOS.KERNEL' 파일을 찾는다.[4] 하지만 타사에서 만든 포맷 유틸리티는 SOS 부트 블록을 제공하지 않는 경우가 많았고, 일부는 블록 1을 사용자 데이터 저장 공간으로 사용 가능하게 만들기도 했다.

ProDOS 자체는 다른 파일 시스템에 대한 커널 수준의 지원을 내장하고 있지 않다. 따라서 ProDOS와 이전 애플 DOS 3.3 디스크 간에 파일을 주고받으려면, 주 시스템 디스크에 포함된 변환 유틸리티를 사용하여 개별적으로 파일을 전송해야 했다. DOS 3.2 디스크의 경우, DOS 3.3 및 ProDOS와 다른 하위 레벨 디스크 형식을 사용하기 때문에 데이터를 ProDOS로 옮기려면 DOS 3.3 디스크를 중간 매체로 사용하는 2단계 과정을 거쳐야 했다(DOS 3.3 유틸리티인 MUFFIN 등 사용).

참조

[1] 웹사이트 Apple ][ ProDOS 1.7 Operating System Source Listing https://mirrors.appl[...] 2024-02-25
[2] 웹사이트 Chapter 15: DOS 3.3, ProDOS & Beyond http://apple2history[...] 2003-06-27
[3] 웹사이트 History of DOS 3.3 and ProDOS http://www.vectronic[...] 2013-08-28
[4] 웹사이트 Chapter 15: DOS 3.3, ProDOS & Beyond http://apple2history[...] 2003-06-27
[5] 웹인용 Chapter 15: DOS 3.3, ProDOS & Beyond http://apple2history[...] 2008-09-17
[6] 웹인용 History of DOS 3.3 and ProDOS http://www.vectronic[...] 2013-08-28



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com