ICL VME

ICL VME
가상 머신 환경
개발자후지쯔(후지쯔) 국제 컴퓨터 유한회사
기입처S3, C
동작 상태현재의
초기 릴리즈1970년대 중반
플랫폼ICL 2900 시리즈, ICL 시리즈 39 메인프레임
영향을 받다멀티픽스, George 3
면허증.독자 사양 상용 소프트웨어
공식 웹사이트VME 사이트

VME(Virtual Machine Environment)는 영국International Computers Limited(ICL, 현재는 Fujitsu 그룹의 일부)에 의해 개발된 메인프레임 운영 체제입니다.1970년대에 ICL의 새로운 2900 시리즈 메인프레임을 구동하기 위해 개발된 운영체제는 Unix 서브시스템을 내장한 OpenVME로 알려져 ICL 시리즈 39 및 Trietra[1] 메인프레임 컴퓨터 및 업계 표준 x64 서버에서 [2]실행됩니다.

오리진스

레인지 시스템의 개발 프로그램은 1968년 국제 컴퓨터탭레이터(ICT)와 영국 전기 컴퓨터의 합병으로 시작되었다.기본적인 결정 중 하나는 새로운 운영체제를 탑재하는 것이었습니다.ICL 내에서 다양한 타당성과 설계 연구가 수행되었으며, 가장 주목할 만한 세 가지는 다음과 같다.

  • VME/B(원래 시스템 B)는 2970/2980과 같은 대형 프로세서를 대상으로 하며 Kidsgrove, StaffordshireManchester West Gorton에서 개발되었습니다.
  • VME/K(원래 시스템 T)는 2960 등의 미드레인지 시스템을 대상으로 하며, 이러한 소형 프로세서의 원래 설계인 시스템 D가 폐기된 후 Bracknell에서 개발되었습니다.VME/K는 개발되어 시장에 도입되었지만, 최종적으로 VME/B로 대체되었습니다.
  • VME/T는 실제로 출시된 적은 없지만 "장애 허용"을 지원하는 것으로 생각되어 이 분야에서 성공한 미국 스타트업 회사인 Tandem Computers의 노력보다 앞서 언급할 필요가 있습니다.

VME/B의 최고 설계자는 Brian Warboys로, 이후 맨체스터 대학의 소프트웨어 공학 교수가 되었습니다.설계에는 Multics와 ICL의 초기 George 3 운영체제 등 여러 가지 영향이 있지만 기본적으로 처음부터 설계되어 있습니다.

VME/B는 주로 상업용 운영 체제로서 System/370 IBM 메인프레임과 경쟁하는 것으로 간주되어 EBCD를 채택했습니다.IC 문자 [3]부호화

역사

New Range가 1974년 10월에 처음 출시되었을 때 운영 체제는 "시스템 B"로 불렸습니다.처음 배송되었을 때는 "VME/B"[4]가 되어 있었습니다.

VME/K는 독립적으로 개발되었으며(Campbell-Kelly에 따르면 "Ed Mack의 변덕"에 따라) 나중에 2960과 같은 작은 메인프레임과 함께 제공되었습니다.

1980년 금융위기 이후 ICL(Christopher Laidlaw 회장, Rob Wilmot 상무)에 새로운 경영진이 도입되었습니다.새로운 경영진의 초기 결정은 VME/[4][5]K를 폐기하는 것이었습니다.이에 따라 1981년 7월에 "VME2900"이 출시되었습니다. VME/B와 VME/K의 통합으로 고객층에 제시되었지만 실제로는 VME/B 기반에 VME/K의 일부 기능이 접목되었습니다.이것에 의해, 몇개의 구식 기능을 폐기할 수 있게 되었습니다.이 기능은, 「BONVME」옵션의 형태로 필요한 고객에게 계속 제공되고 있었습니다.

「2900」서픽스는, 1985년에 ICL이 최초의 2900 시리즈의 후계로서 Series 39 를 개시했을 때에 시스템버전 213(SV213)에서 폐기되어 「Open」프리픽스가 SV294 이후에 추가되었습니다.VME는 원래 Unix용으로 작성된 애플리케이션을 VME/X라고 불리는 UNIX System V Release 3 기반 서브시스템을 통해 호스트할 수 있게 되었습니다.VME는 VME에서 실행되도록 조정되어 ASCII 문자 [6][7][8]인코딩을 사용합니다.

2007년에 Fujitsu는 Microsoft Windows 또는 x86-64 [2]하드웨어에서 SUSE 또는 Red Hat Enterprise Linux라는 호스트 서브시스템으로 실행되는 VME 버전을 발표했습니다.

2012년에 VME 사용자 그룹인 AXiS는 사용자 [9]기반이 축소되었기 때문에 거의 40년 후에 해체될 것이라고 발표했습니다.

후지쯔는 2020년까지 고객의 컴퓨터에서 [10]VME를 지원할 예정이었습니다.

2020년에 Fujitsu는 13개의 HM 수익세관 애플리케이션을 컴퓨터에서 Fujitsu의 가상 관리 VME 호스팅 [11][12]플랫폼으로 전송했습니다.

2022년 현재, 근로연금부는 여전히 [13][10][14]주 연금 지급을 지원하기 위해 VME 기반 시스템을 사용하고 있다.

아키텍처

VME는 계층 세트로 구성되며 각 계층은 서로 다른 추상화 수준의 리소스에 액세스할 수 있습니다.한 계층에서 제공하는 가상 리소스는 아래 계층에서 제공하는 가상 리소스로 구성됩니다.각 레이어의 리소스에 대한 액세스는 일련의 액세스레벨을 통해 제어됩니다.프로세스가 특정 액세스레벨에서 리소스를 사용하려면 해당 레벨에 대한 액세스를 제공하는 액세스키가 있어야 합니다.이 개념은 Multics의 "보호 링"과 유사합니다.이 아키텍처에서는 16개의 접근레벨이 허용되며, 그 중 외부6은 사용자 레벨의 코드용으로 예약되어 있습니다.

운영 체제는 액세스 수준과 직교하여 가상 시스템의 형태로 애플리케이션에서 리소스를 사용할 수 있도록 합니다.가상 시스템은 여러 프로세스를 실행할 수 있습니다.실제로 VME 가상 머신은 다른 운영 체제의 프로세스 개념에 가깝지만 VME 프로세스는 스레드에 가깝습니다.가상 시스템에 리소스를 할당할 때 스택 모델이 사용됩니다. 스택이 팝되면 해당 스택 수준에서 할당된 모든 리소스가 해제됩니다.따라서 애플리케이션에서 운영체제로의 콜은 같은 프로세스스택을 유지하지만 보호수준이 변화한 콜에 의해 이루어집니다.그 결과 시스템콜의 효율성은 아키텍처를 경쟁력 있게 하는 기능의 하나입니다.

가상 머신 간의 통신은 이벤트(이름 있는 통신 채널)와 공유 메모리 영역을 통해 이루어집니다.하드웨어 아키텍처에서는 세마포어 명령 INCT(증강 및 테스트) 및 TDEC(테스트 및 감소)도 제공됩니다.

파일 및 기타 영구 개체는 카탈로그라는 저장소에 기록됩니다.다른 운영 체제와 달리 파일 이름 지정 계층은 특정 테이프 또는 Disk 볼륨의 파일 위치와 독립적입니다.따라서 오프라인 스토리지가 더 필요했던 시절에는 위치에 관계없이 파일을 쉽게 추적할 수 있었고 파일 이름을 바꾸지 않고도 위치 간에 파일을 이동할 수 있었습니다.카탈로그는 파일뿐만 아니라 사용자와 사용자 그룹, 볼륨, 장치, 네트워크 연결 및 기타 많은 리소스를 추적합니다.파일의 메타데이터는 파일 설명이라고 하는 오브젝트에 보관 유지할 수 있습니다.카탈로그는 아마도 나중에 엔티티-관계 데이터베이스라고 불리는 것의 첫 번째 사례였을 것이다.

인터럽트는 관련된 프로세스의 스택에 새로운 스택프레임을 생성하여 이 새로운 환경을 사용하여 인터럽트를 처리한 후 스택을 팝하여 인터럽트된 프로세스로 되돌리는 방법으로 처리됩니다.

우발상황이라고 불리는 런타임 예외는 OPEH(Object Program Error Handler)에 의해 캡처되며, OPEH는 대화형 또는 저널에 보고서를 작성할 수 있습니다.

OMF

컴파일된 오브젝트코드는 OMF(Object Module Format)라는 형식으로 유지됩니다.다른 많은 운영 체제와 달리 이 형식은 로더가 사용하는 형식이기도 합니다.각종 컴파일러와 유틸리티가 준비되어 있습니다.예를 들어 런타임에 여러 OMF 모듈의 코드를 1개의 모듈로 링크하여 보다 효율적으로 로드하는 Collector와 어셈블리 언어 구문을 사용하여 OMF 모듈의 명령을 패치하여 오류를 수정할 수 있는 Module Amender가 있습니다.

SCL

VME 명령어는 SCL(System Control Language)이라고 불립니다.

이것은 대부분의 다른 운영 체제에서 볼 수 있는 작업 제어나 셸 언어보다 훨씬 더 잘 알려진 고급 프로그래밍 언어입니다. 표면 구문은 Algol 68에서 파생되었지만 JavaScript와 같은 스크립트 언어에 비유할 수 있습니다.

SCL은 콘솔 또는 명령어파일에서 한 번에 한 줄씩 대화식으로 사용할 수 있도록 설계되어 있으며 실행 가능한 스크립트 또는 프로그램(다른 VME 프로그래밍 언어와 동일한 방법으로 언어가 오브젝트 모듈 형식으로 컴파일된 경우)을 작성할 수 있습니다.SCL 내의 프로시저 선언은 인터랙티브단말기에서 프로시저를 호출할 수 있는 단순한 형식 또는 템플릿의 정의로서도 기능합니다.기본 프로시저 파라미터의 데이터 타입에 따라 필드를 검증하거나 기본 프로시저 파라미터 값을 사용합니다.

내장된 명령어 어휘는 명령어 동사 뒤에 명사가 이어지는 일관된 명명 규칙을 사용합니다(예: DELETE_).파일 또는 DISPLAY_LIBRARY_DETAILES.명령어는 전체 또는 동사와 명사의 표준 약어(예: XF(X는 DELETE, F는 FILE) 또는 DLBD(DISPLAY는 D, LB는 LIBLARY는 D)를 조합한 약어로 작성할 수 있습니다.

SCL은 블록 구조로 되어 있으며, 변수 선언의 어휘적 범위를 정의하고 운영체제에서 취득한 자원을 해방할 필요가 있는 포인트를 정의하는 이중적이고 상호 보완적인 역할을 합니다.언어 변수(환경 변수의 형태로 응용 프로그램에서 액세스할 수 있음)에는 문자열, 슈퍼스트링(문자열의 시퀀스), 부언 및 정수 등 여러 가지 단순한 유형이 있을 수 있으며 파일 및 네트워크 연결 등의 시스템 리소스에 대한 참조를 포함하기 위해 사용됩니다.

READ_SCL(또는 RSCL) 명령을 사용하여 OMF에서 SCL 소스 코드로 SCL 프로그램을 "분해"할 수 있습니다.그러나 출력이 항상 완벽한 것은 아니며 사용자의 개입 없이 재컴파일을 중지하는 오류가 종종 발생합니다.

간단한 코드 예는 맥주 99병 웹사이트에서 [15]볼 수 있습니다.

S3에서 작성된 프로그램을 컴파일하기 위해 SCL을 사용하는 보다 현실적인 예를 다음에 나타냅니다. 예는 Columbia UniversityKermit [16]구현 아카이브에서 가져온 것입니다.

결과 GT 0 +_ 그 후 +_ SEND_RESULT_MESSGE (RESULT = RESULT = "QUIT") FI INT KMT_SRC, KMT_OMF, KMT_REL Assign_LIBRARY (NAM = KERMIT)를 시작합니다.출처, LNA = KMT_SRC) Assign_Library(NAM = KERMIT).OMF, LNA = KMT_OMF) Assign_LIBRARY(NAM = KERMIT).REL, LNA = KMT_REL) BEGIN DELETE_파일(NAM = *KMT_OMF).KMT_DATA_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_DH_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_EH_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_FH_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_HELP_MTM(101) DELETE_파일(NAM = *KMT_OMF).KMT_MAIN_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_PH_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_PP_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_SP_MODULE(101) DELETE_파일(NAM = *KMT_OMF).KMT_SP_MTM(101) DELETE_파일(NAM = *KMT_OMF).KMT_UI_MODULE(101) DELETE_파일(NAM = *KMT_REL).KERMIT(101) DELETE_파일(NAM = *KMT_REL).KERMIT_MODULE(101) END S3_COMPILE_DEFAULTS(LIS = OBJECT & XREF, DIS = ERRORLINES) S3_COMPILE(INP = *KMT_SRC).KMT_DATA_MODULE(101), OMF = *KMT_OMF.KMT_DATA_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_DH_MODULE(101), OMF = *KMT_OMF.KMT_DH_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_EH_MODULE(101), OMF = *KMT_OMF.KMT_EH_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_FH_MODULE(101), OMF = *KMT_OMF.KMT_FH_MODULE(101) NEW_MESSAGE_TEXT_MODULE(CON = *KMT_SRC).KMT_HELP_MTM(101), OMF = *KMT_OMF.KMT_HELP_MTM(101) S3_COMPILE(INP = *KMT_SRC).KMT_MAIN_MODULE(101), OMF = *KMT_OMF.KMT_MAIN_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_PH_MODULE(101), OMF = *KMT_OMF.KMT_PH_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_PP_MODULE(101), OMF = *KMT_OMF.KMT_PP_MODULE(101) S3_COMPILE(INP = *KMT_SRC).KMT_SP_MODULE(101), OMF = *KMT_OMF.KMT_SP_MODULE(101) NEW_MESSAGE_TEXT_MODULE(CON = *KMT_SRC).KMT_SP_MTM(101), OMF = *KMT_OMF.KMT_SP_MTM(101) S3_COMPILE(INP = *KMT_SRC).KMT_UI_MODULE(101), OMF = *KMT_OMF.KMT_UI_MODULE(101) COLLECT() ----INPUT(*KMT_OMF).KMT_DATA_MODULE(101) 및 *KMT_OMF.KMT_DH_MODULE(101) 및 *KMT_OMF.KMT_EH_MODULE(101) 및 *KMT_OMF.KMT_FH_MODULE(101) 및 *KMT_OMF.KMT_HELP_MTM(101) 및 *KMT_OMF.KMT_MAIN_MODULE(101) 및 *KMT_OMF.KMT_PH_MODULE(101) 및 *KMT_OMF.KMT_PP_MODULE(101) 및 *KMT_OMF.KMT_SP_MODULE(101) 및 *KMT_OMF.KMT_SP_MTM(101) 및 *KMT_OMF.KMT_UI_MODULE(101) NEW MODULE(*KMT_REL).KERMIT_MODULE(101) SUPREPRESTEN(KERMIT_THE_FROG) LISTMODULE은 ++++COMFILE_SCL(INP = *KMT_SRC)을 수행합니다.KERMIT(101), OUT = *KMT_REL.KERMIT(101), COD = NotifWarnings, OPT = FIL) 엔드

이 fragment에 나타나 있는 명령어에는 ANYMENT(오류 처리 정책을 선언함), AJSIGNT_LIBRARY(파일 디렉토리의 로컬 이름을 바인딩함), DELETE_ 등이 있습니다.FILE(영구파일을 임시로 만든 후 블록의 끝에서 삭제), S3_COMPILE(S3으로 작성된 프로그램을 컴파일: 이 명령어는 통상적인 동사 명사 규칙을 깨는), NEW_MESSAGE_TEXT_MODULE(로컬리제이션에 적합한 파라미터화된 에러 메시지를 포함한 모듈을 작성) 및 SCL 프로그램을 컴파일한다.bject 코드

COLLECT 명령어는 다른 오브젝트코드 모듈을 1개의 모듈로 조합하여 구분자 "--"와 "+++" 사이에 SCL에 인라인으로 내장된 자체 로컬명령어 파일에 의해 구동됩니다.INPUT 및 NEW MODULE 하위 명령어는 입력 및 출력 모듈의 이름을 식별합니다.SUPRESS 및 REEPLUE는 수집된 모듈 내에서 명명된 프로시저의 외부 가시성을 결정합니다.LIST MODULE은 출력 모듈을 설명하는 보고서를 요구합니다.

"."는 계층 파일 이름의 일부를 구분하는 데 사용됩니다.선두의 아스타리스크는 라이브러리의 로컬 이름을 나타내며, AJESST_LIBRARY 명령을 사용하여 바인드됩니다.파일명 뒤의 괄호 안의 숫자는 세대번호입니다.오퍼레이팅시스템은 세대번호를 모든 파일에 관련짓습니다.또, 특별히 지정되어 있지 않는 한, 파일에 대한 요구는 최신 세대를 취득합니다.새로운 파일을 작성하면 디폴트로는 차세대 파일이 생성되고 이전 세대는 그대로 유지됩니다.단, 이 프로그램은 공개 릴리스를 식별하기 위해 의도적으로 101세대를 작성하도록 선택했습니다.

강화된 보안 변형

ICL은 특히 OPCON CCIS와 같은 특별한 보안 요건을 가진 기업들에 대한 컴퓨터 서비스 제공에 크게 관여했기 때문에 Secure Systems 시장에 조기에 진입했습니다.

VME는 시큐어 시스템 분야에서 ICL 활동의 핵심을 형성했습니다.지금까지 설계한 마지막 대규모 운영체제로서 처음부터 구축한 아키텍처에서는 보안 시스템 개발에 필요한 많은 기본 요소, 특히 모든 프로세스(사용자 포함)에서 취할 수 있는 권한으로 제한하는 하드웨어 지원 액세스 제어 레지스터(ACR)가 포함된다는 이점이 있었습니다.s)

이에 따라 1980년대 중반 영국 정부의 중앙컴퓨팅통신국(CCTVA)이 ICL Defense Technology Centre(DTC)를 위해 프로젝트 우주인에게 자금을 지원하여 VME의 강화된 보안 변형을 개발하게 되었습니다. ICL은 이를 보완 제품 쌍으로 출시하여 보안 옵션(Security H)이라고 불렀습니다.정부기관용 암호화(GFE) 기술을 포함한 ublic 섹터 릴리스(Government Security Option(GSO))입니다.

HSO와 GSO는 ITSECCommon Criteria의 전신 중 하나인 CESG UK(보안) 평가 체계에 따라 정식으로 테스트되었으며, 이를 통해 정식 인증을 받은 최초의 주류 운영 체제가 되었습니다.

시리즈 39

시리즈 39 시리즈는 멀티프로세서 시스템과 클러스터 설계의 하이브리드라고 할 수 있는 분산 공유 메모리의 새로운 구현인 Nodal Architecture를 도입했습니다.각 머신은 다수의 노드로 구성되어 있으며 각 노드에는 자체 주문 코드 프로세서(CPU)와 메인 메모리가 포함되어 있습니다.일반적으로 가상 머신은 한 노드에 위치하지만(언제든지) 모든 노드에서 실행하거나 한 노드에서 다른 노드로 재배치할 수 있습니다.디스크 및 기타 주변기기는 노드 간에 공유됩니다.노드는 고속 광학 버스를 사용하여 연결됩니다. 고속 버스는 애플리케이션에 가상 공유 메모리를 제공하기 위해 사용됩니다.공유로 마크된 메모리세그먼트(퍼블릭세그먼트 또는 글로벌세그먼트)는, 노드간 네트워크를 개입시켜 브로드캐스트 됩니다.비공유 메모리 세그먼트(노달 또는 로컬)를 사용하는 프로세스는 다른 노드 및 프로세스와 완전히 격리되어 실행됩니다.

개발 프로세스

VME는 원래 거의 전적으로 Algol 68R을 기반으로 특별히 설계된 시스템 프로그래밍 언어인 S3로 작성되었습니다(그러나 VME/K는 주로 SFL 어셈블리 언어로 작성되었습니다).고급 언어를 사용하지만 운영체제는 기본 하드웨어 아키텍처로부터 독립하도록 설계되지 않았습니다.반대로 소프트웨어와 하드웨어 아키텍처는 긴밀하게 통합되어 있습니다.

1990년대 초반부터 완전히 새로운 VME 서브시스템이 C 프로그래밍 언어로 부분적으로 또는 전체적으로 작성되었습니다.

VME는 초창기부터 CADS라고 불리는 소프트웨어 엔지니어링 저장소 시스템의 지원을 받아 개발되었습니다.이 시스템은 원래 David Pearson(컴퓨터 과학자)에 의해 설계 및 관리되었으며 기본 IDMS 데이터베이스를 사용하여 구축되었습니다.CADS는 코드 모듈의 버전 관리 시스템일 뿐만 아니라 요건 캡처, 설계 방법론 및 사양에서 필드 유지보수에 이르기까지 소프트웨어 라이프사이클의 모든 측면을 관리합니다.CADS는 VME 모듈 개발에서 데이터 구조(모드), 상수(리터럴), 절차 인터페이스 및 핵심 알고리즘의 개별 정의를 보유하기 위해 사용되었습니다.각 컴포넌트의 여러 버전('Live')이 존재할 수 있습니다.알고리즘은 System Development Language(SDL; 시스템 개발 언어)로 작성되어 프리프로세서에 의해 S3[17] 소스로 변환되었습니다.동일한 모듈의 여러 버전이 생성될 수 있습니다.

응용 프로그램 개발 도구

VME와 함께 제공되는 애플리케이션 개발 도구는 다음 두 가지 범주로 나뉩니다.

VME의 툴 세트는 비정상적으로 동종이며, 대부분의 고객은 동일한 핵심 언어 및 툴 세트를 사용합니다.그 결과 툴의 통합도 매우 양호합니다.서드파티제의 툴은 비교적 큰 인상을 주지 못하고 있습니다.

수년 동안 VME 사용자의 대부분은 보통 IDMS 데이터베이스TPMS 트랜잭션 처리 모니터를 사용하여 COBOL로 애플리케이션을 작성했습니다.다른 프로그래밍 언어로는 Fortran, Pascal, ALGOL 68RS, Coral 66 및 RPG2가 있었지만, 이들은 소수자들의 관심을 끌었다.이후 1980년대 중반에는 주로 관계형 데이터베이스 시스템 등의 소프트웨어를 이식할 수 있도록 C용 컴파일러가 Unix 서브시스템 내외에서 이용 가능하게 되었습니다.흥미로운 점은 PL/I 서브셋 컴파일러가 IBM에서 ICL 하드웨어로의 프로그램 포팅을 지원하기 위해 EEC에 의해 작성되었다는 것입니다.

ICL 내에서 개발된 컴파일러는 공통 아키텍처를 공유하며 경우에 따라서는 코드 제너레이터 등의 컴포넌트를 공유합니다.대부분의 컴파일러는 ALICE [Assembly Language Internal Common Environment]라는 이름의 모듈을 사용하여 ROSE라는 이름의 초기 형식의 컴파일 코드(P-Code)를 생성함으로써 컴파일된 객체 모듈 포맷(OMF) 라이브러리를 범위 내의 모든 머신에 로드할 수 있게 되었습니다.

시스템 프로그래밍 언어: S3 및 SFL

VME 운영체제 자체와 컴파일러 및 트랜잭션 처리 모니터 등의 기타 시스템 소프트웨어 개발에 사용되는 주요 언어는 S3입니다.이 언어는 Algol 68을 기반으로 하는 고급 언어이지만 데이터 유형과 하위 수준의 함수 및 연산자가 2900 시리즈의 아키텍처와 밀접하게 연계되어 있습니다.

어셈블리 언어 SFL(시스템 기능 언어)도 사용할 수 있습니다.이는 VME/K의 개발에 사용되었으며, 설계자는 높은 수준의 언어가 적절한 성능을 제공할 수 있을지 확신하지 못했으며, IDMS 데이터베이스 시스템은 서드파티 제품으로서의 기원으로서 사용되었습니다.SFL은 원래 매크로 어셈블러 프로그래밍 언어(MAPLE)로 불렸지만 2900 아키텍처가 고급 언어 머신으로 구성됨에 따라 ICL Marketing의 요청에 따라 이름이 변경되었습니다.이 툴킷은 시스템 D의 툴킷의 일부로 개발되었으며, 이후 취소되었습니다.다른 아키텍처용 어셈블러 관련 패밀리(VME에서 실행되는 CALM-xx, PASCAL에서 개발된 PAM-xx 및 다양한 호스트에서 실행되는 PAM-xx)가 내부용으로 개발되었습니다.

S3와 SFL 모두 최종 사용자 애플리케이션을 위한 상용 개발 도구로 홍보된 적이 없습니다. 이는 일반적으로 운영 체제의 표준 부품으로 제공되지도 않고 제품 자체로도 명시적으로 판매되지 않았기 때문입니다.그러나 SFL과 S3는 모두 사용자 조직과 특정 요구가 있는 제3자에게 옵션으로 제공되었다.

퀵 빌드

VME 상의 QuickBuild 어플리케이션 개발 환경은 어플리케이션이 VME 환경에 대부분 고정되어 있음에도 불구하고 매우 성공적입니다.이 환경은 Data Dictionary System(DDS, OpenDDS라고도 함)을 중심으로 합니다.DDS는 개발 라이프 사이클을 완전히 지원하면서 다른 모든 툴을 지원하는 포괄적인 저장소를 구축하기 위한 초기 시도이자 매우 성공적인 시도입니다.사전은 데이터베이스 스키마, 파일 및 레코드의 설명과 더불어 보고서 및 쿼리, 화면 설계, 4GL 코드 등의 객체를 추적합니다.또, 요건 캡처 레벨에서는, 엔티티 관계 모델이나 프로세스 모델등의 다양한 모델을 서포트합니다.

QuickBuild 4GL은 다음 두 가지 형태로 패키지화되어 있습니다.

  • 온라인 TP 애플리케이션 생성을 위한 ApplicationMaster
  • 배치 보고서용 ReportMaster.

둘 다 Jackson Structured Programming을 설계 패러다임으로 사용하는 고급 선언형 언어입니다.ApplicationMaster는 사용자 세션에 초점을 맞추고 사용자 상호 작용 간에 상태를 유지하는 복잡성을 완전히 숨긴다는 점에서 애플리케이션 설계에 대한 접근 방식이 특이합니다.4GL 및 스크린 디자이너와 같은 기타 툴은 데이터베이스 스키마를 보유하고 있는 DDS 사전에서만 작동하기 때문에 다른 4GL에서는 거의 얻을 수 없는 메타데이터를 상당히 재사용할 수 있습니다.

레퍼런스

  1. ^ "Today, tomorrow, VME" (PDF). Fujitsu. Archived from the original (PDF) on 22 February 2012.
  2. ^ a b Introduction to superNOVA architecture (PDF) (Report). Fujitsu. January 2007. Archived from the original (PDF) on 28 September 2007.
  3. ^ Barry J Graham (2002). "Fujitsu OpenVME Costs Compared to IBM Mainframe Costs" (PDF). Fujitsu Services. Archived from the original (PDF) on 1 February 2014. Retrieved 28 January 2014.
  4. ^ a b Campbell-Kelly, Martin (1989). ICL: A Business and Technical History. Clarendon Press. ISBN 0-19-853918-5.
  5. ^ Knight, Michael (2008). "Beacon 1963-7: A System Design Ahead of its Time?". Computer Resurrection (43).
  6. ^ Dave Bailey (powerpoint) (30 November 2000). "The Continuing Development of OpenVME". ICL. Retrieved 28 January 2014.
  7. ^ "ICL's Open VME turns out to be subset of Unix under VME; Applications are coming". Computer Business Review. 10 February 1992. Retrieved 28 January 2014.
  8. ^ Coates, P. (1993). "VME-X: Making VME Open" (PDF). ICL Technical Journal. ICL: 473. ISSN 0142-1557. Archived from the original (PDF) on 5 March 2016. Retrieved 7 November 2015.
  9. ^ Cloutt, Harold (2012). "ICL User Group to be disbanded after almost 40 years loyal service to the VME community". AXiS. Retrieved 11 July 2018.
  10. ^ a b Clark, Lindsay (21 January 2022). "You might want to consider the cost of not upgrading legacy tech, UK's Department for Work and Pensions told". The Register. Retrieved 24 January 2022.
  11. ^ Evenstad, Lis (13 October 2020). "HMRC signs five-year £169m contract with Fujitsu for VME platform". Computer Weekly. Retrieved 24 January 2022.
  12. ^ "United Kingdom-Salford: Application service providers". Tenders Electronic Daily. European Union. 12 October 2020. 2020/S 198-481324. Retrieved 24 January 2022.
  13. ^ Trendall, Sam (20 April 2020). "DWP awards Fujitsu £29m mainframe support one-year contract extension". PublicTechnology.net. Retrieved 24 January 2022.
  14. ^ Clark, Lindsay (22 September 2021). "Thatcher-era ICL mainframe fingered for failure to pay out over £1bn in UK pensions". The Register. Retrieved 24 January 2022.
  15. ^ 99병 맥주 웹사이트의 SCL 코드 예시
  16. ^ "Kermit Software Source Code Archive". Columbia University's Kermit Project. 22 August 2011. Retrieved 1 March 2013.
  17. ^ Juan F Ramil. "Continuing Effort Estimation for Evolution a Case Study" (PDF).

원천

외부 링크