CP/M

CP/M
CP/M
CPM-86.png
CP/M-86 스크린샷
개발자디지털 리서치 주식회사, 게리 킬달
기록 위치PL/M
작업 상태, 역사
소스 모델원래 닫힌 소스, 이제 열린 소스[1]
초기 릴리즈1974년; 48년 전 (1998년)
최신 릴리즈3.1 / 1983; 39년 전 (1998년)[2]
다음에서 사용 가능영어
업데이트 방법재설치
패키지 관리자없음
플랫폼인텔 8080, 인텔 8085, 질로그 Z80, 질로그 Z8000, 인텔 8086, 모토로라 68000
커널형모놀리스 커널
영향을 받은RT-11, OS/8
체납
사용자 인터페이스
명령줄 인터페이스(CP)commodore).
면허증원래 소유권, 지금은 BSD와 같은
성공자MP/M, CP/M-86
공식 웹사이트디지털 리서치 CP/M 페이지

CP/M은 원래 마이크로컴퓨터위한 제어 프로그램[4]/모니터링 및 이후 제어 프로그램을 위한 것으로,[3][5][6][7] 1974년 디지털 리서치 주식회사게리 킬달(Gary Kildall)이 인텔 8080/85 기반 마이크로컴퓨터를 위해 만든 대중 시장 운영 체제.처음에는 8비트 프로세서에 대한 단일 작업으로 제한되었고 64킬로바이트 이하의 메모리로 제한되었으며, 이후 버전의 CP/M은 다중 사용자 변형을 추가했고 16비트 프로세서로 마이그레이션되었다.

CP/M과 S-100 버스 컴퓨터의 조합은 마이크로컴퓨터 산업의 초기 표준이 되었다.컴퓨터 플랫폼은 1970년대 후반부터 1980년대 중반까지 사업에서 널리 사용되었고,[8] CP/M은 새로운 제조업체의 컴퓨터에 응용 프로그램을 설치하는데 필요한 프로그래밍 양을 크게 줄임으로써 하드웨어와 소프트웨어 모두의 시장 규모를 증가시켰다.[9][10]소프트웨어 혁신의 중요한 동인은 (비교적으로) CP/M을 실행하는 저가형 마이크로컴퓨터의 출현이었는데, 독립 프로그래머와 해커들이 이를 구입하여 사용자 그룹별로 창작물을 공유했기 때문이다.[11]CP/M은 1981년 IBM PC의 도입 이후 결국 DOS에 의해[12] 대체되었다.

하드웨어 모델

CP/M 2.2(1982)에서 실행되는 Sanco 8001 컴퓨터
Commodore 64용 CP/M 카트리지

최소 8비트 CP/M 시스템은 다음과 같은 구성 요소를 포함할 수 있다.

  • ASCII 문자 집합을 사용하는 컴퓨터 터미널
  • Intel 8080(이후 8085) 또는 Zilog Z80 마이크로프로세서
    • NEC V20V30 프로세서는 PC DOS/MS-DOS 컴퓨터에서 8비트 CP/M을 실행할 수 있는 8080 에뮬레이션 모드를 지원하므로 어떤 PC도 16비트 CP/M-86을 실행할 수 있다.[13][14]
  • 최소 16킬로바이트의 RAM, 주소 0부터 시작
  • 디스켓의 첫 번째 섹터를 부트스트랩하는 수단
  • 하나 이상의 플로피 디스크 드라이브

디지털 리서치가 판매한 CP/M이 지원하는 유일한 하드웨어 시스템은 인텔 8080 개발 시스템이었다.CP/M 호환 시스템 제조업체는 설치된 메모리, 디스크 드라이브 및 콘솔 장치의 자체 조합을 위해 운영 체제의 일부를 사용자 정의했다.CP/M은 Z80이 8080 코드와 호환되었기 때문에 Zilog Z80 프로세서에 기반한 시스템에서도 실행될 것이다.디지털 리서치가 CP/M(BDOS, CPP, 코어 과도 명령)의 분산 코어는 Z80 전용 명령을 전혀 사용하지 않았지만, 시스템별 BIOS에서 Z80 코드를 사용하는 경우가 많았고, Z80 기반 CP/M 기계 전용 애플리케이션도 많았다.

대부분의 기계에서 부트스트랩은 최소한의 뱅크 스위칭 수단 또는 버스에 코드를 주입하는 수단(8080은 시작을 위해 주소 0에서 부트 코드를 볼 필요가 있는 반면 CP/M은 RAM을 필요로 하기 때문에)과 결합된 ROM최소 부트 로더였다. 다른 시스템의 경우, 이 부트스트랩은 매번 전면 패널 제어를 사용하여 메모리에 입력되어야 했다.tem이 시작되었다.

CP/M은 7비트 ASCII 세트를 사용했다.8비트 바이트로 가능한 나머지 128개의 문자는 표준화되지 않았다.예를 들어, 한 케이프로가 그리스 문자를 위해 그것들을 사용했고, 오스본 기계는 밑줄 친 문자를 나타내기 위해 8번째 비트 세트를 사용했다.워드스타는 8번째 비트를 워드 끝 마커로 사용했다.국제 CP/M 시스템은 지역화된 문자 집합에 ISO 646 규범을 가장 일반적으로 사용하며, 특정 ASCII 문자를 7비트 경계를 넘어 추가하기보다는 지역화된 문자로 대체했다.

운영 체제의 구성 요소

8비트 버전에서 실행 중 메모리에 로드된 CP/M 운영 체제는 다음과 같은 세 가지 구성 요소를 가지고 있었다.[3]

BIOS와 BDOS는 메모리에 상주하는 반면, 중앙청산소는 애플리케이션에 의해 덮어쓰지 않는 한 메모리에 상주하는 것으로, 이 경우 응용 프로그램 실행이 끝나면 자동으로 재로드된다.표준 유틸리티에 대한 다수의 과도 명령도 제공되었다.확장명이 있는 파일에 상주하는 과도 명령.디스크의 COM.

BIOS는 CPU와 메인 메모리가 아닌 하드웨어 구성요소를 직접 제어했다.문자 입력·출력, 디스크 섹터 읽기·쓰기 등의 기능을 담았다.BDOS는 BIOS 위에 CP/M 파일 시스템과 일부 입출력 추상화(리디렉션 등)를 구현했다.중앙청산소는 사용자 명령을 받아 직접 실행하거나(DIR과 같은 내부 명령어, 파일을 삭제하는 디렉토리 또는 평균자책점을 표시하는 내부 명령어) 지정된 이름의 실행 파일(PIP와 같은 변환 명령어)을 로드하여 시작했다.파일 또는 STAT을 복사하는 COM.다양한 파일 및 시스템 정보를 표시하는 COM).CP/M에 대한 타사 애플리케이션도 기본적으로 일시적인 명령이었다.

BDOS, CCP 및 표준 과도 명령은 CP/M의 특정 개정에 대한 모든 설치에서 동일했지만 BIOS 부분은 항상 특정 하드웨어에 맞게 조정되었다.

예를 들어 컴퓨터에 메모리를 추가하는 것은 과도 프로그램이 추가 메모리 공간을 사용할 수 있도록 CP/M 시스템을 다시 설치해야 한다는 것을 의미했다.유틸리티 프로그램(MOVCPM)에는 객체 코드를 다른 메모리 영역으로 재배치할 수 있는 시스템 배포가 제공되었다.유틸리티 프로그램은 절대 점프와 서브루틴 호출 명령의 주소를 프로세서 메모리에서 운영 체제의 새로운 위치에 의해 요구되는 새로운 주소로 조정했다.이 새로 패치가 적용된 버전은 새로운 디스크에 저장되어 응용 프로그램 프로그램이 시스템 구성요소를 이동함으로써 사용할 수 있는 추가 메모리에 액세스할 수 있게 된다.일단 설치된 운영 체제(BIOS, BDOS 및 CCP)는 시스템을 부팅하는 데 사용되는 디스크의 시작 부분에 예약된 장소에 저장되었다.시동 시 부팅 로더(일반적으로 ROM 펌웨어 칩에 포함)는 드라이브의 디스크에서 운영 체제를 로드한다.A:.

현대 표준에 따르면 CP/M은 프로그램 크기에 대한 극단적인 제약 때문에 원시적이었다.버전 1.0에서는 변경된 디스크를 감지하기 위한 규정이 없었다.사용자가 디스크 디렉토리를 수동으로 다시 읽지 않고 디스크를 변경한 경우, 시스템은 이전 디스크의 디렉토리 정보를 사용하여 새 디스크에 기록하여 디스크에 저장된 데이터를 손상시킨다.1.1 또는 1.2 버전 이후부터는 디스크를 변경한 후 디렉토리를 읽기 전에 쓰려고 하면 치명적인 오류가 발생할 수 있다.이로 인해 디스크를 덮어쓰지는 않았지만 디스크에 저장해야 할 데이터가 재부팅되고 손실되어야 했다.

CP/M의 복잡성의 대부분은 BDOS에서 격리되었고, 더 작은 정도는 CCP와 과도 명령이다.이것은 BIOS의 제한된 수의 간단한 루틴을 특정 하드웨어 플랫폼에 포팅함으로써 전체 OS가 작동한다는 것을 의미했다.이로 인해 새로운 기계를 지원하는 데 필요한 개발 시간이 크게 단축되었고, CP/M이 널리 사용되는 주요 이유 중 하나가 되었다.오늘날 이러한 종류의 추상화는 대부분의 OS(하드웨어 추상화 계층)에 공통적으로 나타나지만, CP/M이 탄생할 당시에는 일반적으로 OS가 하나의 기계 플랫폼에서만 실행되도록 되어 있었으며, 다층 설계는 불필요하다고 여겨졌다.

콘솔 명령 프로세서

다음을 사용하여 CP/M 3.0 디렉토리 목록을 보여주는 스크린샷DIR128 가정용 컴퓨터로 지휘하다.

콘솔 명령 프로세서(CCP)는 키보드로부터의 입력을 받아들여 터미널에 결과를 전달하였다.CP/M 자체는 인쇄 단자 또는 비디오 단자와 함께 작동할 것이다.모든 CP/M 명령을 명령줄에 입력해야 했다.콘솔은 가장 자주A>현재 기본 디스크 드라이브를 나타내는 메시지 표시비디오 단말기와 함께 사용할 경우, 일반적으로 단말기에 의해 제공되는 깜박이는 커서가 뒤따른다.중앙청산소는 사용자의 입력을 기다릴 것이다.

콜론이 뒤따르는 폼 드라이브 문자의 중앙CP 내부 명령을 사용하여 기본 드라이브를 선택할 수 있다.예를 들어, 입력B:명령 프롬프트에서 Enter 키를 누르면 기본 드라이브가 B로 변경되고 명령 프롬프트가B>이러한 변화를 나타내기 위해.

CP/M의 명령줄 인터페이스PDP-11의 경우 RT-11, PDP-8의 경우 OS/8과 같은 디지털 장비의 운영 체제를 따라 패턴화되었다.[citation needed]

명령어는 키워드 형태에 이어 공백이나 특수 문자로 구분된 파라미터 리스트를 취했다.Unix shell builtin과 유사하게 내부 명령이 인정되면 중앙청산소 자체에서 수행되었다.그렇지 않으면 현재 로깅된 디스크 드라이브 및 (이후 버전에서) 사용자 영역에서 실행 파일을 찾아서 로드하고 명령줄에서 추가 매개 변수를 전달하려고 할 것이다.이것들은 "혁신적인" 프로그램이라고 일컬어졌다.완료 시, CP/M은 애플리케이션 프로그램에 의해 덮어쓰여졌던 중앙청산소의 부분을 다시 로드할 것이다. 즉, 과도 프로그램은 더 큰 메모리 공간을 허용했다.

명령 자체는 때때로 불명확할 수 있다.예를 들어, 파일 복제 명령 이름이 지정되었다.PIP(Peripheral-Interchange-Program), 그러한 목적으로 사용된 이전 DEC 유틸리티의 이름.프로그램에 주어진 파라미터의 포맷은 표준화되지 않았기 때문에 파일 이름과 옵션을 구분하는 단일 옵션 캐릭터가 존재하지 않았다.다른 프로그램들은 다른 캐릭터들을 사용할 수도 있고 사용할 수도 있다.

명령

CP/M Console Command Processor가 지원하는 내장 명령 목록은 다음과 같다.[15]

CP/M의 과도 명령에는 다음이 포함된다.[15]

CP/M Plus(CP/M 버전 3)에는 다음과 같은 내장 명령이 포함되어 있다.[16]

  • DIR – SYS 속성으로 표시된 파일을 제외한 디렉토리의 파일 목록 표시
  • DIRSYS / DIRS – 디렉토리에 SYS 속성이 표시된 파일 나열
  • ERASE / 평균자책점 – 파일 삭제
  • 이름 바꾸기 / REN – 파일 이름 바꾸기
  • TYPE / TYPE – ASCII 문자 파일의 내용 표시
  • 사용자 / 사용 – 사용자 번호 변경

CP/M 3은 사용자가 내장 명령을 축약할 수 있도록 한다.[17]

CP/M 3의 과도 명령에는 다음이 포함된다.[17]

기본 디스크 운영 체제

기본 디스크 운영 체제 [18][19]또는 BDOS는 파일 열기, 콘솔에 대한 출력 또는 인쇄와 같은 작업에 대한 액세스를 제공했다.[18][19]애플리케이션 프로그램은 작동을 위한 기능 코드와 매개변수 또는 메모리 버퍼 주소를 포함한 프로세서 레지스터를 로드하고 메모리에 고정된 주소를 호출할 수 있다.주소는 시스템의 메모리 양과 무관하므로, 애플리케이션 프로그램은 하드웨어의 어떤 유형이나 구성에 대해서도 동일한 방식으로 실행될 것이다.

기본 입력 출력 시스템

1978년 12월 11일자 InfoWorld 매거진 CP/M 광고

기본 입력 출력 시스템 또는 BIOS는 운영 체제에서 요구하는 최저 수준의 기능을 제공했다.[18][19]

여기에는 시스템 콘솔에 단일 문자를 읽거나 쓰고 디스크에서 데이터 섹터를 읽거나 쓰는 작업이 포함된다.BDOS는 디스켓의 데이터 버퍼링을 일부 처리했지만 CP/M 3.0 이전에는 단일 밀도 8인치 플로피 디스크에 사용되는 128바이트로 고정된 디스크 섹터 크기를 가정했다.대부분의 5.25인치 디스크 포맷은 더 큰 섹터를 사용했기 때문에, 디스크 버퍼 영역의 차단 및 잠금 해제와 관리는 BIOS의 모델별 코드로 처리되었다.

하드웨어 선택은 일반적인 표준과의 호환성에 의해 제한되지 않기 때문에 사용자 정의가 필요했다.예를 들어, 일부 제조업체는 별도의 컴퓨터 단말기를 사용했고, 다른 제조업체들은 내장형 비디오 디스플레이 시스템을 설계했다.프린터와 모뎀용 직렬 포트는 다른 종류의 UART 칩을 사용할 수 있었고, 포트 주소는 고정되지 않았다.일부 기계는 8080 I/O 주소 공간 대신 메모리 매핑된 I/O를 사용했다.이러한 하드웨어의 모든 변형은 BIOS를 사용하여 시스템의 다른 모듈로부터 은폐되었으며, BIOS는 문자 I/O나 디스크 블록 액세스와 같은 CP/M을 실행하는 데 필요한 서비스에 표준 진입점을 사용했다.모뎀에 대한 직렬 통신에 대한 지원은 BIOS에서 매우 초보적이었거나 아예 없을 수도 있기 때문에, 모뎀을 사용하는 CP/M 프로그램에는 특정 컴퓨터의 직렬 포트에 액세스하는 데 필요한 모든 코드가 포함된 사용자 설치 오버레이가 있는 것이 일반적인 관행이었다.

파일 시스템

파일 이름은 최대 8자의 문자열로 지정되었고 마침표가 뒤따랐으며, 파일 이름 확장자는 최대 3자(8.3" 파일 이름 형식)로 지정되었다.확장자는 일반적으로 파일의 유형을 식별했다.예를 들어,.COM실행 가능한 프로그램 파일을 표시했으며.TXTASCII 텍스트를 포함하는 파일을 표시했다.

각 디스크 드라이브는 드라이브 문자(예: 드라이브)로 식별됨A운전하다B. 특정 드라이브의 파일을 참조하기 위해, 드라이브 문자는 파일 이름에 접두사(예: 콜론)로 구분되었다.A:FILE.TXT. 드라이브 문자가 접두사로 지정되지 않은 상태에서 현재 기본 드라이브의 파일에 액세스할 수 있었다.[20]

파일 크기는 디스크의 파일이 점유한 128바이트 레코드 수(8인치 드라이브의 디스크 섹터에 직접 해당)로 지정되었다.바이트-정확한 파일 크기를 지정하는 일반적으로 지원되는 방법은 없었다.파일의 현재 크기는 운영 체제에 의해 파일의 파일 제어 블록(FCB)에서 유지되었다.많은 응용 프로그램 프로그램(텍스트 편집기 등)이 레코드의 시퀀스보다는 문자 시퀀스로 파일을 처리하는 것을 선호하기 때문에 컨벤션 텍스트 파일에 의해 제어-Z 문자(ASCII SUB, 16진수 1A)로 종료되었다.따라서 텍스트 파일을 결정하는 것은 종료 제어-Z를 찾기 위한 파일의 마지막 기록을 조사하는 것을 포함한다.이것은 또한 파일 중간에 컨트롤-Z 문자를 삽입하는 것이 보통 파일의 텍스트 내용을 잘라내는 효과가 있다는 것을 의미했다.

더 큰 이동식 및 고정 디스크 드라이브가 등장하면서 디스크 차단 수식이 사용되어 논리 파일 할당 블록당 더 많은 디스크 블록이 생성되었다.이는 파일 크기가 더 클 수 있도록 허용되었지만, 할당될 수 있는 가장 작은 파일의 크기가 1KB(단밀도 드라이브)에서 2KB(이중 밀도 드라이브) 등으로, 단일 바이트만 포함된 파일의 경우 최대 32KB까지 증가한다는 것을 의미했다.이것은 디스크에 작은 파일들이 많이 있을 경우 디스크 공간을 비효율적으로 사용하기 위해 만들어졌다.

파일 수정 타임 스탬프는 CP/M 2.2까지의 릴리스에서는 지원되지 않았지만 MP/M과 CP/M 3.0의 옵션 기능이었다.[21]

CP/M 2.2는 파일 구조에 하위 디렉터리가 없었지만 디스크의 파일을 구성할 수 있는 16개의 번호의 사용자 영역을 제공했다.사용자를 변경하려면 명령 프롬프트에 "사용자 X"를 입력하기만 하면 된다. X는 사용자가 원하는 번호로, 보안은 존재하지 않으며 필요하다고 여겨지지 않는다.사용자 영역 개념은 CP/M의 단일 사용자 버전을 다중 사용자 MP/M 시스템과 어느 정도 호환되도록 하는 것이었다.CP/M과 파생 운영체제의 공통 패치는 현재 설정된 사용자 영역과 독립적으로 사용자가 하나의 사용자 영역에 접근할 수 있도록 하는 것이었다.USER 명령은 사용자 영역을 0에서 15까지의 영역으로 변경할 수 있도록 허용했다.사용자 0이 기본값이었다.한 사용자가 USER 1과 같은 다른 사용자로 변경될 경우, 이 사용자를 위해 디스크에 저장된 자료는 USER 1에서만 사용할 수 있으며, USER 2는 이를 보거나 액세스할 수 없을 것이다.그러나 USER 0 영역에 저장된 파일은 다른 모든 사용자가 액세스할 수 있었다. 그 위치는 USER 0의 파일이 사용자 0으로 로그인한 사람만 볼 수 있었기 때문에 사전 준비 경로로 지정되었다. 사용자 영역 기능은 아마도 작은 플로피 디스크에는 거의 유틸리티가 없었지만 하드 드라이브가 있는 기계에 파일을 정리하는 데 유용했다.이 기능의 목적은 다른 작업에 대해 동일한 컴퓨터를 쉽게 사용하는 것이었다.예를 들어, 비서는 데이터 입력을 한 다음 USER 영역을 바꾼 후에 다른 직원이 파일을 섞지 않고 이 기계를 사용하여 청구서를 작성할 수 있다.

과도 프로그램 영역

주소 0100 16진수와 BDOS의 가장 낮은 주소 사이의 읽기/쓰기 메모리는 CP/M 응용 프로그램에 사용할 수 있는 과도 프로그램 영역(TPA)이었다.모든 Z80 및 8080 프로세서가 64킬로바이트의 메모리를 처리할 수 있지만, 응용 프로그램에 사용할 수 있는 양은 특정 컴퓨터의 설계에 따라 달라질 수 있다.일부 컴퓨터는 BIOS ROM이나 비디오 디스플레이 메모리와 같은 것들을 위해 주소 공간의 큰 부분을 사용했다.그 결과, 일부 시스템은 다른 시스템보다 더 많은 TPA 메모리를 사용할 수 있게 되었다.뱅크 스위칭은 필요에 따라 ROM이나 비디오 메모리 공간을 전환하면서 시스템이 큰 TPA를 가질 수 있도록 하는 일반적인 기술이었다.CP/M 3.0은 BDOS의 일부도 은행 교환 메모리에 있도록 허용했다.

디버깅 응용 프로그램

CP/M은 DDT(살충제 후, 버그 킬러)라는 별명을 가진 동적 디버깅 툴을 가지고 왔는데, 메모리 및 프로그램 모듈을 검사하고 조작할 수 있으며, 프로그램을 한 번에 한 단계씩 실행할 수 있게 했다.[22][23][24]

레지던트 프로그램

CP/M은 원래 DOS에 따른 종료 및 체류(TSR) 프로그램과 동등한 프로그램을 지원하지 않았다.프로그래머는 특정 운영체제 호출을 차단하고 그들의 기능을 확장하거나 변경할 수 있는 소프트웨어를 작성할 수 있다.프로그래머들은 이 기능을 이용하여 어떤 키에든 바이트 문자열을 할당하는 키보드 유틸리티인 스마트키와 같은 보조 데스크 액세서리 프로그램을 개발하여 판매했다.[25]그러나 CP/M 3은 동적으로 적재 가능거주자 시스템 확장(RSX)에 대한 지원을 추가했다.[16][21]소위 null 명령 파일을 사용하여 CCP가 과도 프로그램 없이 RSX를 로드할 수 있다.[16][21]RSM(주민 시스템 모듈용)과 같은 유사한 솔루션도 제3자에 의해 CP/M 2.2 시스템으로 개조되었다.[26][27][28]

설치

CP/M은 디스크 I/O 또는 콘솔 I/O에 대한 인터페이스를 표준화하기 위한 하드웨어 추상화를 제공했지만, 일반적으로 애플리케이션 프로그램은 프린터와 터미널과 같은 장비의 모든 기능을 사용하기 위해 설치가 필요했다.종종 이것들은 다른 기기에 대해 변경되어야 하는 탈출 순서에 의해 제어되었다.예를 들어, 프린터에서 굵은 면을 선택하기 위한 탈출 순서는 제조자마다, 그리고 때로는 제조자 범위 내의 모델 간에 차이가 있었을 것이다.이 절차는 운영체제에 의해 정의되지 않았다. 사용자는 일반적으로 다양한 장치에서 선택을 허용하거나 기능에 액세스하는 데 필요한 탈출 시퀀스의 기능별 편집을 허용하는 설치 프로그램을 실행했다.이러한 기기에는 중앙 운영 체제 서비스가 제공되지 않았기 때문에, 각 애플리케이션 프로그램에 대해 반복해야 했다.

프린터의 각 모델에 대한 초기화 코드는 애플리케이션에 기록되어야 했다.두 개 이상의 프린터(예: 빠른 도트 매트릭스 프린터 또는 더 느리지만 프리젠테이션 품질의 데이지 휠 프린터)가 있는 워드스타와 같은 프로그램을 사용하려면 별도의 버전의 워드스타를 준비해야 했고, 선택한 프린터와 일치하는 워드스타 버전을 로드해야 했다(그리고 프린터를 교체하기 위해 종료하고 다시 로드).

역사

1982년 11월 29일자 InfoWorld 매거진 CP/M 광고

시작과 CP/M의 전성기

Gary Kildall은 원래 1974년 동안 사용자 지정 플로피 디스크 컨트롤러를 통해 연결된 Shugart Associates 8인치 플로피 디스크 드라이브를 장착한 Intellec-8 개발 시스템에서 실행하기 위한 운영 체제로서 CP/M을 개발했다.[5][6][19]그것은 킬달의 독자적인 PL/M(마이크로컴퓨터를 위한 프로그램 언어)[18]으로 작성되었다.CP/M의 다양한 측면은 Kildall이 개발 환경으로 사용했던 DECsystem-10 메인프레임 컴퓨터TOPS-10 운영체제의 영향을 받았다.[29][30][31]

킬달의 지휘 아래 CP/M 2.0 개발은 1978년 존 피어스가 주로 진행했다.해군 대학원(NPS) 시절 킬달의 친구였던 캐서린 스트루틴스키는 1979년 초 디지털 리서치 주식회사의 네 번째 직원이 되었다.그녀는 CP/M 2.0 디버깅으로 시작했으며, 이후 CP/M 2.2와 CP/M Plus의 핵심 개발자로 영향력이 커졌다.CP/M 베이스의 다른 초기 개발자들로는 로버트 "밥" 실버슈타인과 데이비드 "데이브" K. 브라운이 있다.[21][32]

이름

CP/M은 원래 "제어 프로그램/모니터"[3]의 약자로, 운영체제의 초기 전조인 상주 모니터를 의미하는 명칭이다.그러나, CP/M을 상용 제품으로 전환하는 과정에서 1977년 11월에 제출된 상표 등록 서류에 제품명이 "마이크로컴퓨터를 위한 제어 프로그램"[6]으로 표기되었다.CP/M 명칭은 킬달의 PL/M 언어와 프라임 컴퓨터의 PL/P(Programming Language for Prime)에서처럼 당시의 지배적인 명명 체계를 따르며, 둘 다 IBM의 PL/I와 킬달이 NPS에서 일할 때 사용했던 IBM의 CP/CMS 운영 체제를 나타낸다.

이러한 CP/M의 명칭 변경은 Kildall과 그의 아내 Dorothy McEwen이[4] 사업 파트너인 Dorothy McEwen과 함께 Kildall의 CP/M과 인텔이 계약한 PL/M 컴파일러를 상업적 기업으로 전환하기 위한 노력의 일환이었다.Kildalls는 디지털 리서치 브랜드와 그 제품군을 소비자 마음에서 "마이크로컴퓨터"와 동의어로 설립할 계획이었는데, 이는 IBM과 마이크로소프트가 함께 후에 "개인용 컴퓨터"를 그들의 제품 제품과 동의어로 만드는 데 성공했던 것과 유사하다.

은하간 디지털 리서치, Inc.는 나중에 디지털 리서치, Inc.에 대한 법인 명의 변경 신청을 통해 이름을 바꾸었다.[4]

휴대성

1981년 9월까지 디지털 리서치는 250000개 이상의 CP/M 라이선스를 판매했다. InfoWorld는 서브라이센스 때문에 실제 시장이 더 커질 가능성이 있다고 말했다.많은 다른 회사들이 많은 다른 시장을 위해 CP/M 기반 컴퓨터를 생산했다; 잡지는 "CP/M이 소형 컴퓨터 운영체제로 자리 잡아가고 있다"[33]고 말했다.그 회사들은 소프트웨어 라이브러리가 크기 때문에 CP/M을 지원하기로 선택했다.제록스 820은 "말 그대로 수천 개의 프로그램이 쓰여진 곳에서, 제록스 820을 이용하지 않는 것은 현명하지 못한 일"이라고 말했다.[34](제록스는 1982년 InfoWorld가 흉악하다고 기술한 디지털 리서치 문서에 대한 보상으로 하워드 W. 샘스 CP/M 매뉴얼을 포함했다.)[35]1984년까지 컬럼비아 대학은 12개 이상의 다른 CP/M 시스템에 대한 Kermit 바이너리를 구축하기 위해 동일한 소스 코드를 사용했으며, 여기에 일반 버전을 추가했다.[36]운영체제는 "소프트웨어 버스"[37][38]로 설명되어 여러 프로그램이 표준화된 방식으로 서로 다른 하드웨어와 상호작용을 할 수 있게 되었다.[39]CP/M용으로 작성된 프로그램은 일반적으로 서로 다른 기계들 사이에서 이동 가능하며, 일반적으로 화면과 프린터를 제어하기 위한 탈출 시퀀스의 사양만 요구되었다.이러한 휴대성은 CP/M을 유명하게 만들었고, 하나의 하드웨어 브랜드에서만 실행되는 운영체제보다 CP/M을 위해 훨씬 더 많은 소프트웨어가 작성되었다.휴대성에 대한 한 가지 제한 사항은 특정 프로그램이 Z80 프로세서의 확장 명령 세트를 사용하고 8080 또는 8085 프로세서에서 작동하지 않는다는 것이었다.또 다른 것은 그래픽 루틴, 특히 게임과 그래픽 프로그램에서는 OS와 BIOS를 우회하여 속도를 위해 직접 하드웨어 접속을 사용했기 때문에 일반적으로 기계에 특화된 것이었다(이 또한 초기 DOS 기계에서는 흔한 문제였다).[citation needed]

설명서 포함 Apple CP/M 카드

빌 게이츠Z-80 SoftCard를 가진 애플 II 제품군이 가장 인기 있는 CP/M 하드웨어 플랫폼이라고 주장했다.[40]많은 다른 상표의 기계들이 운영 체제를 운영했는데, 몇 가지 주목할 만한 예로는 Altair 8800, IMSAI 8080, 오스본 1과 케이프로 짐가방, MSX 컴퓨터 등이 있다.역대 가장 잘 팔린 CP/M 지원 시스템은 아마 암스트라드 PCW였을 것이다.영국의 경우, CP/M은 Research Machines 교육용 컴퓨터(교육 자원으로 출판된 CP/M 소스 코드 포함)와, BBC Micro는 Z80 공동 프로세서를 장착했을 때 이용할 수 있었다.또한, 그것은 ZX 스펙트럼Amstrad CPC 시리즈, 128, TRS-80 및 그 이후의 모델에 사용할 수 있었다.CP/M 3은 A.C.용으로 설계된 맞춤형 휴대용 컴퓨터인 NIAT에도 사용되었다. 1MB SSD 메모리로 닐슨 내부 사용

적용들

8비트 CP/M용으로 출시된 워드스타 워드 프로세싱 프로그램의 마지막 버전(버전 4)을 위한 5 1/4인치 디스켓 및 패키징.

최초의 널리 사용되는 워드프로세서 중 하나인 워드스타와 마이크로컴퓨터의 초기 인기 데이터베이스 프로그램인 dBase는 원래 CP/M을 위해 작성되었다.두 개의 초기 아웃라이너인 KAMAS(지식 및 마인드 증폭 시스템)와 그 컷다운 후계자 Out-Think(프로그래밍 설비를 사용하지 않고 8080/V20 호환성을 위해 재설계됨)도 나중에 MS-DOS용으로 다시 작성되었지만 CP/M용으로 작성되었다.볼랜드 델피의 조상인 터보 파스칼마이크로소프트 엑셀의 조상인 멀티플란도 MS-DOS 버전이 출시되기 전에 CP/M에 데뷔했다.최초의 스프레드시트 프로그램인 Visicalc는 CP/M에 제공되었다.또 다른 회사인 Sorcim은 CP/M을 위한 SuperCalclcal 스프레드시트를 만들었는데, 이 스프레드시트는 CP/M의 시장 선도자 및 사실상의 표준이 될 것이다.슈퍼칼슘은 MS-DOS 세계의 스프레드시트 시장에서 경쟁자가 될 것이다.오토데스크의 CAD 애플리케이션인 AutoCAD는 CP/M으로 첫 선을 보였다.당시 인기 프로그래밍 언어(BASIC, 볼랜드Turbo Pascal, FORTRAN, 심지어 PL/I[41] 등)에 대한 컴파일러와 통역사가 다수 이용이 가능했으며, 그 중에는 초창기 마이크로소프트 제품도 여럿 포함되어 있었다.

CP/M 소프트웨어는 종종 그것을 다양한 컴퓨터에 적응시킨 설치 프로그램과 함께 제공되었다.[42]BASIC 프로그램의 소스 코드는 쉽게 접근할 수 있었고, 대부분의 형태의 카피 보호는 운영 체제에서 비효율적이었다.[43]예를 들어 케이프로 II 소유자는 제록스 820 포맷의 소프트웨어를 얻은 다음, 그것을 복사하여 케이프로 포맷 디스크에서 실행하게 된다.[44]

표준화된 그래픽이 부족하여 비디오 게임은 제한적이지만, 텔렝가드,[45] 고릴라,[46] 하무라비, 루나 랜더 등 다양한 캐릭터와 텍스트 기반 게임과 조크 시리즈, 콜로살 동굴 어드벤처 등 초기 인터랙티브 픽션들포팅되었다.텍스트 어드벤처 전문가 인포콤은 CP/M 형식으로 게임을 꾸준히 출시한 몇 안 되는 출판사 중 한 곳이었다.라이프보트 어소시에이츠社는 사용자가 작성한 "무료" 소프트웨어를 수집하여 배포하기 시작했다.그 중 하나는 모뎀과 전화선을 통한 신뢰할 수 있는 파일 전송을 허용하는 XMODEM이었다.CP/M이 원산지인 또 다른 프로그램은 아웃라인 프로세서 KAMAS이다.[citation needed]

디스크 포맷

IBM System/34IBM 3740의 단밀도 단면 형식은 CP/M의 표준 8인치 플로피 디스크 형식이다.표준 5.25인치 CP/M 디스크 포맷은 존재하지 않으며, 케이프로, 모로 디자인, 오스본 등이 자체 포맷을 사용하고 있다.[47][35][48]인포월드는 1981년 9월 "소프트웨어 제작자들이 가장 광범위한 시장에 도달하기 위해 고려해야만 할 정도로 약 20여 개의 포맷이 인기가 있었다"[33]고 추정했다.를 들어, JRT 파스칼북극성, 오스본, 애플, 히스 하드 섹터소프트 섹터, 슈퍼브레인용 5.25인치 디스크 버전과 8인치 버전을 제공했다.[49]엘리스 컴퓨팅은 또한 두 가지 다른 TRS-80 CP/M 수정을 포함한 16개의 다른 5.25인치 포맷과 히스 포맷을 위한 소프트웨어를 제공했다.[50]

특정 디스크 포맷은 다른 포맷보다 더 인기가 있었다.대부분의 소프트웨어는 제록스 820 포맷으로 이용할 수 있었고, 케이프로 2와 같은 다른 컴퓨터들도 그것과 호환이 가능했다.[44][51]그러나 CP/M 사용의 5.25인치 시대에는 단 한 제조업체도 우세하지 않았으며, 하드웨어 제조업체 간에 디스크 포맷이 휴대할 수 없는 경우가 많았다.소프트웨어 제조업체는 프로그램을 실행할 각 하드웨어 브랜드에 대해 별도의 버전의 프로그램을 준비해야 했다.일부 제조사(케이프로가 예시)에서는, 회사의 다른 모델에 걸친 표준화조차 이루어지지 않았다.이러한 상황 때문에, 대부분의 CP/M 기계가 가지고 있는 직렬 포트를 이용하여 한 기계에서 다른 기계로 데이터와 프로그램을 전송할 수 있게 한 Kermit과 같은 프로그램들처럼 기계가 많은 다른 포맷을 읽을 수 있게 한 디스크 포맷 번역 프로그램이 인기를 끌었고 혼란을 줄였다.

특정 시스템의 특성과 설계자의 선택에 따라 다양한 형식이 사용되었다.CP/M은 디스크의 예약된 영역과 디렉토리 영역의 크기를 제어하기 위한 옵션과 (CP/M 프로그램에서 볼 수 있는) 논리 디스크 섹터와 디스크에 할당된 물리적 섹터 간의 매핑을 제어하기 위한 옵션을 지원한다.모든 시스템에[52] 대해 이러한 매개 변수를 사용자 정의하는 방법은 여러 가지가 있었지만 일단 설정되면 시스템이 다른 시스템에서 포맷된 디스크에서 매개 변수를 로드하는 표준화된 방법은 존재하지 않았다.

8인치와 5.25인치 양식으로 CP/M 시대에 다양한 플로피 타입이 존재했기 때문에 서로 다른 CP/M 기계들 간의 휴대성의 정도는 사용된 디스크 드라이브와 컨트롤러의 유형에 따라 달라졌다.디스크는 하드 또는 소프트 종단, 단일 또는 이중 밀도, 단면 또는 양면, 35 트랙, 40 트랙, 77 트랙 또는 80 트랙이 될 수 있으며 섹터 레이아웃, 크기 및 인터리브도 매우 다양할 수 있다.번역 프로그램은 사용자가 다른 기계에서 디스크 유형을 읽을 수 있도록 할 수 있지만, 그것은 또한 드라이브 유형과 컨트롤러에 따라 달라졌다.1982년까지 소프트 섹터, 단면 40개의 트랙 5.25인치 디스크는 애플 II, TRS-80, 오스본 1, 케이프로 II, IBM PC와 같은 당시 가장 일반적인 소비자 수준의 기계에서 사용되었기 때문에 CP/M 소프트웨어를 배포하는 가장 인기 있는 형식이 되었다.번역 프로그램을 통해 사용자는 유사한 포맷을 가진 자신의 기계의 디스크를 읽을 수 있었다. 예를 들어, 케이프로 II는 TRS-80, 오스본, IBM PC엡손 디스크를 읽을 수 있었다.80트랙이나 하드파퍼와 같은 다른 디스크 타입은 완전히 읽기 불가능했다.(Epson QX-10과 같은) 양면 디스크의 전반부를 읽을 수 있었는데, 이는 CP/M이 순차적으로 디스크 트랙에 액세스하고 트랙 0은 사이드 1의 첫 번째(가장 바깥쪽) 트랙이고 트랙 79(40 트랙 디스크)는 사이드 2의 마지막(가장 안쪽) 트랙이기 때문이다.애플 II 사용자들은 애플의 GCR 포맷 외에는 아무것도 사용할 수 없어 애플 포맷 디스크에서 CP/M 소프트웨어를 얻거나 시리얼 링크를 통해 전송해야 했다.

보다 표준화된 IBM PC 디스크 포맷에 비해 유통업자가 복수의 포맷의 디스크를 비축하거나 멀티폼 복제 장비에 투자하도록 요구하는 단편화된 CP/M 시장은 1981년 이후 CP/M의 급속한 노후화에 한몫했다.

마지막으로 등장한 주목할 만한 CP/M 지원 기계 중 하나는 1985년 Commodore 128로, 6502파생 CPU를 사용한 네이티브 모드 외에 CP/M 지원을 위한 Z80을 가지고 있었다. CP/M을 사용하려면 소프트 섹터 40트랙 MFM 포맷 디스크를 읽을 수 있는 1571 또는 1581 디스크 드라이브가 필요했다.

3.5인치 플로피 드라이브를 처음 사용한 소니 SMC-70은 CP/M 2.2를 실행했다.[53]Commodore 128, Bondwell-2 노트북, Micromint/Ciarcia SB-180,[54] MSX, TRS-80 모델 4(몬테즈마 CP/M 2.2 실행)도 3.5인치 플로피 디스크로 CP/M 사용을 지원했다.암스트라드 PCW는 처음에는 3인치 플로피 드라이브를 사용하여 CP/M을 실행했고, 이후 3.5인치 드라이브로 전환했다.

그래픽스

그 시간에 일반적인 단색 모니터에 표시되는 MBASIC 텍스트 출력.

S-100 버스의 상용화부터 그래픽이 가능한 S-100 시스템이 존재했지만, CP/M은 GSX(Graphics System Extension)로 1982년까지 표준화된 그래픽 지원을 제공하지 않았다.사용할 수 있는 메모리가 작기 때문에 그래픽은 8비트 CP/M 운영 체제와 관련된 일반적인 기능이 결코 아니었다.대부분의 시스템은 텍스트 모드나 사용자 지정 문자 집합을 사용하여 기본적인 ASCII 아트 차트와 도표만 표시할 수 있었다.케이프로 라인과 TRS-80 모델 4의 일부 컴퓨터에는 블록 그래픽 문자를 지원하는 비디오 하드웨어가 있었고, 이것들은 CR$ 명령을 사용하여 조립 프로그래머와 BASIC 프로그래머가 접근할 수 있었다.모델 4는 고해상도 보드 옵션으로 640 X 240 픽셀 그래픽을 표시할 수 있다.

다중 사용자

1979년에는 CP/M의 다중 사용자 호환 파생 모델이 출시되었다.MP/M은 여러 사용자가 여러 단말기를 사용하여 한 대의 컴퓨터에 연결할 수 있도록 하여 각 사용자에게 화면과 키보드를 제공하였다.이후 버전은 16비트 프로세서에서 실행되었다.

CP/M 플러스

CP/M Plus(CP/M 3) 시스템 가이드

CP/M의 마지막 8비트 버전은 1983년에 출시된 종종 CP/M Plus라고 불리는 버전 3이었다.[21]그것의 BDOS는 Brown에 의해 설계되었다.[21]그것은 CP/M 2.2 애플리케이션과 호환되는 단일 사용자 단일 태스크 운영 체제에 MP/M의 뱅크 스위칭 메모리 관리를 통합했다.따라서 CP/M 3은 8080 또는 Z80 프로세서에서 64KB 이상의 메모리를 사용할 수 있다.이 시스템은 파일의 날짜 스탬프를 지원하도록 구성될 수 있다.[21]운영체제 배포 소프트웨어에는 이전하는 조립자와 링크도 포함되어 있었다.[2]CP/M 3은 마지막 세대의 8비트 컴퓨터, 특히 Amstrad PCW, Amstrad CPC, ZX Spectrum +3, Commodore 128, MSX 기계 및 Radio Shack TRS-80 모델 4에 사용할 수 있었다.[55]

16비트 세계

DEC Pro-CP/M-80 플로피 디스크 배포는 DEC Professional 3xx 시리즈에서 Z80-A 공동 프로세서를 위한 것이다.

일부 16비트 CPU에 대한 CP/M 버전도 있었다.

16비트 제품군의 첫 버전은 1981년 11월 인텔 8086용 CP/M-86이었다.[56]Kathryn Strutynski는 진화하는 CP/M-86 운영체제 라인의 프로젝트 매니저였다.[21][32]이때 원래의 8비트 CP/M은 혼란을 피하기 위해 레트로니엄 CP/M-80에 의해 알려지게 되었다.[56]

CP/M-86은 새로운 IBM PC의 표준 운영체제가 될 것으로 예상되었지만 DRI와 IBM은 개발 및 라이선스 조건을 협상할 수 없었다.IBM은 대신 마이크로소프트에 눈을 돌렸고 마이크로소프트는 86-DOS 기반의 PC DOS를 제공했다.DRI가 법적 대응을 위협한 이후 CP/M-86이 IBM PC의 선택지가 되었지만, 마이크로소프트의 시스템을 추월한 적은 없었다.대부분의 고객들은 IBM이 PC DOS보다 CP/M-86에 훨씬 더 비싼 가격(각각 미화 240달러, 미화 40달러)에 의해 거절당했다.[57]

DEC(Digital Equipment Corporation)가 레인보우 100을 IBM과 경쟁하기 위해 내놓았을 때, Z80 칩을 사용한 CP/M-86 또는 8088 마이크로프로세서를 사용한 MS-DOS, 또는 둘 모두를 사용한 CP/M-86/80과 함께 나왔다.Z80과 8088 CPU는 동시에 실행되었다.[58][59]레인보우의 이점은 사용자가 MS-DOS의 16비트 세계로 이동함에 따라 가능한 상당한 투자를 보존하면서 8비트 CP/M 소프트웨어를 계속 실행할 수 있다는 것이었다.[58] CompuPro 시스템 816[sr]의 유사한 이중 프로세서 어댑테이션이 CP/M 8-16으로 명명되었다.8085/8088 기반 제니스 Z-100에 대한 CP/M-86 적응도 두 CPU 모두에 대한 실행 프로그램을 지원했다.

곧 CP/M-86에 이어 또 다른 16비트 버전의 CP/M이 모토로라 68000용 CP/M-68K로 출시되었다.CP/M-68K의 1982년 원래 버전 Pascal/MT+68k에 있지만, 그것은 C에 대해서는 나중에. CP/M-68K, 이미 모토로라 EXORmacs 체제로 운영되는, 처음에 아타리 ST컴퓨터에서 사용되는 것이지만, 아타리 GEMDOS. CP/M-68K도 SORD M68과 M68MX 컴퓨터에 사용된 새로운 디스크 운영 시스템입니다를 쓰기로 결정했다 ported대.[60]

1982년에는 CP/M-68K에서 Oliveti M20용 16비트 질로그 Z8000이르는 포트가 있었는데, 이 포트는 CP/M-8000이라고 C로 표기되어 있었다.[61][62]

이러한 16비트 버전의 CP/M은 새로운 CPU를 위해 애플리케이션 프로그램을 다시 컴파일해야 했다.조립 언어로 작성된 일부 프로그램은 새로운 프로세서를 위해 자동으로 번역될 수 있다.이를 위한 한 가지 도구는 디지털 리서치의 XLT86으로 번역되었다.로 Intel 8080 프로세서의 ASM 소스 코드.Intel 8086의 A86 소스 코드.The translator would also optimize the output for code size and take care of calling conventions, so that CP/M-80 and MP/M-80 programs could be ported to the CP/M-86 and MP/M-86 platforms automatically. XLT86 itself was written in PL/I-80 and was available for CP/M-80 platforms as well as for VAX/VMS.[63]

MS-DOS 인수

많은 이들은 CP/M이 16비트 컴퓨터의 표준 운영 체제가 될 것으로 예상했다.[64]1980년 IBM은 빌 게이츠의 제안으로 디지털 리서치에 접근하여 새로운 제품인 IBM Personal Computer에 대해 곧 출시될 CP/M의 라이센스를 부여했다.[65]서명된 비공개 합의를 얻지 못하자 회담은 무산되었고, IBM은 대신 마이크로소프트와 운영체제를 제공하기로 계약했다.[66]결과물인 MS-DOS는 곧 CP/M을 앞지르기 시작했다.

초기 버전의 MS-DOS의 기본 개념과 메커니즘은 CP/M과 유사했다.파일 처리 데이터 구조와 같은 내부 구조는 동일했으며, 두 가지 모두 문자가 있는 디스크 드라이브를 가리켰다.A:,B: , 등).MS-DOS의 주요 혁신은 FAT파일 시스템이었다.이러한 유사성으로 인해 워드스타dBase와 같은 인기 있는 CP/M 소프트웨어를 쉽게 포팅할 수 있게 되었다.However, CP/M's concept of separate user areas for files on the same disk was never ported to MS-DOS. Since MS-DOS had access to more memory (as few IBM PCs were sold with less than 64 KB of memory, while CP/M could run in 16 KB if necessary), more commands were built into the command-line shell, making MS-DOS somewhat faster and easier to use on플로피 기반 컴퓨터

IBM PC의 첫 번째 주변기기 중 하나가 8비트 CP/M 소프트웨어를 실행할 수 있는 소프트카드와 같은 확장카드였지만,[67] 1984년 InfoWorld는 가정 시장에 CP/M을 도입하려는 노력은 대부분 성공하지 못했고 대부분의 CP/M 소프트웨어는 가정 사용자들에게 너무 비쌌다고 말했다.[68]1986년도의 잡지는 케이프로 길이로 대다수의 다른 벤더 CP/M을 위한 새로운 장비 및 소프트웨어의 생산을 끝났다. MS-DOS호환되는 시스템 판매에 집중하기 위해 8비트CP/M-based 모델의 생산 중단했다고 말했다.로 마이크로 컴퓨터를 사용하기. 시장은 IBM호환 기종. 플랫폼으로 이사했다[69]CP/M 빠르게 진행되며, 그것은 대해서 강경 결코 시장 점유율을 잃다.이전의 인기를 얻었다.당시 마이크로컴퓨터를 위한 선도적인 산업 잡지 중 하나인 바이트 매거진은 IBM PC가 소개된 지 몇 년 만에 CP/M 제품에 대한 취재를 근본적으로 중단했다.예를 들어 1983년에는 여전히 S-100 보드 광고와 CP/M 소프트웨어에 관한 기사가 몇 건 있었지만 1987년까지 이러한 광고는 잡지에서는 더 이상 찾아볼 수 없었다.

이후 버전의 CP/M-86은 성능과 가용성에 있어 상당한 발전을 이루었으며 MS-DOS와 호환이 가능해졌다.이러한 호환성을 반영하여 명칭을 변경하고, CP/M-86은 DOS 플러스가 되었으며, 이는 다시 DR DOS가 되었다.

ZCPR

ZCPR[70](Z80 Command Processor Replacement)은 표준 디지털 리서치 콘솔 명령어 프로세서(CP)의 드롭인 대체품으로 1982년 2월 2일 도입되었으며, 처음에는 자신을 "The CCP Group"이라고 칭한 컴퓨터 취미자 그룹에 의해 작성되었다.프랭크 완초, 키스 피터슨(당시 심텔의 후예보관), 론 파울러, 찰리 스트롬, 밥 마티아스, 리처드 콘 등이 그들이다.사실 리차드는 이 그룹의 원동력이었다(모두 이메일을 통해 연락을 유지했다).

ZCPR1은 뉴저지 아마추어 컴퓨터 클럽의 일부인 SIG/M(Special Interest Group/Microcomputers)이 내놓은 디스크로 출시됐다.

ZCPR2는 1983년 2월 14일에 출시되었다.SIG/M에서 10개의 디스크 세트로 출시되었으며, ZCPR2는 2.3으로 업그레이드되었으며, 8080 코드에서도 출시되어 8080과 8085 시스템에서 ZCPR2를 사용할 수 있게 되었다.

ZCPR3는[71] 1984년 7월 14일에 SIG/M에서 9개의 디스크 세트로 출시되었다.ZCPR3의 코드는 8080에 대해 컴파일(기능 감소)될 수 있으며 필요한 Z80 마이크로프로세서가 없는 시스템에서 실행될 수 있다.

1987년 1월, 리차드 콘은 ZCPR 개발을 중단했고, 에셀론은 제이 세이지(이미 사적으로 강화된 ZCPR 3.1을 갖고 있던 사람)에게 계속 연구할 것을 요청했다.따라서 ZCPR 3.3이 개발되어 출시되었다.ZCPR 3.3은 더 이상 8080 시리즈 마이크로프로세서를 지원하지 않으며, ZCPR 라인의 업그레이드 중 가장 많은 기능을 추가했다.

버전 3 현재 ZCPR의 특징은 다음과 같다.

  • 조개껍질
  • 가명
  • I/O 리디렉션
  • 유량 조절
  • 명명된 디렉토리
  • 경로를 탐색하다
  • 사용자 정의 메뉴
  • 암호
  • 온라인 도움의 손길

ZCPR 3.3은 또한 상당히 확장된 기능을 가진 유틸리티의 완전한 보완을 포함했다.당시 CP/M 사용자 기반에 의해 열렬히 지지되었지만, ZCPR만으로는 CP/M의 소멸을 늦출 수 없었다.

동블록 CP/M 파생상품

동게르마로보트론에서 실행되는 CP/M 유도 SCPPC 1715
Elwro 804 주니어로 실행되는 CP/J 버전 2.21

A number of CP/M-80 derivatives existed in the former East-bloc under various names including SCP (Single User Control Program [de]), SCP/M, CP/A,[72] CP/J, CP/KC, CP/KSOB, CP/L, CP/Z, MICRODOS, BCU880, ZOAZ, OS/M, TOS/M, ZSDOS, M/OS, COS-PSA, DOS-PSA, CSOC, CSOS, CZ-CPM and others.[73][74]또한 SCP1700, CP/K, K8918-OS라는 이름의 CP/M-86 파생상품도 있었다.[74]동독 VEB 로보트론 등이 제작했다.[74][73][72]

레거시

마이크로소프트 윈도에 의해 보여지는 많은 행동들은 MS-DOS와의 역호환성의 결과물이며, 이는 다시 CP/M과의 역호환성을 시도했다.MS-DOS(및 초기 Windows 버전)의 드라이브 문자와 8.3 파일 이름 규칙은 원래 CP/M에서 채택되었다.[75]Windows(? 및 *)에서 사용하는 와일드카드와 일치하는 문자는 CP/M을 기반으로 하며,[76] 프린터("PRN:") 및 콘솔("CON:")으로 출력을 리디렉션하는 데 사용되는 예약된 파일 이름이 그러하다.드라이브 이름 A와 B는 CP/M 시스템이 일반적으로 사용하는 두 개의 플로피 디스크 드라이브를 지정하는 데 사용되었고, 하드 드라이브가 나타나면 C로 지정되었으며, MS-DOS에는 다음과 같이 남아 있었다.C:\>명령 [77]프롬프트일부 텍스트 파일의 끝을 표시하는 제어 문자는 CP/M에도 기인할 수 있다.[78]DOS의 다양한 명령은 CP/M 명령어를 본떠서 모델링되었으며, 그 중 일부는 DIR, REN/REName 또는 TYPE과 같은 이름(및 DR-DOS에서는 평균자책/ERASE)을 가지고 있기도 했다.다음과 같은 파일 확장명.TXT또는.COM여전히 많은 운영 체제에서 파일 형식을 식별하는 데 사용된다.

소스 코드 릴리스

1997년과 1998년 칼데라오픈 소스 라이센스에 따라 일부 CP/M 2.2 이진 파일과 소스 코드를 공개하여 1997년부터 팀 올름스테드의 "비공식 CP/M 웹사이트"[79][80][81]를 통해 CP/M 및 MP/M 패밀리와 관련된 추가 수집된 디지털 리서치 파일을 재배포 및 수정할 수 있도록 하였다.2001년 9월 12일 옴스테드가 사망한 후, 2001년 10월 19일 유통 면허를 갱신하고 그 동안 디지털 리서치 자산의 소유주가 되었던 리노에 의해 확대되었다.[82][83][84][1][85]2014년 10월, 컴퓨터 히스토리 박물관은 CP/M의 첫 번째 발표 40주년을 기념하여 CP/M의 초기 소스 코드 버전을 발표했다.[86]

취미 및 "Retro" 컴퓨팅

2018년 현재 활동 중인 빈티지·취미·복고컴퓨터 인력과 그룹이 다수 있으며, 일부 중소기업은 여전히 CP/M(대부분 2.2)을 호스트 운영체제로 사용하는 컴퓨터 플랫폼을 개발·지원하고 있다.

참고 항목

참조

  1. ^ a b Gasperson, Tina (2001-11-26). "CP/M collection is back online with an Open Source licence - Walk down memory lane". The Register. Archived from the original on 2017-09-01.
  2. ^ a b Mann, Stephen (1983-08-15). "CP/M Plus, a third, updated version of CP/M". InfoWorld. Vol. 5, no. 33. p. 49. ISSN 0199-6649.
  3. ^ a b c Sandberg-Diment, Erik (1983-05-03). "Personal Computers: The Operating System in the middle". The New York Times.
  4. ^ a b c Markoff, John (1994-07-13). "Gary Kildall, 52, Crucial Player In Computer Development, Dies". The New York Times.
  5. ^ a b Shustek, Len (2016-08-02). "In His Own Words: Gary Kildall". Remarkable People. Computer History Museum. Archived from the original on 2016-12-17.
  6. ^ a b c Kildall, Gary Arlen (2016-08-02) [1993]. Kildall, Scott; Kildall, Kristin (eds.). Computer Connections: People, Places, and Events in the Evolution of the Personal Computer Industry (Manuscript, part 1). Kildall Family. Archived from the original on 2016-11-17. Retrieved 2016-11-17.
  7. ^ Newton, Harry (2000). Newton's Telecom Dictionary. New York, New York, USA: CMP Books. pp. 228. ISBN 1-57820-053-9.
  8. ^ "OLDCOMPUTERS.COM Compupro 8/16". Archived from the original on 2016-01-03. Retrieved 2011-07-13.
  9. ^ Cole, Maggie (1981-05-25). "Gary Kildall and the Digital Research Success Story". InfoWorld. Vol. 3, no. 10. Palo Alto, California, USA. pp. 52–53. ISSN 0199-6649.
  10. ^ Freiberger, Paul (1982-07-05). "History of microcomputing, part 3: software genesis". InfoWorld. Vol. 4, no. 26. Palo Alto, California, USA. p. 41. ISSN 0199-6649.
  11. ^ Waite, Mitchell; Lafore, Robert W.; Volpe, Jerry (1982). The Official Book for the Commodore 128. p. 110. ISBN 978-0-67222456-0. […] Since CP/M was one of the first operating systems, a large number of hobbyists, hackers, and esoteric programmers purchased CP/M computers and began to write programs for themselves. […] It was offered on the free market in the form of floppy disks distributed at computer "user groups". […]
  12. ^ "CP/M The DOS That Would Not Die". 80 Micro magazine. August 1986. p. magazine cover. Retrieved 2021-07-19.
  13. ^ "CP/M emulators for DOS". www.retroarchive.org/cpm. Luis Basto. Archived from the original on 2016-07-09. Retrieved 2016-07-06.
  14. ^ Davis, Randy (December 1985 – January 1986). Written at Greenville, Texas, USA. "The New NEC Microprocessors - 8080, 8086, Or 8088?" (PDF). Micro Cornucopia. No. 27. Bend, Oregon, USA: Micro Cornucopia Inc. pp. 4–7. ISSN 0747-587X. Archived (PDF) from the original on 2020-02-11. Retrieved 2020-02-11.
  15. ^ a b "CP/M Operating System Manual" (PDF).
  16. ^ a b c CP/M Plus (CP/M Version 3) Operating System Programmers Guide (PDF) (2 ed.). Digital Research. April 1983 [January 1983]. Archived (PDF) from the original on 2016-11-25. Retrieved 2016-11-25.
  17. ^ a b CP/M Plus (CP/M Version 3) Operating System User's Guide (PDF). Digital Research. 1983.
  18. ^ a b c d Kildall, Gary Arlen (June 1975), CP/M 1.1 or 1.2 BIOS and BDOS for Lawrence Livermore Laboratories, An excerpt of the BDOS.PLM file header in the PL/M source code of CP/M 1.1 or CP/M 1.2 for Lawrence Livermore Laboratories (LLL):
    […] /* C P / M   B A S I C   I / O    S Y S T E M    (B I O S)                     COPYRIGHT (C) GARY A. KILDALL                              JUNE, 1975                   */ […] /*  B A S I C   D I S K    O P E R A T I N G   S Y S T E M  (B D O S)                     COPYRIGHT (C) GARY A. KILDALL                             JUNE, 1975*/ […]
  19. ^ a b c d Kildall, Gary Arlen (January 1980). "The History of CP/M, The Evolution Of An Industry: One Person's Viewpoint". Dr. Dobb's Journal. Vol. 5, no. 1 #41. pp. 6–7. Archived from the original on 2016-11-24. Retrieved 2013-06-03. […] The first commercial licensing of CP/M took place in 1975 with contracts between Digital Systems and Omron of America for use in their intelligent terminal, and with Lawrence Livermore Laboratories where CP/M was used to monitor programs in the Octopus network. Little attention was paid to CP/M for about a year. In my spare time, I worked to improve overall facilities […] By this time, CP/M had been adapted for four different controllers. […] [ In 1976, Glenn Ewing approached me with a problem: Imsai, Incorporated, for whom Glenn consulted, had shipped a large number of disk subsystems with a promise that an operating system would follow. I was somewhat reluctant to adapt CP/M to yet another controller, and thus the notion of a separated Basic I/O System (BIOS) evolved. In principle, the hardware dependent portions of CP/M were concentrated in the BIOS, thus allowing Glenn, or anyone else, to adapt CP/M to the Imsai equipment. Imsai was subsequently licensed to distribute CP/M version 1.3 which eventually evolved into an operating system called IMDOS. […]
  20. ^ "CP/M Builtin Commands". discordia.org.uk. Archived from the original on 2008-04-12. Retrieved 2009-01-28.
  21. ^ a b c d e f g h 브라운, 데이비드 K.;Strutynski, 캐서린. 와튼, 존 해리슨(1983-05-14)."운영 체제에서 더 많은 성능을 수정-Hashing, 캐싱과 기억을 막고 있는 소수의 기술 사용되는 펀치를 공연에서 최신 버전 CP/M"시스템 Design/Software.컴퓨터 디자인-매거진 컴퓨터 Based 시스템의.Vol22일 머드 6. 리틀 턴, 메사츄 세츠주, USA:PennWell 출판사/PennWell PublishingCompany.를 대신하여 서명함. 193–194, 196개, 198200202,204.ISSN 0010-4566.OCLC 1564597.CODEN CMPDA. 궤:/13960/t3hz07m4t..(7페이지)2021-08-14 Retrieved
  22. ^ "Section 4 - CP/M Dynamic Debugging Tool". CP/M 2.2. Archived from the original on 2015-06-17. Retrieved 2014-08-29.
  23. ^ CP/M Dynamic Debugging Tool (DDT) - User's Guide (PDF). Digital Research. 1978 [1976]. Archived (PDF) from the original on 2014-10-28. Retrieved 2014-08-29.
  24. ^ Shael (2010-06-26) [2009-12-09]. "DDT Utility". Archived from the original on 2015-12-08. Retrieved 2014-08-29.
  25. ^ Brand, Stewart (1984). Whole Earth Software Catalog. ISBN 978-0-38519166-1. Archived from the original on 2015-07-04.
  26. ^ Lieber, Eckhard; von Massenbach, Thomas (1987). "CP/M 2 lernt dazu. Modulare Systemerweiterungen auch für das 'alte' CP/M". c't - magazin für computertechnik (part 1) (in German). Vol. 1987, no. 1. Heise Verlag. pp. 124–135.
  27. ^ Lieber, Eckhard; von Massenbach, Thomas (1987). "CP/M 2 lernt dazu. Modulare Systemerweiterungen auch für das 'alte' CP/M". c't - magazin für computertechnik (part 2) (in German). Vol. 1987, no. 2. Heise Verlag. pp. 78–85.
  28. ^ Huck, Alex (2016-10-09). "RSM für CP/M 2.2". Homecompuer DDR (in German). Archived from the original on 2016-11-25. Retrieved 2016-11-25.
  29. ^ Johnson, Herbert R. (2009-01-04). "CP/M and Digital Research Inc. (DRI) History". www.retrotechnology.com. Archived from the original on 2008-08-20. Retrieved 2009-01-28.
  30. ^ Warren, Jim (April 1976). "First word on a floppy-disk operating system". Dr. Dobb's Journal. Vol. 1, no. 4. Menlo Park, California, USA. p. 5. 부제:DECSYSTEM-10과 유사한 명령어 및 시설.
  31. ^ Digital Research (1978). CP/M. Pacific Grove, California, USA: Digital Research. OCLC 221485970.
  32. ^ a b "Kathryn Betty Strutynski". Monterey Herald (Obituary). 2010-06-19. Archived from the original on 2021-08-14. Retrieved 2021-08-10 – via Legacy.com. […] At DRI, Kathryn watched excitedly as Gary completed work on the first computer operating system known as CP/M […] Kathryn stayed on at DRI and continued to write code for new versions of CP/M. She worked on CP/M 2.0 and [CP/M Plus]. She made many contributions to CP/M 2.2 (the largest money spinner for DRI) including a background spooler for printing (simple multi-tasking) and system guides. In fact, in one book, Kathryn is called "the mother of CP/M 2.2," for the hundreds and hundreds of hours she put in with Dave Brown, John Pierce, Bob Silberst[ei]n, and others, perfecting Kildall's original design. Kathryn was also the project manager for CP/M-86 and Concurrent CP/M-86. […] [1]
  33. ^ a b Hogan, Thom (1981-09-14). "State of Microcomputing / Some Horses Running Neck and Neck". pp. 10–12. Retrieved 2019-04-08.
  34. ^ Wise, Deborah (1982-05-10). "Mainframe makers court third-party vendors for micro software". InfoWorld. Vol. 4, no. 18. pp. 21–22. Archived from the original on 2015-03-18. Retrieved 2015-01-25.
  35. ^ a b Meyer, Edwin W. (1982-06-14). "The Xerox 820, a CP/M-operated system from Xerox". InfoWorld. Vol. 4, no. 23. pp. 101–104. Retrieved 2019-03-30.
  36. ^ da Cruz, Frank (1984-04-27). "New release of KERMIT for CP/M-80". Info-Kermit Digest (Mailing list). Kermit Project, Columbia University. Archived from the original on 2021-04-17. Retrieved 2016-02-23. [2]
  37. ^ Clarke, A.; Eaton, J. M.; David, D. Powys Lybbe (1983-10-26). CP/M - the Software Bus: A Programmer's Companion. Sigma Press. ISBN 978-0905104188.
  38. ^ Johnson, Herbert R. (2014-07-30). "CP/M and Digital Research Inc. (DRI) History".
  39. ^ Swaine, Michael (1997-04-01). "Gary Kildall and Collegial Entrepreneurship". Dr. Dobb's Journal. Archived from the original on 2007-01-24. Retrieved 2006-11-20.
  40. ^ Bunnell, David (February 1982). "The Man Behind The Machine? / A PC Exclusive Interview With Software Guru Bill Gates". PC Magazine. Vol. 1, no. 1. pp. 16–23 [20]. Archived from the original on 2013-05-09. Retrieved 2012-02-17.
  41. ^ "PL/I Language Programmer's Guide" (PDF). Digital Research.
  42. ^ Mace, Scott (1984-01-09). "IBM PC clone makers shun total compatibility". InfoWorld. Vol. 6, no. 2&3. pp. 79–81. Archived from the original on 2015-03-16. Retrieved 2015-02-04.
  43. ^ Pournelle, Jerry (June 1983). "Zenith Z-100, Epson QX-10, Software Licensing, and the Software Piracy Problem". BYTE. Vol. 8, no. 6. p. 411. Archived from the original on 2014-06-09. Retrieved 2013-10-20.
  44. ^ a b Derfler, Frank J. (1982-10-18). "Kaypro II—a low-priced, 26-pound portable micro". InfoWorld. p. 59. Archived from the original on 2014-01-01. Retrieved 2013-10-22.
  45. ^ Loguidice, Bill (2012-07-28). "More on Avalon Hill Computer Games on Heath/Zenith platforms". Armchair Arcade. Archived from the original on 2015-07-23. Retrieved 2015-07-22.
  46. ^ Sblendorio, Francesco (2015-12-01). "Gorillas for CP/M". GitHub. Archived from the original on 2016-02-05. Retrieved 2015-07-22.
  47. ^ Pournelle, Jerry (April 1982). "The Osborne 1, Zeke's New Friends, and Spelling Revisited". BYTE. Vol. 7, no. 4. p. 212. Retrieved 2021-05-24.
  48. ^ Waite, Mitchell; Lafore, Robert W.; Volpe, Jerry (1985). "The CP/M Mode". The Official Book for the Commodore 128 Personal Computer. Howard W. Sams & Co. p. 98. ISBN 0-672-22456-9.
  49. ^ "Now: A Complete CP/M Pascal for Only $29.95!". BYTE (advertisement). Vol. 7, no. 12. December 1982. p. 11. Archived from the original on 2016-07-21. Retrieved 2016-10-01.
  50. ^ "Ellis Computing". BYTE (advertisement). Vol. 8, no. 12. December 1983. p. 69.
  51. ^ Fager, Roger; Bohr, John (September 1983). "The Kaypro II". BYTE. Vol. 8, no. 9. p. 212. Archived from the original on 2014-03-02. Retrieved 2013-10-20.
  52. ^ Johnson-Laird, Andy (1983). "3". The programmer's CP/M handbook. Berkeley, California, USA: Osborne/McGraw-Hill. ISBN 0-88134-103-7.
  53. ^ "Old-computers.com: The Museum". Archived from the original on 2013-07-03. Retrieved 2017-10-06.
  54. ^ Ciarcia, Steve (September 1985). "Build the SB-180" (PDF). BYTE Magazine. CMP Media. p. 100. Retrieved 2019-06-18.
  55. ^ "Radio Shack Computer Catalog RSC-12 page 28". www.radioshackcomputercatalogs.com. Tandy/Radio Shack. Archived from the original on 2016-10-13. Retrieved 2016-07-06.
  56. ^ a b "Digital Research Has CP/M-86 for IBM Displaywriter" (PDF). Digital Research News - for Digital Research Users Everywhere. Pacific Grove, California, USA: Digital Research, Inc. 1 (1): 2, 5, 7. November 1981. Fourth Quarter. Archived (PDF) from the original on 2021-04-17. Retrieved 2020-01-18.
  57. ^ Maher, Jimmy (2017-07-31). "The complete history of the IBM PC, part two: The DOS empire strikes". Ars Technica. p. 3. Retrieved 2019-09-08.
  58. ^ a b Kildall, Gary Arlen (1982-09-16). "Running 8-bit software on dual-processor computers" (PDF). Electronic Design: 157. Archived (PDF) from the original on 2017-08-19. Retrieved 2017-08-19.
  59. ^ Snyder, John J. (June 1983). "A DEC on Every Desk?". BYTE. Vol. 8, no. 6. pp. 104–106. Archived from the original on 2015-01-02. Retrieved 2015-02-05.
  60. ^ "M 68 / M 68 MX". Archived from the original on 2016-03-06. Retrieved 2012-09-17.
  61. ^ Thomas, Rebecca A.; Yates, Jean L. (1981-05-11). "Books, Boards and Software for The New 16-Bit Processors". InfoWorld - The Newspaper for the Microcomputing Community. Vol. 3, no. 9. Popular Computing, Inc. p. 42–43. ISSN 0199-6649. Retrieved 2020-01-24. […] Digital Research has also announced plans for a Z8000 version of CP/M. Application software will be moved to the Z8000 when more development software is available. A commercially available translator from Z80 to Z8000 is needed. […]
  62. ^ Olmstead, Tim; Chaudry, Gabriele "Gaby". "Digital Research Source Code". Archived from the original on 2016-02-05.
  63. ^ 디지털 리서치(1981): XLT86 - 8080 - 8086 어셈블리 언어 번역기 - 사용자 가이드 2016-11-18, 웨이백 머신 디지털 리서치 Inc., Pacific Grove에 보관
  64. ^ Pournelle, Jerry (March 1984). "New Machines, Networks, and Sundry Software". BYTE. Vol. 9, no. 3. p. 46. Archived from the original on 2015-02-02. Retrieved 2013-10-22.
  65. ^ Isaacson, Walter (2014). The Innovators: How a Group of Inventors, Hackers, Geniuses, and Geeks Created the Digital Revolution. Simon & Schuster. p. 358. ISBN 978-1-47670869-0.
  66. ^ Bellis, Mary. "Inventors of the Modern Computer Series - The History of the MS-DOS Operating Systems, Microsoft, Tim Paterson, and Gary Kildall". Retrieved 2010-09-09.
  67. ^ Magid, Lawrence J. (February 1982). "Baby Blue". PC Magazine. Vol. 1, no. 1. p. 49. Archived from the original on 2015-03-18. Retrieved 2015-01-04.
  68. ^ Mace, Scott (1984-06-11). "CP/M Eludes Home Market". InfoWorld. Vol. 6, no. 24. p. 46.
  69. ^ Groth, Nancy (1986-02-10). "Kaypro is retreating on CP/M". InfoWorld. Vol. 8, no. 6. p. 6.
  70. ^ "ZCPR - oldcomputers.ddns.org".
  71. ^ "The Wonderful World of ZCPR3". 1987-11-30. Archived from the original on 2019-12-23. Retrieved 2019-11-18.
  72. ^ a b Pohlers, Volker (2019-04-30). "CP/A". Homecomputer DDR (in German). Archived from the original on 2020-02-21. Retrieved 2020-02-21. […] CP/A ist ein CP/M-2.2-kompatibles Betriebssystem der Akademie der Wissenschaften der DDR, der Hauptentwickler war Hans Willy Dames. […] Vorteile des CP/A gegenüber CP/M 2.2. sind erweiterte Funktionalitäten. […] Herausragend sind […] Urladen des Systems aus einer Datei @OS.COM. Das System musste nicht in speziellen Systemspuren gespeichert werden. […] automatische Erkennung von Diskettenformaten […] eingebauter Systemmonitor […] Das CP/A wurde für Bürocomputer A5120, A5130 und den PC1715 ausgeliefert. […] Das CCP von CP/A ist ziemlich sicher ursprünglich aus einem reassemblierten CP/M-2.2-CCP entstanden; wurde aber konsequent auf Z80-Befehle umgearbeitet und vielfach verändert und erweitert. […] Das CP/A-BDOS wurde im Prinzip komplett und fast 1:1 aus dem DR-BDOS abgekupfert […] Aus den Quelltexten des BIC A5105 geht hervor, dass W. Dames das originale BDOS reassembliert […] hat. […]
  73. ^ a b Kurth, Rüdiger; Groß, Martin; Hunger, Henry (2019-01-03). "Betriebssysteme". www.robotrontechnik.de (in German). Archived from the original on 2019-04-27. Retrieved 2019-04-27.
  74. ^ a b c Kurth, Rüdiger; Groß, Martin; Hunger, Henry (2019-01-03). "Betriebssystem SCP". www.robotrontechnik.de (in German). Archived from the original on 2019-04-27. Retrieved 2019-04-27.
  75. ^ Chen, Raymond. "Why does MS-DOS use 8.3 filenames instead of, say, 11.2 or 16.16?". The Old New Thing. Archived from the original on 2011-09-22. Retrieved 2010-12-17.
  76. ^ Chen, Raymond. "How did wildcards work in MS-DOS?". The Old New Thing. Archived from the original on 2011-05-08. Retrieved 2010-12-17.
  77. ^ Chen, Raymond. "What's the deal with those reserved filenames like NUL and CON?". The Old New Thing. Archived from the original on 2010-08-02. Retrieved 2010-12-17.
  78. ^ Chen, Raymond. "Why do text files end in Ctrl+Z?". The Old New Thing. Archived from the original on 2011-02-06. Retrieved 2010-12-17.
  79. ^ Olmstead, Tim (1997-08-10). "CP/M Web site needs a host". Newsgroup: comp.os.cpm. Archived from the original on 2017-09-01. Retrieved 2018-09-09.
  80. ^ Olmstead, Tim (1997-08-29). "ANNOUNCE: Caldera CP/M site is now up". Newsgroup: comp.os.cpm. Archived from the original on 2017-09-01. Retrieved 2018-09-09. [3]
  81. ^ "License Agreement". Caldera, Inc. 1997-08-28. Archived from the original on 2018-09-08. Retrieved 2015-07-25. [4] [5]
  82. ^ "Tim Olmstead". 2001-09-12. Archived from the original on 2018-09-09.
  83. ^ Sparks, Bryan Wayne (2001-10-19). Chaudry, Gabriele "Gaby" (ed.). "License agreement for the CP/M material presented on this site". Lineo, Inc. Archived from the original on 2018-09-08. Retrieved 2015-07-25. […] Let this email represent a right to use, distribute, modify, enhance and otherwise make available in a nonexclusive manner the CP/M technology as part of the "Unofficial CP/M Web Site" with its maintainers, developers and community. I further state that as Chairman and CEO of Lineo, Inc. that I have the right to do offer such a license. […] Bryan Sparks […]
  84. ^ Chaudry, Gabriele "Gaby" (ed.). "The Unofficial CP/M Web Site". Archived from the original on 2016-02-03.
  85. ^ Swaine, Michael (2004-06-01). "CP/M and DRM". Dr. Dobb's Journal. Vol. 29, no. 6. CMP Media LLC. pp. 71–73. #361. Archived from the original on 2018-09-09. Retrieved 2018-09-09. [6]
  86. ^ Laws, David (2014-10-01). "Early Digital Research CP/M Source Code". Computer History Museum. Archived from the original on 2015-07-27. Retrieved 2015-07-25.

추가 읽기

외부 링크