GORGE(GORGE)

GEORGE (operating system)
조지
개발자인터내셔널 컴퓨터 및 탭
기입처어셈블리 언어
동작 상태이력
소스 모델라이선스 계약자가 사용할 수 있는 소스.
초기 릴리즈1960년대
최신 릴리즈8,67 / 1985; 37년(최종)
이용가능기간:영어
플랫폼ICT 1900 시리즈 컴퓨터
커널 타입모노리식
영향을 받다멀티틱스
체납
사용자 인터페이스
CLI(텔레타이프 또는 블록모드 단말기)
면허증.독자 사양 상용 소프트웨어

GORGEICT 1900 시리즈 컴퓨터용으로 1960년대에 ICT(International Computers and Tabulator)에 의해 출시일련의 운영체제에 붙여진 이름입니다.여기에는 GORGE 1, GORGE 2, GORGE 3, GORGE 4가 포함됩니다.

처음에 1900 시리즈머신(기반의 Feranti-Packard 6000 등)은 이그제큐티브라고 불리는 심플한 운영체제를 실행하고 있었습니다.이것에 의해, 시스템 오퍼레이터는 Teletype Model 33 ASR 베이스의 시스템 콘솔로부터 프로그램을 로드해 실행할 수 있었습니다.

1964년 12월 ICT는 1906/7년용 새로운 운영체제를 개발하기 위해 운영체제 부서를 설립하였습니다.이 브랜치에서는 처음에 Feranti Orion용 OMP 운영체제에 대한 작업이 끝날 때까지 직원을 파견했습니다.George E의 이름을 따서 George라고 명명된 새로운 시스템의 초기 설계입니다. 기본[1] 프로그래밍 부서의 책임자인 Felton은 오리온과 Atlas 컴퓨터[2]스풀링 시스템의 아이디어를 기반으로 했습니다.

(공중적으로는 조지가 GENeral Organisational Environment를 대표한다고 주장했지만, 현대 소식통들은 그것이 [3]역어라고 말한다.)

1965년 7월, NPL의 세미나에서 MIT의 Project MAC용으로 개발CTSS 운영체제에 대해 설명하는 ICT 팀이 참석했습니다.그들은 ICT가 MOP로 알려진 멀티 액세스 시설인 "멀티 온라인 처리"를 제공해야 한다고 결정했다.1965년 11월 운영체제 지부장인 H. P. Goodman은 라스베이거스에서 열린 가을 조인트 컴퓨터 컨퍼런스에 참석했으며, 이 컨퍼런스는 멀티ics에 대한 계획이 [4]처음 설명되었습니다.논의된 다중 기능 중 일부는 George의 미래 발전에 영향을 미쳤으며, 특히 트리 구조화된 파일스토어입니다.

1965년 말 ICT 마케팅은 특히 소규모 제품군을 위해 보다 단순한 운영체제를 신속하게 제공할 것을 요청했습니다.George 1과 George 2로 알려진 두 개의 작은 시스템이 빠르게 출시되고, 더 큰 운영 체제는 George 3으로 이름이 변경되었습니다.

조지 1 및 2

George 1은 단순한 배치 처리 시스템입니다.작업 설명은 카드 또는 종이 테이프에서 읽혀져 프로그램의 로드와 실행을 제어합니다.카드 또는 종이 테이프 또는 자기 테이프에서 로드됩니다.작업 제어 언어를 사용하면 사용할 주변 장치와 파일을 정의하고 예외 조건을 처리할 수 있습니다.작업이 실행되기 전에 작업 설명에서 오류를 확인합니다.George는 경영진이 제공하는 신뢰할 수 있는 프로그램 설비를 사용하여 사용자 프로그램을 실행했습니다.

George 2는 오프라인 주변기기 처리(스풀링) 개념을 추가했습니다.여러 모듈이 병렬로 실행되어 입력, 처리 및 출력 작업이 중복될 수 있습니다.

  • 입력 모듈을 통해 카드 또는 종이 테이프에서 마그네틱 디스크 또는 테이프상의 임시 파일로 작업을 읽어 들였습니다.
  • 중앙 모듈은 임시 입력 파일로부터 입력을 받아 프로그램 출력을 임시 파일에 쓰면서 사용자 프로그램을 실행한다.
  • 출력 모듈이 물리 프린터에 임시 출력 파일을 쓰고 펀치를 가했습니다.
  • 또한 원격 작업 시작 스테이션에서 작업을 입력할 수 있는 모듈도 제공되었으며, 작업의 출력을 원격 프린터로 인쇄할 수 있었습니다.

설치가 충분히 큰 경우 중앙 모듈의 여러 복사본을 실행할 수 있으므로 여러 작업을 병렬로 처리할 수 있습니다.

George 2의 작업 제어 언어를 사용하면 저장된 매크로와 조건부 기능을 사용할 수 있습니다.

George 2는 파일 시스템, 시스템 및 사용자 프로그램을 이그제큐티브가 제공하는 설비에 의존하지 않았습니다.디스크상의 파일은, 일의의 12 문자명으로 액세스 되어 「삭제하지 말아 주세요」비트 이외의 시큐러티는 제공되지 않았습니다.

MINIMOP은 동일한 머신 상에서 GORGE 2와 동시에 실행함으로써 온라인 시분할 기능을 제공할 수 있습니다.

George 2 배치 작업의 예

다음은 George 2의 다소 인위적인 배치 예를 제시하겠습니다.

배지는 작업 이름, George가 과금에 사용하는 계정 코드 및 사용자 이름을 지정하는 작업 설명으로 시작합니다.
작업 계획4JOB, 30174, BRIAN
작업은 먼저 프로그램 #XPLTPROGRAM COMP라는 디스크 파일에서 로드합니다(XPLT는 어셈블러입니다).문서 SOURCE는 가상 카드 리더 CR0에서 #XPLT에 대한 입력으로 사용됩니다.
ED(PROGRAM COMP) 로드 #XPLT에서 CR0(소스)에 1을 입력합니다.
#XPLTHALT OK라는 메시지로 끝나면 작업은 라벨 1A로 계속됩니다.그렇지 않으면 COMPLITION ERRORES가 표시되고 5END로 점프합니다.
정지된 상태에서 1A 디스플레이로 이동 '컴파일 오류' 5엔드로 이동
라벨 1A에서는 프로그램 #XPCK가 로드되어 가상 카드 리더에서 사용 가능한 인라인 문서와 함께 실행됩니다(XPCK는 ICL 용어로는 링커(consolidator)입니다).(인라인 문서는 CR0/JD 행과 터미네이터 사이의 텍스트입니다.)*)
1A ED(프로그램 압축) 로드 #XPCK IN CR0/JD *ED(SEMICompiled) *OUT ED(프로그램 테스트) *리스트?* DELETED HH에서 1을 입력하고 2A 디스플레이로 이동하여 '통합 오류'를 5END로 이동합니다.
#XPCK가 오류 없이 완료되면 프로그램 #HWLD가 실행됩니다.
ED(프로그램 테스트) 부하 #HWLD 입력 0 5엔드 엔드 ****
원본 문서를 읽은 작업은 작업에 대한 입력으로 사용됩니다.
DOC 소스 PROG(HWLD) 스티어(리스트, 오브젝트) OUTE(SEMIC Compiled(0) WSF(HWLD) 플랜(CR) #프로 HWLD40/테스트 #로우메시지 12HHHELLO WORLD #프로젝트 0DESTY DEL MESS'2.11/MESS
마지막으로 배치의 종료를 알립니다.이 시점에서 배치의 모든 작업이 순서대로 실행됩니다.
배치의 모든 출력은 시스템 프린터로 인쇄됩니다.
엔드 배치

실제 응용 프로그램에서는 저장된 매크로를 사용하여 작업이 훨씬 더 간단할 수 있습니다. 이 는 JCL의 일부 기능을 보여주기 위해 직접 작성되었습니다.

조지 3 및 4

GORGE[5] 3은 1900 시리즈의 대형 머신용 운영체제 시리즈의 메인 버전입니다.처음에는 1906/7년에 출시되었고, 결국 1902T까지 모델에 사용할 수 있게 되었습니다.이그제큐티브 밑에서 사용자 모드 프로그램으로 실행되던 George 1과 2와는 달리 George 3은 완전한 운영체제였으며, 하위 수준의 주변기기 및 인터럽트 처리만 이그제큐티브의 컷다운 버전에 남겨두었습니다.

George 3은 작은 메모리 상주 부품 및 필요에 따라 메모리에 로드되고 메모리에서 제거되는 장(오버레이) 모음으로 구현되었습니다.각 장은 완전히 장소에 구애받지 않기 때문에 메모리를 최대한 활용할 수 있습니다.내부적으로 George는 공동 멀티태스킹을 사용했습니다.컨텍스트 전환은 임의의 챕터 변경 시(한 챕터에서 다른 챕터로 콜), 또는 코드의 다른 지정된 장소에서 실행할 수 있습니다.사용자 레벨 코드는 프리엠프티브멀티태스킹을 사용하여 실행되었으며 컨텍스트스위치는 I/O 조작 또는 [6]클럭틱으로 강제 실행되었습니다.

George는 GIN(George INput)이라는 특수 어셈블러에서 작성되었습니다.GIN(George INput)은 표준 PLAN 어셈블러보다 더 풍부한 조건부 컴파일과 매크로 설비를 갖추고 있습니다.이러한 대규모 시스템을 어셈블리 언어로 프로그래밍하는 수고를 줄이기 위해 매크로가 코드에 의해 많이 사용되었습니다.이후 버전에서는 구조화된 프로그래밍 기능을 코드에 추가하기 위해 GIN의 매크로 기능이 사용되었습니다.이 시스템을 작성하는데 75년의 프로그래머의 [7]노력이 소요된 것으로 추정되었습니다.

작업 제어

George 3는 온라인과 배치가 혼합된 시스템이었다.작업은 George 2와 같은 방법으로 카드 또는 테이프에서 실행하거나 MOP(Multiple Online Processing) 터미널(단순 Teletype Model 33 ASR 터미널 또는 블록 모드 VDU 터미널)에서 인터랙티브하게 실행할 수 있습니다.

작업 제어 언어는 터미널 또는 배치 작업에서 동일했으며 조건부 작업 및 매크로 작업을 포함했습니다.Unix 시스템과 달리 작업 제어 언어는 사용자 수준의 셸 프로세스가 아닌 운영 체제의 일부였습니다.

작업은 한 번에 하나의 프로그램만 메모리에 로드할 수 있지만 시스템 리소스와 사이트 정책이 허용하는 경우 한 작업에서 다른 작업을 동시에 실행하여 실행할 수 있습니다.다른 작업에 메모리가 필요한 경우 입력 또는 출력을 기다리는 동안 시스템은 사용자 프로그램을 메모리 부족으로 스왑합니다.

파일스토어

George 3은 Multics에서 부분적으로 영감을 받아 트리 구조의 파일스토어를 제공했습니다.

시스템의 모든 사용자는 홈 디렉토리 아래에 필요한 수의 하위 디렉토리가 있는 홈 디렉토리를 가지고 있습니다.유저의 홈 디렉토리에 직접 액세스 할 수 있습니다.예를 들어, 유저 JOHN 의 디렉토리를 다음과 같이 나타낼 수 있습니다.를 들어, JOHN이 컴퓨터 공학부에 있는 경우 홈 디렉토리는 다음과 같습니다.매니저USers.COMPSCI.

액세스 컨트롤 리스트는 보안을 위해 사용되었습니다.사용자는 자신의 파일 또는 디렉토리에 대한 사용자 또는 사용자 그룹의 접근을 허용 또는 거부할 수 있습니다.

파일 데이터 스토리지는 2단계입니다.파일은 현재 디스크에 있거나 시스템의 디스크 공간이 부족할 경우 자동으로 자기 테이프로 밀려날 수 있습니다.현재 오프라인 파일에 액세스하려고 하면 작업이 일시 중단되고 오퍼레이터가 적절한 테이프를 로드하도록 요청했습니다.테이프를 사용할 수 있게 되면 파일이 Disk로 다시 가져와 작업이 재개됩니다.

1968년 기본 디스크 스토리지 메커니즘인 George 3은 Copy-On-Write 파일 시스템의 가장 초기 상용 버전이었을 것입니다.이 방법은 수정된 모든 블록을 "공짜" 목록의 블록에 쓰는 것이었습니다.메타데이터를 포함하는 블록도 동일한 방식으로 처리되지만 데이터 블록과 함께 물리적으로 "마스터" 블록이 작성되면 파일이 커밋되는 방식으로 작성되었습니다.머신이 어느 시점에서 고장났을 경우, 하드웨어에 의해서 파일이 원래의 파일, 수정되지 않은 파일, 또는 완전히 최신 파일 중 하나임을 보증받았습니다.

또 다른 유용한 기능은 Filestore가 카드 리더와 펀치, 자기 테이프와 디스크와 같은 모든 표준 주변기기를 에뮬레이트할 수 있다는 것입니다.이것에 의해, 이러한 물리 디바이스를 필요로 하는 낡은 George 1 및2 프로그램은, 변경 없이 George 3 아래에서 실행할 수 있게 되었습니다.이것에 의해, George 1과 2의 많은 테이프 또는 디스크 변경을 자동화할 필요가 있던 작업이 고속화됩니다.즉, 2명의 오퍼레이터(몇개의 10개의 테이프 교환과 5시간)가 필요하게 되었습니다.작업자는 작업테이프를 2개 탑재할 필요가 없어져 45분만에 종료할 수 있게 되었습니다.

조지 4

1904A부터, 보다 큰 1900 프로세서에 페이징 유닛을 사용할 수 있게 되었고, George 4는 그 이점을 활용하기 위해 작성되었습니다.George 4는 George 3과 호환성이 있습니다.일반적으로 George 3과 4를 동일한 머신과 파일스토어에서 번갈아 사용하고, 소규모 인터랙티브 워크로드의 경우 낮에 George 3을 실행하고, 메모리 사용량이 많은 대규모 [8]작업에 대해서는 George 4를 밤에 실행합니다.

George 4는 할당된 메모리보다 큰 주소 지정 공간과 읽기 전용(순수) 데이터와 코드 영역을 가진 프로그램인 스파스 프로그램의 개념을 도입했습니다.이러한 기능을 사용하기 위해 새로운 버전의 통합기(링커)와 컴파일러가 제공되었습니다.

조지 3과 조지 4의 소스 코드는 동일했습니다.GIN 어셈블러의 조건부 컴파일 기능을 사용하여 컴파일할 시스템의 버전을 선택했습니다.

1900 페이징 기능은 이후의 George 설치에서 사용된 2900 시리즈 머신에서 에뮬레이트되지 않았기 때문에 George 4는 George 3보다 먼저 사용되지 않게 되었습니다.

여기 George가 사용하는 몇 가지 간단한 예가 있습니다.

배치 작업의 예

이 작업은 위의 George 2 작업을 모델로 하고 있으며, 실제 사용에서는 대부분의 작업이 사전 저장된 매크로 명령에 의해 수행되므로 다소 인위적입니다.

작업은 카드 또는 종이 테이프 리더에서 읽혀집니다.사소한 변경(첫 번째 "JB" 명령 제거)으로 파일에 저장하고 대화형(MOP) 터미널에서 실행할 수 있습니다.

George 2의 예시와 마찬가지로 작업은 JOB 명령으로 시작됩니다(모든 기본 제공 명령은 긴 형식과 두 글자 약어입니다). 여기서 "JB"는 "JOB"의 약어입니다).JOB 명령어는 작업명, 과금할 사용자:BRIAN 및 작업의 터미네이터 "####"을 지정합니다.
JB PLAN4JOB,BRIAN, T####
(WE) 명령어가 오류로 인해 실패할 때마다 작업은 오류 복구를 위해 라벨 5CE에서 작업이 계속됩니다.이 작업에 사용되는 메모리의 MAXSIZE(MZ)는 20,000 워드로 구성됩니다.
WE COMERR, GO 5CE MZ 20K
CREATE(CE) 명령어는 임시 작업 파일인 "!"를 만드는 데 사용됩니다.그런 다음 INPUT(IN) 명령은 모든 텍스트를 터미네이터에 "///"로 작업 파일에 복사합니다.
CE! 입력!, T/// PROG(HWLD) 조향(목록, 객체) OUTE(SEMICompiled) WSF(HWLD) 플랜(CR) #PRO HWLD40/테스트 #LOW MESS 12HELLO WORLD #프로젝트 011Y DIST 'MEST'
LOAD(LO) 명령은 다음 디렉토리에서 PROGRAM XPLT(어셈블러)를 로드합니다. RESUME(RM) 명령에 의해 LIB가 시작됩니다.출력 LD에서 실행이 중지되지 않으면 오류 처리를 위해 라벨 1F에서 작업이 계속됩니다.
LO : LIB 。HAL(LD)이 아닌 경우 XPLT RM 프로그램, Go 1F
AJESST(AS) 명령어를 사용하여 가상 카드 리더 유닛0 을 위에서 작성한 작업 파일에 접속합니다.이 작업 파일은 ERASE(ER) 명령어로 삭제됩니다.(파일이 닫힐 때까지 소거가 지연됩니다).
AS *CR0, ER!
새로운 워크파일이 생성되어 가상라인 프린터 유닛 0이 할당된다.
CE! AS *LP0,
PROGRAM XPLT가 실행되면 OUTE 디렉티브에서 디스크 파일을 열려고 합니다.일시적인 작업 파일을 사용하고 싶기 때문에 George에게 열려 있는 작업 파일을 감시하고 실행을 중지하고 작업 파일을 제공할 수 있도록 합니다.
MN ON, 오픈
메모리 내 프로그램(PROGRAM XPLT)이 위치 21에서 시작됩니다.
EN 1 모니터가 아닌 경우(열림), GO 1F
128개의 워드 버킷과 40,000개의 초기 크기를 사용하여 새로운 직접 액세스 작업 파일이 생성됩니다.가상 디스크 채널 *DA2가 할당되어 있습니다.프로그램이 재개된다.
CE!(*DA, BUCK1, KWOR40) AS *DA2, !(WRITE) RM
출력이 OK인 HALT가 되면 라벨 1A에서 작업이 계속되며, 그렇지 않으면 오류 메시지가 표시되고 작업이 종료됩니다.
HAL(OK), GO 1A 1F DP 0인 경우 컴파일 오류 GO 5EX
DELETE(DL) 명령어는 어셈블러를 메모리에서 삭제합니다.
1A DL
그러나 링커에 대한 명령을 보관하는 다른 작업 파일이 생성됩니다.링커 명령은 "****" 행으로 끝나야 하므로 INPUT 명령에 기본 터미네이터가 사용됩니다.
CE! 입력! *ED(SEMIC 컴파일 완료) *출력 ED(프로그램 테스트) *리스트 ****
링커 :LIB프로그램 XPCK가 로드되어 초기화됩니다.
LO : LIB 。HAL(LD)이 아닌 경우 XPCK RM 프로그램, Go 2F
가상 카드 리더는 링커 지침을 보관하고 있는 작업 파일에 첨부되며, 작업 파일은 지워집니다.
AS *CR0, ER!
가상 라인 프린터는 마지막으로 작성되었지만 아직 삭제되지 않은1개의 워크 파일에 부가 모드로 할당됩니다(워크 파일은 스택에 보관됩니다.「!1」은 스택의 선두, 그 아래의 워크 파일은!1 등).LISTFILE(LF) 명령어는 시스템프린터로 파일을 인쇄하기 위해 사용합니다(파일이 닫히면 목록이 시작됩니다).그러면 파일이 삭제됩니다(목록이 완료될 때까지 삭제가 지연됩니다).가상 디스크 채널 *DA1은 (어셈블러 출력을 유지하는) 상위 작업 파일에 할당되지만 링커용 다른 작업 파일이 생성됩니다.
AS *LP0,!1(부록) LF!1,*LP,PA ER!1 AS *DA1,! ER! CE! (*DA, BUK1, KWOR10) AS *DA13,! (WRITE) ER!
링커 출력을 유지하는 파일을 생성하여 가상 디스크 채널 *DA14에 첨부한다.그런 다음 링커가 위치 21에서 시작되고 HH 메시지와 함께 작업이 완료되면 라벨 2A에서 계속됩니다. 그렇지 않으면 오류 메시지가 표시되고 작업이 종료됩니다.
CE 프로그램 HWLD(*DA, BUCK1, KWOR5) AS *DA14, 프로그램 HWLD(WRITE) EN 1 DEL(HHH), GO2A 2F DP 0, 통합 오류 GO5EX
라벨 2A에서는 링커에 의해 작성된 프로그램을 메모리에 로드하여 위치 20에서 시작하여 성공 메시지가 표시되고 작업이 종료된다.
2A LO 프로그램 HWLD EN 0 DP 0, 작업 완료 GO 5EX
어느 하나의 명령어가 실패했을 경우 작업 시작 시 지정된ANYMENTY 명령어는 강제5CE로 점프하여 오류 메시지를 표시하고 종료합니다.
5CE DP 0, 작업 중 명령 오류
작업에 현재 로드된 프로그램이 있는 경우 작업에 5EX 라벨이 지정되면 메모리에서 삭제되고 ENDJOB(EJ) 명령에 의해 작업이 종료됩니다.
5EX(COR, DL EJ
작업의 끝은 JOB 명령에 의해 정의된 터미네이터 문자열로 시그널링됩니다.
####

MOP 세션 예시

모든 사용자 입력은 소문자로 표시됩니다.George의 모든 출력은 대문자로 표시됩니다.

사용자가 George에 연결된 유휴 Teletype에서 control-A를 입력하면 George는 식별 배너와 프롬프트(시간, 입력 요청 백 화살표)로 응답합니다.그런 다음 LOGIN(LN) 명령을 사용하여 로그인합니다.패스워드를 입력하도록 요구됩니다.패스워드는 단말기가 반이중 모드로 로컬에코와 연결되어 있을 때 에코됩니다.그러면 작업이 시작됩니다.
이것은 GEORGE 3 MAR11 21.21.23← ln:john, snjob Type PASSWORD← PASSWORD STARTED: JOHN, MOPJOB, 21MAR11, 21.21.35 타입:대걸레
디렉토리는 MAKEDIR(MK) 명령어로 작성되며 현재 디렉토리는 DIRECTOR(DY) 명령어로 새로운 디렉토리로 변경됩니다.
21.21.35←mk hellodir 21.28.10←dy hellodir
시스템 매크로 NEWCOPYIN은, 테이프 시리얼 번호 123457 로부터 판독하기 위해서 사용됩니다.NEWCOPYIN 매크로가 프로그램을 로드하면 세션이 완전히 시작됩니다(시스템 부하가 높은 경우 이 시점에서 대기할 수 있습니다).
21.28.16← newcopyin (123457) 21.28.32 JOB가 완전히 시작됨 4736이 MT 123457을 기다리고 있음
시스템 오퍼레이터가 테이프를 찾지 못하고 CANTDO 명령을 사용하여 로드를 거부한 것 같습니다.NEWCOPYIN은 실패합니다.
NEWCOPYIN의 OL 파라미터 2 오류: MT(123457)는 올바르게 식별되지만 사용할 수 없는 디스플레이: NEWCOPYIN의 오류. 매크로 폐기 21.28.58 프리*CR0, 0 전송 21.28.58 0.05 삭제, 클럭 종료: 0.00.
사용자는 이번에는 올바른 시리얼 번호를 사용하여 다시 시도합니다.테이프를 사용할 수 있게 되면 파일을 로드하라는 메시지가 표시됩니다.파일 목록은 "****"로 끝납니다.
21.28.58← newcopyin (123456) 21.32.21 0.06 코어 4736 MT 123456 21.32.34 U31 AS *MT0, MT(123456, 사용)HELLOTEPE(0/0) ← hello, hello(/plan)**** 21.32.52 무료 *CR0, 2 TRANSFIRSE 디스플레이 : 1 파라미터 수용 디스플레이 0.08: 모니터 디스플레이 : 입력 테이프 * 123456.디스플레이 0.08: 모니터 21.32.52 프리 *FH0, 1 전송 21.32.52 프리 U31, 8 전송 0.10 : 삭제됨: OK 21.32.52 0.10 삭제, 매크로 종료.
파일이 테이프에서 로드되었습니다.LISTFILE(LF) 명령어는 LISTFILE(LF)의 내용을 조사하기 위해 사용됩니다.
21.32.52if hello #PRO HWLD40/테스트 #LOW MESS 12HELLO WRLD #PRO #ENT 0 DISTY '11/MESS' DEL 2HOK #END
오류가 있는 것 같기 때문에 사용자는 EDIT(ED) 명령을 사용하여 오류를 수정합니다.편집기 하위 명령 TC는 "WRLD"를 포함하는 라인에 배치하는 데 사용되며, R 명령은 "WRLD"를 "WORLD"로 대체한 다음, E 명령은 파일을 씁니다.
21.33.01← ed hello
에디터 준비 완료
0.0← tc/wrld/ 2.0← r/wrld/world/ 2.29← e
시스템 매크로 PLANCOMP은 파일 HELLO(/PLAN) PROGRAM HELLO로 컴파일하기 위해 사용됩니다.
21.43.46← plancomp *cr hello(/plan), *idhelo FILES ARENALING ONLINE::LIB.Subsystems-RS(1/V3) :LIB.프로그램 XPCK(1/V12K):LIB.프로그램 XPLT(1/V8C) 21.43.58 코어 Given 18944 0.58 : HALED : LD 디스플레이 : START JOB HELO, OPEN * DA2 N CA 1641 M = #00100 FN = SEMICOMPiled 1.00CR 모니터 21:58 프리ANSFIRS 21.43.58 1.01 삭제, CLOCKED 0.00 21.43.59 1.07 코어 제공 11392 21.43.59 무료 *CR0, 5 트랜스퍼 21.43.59 무료 *DA14,20 트랜스퍼 21.43.59 무료 *DA1, 9 트랜스퍼 21.43.59 무료 *DA2 무료, 21.2 전송.00 디스플레이: 매크로의 컴파일/통합을 계획합니다.
새로 컴파일된 PROGRAM HELO는 LOAD(LD) 명령으로 메모리에 로드된 다음 ENTER(EN) 명령으로 시작됩니다.기존 메시지를 표시한 후 메모리에서 자신을 삭제합니다.
21.43.59← lo program helo 21.44.06←en 21.44.07 1.09 CORE 64 디스플레이 : HELLO WORLD 1.09 : DELETED : OK 21.44.07 1.09 DELETED 0.00
오늘의 힘든 작업이 끝나면 사용자는 LOGOUT(LT) 명령으로 로그아웃합니다.사용된 제분 시간과 비용과 남은 금액이 표시됩니다.
21.44.07← LT MAXIMAL ONLINE BS USED 252 KWORDS 21.44.12 1.09 완료: 0 LISTFILES USED LIFT TIME (M) 70 - 97797 MONE 35 80327 21.44.12←

소스 코드

George는 사이트의 시스템 대부분을 수정할 수 있는 형태로 배포되었습니다.시스템 컴파일이 시작되어 종료 직전에 중단되어 자기 테이프에 덤프되었습니다.GIN 컴파일러는 이 시점부터 사용자 사이트에서 컴파일을 계속할 수 있도록 했으며, 이미 컴파일된 코드를 수정했을 가능성이 있습니다.

릴리스 8 이전 버전의 George 3은 바이너리 형식으로 제공되었습니다.시스템에 필요한 모든 수정은 바이너리 패치로 이루어졌습니다.프로세스를 간소화하기 위해 대부분의 George 장에서는 마지막에 MEND 영역이 포함되어 있습니다.

릴리스 8부터 조지의 소스는 바이너리와 함께 자기 테이프와 마이크로피쉬로 배포되었습니다.시스템을 수정하기 위해 MENDITS라고 알려진 소스 레벨 패치 시스템이 사용되었으며 기존 장은 새로운 수정된 장으로 완전히 대체될 수 있었습니다.

George 사용자 그룹은 흥미로운 수정 사항을 George에게 공유하기 위해 "MEND 교환 방식"을 설정했습니다.일부 수정은 무료로 배포되었고, 다른 수정은 유료로 제공되었습니다.ICL이 George의 새로운 버전을 제작할 때 사용자가 제작한 수정사항을 포함하기도 했다.

마지막 릴리스 버전인 8.67의 경우, MEND 교환 스킴의 패치의 대부분이 표준 George 소스에 포함되어 조건부 컴파일에 의해 꺼졌습니다.사이트용으로 George를 맞춤화하는 표준 프로세스의 일부로 설정할 수 있습니다.

문서

GEOrge는 일련의 루즈 리프 폴더에 내부 문서화되어 초기 버전과 수정판으로 배포되었습니다.결국 모든 원본 페이지가 교체되었고, 따라서 모든 새로운 설명서 사본은 빈 루즈 리프 폴더 상자와 수정사항 더미로 구성되었습니다.첫 번째 개정안은 기여자 명단이었고, 개정의 기술적 이유는 "모든 사람을 행복하게 하기 위해서"로 기술되었다.

수정판

조지 3의 수정 버전은 맨체스터 대학 지역 컴퓨터 센터(UMRCC)에 제공되었습니다.이를 통해 George 3은 CDC Cyber 머신에 연결되었으며, George는 오프라인 I/O 및 작업 큐잉 기능을 제공했습니다.ICL과 Cyber는 하드웨어와 소프트웨어 모두에 대해 온라인 지원을 제공했습니다.사이버 지원팀은 [citation needed]"사이버맨"이라는 이름이 문에 붙은 사무실에서 일했다.

종말

진부화

ICL의 "새로운 범위"인 VME 운영체제를 탑재한 2900 시리즈가 출시됨에 따라 George는 더 이상 사용되지 않게 되었습니다.다만, George의 소프트웨어에 대한 투자가 계속 되고 있기 때문에 ICL은 George를 포함한 1900 시리즈 소프트웨어를 2900 시리즈 머신에서 실행하는 옵션을 발표했습니다.이것에 의해, 같은 시스템상에서 1900 코드와 2900 코드를 동시에 실행할 수 있게 되었습니다.

George 3의 새로운 버전은 2900용으로 계속 출시되었습니다.마지막 버전은 1983년에 출시된 8.67이었습니다.

2005년 현재 러시아 내 최소 1개 사이트에서 DME로 [9]George 3가 가동되고 있습니다.

2014년 11월, George 3는 미국 국립 [10]컴퓨팅 박물관에서 개조된 ICL 2966으로 가동되었습니다.

에뮬레이션

때 영국의 브리티시 스틸에서 마지막 살아 있는 사이트와, 조지의 마이크로 소프트 윈도우와 리눅스에 컴퓨터 보호 협회에 대한 계획의 일환으로 운동을 허용하는 1900년 하드웨어와 경영자에 대한 에뮬레이터를 썼다 더 이상 사용하는 것은 데이빗 Holdsworth과 Delwyn 홀로이드 조지 3일자 테이프의 복사본을 얻었다.[11][12]에뮬레이터에는 이그제큐티브 및 ICL7903 Communications Processor의 Java 에뮬레이션이 포함되어 있기 때문에 포트 2023에 Telnet 접속하여 MOP 세션을 실행할 수 있습니다.

David Holdsworth & Delwyn Holroyd Build에 의한 George 3 이그제큐티브 에뮬레이터: 2014년 5월 15일 메모리 크기: 256K Exec 명령: 포트 1900에서 콘솔 Telnet 연결을 기다리는 DA GEGORGE 3A
ICL 7903 Communications Controller 에뮬레이터 by David Holdsworth & Delwyn Holroyd Build : 2014년 2월 23일 - ?사용정보용 포트 2023에서의 TTY 접속 리스닝 - 4 포트 7181에서의 VDU 접속 리스닝 - 포트 7903에서의 호스트 접속 리스닝 가능

에뮬레이터를 사용한 테스트 결과 George 3은 Y2K에 준거하고 있습니다.

레퍼런스

  1. ^ "Another ICL Anthology"에서 George Felton은 이름의 유래를 다음과 같이 설명합니다.
    1965년 1월쯤 해외에 나가 있는 동안 사무실에서 회의를 열고 제안된 운영체제와 이그제큐티브 간의 다양한 기능 할당 방법에 대해 논의했습니다.스킴 A가 논의되어 거부되었습니다.스킴 B도 마찬가지입니다.그리고 스킴 C, D, E, F도 차례로 폐기되었습니다.스킴 G가 나왔을 때 모두가 기뻐했고, 그것을 채택하기로 결정되었습니다."GENERAL ORGanisational Environment" 또한 약어의 공식 확장으로 빠르게 공식화되었습니다.하지만 '조지'라는 이름은 어떤 경우에도 자연스러운 선택이었다. 그것은 항공기 자동 기동의 메아리를 가지고 있었고, 그것은 조금 재미있었다. 그리고 나는 분명히 반대하지 않을 것이다."
  2. ^ Goodman, H. P. (2004-01-01). "3.4.2- George Operating Systems for the ICL 1900 Series Computer Range". Archived from the original on 2011-06-28. Retrieved 2011-02-15.
  3. ^ Carmichael, Hamish (November 1998). Another ICL Anthology (PDF). Laidlaw Hicks. ISBN 978-0-9527389-2-3. Retrieved 2013-12-05.
  4. ^ "Multics Technical Papers online". Retrieved 2011-02-15.
  5. ^ GORGE 3 온라인 레퍼런스
  6. ^ Oestreicher, M. D. (April–June 1971). "The design of the internal structure of the ICL George 3 operating system". Software: Practice and Experience. 1 (2): 189–200. doi:10.1002/spe.4380010209.
  7. ^ Cambell-Kelly, Martin (1989). ICL: A Business and Technical History. Oxford University Press. p. 239. ISBN 0-19-853918-5.
  8. ^ "UEA CPC Annual report 1975-76" (PDF). Retrieved 2014-05-06.
  9. ^ Holdsworth, David (Autumn 2005). "Society Activity". RESURRECTION The Bulletin of the Computer Conservation Society (36). Retrieved 2014-04-14. Out of the blue I have received a mail message from a Russian who still has a George 3 system running on DME.
  10. ^ Holroyd, Delwyn (Winter 2014). "Society Activity". RESURRECTION The Bulletin of the Computer Conservation Society (68). ISSN 0958-7403. Retrieved 2015-04-12. I’m pleased to report that the 2966 project has reached a major milestone this month. On 15th November we successfully loaded George 3 under CME for the first time and by the end of the day the 7501 terminal was available for visitors to play the Colossal Cave adventure which is normally hosted on a Raspberry Pi running the George 3 Executive Emulator.
  11. ^ 리즈 대학의 조지 3 에뮬레이터
  12. ^ Rasberry Pi에서 실행되는 George3

추가 정보

  • Oestreicher, M. D.; Bailey, M. J.; Strauss, J. I. (1967-11-01). "GEORGE 3---A general purpose time sharing and operating system". Communications of the ACM. 10 (11): 685–693. doi:10.1145/363790.363806.