IBM 메인프레임 운영 체제의 역사

History of IBM mainframe operating systems

IBM 메인프레임 운영 체제의 역사메인프레임 운영 체제의 역사에서 중요한 의미를 가집니다. IBM은 메인프레임 컴퓨터의 세계 최대 하드웨어 공급업체로서 오랜 역사를 가지고 있기 때문입니다.IBM 메인프레임은 IBM과 제3자가 제공하는 운영 체제를 실행합니다.

초기 IBM 메인프레임운영 체제는 TSS/360CP-67로 시작하는 가상 머신 시스템을 제외하고는 거의 혁신적이지 않았습니다.그러나 입증된 기술을 선호한다는 회사의 유명한 평판은 일반적으로 잠재 사용자에게 새로운 IBM 시스템을 상당히 빠르게 도입할 수 있는 자신감을 주었습니다.IBM의 현재 메인프레임 운영 체제인 z/OS, z/VM, z/VSE 및 z/TPF1960년대에 도입된 운영 체제의 하위 호환 후계 제품입니다.

시스템/360 이전

IBM은 운영 체제를 도입하는 데 시간이 걸렸다.General Motors는 1955년에 General Motors OS를, GM-NAA I/O는 1956년에 자체 IBM 컴퓨터에서 사용하기 위해 생산되었으며, 1962년에 Burroughs Corporation은 [1][2]MCP를 출시했으며 GECOS도입했습니다.

IBM 컴퓨터용 첫 번째 운영 체제는 1950년대 중반 운영자들이 수동으로 작업을 설정하는 동안 유휴 상태였던 $2,000,000(2021년 약 $20,000에 상당)의 매우 비싼 기계를 가진 IBM 고객들에 의해 작성되었습니다. 따라서 그들은 작업 [3]대기열을 유지하기 위한 메커니즘을 원했습니다.

이러한 운영체제는 일부 프로세서 모델에서만 실행되며 과학 및 엔지니어링 계산에만 적합합니다.다른 IBM 컴퓨터 또는 다른 애플리케이션은 운영 체제 없이 작동합니다.그러나 IBM의 작은 컴퓨터 중 하나인 IBM 650은 나중에 OS/360의 일부가 된 기능을 도입했는데, "랜덤 처리 오류"(하드웨어 결함)로 인해 처리가 중단되면 운영자들이 [4]처음부터 작업을 수동으로 재시작할 필요가 없는 마지막 체크 포인트부터 자동으로 재개됩니다.

General Motors GM-NAA I/O에서 IBSYS로

General Motors Research 사업부는 1956년 IBM 701의 GM-NAA I/O를 생산하고(시제품인 GM 운영 체제에서 1955년에 개발), 701의 후속 기종으로 업데이트했습니다.1960년 IBM 사용자 협회 SHARE가 인수하여 업데이트된 버전인 SHARE 운영 [3]체제를 생산했습니다.

마침내 IBM은 프로젝트를 인수하여 IBM 7090 IBM 7094 컴퓨터에 IBSYS라는 향상된 버전을 공급했습니다.IBSYS에는 8개의 테이프 드라이브가 필요했습니다.1대 이상의 디스크 드라이브가 있는 경우는, 그 수가 적습니다.주요 컴포넌트는 메인 사용자 인터페이스인 카드 기반 작업 제어 언어, FORTRAN COBOL용 컴파일러, 어셈블러 및 정렬 [5][6]프로그램을 포함한 다양한 유틸리티입니다.

1958년 미시간 대학 이그제큐티브 시스템은 GM-NAA I/O를 채택하여 UMES를 생산했으며, 이는 학생들이 창출하는 많은 작은 일자리에 더 적합했습니다.UMES는 1967년까지 사용되었으며 그 후 MTS 시분할 시스템으로 [7]대체되었습니다.

베시스

Bell Labs는 BESYS(BELLMON이라고도 함)를 생산하여 1960년대 중반까지 사용했습니다.Bell은 또한 다른 사람들이 무료로 또는 공식적인 기술 [8][3]지원 없이 그것을 이용할 수 있도록 했다.

포트란 모니터 시스템

IBSYS 이전에 IBM은 IBM 709, 70907094 컴퓨터를 위해 FMS와 FORTRAN 컴파일러가 같은 [9][10]테이프에 있는 FORTRAN 프로그램을 컴파일하는 것이 유일한 목적이었던 테이프 기반 운영 체제를 생산했습니다.

초기 시간 공유 및 가상 시스템 시스템

MIT의 Fernando Corbato는 1957년부터 1960년대 초까지 약간 수정된 IBM 709,[11][12] IBM 7090 [11][12]IBM 7094[12] 메인프레임을 사용하여 최초시분할 실험 시스템을 생산했습니다. 이 시스템은 John McCarthy[13][14]제안을 기반으로 했습니다.1960년대에 IBM의 자체 연구소는 가상 메모리를 지원하기 위해 하드웨어 및 마이크로코드 수정이 적용된 표준 메인프레임을 사용하여 실험적인 시분할 시스템을 개발했습니다. 1960년대 초 IBM M44/44X, 1964년부터 1967년까지 CP-40, 1967년부터 1972년까지 CP-67입니다.이 회사는 1968년부터 1972년까지 여러 대형 고객에게 보증이나 기술 지원 없이 CP-67을 출시하기도 했습니다.CP-40과 CP-67은 변경된 System/360 CPU를 사용했지만 M44/44X는 [15][16][17]내부적으로는 매우 다른 이전 세대의 CPU인 IBM 7044를 기반으로 했습니다.

IBM이 1964년에 발표한 System/360 시리즈에 이러한 실험 시스템을 통합하기에는 너무 늦었지만,[15] 1972년에 IBM이 System/370 메인프레임과 운영 체제에 가상 메모리와 가상 시스템 기능을 추가하도록 권장했습니다.

  • M44/44X에서는 가상 머신에 대한 부분적인 접근법으로는 불충분하며 스레싱으로 인해 가상 메모리 시스템의 속도가 크게 저하될 수 있음을 알 수 있었습니다.스레싱은 물리적 메모리와 디스크 파일 간에 가상 메모리 페이지를 섞는 데 많은 시간을 소비하기 때문에 시스템이 매우 느리게 실행되는 상태입니다.
  • IBM은 CP-40 및 CP-67로부터 스래싱 문제를 관리하기 쉽게 만드는 방법을 배웠습니다. IBM의 다른 가상 메모리와 가상 머신 기술은 핵심 비즈니스인 대용량 상용 시스템에서 사용할 수 있을 만큼 빠르고 안정적이었습니다.특히 IBM의 David Sayre는 자동화된 가상 메모리 관리가 최소한 프로그래머가 설계한 최고의 [18]오버레이 방식뿐만 아니라 일관되게 수행될 수 있다고 회사를 설득했습니다.

1968년 Computer Software Systems라는 컨설팅 회사가 CP-67의 출시 버전을 사용하여 상용 시분할 서비스를 설정했습니다.이 회사의 기술팀에는 MIT에서 온 2명의 신입사원(상기 CTSS 참조), Dick Orenstein과 Harold Feinleib가 포함되었습니다.그것이 커지면서 이 회사와 소프트웨어까지 시스템이 국가 전투 근무 지원의 서비스에 대한 VP/CSS. VP/CSS은 배달 매커니즘은 1980년대 초반 IBM의 VM/370(아래 참조)로 바꿀 때까지 새로운 이름들까지도 달랐다 그것을 지지할 수 있고 지불하고 사용자의 수를 늘리긴 변형을 국가 전투 근무 지원했다.[19][20]

대학들은 1960년대 후반에 세 개의 다른 S/360 시분할 운영 체제를 생산했습니다.

  • 미시간 터미널 시스템(MTS)은 1967년 미시간 대학이 이끄는 대학 컨소시엄에 의해 개발되었습니다.모든 버전은 S/360-67부터 가상 메모리 기능을 갖춘 IBM 메인프레임에서 실행되었습니다.MTS는 [21]1999년까지 사용되었습니다.
  • 몬트리올McGill University는 1969년에 MUSIC(McGill University System for Interactive Computing) 개발을 시작했습니다.MUSIC은 여러 번 강화되어 최종적으로 텍스트 검색, 웹 퍼블리싱, 이메일 및 소프트웨어 개발을 지원하게 되었습니다.MUSIC은 IBM이 자사의 하드웨어에 대한 비용 효율적인 운영 체제로 주로 교육 기관에 판매했으며, 결국 1985년에 IBM Systems Product(MUSIC/SP 또는 Multi-User System for Interactive Computing/System Product)가 되었습니다.마지막 공식 버전은 [22]1999년에 출시되었습니다.
  • ORVYL과 WYLBUR는 1967-68년에 스탠포드 대학에서 IBM S/360-67용으로 [23][24]개발되었습니다.이들은 IBM S/360 컴퓨터에 최초로 시분할 기능을 제공했습니다.

시스템/360 운영체제

1960년대 초반까지 IBM의 로우엔드 시스템과 하이엔드 시스템은 호환되지 않았기 때문에 프로그램을 쉽게 서로 전송할 수 없었고 디스크 [25]드라이브와 같은 완전히 다른 주변 장치를 사용하는 경우가 많았습니다.IBM은 이러한 요인들이 하드웨어와 소프트웨어의 설계 및 생산 비용을 지속 불가능한 수준으로 증가시키고 있으며, 고객의 업그레이드를 방해하여 매출을 감소시키고 있다고 결론내렸습니다.그래서 1964년, 회사는 System/360을 발표했습니다.시스템/360은 모두 같은 주변기기를 사용하고 대부분 동일한 [26]프로그램을 실행할 수 있는 새로운 컴퓨터입니다.

IBM은 원래 System/360을 하나의 배치 지향 운영 체제인 OS/360만 사용하도록 의도했습니다.IBM이 나중에 더 단순한 배치 지향 운영 체제인 DOS/360도 생산해야 한다고 결정한 이유는 적어도 두 가지입니다.

  • 그 이유는 OS/360이 더 작은 System/360 [27]모델에서 사용할 수 있는 제한된 메모리에는 맞지 않는다는 것을 발견했기 때문입니다.
  • 아니면 그 이유는 OS/360의 발전이 예상보다 더 오래 걸릴 거고 한 stop-gaps의 일련 – 나머지 선수들은 BOS/360(Basic의 경우 운영 체제, 가장 작은 기계들을 위한)과 TOS/360(테이프 운영 체제, 유일한 테이프 드라이브로 기계들을 위한)이 붕괴되는 시스템/360하드웨어 판매를 예방하기로 DOS/360을 깨달았다.[26]

System/360의 운영 체제는 다음과 [28]같은 여러 가지 이유로 이전 IBM 운영 체제보다 더 복잡했습니다.

  • 이들은 멀티프로그래밍을 지원해야 했습니다.즉, 현재 애플리케이션이 차단되었을 때 다른 진행 중인 애플리케이션을 실행하도록 전환하여 I/O 작업(디스크 읽기 등)이 완료될 까지 기다려야 했습니다.멀티프로그래밍이 없었다면 CPU가 고속일 경우 대부분의 시간을 아이돌 상태로 보내 I/O 동작이 느려질 때까지 대기했을 것입니다.따라서 운영체제는 시스템의 진정한 마스터가 되어 애플리케이션이 요구하는 모든 서비스를 제공하고 동시에 실행되는 다른 애플리케이션을 중단하지 않고 한 애플리케이션에서 크래시 또는 잘못된 동작을 처리할 수 있어야 했습니다.
  • 그들은 훨씬 더 광범위한 기계 크기를 지원해야 했습니다.메모리는 16KB에서 1MB, 프로세서 속도는 초당 수천 명령에서 500,000까지 다양했습니다.
  • 다양한 애플리케이션 요건을 지원해야 했습니다.예를 들어, 일부 애플리케이션은 처음부터 끝까지 연속된 파일을 읽기만 하면 되고, 다른 애플리케이션은 매우 큰 파일의 특정 레코드에 빠르고 직접 액세스해야 했습니다.또한 일부 애플리케이션은 거의 모든 시간을 계산 작업에 소비하여 파일을 읽거나 쓰는 작업이 거의 없었습니다.

이로 인해 OS/360 및 기타 System/360 소프트웨어의 개발은 그 어느 누구도 시도하지 않은 가장 큰 소프트웨어 프로젝트 중 하나가 되었고, IBM은 곧 엄청난 시간과 비용 초과와 많은 [28]버그로 인해 곤경에 처하게 되었습니다.이러한 문제는 실제 하드웨어에서 System/360 운영 체제를 개발하고 테스트하기 위해 IBM이 먼저 BPS/360(Basic Programming Support/[29]360)을 개발해야 했기 때문에 더욱 확대되었습니다.BPS는 DOS/360과 OS/360을 개발하는 데 필요한 툴과 FORTRANCOBOL용 컴파일러, Sort를 포함한 유틸리티, 그리고 무엇보다도 다른 [30]모든 소프트웨어를 구축하는 데 필요한 어셈블러와 같은 운영체제와 함께 제공되는 툴의 첫 버전을 개발하기 위해 사용되었습니다.

IBM의 경쟁사들은 OS/360과 System/360의 지연을 이용하여 IBM 시장의 가장 취약한 부분을 목표로 하는 시스템을 발표했습니다.System/360의 판매가 무너지는 것을 막기 위해 IBM은 다음과 같은 네 가지 임시 운영 [26]체제를 출시했습니다.

  • 기본 운영 체제/360(BOS/360).[29] 디스크 드라이브 또는 테이프 드라이브에서 로드되어 테이프 드라이브와 몇 개의 디스크를 지원합니다.이 시스템은 베타 테스트 고객에게 제공되었으며 DOS/360의 초기 버전일 수 있습니다.
  • TOS/360은 디스크 없이 테이프 드라이브를 탑재한 IBM 1401 컴퓨터를 보유한 고객에게 업그레이드 경로를 제공하도록 설계되었습니다.
  • DOS/360은 BOS/360과 TOS/360(IBM의 중소기업 컴퓨터 부문)의 개발자들에 의해 구축되어 그 후속 z/VSE가 여전히 널리 사용되는 주류 운영체제로 자리잡았다.
  • 운영체제/360(OS/360)과 멀티프로그래밍[31]: 371 지원하지 않는 프라이머리 컨트롤 프로그램(PCP) 옵션만 있습니다.

IBM은 S/360-67을 발표하면서 360/67의 새로운 가상 메모리 기능을 사용할 시분할 운영 체제인 TSS/360도 발표했습니다.TSS/360은 늦었고 초기 릴리스는 느리고 신뢰성이 낮았습니다.이때쯤 IBM의 Cambridge Scientific Center가 개발한 대체 운영 체제 CP-67은 IBM이 "보증 없이" 소수의 대규모 고객을 위한 [32]시분할 시설로 제공할 수 있을 정도로 잘 작동하고 있었습니다.CP-67은 VM/370이 되고 최종적으로 z/VM이 됩니다.IBM은 최종적으로 TSS/360 고객을 위한 마이그레이션 경로로 TSS/370 PRPQ의 세 가지 릴리스를 제공했다가 이를 중단했습니다.

System/360 운영체제 생산의 충격은 소프트웨어 엔지니어링의 새로운 분야, 소프트웨어 개발에 과학적 원리를 적용하려는 시도, 소프트웨어 프로젝트 관리에 힘을 실어주었다.Frederick P. Brooks는 System/360 프로젝트 전체의 시니어 프로젝트 매니저로, OS/360에 대한 특정 책임을 부여받았습니다(이미 오래 전에 예정이 지났습니다).프로젝트 기간 동안 발생한 문제와 교훈을 바탕으로 호평받은 책 The Mythous Man-Month를 집필했습니다.그 중 두 가지는 다음과 같습니다.[33]

  • 어려운 프로젝트에 추가 자원(특히 직원)을 투입하는 것은 의사소통의 어려움으로 인해 빠르게 비생산적이거나 심지어 역생산적이 될 수 있습니다.이것이 책의 제목을 붙인 "신화의 달" 신드롬이다.
  • 성공적인 시스템의 후계자는 종종 어려움에 직면하게 되는데, 이는 초기 시스템에서 사람들이 원하던 모든 기능들로 과부하가 되기 때문입니다.Brooks는 이를 "세컨드 시스템 효과"라고 부르며 OS/360을 매우 포괄적인 예로 들었습니다.

DOS/360

OS/360은 하이엔드 시스템/360 머신에서는 선호되는 운영체제였지만 DOS/360은 성능이 떨어지는 머신에서는 일반적인 운영체제였습니다.이것은 FORTRAN과 COBOL위한 유틸리티 프로그램, 매크로 어셈블러, 컴파일러를 제공하였다. RPG[34][35] 나중에 지원되었고, 결국 PL/I 서브셋을 제공하였다.또한 다음과 같은 다양한 파일 조직을 지원하여 파일 사용 방법을 이용할 수단은 다음과 같습니다.

  • 순차 데이터 세트는 일반적으로 처음부터 끝까지 한 번에 하나의 레코드를 읽습니다.
  • 색인(ISAM) 파일에서 각 레코드의 지정된 섹션은 특정 레코드를 검색하는 데 사용할 수 있는 키로 정의되었습니다.
  • 직접 액세스(BDAM) 파일에서 애플리케이션 프로그램은 액세스하고자 하는 데이터의 디스크 상의 물리적 위치를 지정해야 했습니다.BDAM 프로그래밍은 쉽지 않았고 대부분의 고객이 직접 사용해 본 적은 없었지만, 디스크의 데이터에 액세스하는 가장 빠른 방법이었고, 많은 소프트웨어 회사들, 특히 ADABAS, IDMSIBM의 DL/I와 같은 데이터베이스 관리 시스템에 BDAM 프로그래밍을 사용했습니다.

시퀀셜 파일과 ISAM 파일에는 고정 길이 레코드 또는 가변 길이 레코드 중 하나를 저장할 수 있으며 모든 유형이 여러 디스크 볼륨을 차지할 수 있습니다.

DOS/360은 또한 오늘날의 표준에서 사용하기 어려운 원시적인 데이터 통신 설비인 BTAM을 제공했습니다.그러나 BTAM은 거의 모든 종류의 단말기와 통신할 수 있었고, 이는 통신 프로토콜의 표준화가 거의 없었던 당시에는 큰 이점이었다.

그러나 DOS/360은 대부분의 대형 시스템/360 머신을 제어하는 데 사용되었던 OS/360에 비해 큰 제한이 있었습니다.

  • 첫 번째 버전은 한 번에 하나의 프로그램만 실행할 수 있습니다.그 후의 확장에서는, DOS/360 의 인스톨시에 고객 마다 사이즈가 설정된 3 개의 「파티션」의 어느쪽인가를 동시에 3 개 사용할 수 있게 되었습니다.
  • 작업 제출에 사용된 JCL은 로우엔드 머신이 쉽게 처리할 수 있도록 설계되어 프로그래머가 쉽게 읽고 쓸 수 없었습니다.
  • 펀치 카드와 프린터의 효율을 향상시키는 스풀링 서브시스템은 없었습니다.1960년대 후반, 한 독립 소프트웨어 회사가 CLAP이라고 불리는 스풀러를 판매하기 시작했다.
  • DOS/360에는 로더 재배치가 없었기 때문에 사용자는 프로그램이 실행될 가능성이 있는 파티션별로 각 프로그램의 실행 가능 버전을 편집하는 링크를 걸어야 했습니다.
  • 실행 가능한 프로그램은 코어 이미지 라이브러리에 저장되었습니다.이 라이브러리는 프로그램을 삭제하거나 새 버전으로 대체했을 때 공간을 회수하지 않았습니다.코어 이미지 라이브러리가 가득 찼을 때 유틸리티 프로그램 중 하나로 압축해야 했고, 이로 인해 개발 작업이 반나절이나 중단될 수 있습니다.
  • 이것의 애플리케이션 프로그래밍 인터페이스는 OS/360과 달랐다. 코볼과 같은 고급 언어로 작성된 DOS/360 프로그램은 OS/360과 함께 사용하기 전에 약간의 수정이 필요했고 어셈블리 언어 프로그램은 더 큰 변화가 필요했다.

IBM은 DOS/360 사용자가 곧 OS/360으로 업그레이드 할 것이라고 예상했지만, 제약에도 불구하고 DOS/360은 다음과 같은 이유로 세계에서 가장 널리 사용되는 운영 체제가 되었습니다.

  • 시스템/360 하드웨어 판매 호조
  • 판매된 360대의 시스템 중 90% 이상이 모델 20, 30 및 40이었습니다[36].
  • 이들 저가 모델의 대부분은 OS/[37]360에 필요한 코어 메모리보다 훨씬 적은 용량을 가지고 있었다.

DOS/360은 중규모 조직이 구입할 수 있는 시스템/360 프로세서에서 잘 작동하여 이전에 사용하던 "운영 체제"보다 더 우수했습니다. 결과, [27]그 후속 z/VSE는 2005년 현재도 여전히 널리 사용되고 있습니다.

OS/360

OS/360에는 다양한 수준의 지원, 단일 API 및 많은 공유 코드가 포함되어 있습니다.PCP는 한 번에 하나의 프로그램만 실행할 수 있는 임시 버전이었지만, MFT ("고정된 수의 작업을 가진 멀티프로그래밍")와 MVT ("가변한 수의 작업을 가진 멀티프로그래밍")는 후속 버전이 [38]출시된 지 5년이 지난 1970년대 후반까지 사용되었다.PCP, MFT 및 MVT 간의 분할이 발생한 것은 MVT가 미드레인지 머신에서 사용할 수 있는 메모리가 너무 많이 필요했기 때문인지, IBM이 가능한 한 빨리 OS(MFT)의 멀티프로그래밍 버전을 출시해야 했기 때문인지는 불분명합니다.

PCP, MFT 및 MVT는 메모리 관리에 대한 접근법은 다르지만(아래 참조), 매우 유사한 기능을 제공합니다.

  • 동일한 Application Programming Interface(API; 응용 프로그램프로그래밍 인터페이스)이므로 재컴파일 없이 PCP, MFT 및 MVT 간에 응용 프로그램을 전송할 수 있습니다.
  • DOS/360보다 유연하고 사용하기 쉬운 동일한 JCL.
  • 파일 읽기 및 쓰기(시퀀셜, 인덱스, 다이렉트) 및 데이터 통신(BTAM)을 위한 DOS/360과 동일한 설비(액세스 방식)
  • 프로그램 라이브러리 관리에 주로 사용된 추가 파일 구조, 파티션 및 액세스 방법(BAM).빈 공간을 확보하기 위해 분할된 파일을 압축해야 했지만, PCP, MFT 및 MVT가 무제한으로 분할된 파일을 허용하고 일반적으로 각 프로젝트마다 최소 1개 이상의 파일이 있기 때문에 DOS/360의 Core Image Library에서처럼 개발 작업을 중단하는 일은 거의 없었습니다.
  • 파일을 계층으로 관리할 수 있는 파일 이름 지정 시스템(예:PROJECT.USER.FILENAME.
  • 스풀링 기능(DOS/360에는 부족).
  • 애플리케이션은 서브태스크를 생성하여 하나의 작업 내에서 멀티프로그래밍을 수행할 수 있습니다.

경험에 따르면 OS/360을 256KB 미만의 [30]메모리를 탑재한 시스템에 설치하는 것은 권장되지 않습니다.이것은 1960년대에 일반적인 제한이었습니다.

MFT

MFT 를 인스톨 하는 경우, 고객은, 애플리케이션 프로그램을 [39]동시에 실행할 수 있는, 고정 경계로 최대 4 개의 메모리 파티션을 지정할 수 있습니다.MFT Version II(MFT-II)는 제한을 52로 높였습니다.

MVT

MVT는 MFT보다 상당히 크고 복잡하기 때문에 가장 강력한 System/360 CPU에 사용되었습니다.운영체제에서 사용되지 않는 모든 메모리를 단일 풀로 취급하여 연속된 "지역"을 무한대의 동시 애플리케이션 프로그램에 의해 필요에 따라 할당할 수 있었습니다.이 스킴은 MFT보다 유연성이 높고 원칙적으로 메모리를 보다 효율적으로 사용하지만 단편화되기 쉬웠습니다.잠시 후, 프로그램을 실행할 수 있는 여유 메모리가 총합적으로 충분했지만,[31]: 372–373 어느 쪽도 충분히 크지 않은 별개의 청크로 분할되어 있는 것을 알 수 있었습니다.

1971년에 MVT와 함께 사용하기 위한 TSO(Time Sharing Option)가 추가되었습니다.TSO는 프로그램 개발에 널리 사용되었습니다.이는 편집자, System/360에서 사용되는 일부 프로그래밍 언어의 디버거, 배치 작업을 제출하고 완료에 대한 통지를 받고 인쇄된 보고서를 기다리지 않고 결과를 볼 수 있는 기능을 제공했기 때문입니다.TSO는 TCAM(Telecommunications Access Method)을 사용하여 단말기와 통신했으며, 이는 결국 이전의 QTAM(Queued Telecommunications Access Method)을 대체했다. TCAM의 이름은 IBM이 데이터 통신의 표준 접근 방식이 되기를 바랐지만, 사실 TCAM은 거의 TSO에 사용되었고 대부분 대체되었다.1970년대 후반 이후 VTAM에 의해.

TP 모니터

System/360의 하드웨어 및 운영체제는 극단적인 경우 몇 시간 동안 실행될 수 있는 배치 작업을 처리하도록 설계되었습니다.그 결과 하루에 수천 개의 작업이 이루어지고 각각 30초에서 몇 분 정도 걸리는 트랜잭션 처리에는 적합하지 않았습니다.1968년 IBM은 트랜잭션 처리를 처리하기 위해 IMS를 출시했고 1969년에는 IBM의 직원 그룹이 고객을 위해 개발한 보다 단순한 트랜잭션 처리 시스템인 CICS를 출시했습니다.IMS는 OS/360과 그 후속 제품에서만 사용할 수 있었지만 CICS는 DOS/360과 그 [40][41]후속 제품에서도 사용할 수 있었습니다.오랫동안 이러한 유형의 제품은 "TP(텔레프로세싱) 모니터"로 알려져 있었습니다.엄밀히 말하면 TP 모니터는 운영 체제 구성요소가 아니라 다른 애플리케이션 프로그램을 관리하는 애플리케이션 프로그램입니다.1970년대와 1980년대에 여러 타사 TP 모니터가 CICS(특히 COM-PLETE, DATACOM/DC, ENVIENT/1, INTERCOM, SHADOW II, TASK/MASTER 및 WESTI)와 경쟁했지만 IBM은 CICS를 점차 개선하여 대부분의 고객이 [42][43]대안을 포기했습니다.

항공사를 위한 특수 시스템

1950년대에 항공사들은 급속히 확장되었지만, 이러한 성장은 수천 개의 예약을 수동으로 처리하는 어려움으로 인해 지연되었다.1957년 IBM은 SABRE로 알려진 컴퓨터 예약 시스템의 개발을 위해 American Airlines와 개발 계약을 체결했습니다.1960년에 첫 번째 실험 시스템이 가동되었고 1964년에 시스템이 모든 예약 기능을 인계받았습니다. 두 경우 모두 IBM 7090 메인프레임을 사용했습니다.1960년대 초에 IBM은 다른 항공사를 위한 유사한 프로젝트를 착수했고 곧 System/360 컴퓨터에서 실행되는 단일 표준 예약 시스템인 PARS를 생산하기로 결정했습니다.

SABRE 및 PARS의 초기 버전에서는 애플리케이션의 구성요소와 소프트웨어의 운영 체제 구성요소의 구분이 없었지만 1968년에 IBM은 이를 PARS(애플리케이션)와 ACP(운영 체제)로 분할했습니다.ACP의 최신 버전은 ACP/TPF, TPF(Transaction Processing Facility)로 불렸으며, 비항공사가 대량의 온라인 거래를 처리하기 위해 이 운영체제를 채택함에 따라 Transaction Processing Facility(TPF)로 명명되었다.최신 버전은 z/TPF입니다.

IBM은 ACP와 그 후속 제품들을 개발했습니다. 1960년대 중반 IBM의 표준 운영 체제(DOS/360 및 OS/360)는 배치 지향적이었고 많은 수의 짧은 트랜잭션을 신속하게 처리할 수 없었기 때문입니다. 심지어 범용 운영 체제의 제어 하에 실행되는 트랜잭션 모니터 IMS 및 CICS도 충분히 빠르지 않기 때문입니다.아니면 수천 명의 여행사 직원들로부터 수백 개의 항공편을 예약받거나요

ACP의 마지막 "퍼블릭 도메인" 버전, 즉 마지막 "공짜" 버전은 ACP 9.2였습니다. ACP 9.2는 매뉴얼 세트(약 24개의 매뉴얼, 약 48개의 라인 공간을 차지함)와 함께 단일 미니 릴로 배포되었으며 IBM 3340 Disk 드라이브에 복원될 수 있으므로 AC가 완전히 작동합니다.P시스템

ACP 9.2는 주로 MasterCard와 같은 은행 카드 및 기타 금융 애플리케이션을 위한 것이었지만, ACP가 보다 범용적인 OS가 되었기 때문에 항공사 예약 시스템에도 활용될 수 있다.

그 후 ACP는 게스트로서 가상 OS(통상은 VS1, 가능성이 있는 경우는 VS2)를 지원하는 하이퍼바이저 모듈(CHYR)을 내장하고 있어 온라인 기능과 동시에 프로그램 개발 또는 파일 유지보수를 실시할 수 있었습니다.

경우에 따라서는 IMS DB를 포함한 하이퍼바이저 아래의 VS2에서 프로덕션 작업이 실행되기도 했습니다.

시스템/360 모델 20

Model 20은 동일한 주변기기에 연결할 수 있기 때문에 System/360 범위의 일부로서 라벨이 붙어 있었지만, 16비트 머신으로 System/360 범위의 다른 멤버와 완전히 프로그램 호환성이 있는 것은 아닙니다.독일에 있는 IBM 연구소는 서로 다른 360/20 구성을 위해 3개의 운영 체제를 개발했습니다. DPS는 Disk(최소 메모리 필요: 12KB), TPS는 Disk 없이 테이프(최소 메모리 필요: 8KB), CPS는 Punched 카드 기반(최소 메모리 필요: 4KB)[44]입니다.IBM이 1969년 System/3 범위의 소규모 기업용 컴퓨터를 도입한 이후 이러한 컴퓨터들은 직접적인 후계자가 없었습니다. System/3는 360/20과는 다른 내부 설계와 IBM의 메인프레임과는 다른 주변기기를 가지고 있었습니다.

시스템/360 모델 44

360/44는 시스템/360 주변기기를 사용하는 또 다른 프로세서이지만 명령 세트가 변경되었습니다.지질학적 또는 기상학적 분석과 같은 부동 소수점 숫자를 사용한 과학적 계산을 위해 설계되었다.360/44는, 내부적인 차이와 설계시의 특수한 작업 타입에 의해서, 독자적인 operating system인 PS/[45]44 를 사용하고 있습니다.옵션 기능을 사용하면 System/360 에뮬레이터를 숨겨진 스토리지에서 실행하고 OS/360을 실행하기 위해 누락된 명령을 구현할 수 있습니다.360/44 및 PS/44에는 직접 후계기가 없다.

시스템/370 및 가상 메모리 운영 체제

System/370은 기본적으로 System/360과 동일한 설비를 갖추고 있지만 비슷한 가격의 System/360 [46]CPU보다 프로세서 속도가 약 4배 빠른 것으로 1970년에 발표되었습니다.그 후 1972년에 IBM은 "System/370 Advanced Functions"를 발표했는데, 그 중 주요 항목은 향후 System/370의 판매에는 가상 메모리 기능이 포함될 것이며, 이는 기존 System/370 CPU에도 재장착될 수 있다는 것이었습니다.따라서 IBM은 또한 가상 [47][48]메모리 사용을 지원할 수 있는 향상된 운영 체제를 제공하기 위해 노력했습니다.

새로운 운영 체제의 대부분은 이름에 "/VS"가 있다는 점에서 이전 운영 체제와 구별됩니다."VS"는 "Virtual Storage"를 나타냅니다.IBM은 "가상 메모리"라는 용어를 피했는데, 이는 "메모리"라는 단어가 IBM 컴퓨터가 무언가를 잊어버릴 수 있다는 의미로 해석될 수 있기 때문입니다.

z/TPF를 제외한 모든 최신 IBM 메인프레임 운영 체제는 "System/370 Advanced Functions" 발표에 포함된 운영 체제의 후속 버전입니다. z/TPF는 IBM이 초기에 대량 항공 예약 애플리케이션을 지원하기 위해 개발한 시스템인 ACP의 후속 버전입니다.

DOS/VS

DOS/VS는 DOS/360의 후속 제품으로 가상 메모리를 추가하여 비슷한 기능을 제공합니다.가상 메모리 DOS/VS 외에 다음과 같은 기능이 향상되었습니다.

  • 메모리 파티션 3개가 아닌 5개이후 릴리스에서는 이 값이 7로 증가합니다.
  • 실행하는 파티션별로 각 프로그램의 개별 복사본을 링크 편집할 필요가 없도록 로더를 재배치합니다.
  • 개량된 스풀링 컴포넌트 POWER/VS.

DOS/VS는 DOS/VSE와 VSE/SP(1980년대), VSE/ESA(1991년), z/VSE(2005년)[49][50]의 대폭적인 업그레이드가 뒤따랐다.

OS/VS1

OS/VS1은 MFT를 계승하여 유사한 설비를 갖추고 가상 [31]메모리를 추가하였습니다.IBM은 1983년까지 OS/VS1의 상당히 사소한 개선 사항을 발표했으며 1984년에는 더 이상 제공되지 않을 것이라고 발표했습니다.OS/VS1 및 TSS/370은 최신 버전이 없는 유일한 IBM System/370[51] 운영 체제입니다.

Programming RPQ Z06751은 실시간 컴퓨팅을 지원하도록 확장된 OS/VS1의 변형입니다.전기 유틸리티 에너지 관리 및 정유 [52]분야와 같은 산업을 대상으로 했습니다.

OS/VS2 및 MVS

OS/VS2 Release 1(SVS)은 가상 메모리를 탑재한 MVT를 대체하는 것입니다.많은 변화가 있지만 MVT의 전체적인 구조를 유지하고 있다.

1974년에 IBM은 OS/VS2 릴리스 2라고 기술한 것을 출시했지만 이는 이전의 OS/VS2 SVS와 상위 호환성이 있는 주요 개서입니다.새로운 시스템의 가장 눈에 띄는 기능은 여러 가상 주소 공간을 지원하는 것입니다.서로 다른 애플리케이션이 동일한 범위의 가상 주소를 사용하고 있다고 생각했지만, 새로운 시스템의 가상 메모리 설비는 이를 다른 범위의 실제 메모리 [31]주소에 매핑했습니다.그 결과, 새로운 시스템은 「MVS」(복수의 가상 스토리지)라고 불리게 되어, 원래의 OS/VS2는 「SVS」(싱글 가상 스토리지)라고 불리게 되었습니다.IBM은 이 용어를 수락하고 MVS의 후속 제품에 "MVS/..."[53]라는 레이블을 붙였습니다.

MVS의 다른 특징으로는 메인 카탈로그는 VSAM 카탈로그여야 합니다.이 카탈로그는 '엄밀하게 결합된 멀티프로세서'를 지원합니다(2개 이상의 CPU가 동일한 메모리와 운영 체제의 복사본을 공유합니다).시스템 리소스 매니저(이후 버전에서 Workload Manager로 변경됨).시스템에 추가 작업을 로드할 수 있습니다.hout을 사용하면 우선순위가 높은 작업의 성능이 저하됩니다.

IBM은 MVS/SE, MVS/SP 버전 1, MVS/XA(1981년), MVS/ESA(1985년), OS/390(1996년) 및 현재 z/OS(2001년)[54]의 여러 MVS 업그레이드를 출시했습니다.

VM/370

VM/370가상 시스템 설비와 CMS(Conversational Monitor System)라는 단일 사용자 시스템을 결합합니다. 이 조합을 통해 각 사용자가 가상 시스템에서 CMS의 복사본을 실행할 수 있으므로 시간 공유를 제공합니다.이 조합은 CP/[55]CMS의 직계 후손입니다.가상 머신의 설비는 새로운 소프트웨어의 테스트에 많이 사용되었으며, 다른 가상 머신에서는 통상적인 실가동 작업이 계속되고 있으며, CMS 타임셰어링 시스템은 프로그램 [56]개발에 널리 사용되고 있습니다.

VM/370에는 일련의 업그레이드가 뒤따랐습니다.VM/SEPP ('시스템 확장 프로그램 제품', VM/BSEPP ('기본 시스템 확장 프로그램 제품', VM/SP HPO ('High Performance Option', VM/SP HPO', VM/X 아키텍처 ('MAA')em 제품", VM/ESA("엔터프라이즈 시스템 아키텍처") 및 z/VM을 제공합니다.IBM은 또한 "게스트" 운영 체제를 대신하여 하이퍼바이저의 권한 있는 명령(운영 체제만 사용할 수 있는 명령) 에뮬레이션 속도를 높이기 위해 VM 및 후계자를 위한 마이크로코드 지원(옵션)을 제작했습니다.370/확장 아키텍처(Extended Architecture)의 일부로, IBM은 CP 하이퍼바이저의 [58]속도를 더욱 높일 수 있도록 SIE(Start Interpreterptive Execution) 명령을[57] 추가했습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Timeline of Computer History: 1956: Software". Computer History Museum. Retrieved September 4, 2007.
  2. ^ "OS History - MCP". www.oshistory.net. Archived from the original on February 21, 2009.
  3. ^ a b c "A Brief History of Linux". Archived from the original on 2017-11-07. Retrieved 2017-11-04.
  4. ^ "IBM 650". IBM Archives. 23 January 2003. Retrieved 6 November 2017.
  5. ^ "7090/94 IBSYS Operating System". www.frobenius.com. Retrieved 6 November 2017.
  6. ^ Gray, George (March 1999). "EXEC II". Unisys History Newsletter. 1 (3). Archived from the original on August 9, 2017.
  7. ^ "A Career Interview with Bernie Galler". IEEE Annals of the History of Computing. 23 (1): 22–33. Jan–Mar 2001. doi:10.1109/85.910847.
  8. ^ Vyssotsky, V.; Pierce, E. (Jan 1985). "Putting Unix in Perspective". Unix Review. 1 (3).
  9. ^ Conrad Weisert (March 25, 2007). "Reminiscences of Fortran". Information Disciplines, Inc. Retrieved 6 November 2017.
  10. ^ "FORTRAN Anecdotes". IEEE Annals of the History of Computing. 6 (1): 59–64. January–March 1984. doi:10.1109/MAHC.1984.10010.
  11. ^ a b Corbató, Fernando J.; Daggett, Marjorie Merwin; Daley, Robert C. (May 3, 1962). An Experimental Time-Sharing System. Spring Joint Computer Conference.
  12. ^ a b c "Compatible Time-Sharing System (1961-1973) Fiftieth Anniversary Commemorative Overview" (PDF). 2011.
  13. ^ McCarthy, John. "Reminiscences on the History of Time Sharing". – 시간 공유의 기원을 설명합니다.
  14. ^ McCarthy, John (January 1, 1959). "A Time-Sharing Operator Program for our Projected IBM 709".
  15. ^ a b R. J. Creasy (September 1981). "The origin of the VM/370 time-sharing system". IBM Journal of Research & Development. 25 (5): 483–490. doi:10.1147/rd.255.0483.
  16. ^ Peter J. Denning (November 1981). "Performance Modeling: Experimental Computer Science at its Best" (PDF). Communications of the ACM. 24 (11). President's Letter – a survey of research papers. doi:10.1145/358790.358791. S2CID 14123676.
  17. ^ Melinda Varian, VMVM 커뮤니티, 현재 미래, SHARE 89 Sessions 9059-9061, 1977. 온라인 www.princeton.edu/ ~ melinda – CP/CMS 및 VM 이력에서 이용 가능
  18. ^ Denning, Peter (1997). "Before Memory was Virtual". In the Beginning: Recollections of Software Pioneers.
  19. ^ Luanne Johnson (December 23, 2004). "Company Details - National CSS". Computer History Museum. Retrieved January 30, 2007.
  20. ^ Feinleib, Harold (March 2005). A technical history of National CSS (PDF). Computer History Museum.
  21. ^ Dan Boulet의 Everything2.com용 MTS 이력
  22. ^ "MUSIC/SP Operating System - Introduction". webpages.mcgill.ca. Retrieved 6 November 2017.
  23. ^ ORVYL/370 Timesharing System 기능 설명, 스탠퍼드 대학교
  24. ^ WYLBUR 참조 매뉴얼, 스탠퍼드 대학교, 1984
  25. ^ "Mainframe family tree and chronology". IBM Archives. 23 January 2003. Retrieved 6 November 2017.
  26. ^ a b c 척 보이어, 360 혁명
  27. ^ a b Johnston, Jerry (April 1, 2005). "VSE: A Look at the Past 40 Years". z/Journal. Thomas Communications (April/May 2005). ISSN 1551-8191. OCLC 56140149. Archived from the original on March 4, 2009.
  28. ^ a b Andrew S. Tanenbaum (2001). Modern Operating Systems (2 ed.). Prentice Hall. ISBN 978-8120320635.
  29. ^ a b IBM Corporation (1965). IBM System/360 Basic Programming Support and IBM Basic Operating System/360 Programming Systems Summary (PDF). Systems Reference Library. C24-3420-0.
  30. ^ a b Ray Saunders. "MVS... And Before OS/360 ?". Archived from the original on 2007-12-20.
  31. ^ a b c d Auslander, M. A.; Jaffe, J. F. (1973). "Functional structure of IBM virtual storage operating systems Part I: Influences of dynamic address translation on operating system technology". IBM Systems Journal. Vol. 12, no. 4. IBM. pp. 368–381. doi:10.1147/sj.124.0368. S2CID 249618.
  32. ^ "The IBM 360/67 and CP/CMS". www.multicians.org. Retrieved 6 November 2017.
  33. ^ Brooks, F.P. (1995) [1975]. The Mythical Man-Month: Essays on Software Engineering. Addison-Wesley Professional. ISBN 978-0-201-83595-3.
  34. ^ Catalog of Copyright Entries. Third Series: 1971: January-June. 1973.
  35. ^ IBM System/360 and System/370 Bibliography (PDF). IBM. March 1971. GA22-6822.
  36. ^ 56페이지에 인용된 ADP 뉴스레터에 따르면 360/"20"의 매출은 33.6%, 30 입니다.36%, 40 .. 22.6%" = 92.2%
  37. ^ 모델의 IBM S/360 기능 특성 설명서
  38. ^ "The midseventies SHARE survey". Archived from the original on 2008-05-12.
  39. ^ IBM System/360 Operating System Multiprogramming With a Fixed Number of Tasks (MFT) Concepts and Considerations (PDF). First Edition. IBM. October 1966. GC27-6926-0.
  40. ^ K. R. Blackman (1998). "Technical Note -- IMS celebrates thirty years as an IBM product". IBM Journal of Research & Development. 37 (4). Archived from the original on January 24, 2000.
  41. ^ "IBM CICS – z Systems". www-306.ibm.com. Retrieved 6 November 2017.
  42. ^ "Linking Applications to Adabas". Archived from the original on May 22, 2008. Retrieved July 8, 2008. – 1970~1980년대 주요 TP 모니터 목록
  43. ^ Hugo, I. (November 15, 1989). "Metier the model, but few followed - UK software industry". Software Magazine. Retrieved July 8, 2008.
  44. ^ "History of IBM Deutschland Entwicklung GmbH - 1960s". Archived from the original on 2007-05-04.
  45. ^ "Computer History: IBM 360/370/3090/390 Model Numbers". www.beagle-ears.com. Retrieved 6 November 2017.
  46. ^ "System/370 Announcement". IBM. June 30, 1970.
  47. ^ "DPD chronology (1970–1974)". IBM. 23 January 2003. DPD = Data Processing Division은 IBM의 중대형 시스템을 담당했습니다.
  48. ^ Pugh, E.W., Johnson, L.R. and Palmer, J.H. (1991). IBM's 360 and Early 370 Systems. MIT Press. ISBN 978-0-262-16123-7.{{cite book}}: CS1 maint: 여러 이름: 작성자 목록(링크)
  49. ^ "IBM: z/VSE Operating System - History - 1980s". www-03.ibm.com. 15 September 2008. Retrieved 6 November 2017.
  50. ^ "IBM: z/VSE Operating System - History - 1990s". www-03.ibm.com. 15 September 2008. Retrieved 6 November 2017.
  51. ^ MTS 등 비IBM S/370 운영체제에도 후계기 없음
  52. ^ IBM Corporation (January 1976). IBM System/370 Special Real Time Operating System Programming RPQ Z06751 Description and Operation Manual (PDF).
  53. ^ "3033 Technical press release". IBM Archives. March 25, 1977. Retrieved 6 November 2017.
  54. ^ "MVS Operating System". Operating System documentation project. Retrieved 6 November 2017.
  55. ^ Creasy, R. J. (1981). "The Origin of the VM/370 Time-Sharing System". IBM Journal of Research and Development. 25 (5): 483–490. doi:10.1147/rd.255.0483.
  56. ^ Seawright, L. H.; MacKinnon, R. A. (1979). "VM/370—A study of multiplicity and usefulness". IBM Journal of Research and Development. 18 (1): 4–17. doi:10.1147/sj.181.0004.
  57. ^ 370/Extended Architecture/Interpretive Execution. IBM. SA22-7095.
  58. ^ Osisek, D.L.; Jackson, K.M.; Gum, P.H. (March 1991). "ESA/390 interpretive-execution architecture, foundation for VM/ESA - technical". IBM Systems Journal. 30 (1): 34–51. doi:10.1147/sj.301.0034.

추가 정보

외부 링크