소련 미사일 방어 시스템의 탄생. BESM-6의 장단점

15

CDC 6200


속도 면에서 BESM-6은 그 당시 더 이상 분수가 아니었습니다. 1960년대 컴퓨터가 훨씬 앞서 있었기 때문에 우리도 이 문제에 대한 해결책을 찾아야 했습니다. 소련은 자존심을 억누르고 두 번째로 CDC 6600도 팔라고 요청했습니다. 여기 CoCom은 이미 뿔뿔이 흩어졌고, 그들은 연합뿐만 아니라 CDC 6600도 미국 이외의 누구에게도 전달되지 않았습니다. , 심지어 프랑스도 거부했다. 1972년에만 CoCom은 Dubna에 CDC 6200의 주니어 버전을 설치하는 것을 허용했습니다. 1975은 순전히 미국 괴물로 남았습니다.

G. Ososkov가 이것을 회상하는 방법은 다음과 같습니다(21년 3759월 27일자 신문 "Dubna", No. 2005(XNUMX)).



1967년에 CDC-1604 컴퓨터 구매 계약의 일환으로 나는 엔지니어 A. Karlov 및 V. Mirolyubov와 함께 독일로 보내져 프랑크푸르트 암 마인에 있는 CDC 회사의 유럽 센터에서 공부했습니다. 컴퓨터 운영 체제와 FORTRAN 언어 프로그래밍을 공부한 후 하노버에 있는 CDC-1604 교환원에서 두 달 더 인턴십을 했습니다. 그 결과 LCTA에 이 컴퓨터를 설치한 후 CDC-1604에서 1969년 동안 수석 수학자로 일하면서 구어체 영어를 배웠습니다. 1970-1973년과 1972년. CERN에서 그는 LCTA에서 개발된 것과 유사한 Spiral Reader 스캐닝 기계의 제어 및 보정 프로그램 시스템을 연구하고 있었습니다. 7600년, 우리는 LCTA G. I. Zabiyakin 부국장과 함께 CDC 회사의 초청으로 49주간 미국 출장을 다녀왔습니다. BNL 컴퓨팅 센터 방문, 덜루스에서 열린 CDC 사용자 회의 참가, CDC 본부와 미니애폴리스에서 최신 CDC-XNUMX 컴퓨터가 생산된 공장, CDC 기계가 장착된 버클리 대학교 및 리버모어 연구소 컴퓨터 센터를 방문했습니다. . 무엇보다 당시 잘 알려진 컴퓨터인 CDC-Star를 보게 되었습니다. 그러나 동시에 일괄 작업을 위해 미국 전역에 걸쳐 XNUMX개의 CDC 기계를 연결하는 CYBERNET 컴퓨터 네트워크의 기능에 가장 깊은 인상을 받았습니다.
Dulus 컨퍼런스의 대부분의 사용자 대화는 이 네트워크의 기능과 단점에 대해 논의하는 데 사용되었습니다. 30년이 지난 지금, 그런 기회는 흔해 보이지만 당시에는 정말 환상적으로 보였습니다. 여행의 주요 목적은 최신 컴퓨터 기술을 사회주의 국가에 공급하는 것을 금지하는 악명 높은 COCOM 협정을 우회하여 CDC-6200 컴퓨터 구매 계약을 체결하는 것이었습니다. 1972년 LVTA 사무국은 Dubna에 있는 KOCOM의 영구 검사에 동의하여 CDC-6200 구매 허가를 받았습니다. 6000 시리즈의 그러한 기계는 강력한 컴퓨터에 속했으며 CERN 라이브러리에 많은 응용 프로그램이 있었고 6200은 이미 상당히 구식이었지만 그러한 구매를 통해 1974년 LVTA는 CDC-6400에 대한 기계를 개발할 수 있었습니다. 내년에 멀티프로세서 CDC-6500으로. 이것은 BESM-6과 함께 JINR의 컴퓨팅 파워를 극적으로 증가시켜 광범위한 터미널 네트워크를 만들고 포트란 스테이션을 시작하는 것을 가능하게 했습니다.

이것에 대한 가장 재미있는 것은 역사 CDC 6200 지수가 있는 자동차는 자연에 존재한 적이 없다는 사실! 그것은 CDC에 의해 발표되지 않았으며 어떤 서구 출처에서도 발견되지 않습니다!

그게 뭐야?

매우 간단합니다. Kray의 회사는 새로운 파트너가 필요했고 비즈니스는 좋았지만 CoCom은 소련에 주니어 슈퍼컴퓨터 6500도 공급하는 데 동의하지 않았습니다. 그런 다음 CDC 엔지니어는 프로세서 하나를 분해하고 다른 다운그레이드를 수행하고 고유한 스텁을 받았습니다. CDC 6200은 특히 소련을 위해 단일 사본으로 제공됩니다. 그들은 스텁을 판매하는 것이 허용되었고 몇 년 후 라인이 더 이상 사용되지 않고 중단되었을 때 CoCom은 프로세서를 다시 조이도록 허용했습니다.

나중에 CDC 7600과 Cray-1에서도 비슷한 이야기가 반복되었는데, 그들은 살 수 없었고 "Electronics SS BIS"의 형태로 클론을 만들려는 시도는 경이적으로 실패했지만 170개의 더 많은 CDC, 더 단순한 모델인 CYBER 172과 XNUMX, 합법적으로 구입했습니다.

CYBER 172는 1975년 소련 수문기상 센터용으로 구매되어 1996년까지 성공적으로 운영되었습니다. 일반적으로 기후 연구는 국가의 거대한 지역과 운송 및 토지 이용의 필요성과 관련하여 소련에게 매우 중요했기 때문에 수문 기상 센터에는 가장 강력한 기계가있었습니다. Union, Dubna 및 Arzamas-16보다 열등하지 않으며 일반적으로 여러 기계가 한 번에 사용되었습니다. 기상학자를 위한 최초의 컴퓨터는 20년부터 1959년까지 그곳에서 운용되었던 M-1962으로, 불과 XNUMX년 만에 버려졌는데, 놀라운 일이 아닙니다.

40년 넘게 그곳에서 일한 메인 컴퓨터 센터 Vladimir Antsipovich의 소장은 다음과 같이 회상합니다.

예를 들어 M-20의 경우 여권 MTBF는 XNUMX분에 불과했지만 최소 XNUMX시간의 연속 계산 시간으로 기술 체계의 작동 신뢰성을 달성해야 했습니다.

그것은 M-220, 그 다음 M-222 및 Vesna로 대체되었으며, 300년에 라디오 산업부의 산업 자동화 설계국에서 생성된 1965KIPS의 성능을 가진 다소 이국적인 대형 컴퓨터입니다. BESM-6, 다른 부처는 동물원 건축에 계속 열광했다.

이 기계는 순수한 소련 메인프레임인 "Minsk-1972"의 상단과 병행하여 32년까지 수문기상 센터에서 작동했습니다. 또한 1968년부터 1985년까지 BESM-6이 그곳에서 일했습니다.

CYBER-172는 메인 컴퓨터 센터(1975년 기상학자들이 CDC 7600을 사고 싶었지만 CoCom에 대해 헤어짐)의 첫 번째 외국인이었고, 소련 기상학에서 서구 슈퍼컴퓨터의 지배가 시작되었습니다. 일반적으로 그들은 두 개를 사고 싶었지만 CoCom은 돼지를 넣어도 두 개는 소련에 비해 너무 뚱뚱하다고 결정했습니다.

당연히 EU 1060과 1066도 있었고, S/3033 라인의 최신 대체품인 IBM 370도 1979년에 나왔지만 음모로 인해 히타치라고 불렸다(하지만 흐릿한 이야기가 있다- 우리는 Hitachi 또는 원래 IBM에서 라이센스가 있는 클론을 구입했지만 더 큰 미스터리를 위해 어쨌든 "Hitachi 3033" 기계는 자연에 존재하지 않으며 Hitachi HITAC M- 220 또는 IBM 3033).

1992년에 그들은 이미 오래 참은 Elbrus-2를 제공하기를 원했지만 갑자기 CoCom은 Elbrus를 약 30배 능가하는 가장 강력한 Cray Y-MP의 러시아 판매를 승인했습니다. 모든 세부 사항을 논의하는 동안 - 설치는 1996년으로 옮겨졌고 Top 500에서 Cray Y-MP는 이미 중단되었습니다.

이 괴물은 10년까지 2006년 동안 주전산센터에서 계속 근무하다가 그의 자리에서 무사히 사망했습니다. 이는 설치 XNUMX년 후 재정적인 이유로 제조사의 지원 없이 Cray Y-MP를 계속 사용해야 했기 때문입니다. Antsypovich는 다음과 같이 말합니다.

XNUMX년 동안 우리는 컴퓨터의 모든 노드를 살펴보고 설계의 중복성으로 인해 작동하게 하려고 노력했지만 결국에는 숨겨진 준비금조차 부족해지기 시작했습니다. 단지가 중지되었습니다.

그런 다음 SGI Alltix 4700(11 테라플롭 832 Intel Itanium 2 9140M) 및 SGI Alltix ICE(16 테라플롭, 알 수 없는 Intel Xeon E5440 수)의 두 클러스터가 나타났으며 2019년에는 Cray-XC40의 새 클러스터에 대한 전원이 분기되었습니다.

CYBER 170은 1976년 LIAN(현재 SPII RAS)에 있는 소련 과학 아카데미의 레닌그라드 과학 연구 센터 실험실용으로 구입했습니다. 수문기상센터 차의 행방은 작가가 알 수 없지만 바실리에프스키 섬의 SPII RAS 건물에서 눈으로 LIAN 차의 잔해를 직접 봤다. 매우 친절하고 미리 전화를 걸어 협상을 하면 상트페테르부르크에 거주하는 사람들이 역사를 접할 수 있는 좋은 기회를 가질 수 있도록 짧은 여행을 기꺼이 진행합니다.


SPII RAS의 CDC CYBER-170, 또는 오히려 그 유적. 작가의 사진.

1973년까지 컴퓨팅 능력 부족 문제를 해결하기 위해 Melnikov는 소위 개발했습니다. 인터페이스 장비인 AS-6 컴플렉스는 실제로 여러 BESM-6을 결합하고 공유 RAM이 있는 클러스터로 전환할 수 있는 추가 메모리 및 보조 프로세서가 있는 복잡한 프로그래밍 가능 스위치입니다. 총 8세트가 제작되었습니다.

질문


우리는 대답해야 할 두 가지 질문이 남아 있습니다.

첫째, BESM-6의 시스템 아키텍처가 왜 그렇게 성공적이지 못했는가?

둘째, 그것은 어떤 강점을 가지고 있었고 왜 신화와 전설로 무성하게 되었습니까?

우선, Lebedev는 원래 매우 구체적인 목적을 위해 자신의 첫 번째 기계를 설계했습니다. 특히 미분 방정식 시스템을 풀기 위한 것입니다(즉, 미사일 궤적 계산 또는 핵 반응 시뮬레이션). 그는 자신이 동일한 미분 방정식을 모델링하기 위한 아날로그 컴퓨터의 뛰어난 전기 엔지니어이자 개발자였기 때문에 그러한 컴퓨터를 만드는 방법을 이해했습니다.

Eckert, Wilkes, Amdalla와 달리 - Lebedev는 정확히 컴퓨터 과학자가 아니었고 적절한 사고 방식을 갖고 있지 않았으며 프로그래머도 아니었고 자동 코드를 만들려는 그의 유일한 시도는 아무도이 공포를 사용하지 않았다는 사실로 끝났습니다. 따라서 Lebedev는 자신의 기계 사용자의 문제에 대한 긴밀한 아이디어가 없었지만 공식적으로나 보편적이지만 정신으로는 오히려 단일 작업 컴퓨터를 구축했으며 디퓨라 시스템을 해결하는 데 잘 적응하고 다른 모든 것에 제대로 적응하지 못했습니다.

그건 그렇고, 이것은 ITMiVT의 모든 사람에게 공통된 문제였습니다. 그들은 여전히 ​​미사일을위한 기계를 만들 수 있지만 큰 어려움으로 진정한 범용 컴퓨터를 만들 수 있습니다. Burtsev는 Burroughs 은행 메인프레임을 기반으로 하여 미사일 방어 제어 컴퓨터로 변환하려고 시도하면서 결국 Elbrus와 동일한 문제를 겪었습니다. 적어도 과학자들을 위한 성공적인 범용 슈퍼컴퓨터는 Elbrus에서 나오지 않았습니다.

CDC는 제어 시스템 및 과학 컴퓨팅용 기계를 만들고 IBM은 주로 재무 및 회계 시스템용 비즈니스용 기계를 만들었습니다. 이것들은 근본적으로 다른 응용 분야이며 아키텍처에 흔적을 남겼습니다. BESM-6은 이 부문에서 절대에 도달했습니다.

여기에서 이미 드러난 사실부터 시작하겠습니다. 거기에는 정수 연산이 없었습니다. 일반적으로. 별말씀을 요.

CDC 1604에서 그것은 매우 발전했고 Lebedev는 BESM-6에서 그것을 던졌습니다. 이유는 무엇입니까?

평생 동안 그는 미분 방정식의 단일 작업 크러셔 (단일 작업 - 그의 논리에 따르면 단순히 다른 디퓨라 시스템을 희생시키면서 실행된다는 의미에서 특별히 사용되지는 않았습니다 ), 거기에는 정수 산술이 필요하지 않습니다. 결과적으로 실제 ALU와 전체 ALU를 결합하는 어려움에 직면하여 그는 누군가가 갑자기 필요하면 실제 ALU를 에뮬레이션하기로 결정하고 단순히 전체를 버렸습니다.

정수 산술이 필요한 이유는 무엇입니까?

대답은 간단합니다. RAM의 주소를 조작하는 것입니다. 이미 이해했듯이 CDC-1604와 BESM-6은 모두 가산기가 있는 기계였습니다(즉, 현대 용어로 두 개의 레지스터만 있었고 그 중 하나는 배터리로 모든 작업이 수행됨). 부분적으로 이것은 현재 Forth 및 Java 언어에서 볼 수 있는 스택 아키텍처와 유사합니다.

문제는 이러한 조직에서 ALU가 지속적으로 메모리에 무언가를 로드/언로드해야 하고, 이를 위해서는 인덱스 레지스터와 RAM의 주소를 조작할 수 있는 고급 인덱스 산술이 필요하다는 것입니다.

그건 그렇고, BESM-6과 CDC에는 약간의 불편함이 있었습니다. 인덱스 레지스터의 비트 너비가 워드 크기(!)와 어큐뮬레이터 레지스터의 크기와 일치하지 않으며 심지어 배수가 되지도 않습니다( 15 및 48비트), 이는 1959-1960년의 표준에서는 여전히 정상이었지만 이러한 구식을 1968년으로 가져오는 것은 이미 암울합니다.

따라서 가산기가 있는 기계가 RAM에서 무언가를 로드하거나 매 클록 주기마다 RAM에 드롭해야 하기 때문에 정확히 정수 산술을 개발한 것은 자연스러운 반면 Lebedev는 CDC의 이 기능을 무시했습니다. 결과적으로 각 주소 계산에는 실제 프로세서에서 에뮬레이션이 필요했으며 이는 작업 속도나 프로그래밍 편의성에 긍정적인 영향을 미치지 않았습니다.

주변부는 BESM-6의 또 다른 매우 심각한 문제가 되었습니다.

첫째, 이미 말했듯이 Melnikov는 채널 프로세서를 포기하고 다음과 같이 설명했습니다.

BESM-6 기계에 채택된 외부 장치와의 인터페이스 방식은 이 기계에 대한 비평가들로부터 가장 큰 공격을 받았습니다. 실제로 새 장치를 연결하려면 외부 장치를 제어하기 위한 장치의 특정 엔지니어링 개선이 필요하며 "비표준" 장치를 손에 넣은 사용자는 연결에 큰 어려움을 겪습니다. 특히 BESM-6이 개발될 즈음에는 IBM이 새 장치를 연결하고 일부를 다른 장치로 교체하는 문제를 크게 제거한 표준 인터페이스를 구현했기 때문에 그러한 결정에는 변명의 여지가 없는 것 같습니다.
그러나 두 경우 모두 외부 장치와의 인터페이스를 구현하는 데 필요한 장비의 비용과 양을 신중하게 생각하거나 단순히 비교하면 BESM-6에서 내린 결정이 그리 나쁘지 않을 수 있습니다. 사실, 표준 인터페이스를 제공하기 위한 각 외부 장치는 컨트롤러를 포함하거나 멀티플렉스 또는 선택기 채널에 표준 출력을 제공하는 매우 비싸고 복잡한 장치에 연결됩니다. 표준 인터페이스를 통해 장치를 연결할 때 필요한 추가 장비 비용과 차지하는 공간을 요약하면 BESM-6 시스템이 몇 배 더 경제적인 것으로 나타났습니다. 즉, 중앙 집중식 제어 장치 BESM-6은 유사한 등급의 기계의 표준 외부 저장 및 입출력 장치 세트에 대한 컨트롤러 비용보다 몇 배 저렴합니다.
그러나 여러 IBM 기계 모델에서 표준 채널과 컨트롤러를 사용하지 않고 디스크 저장 장치를 컴퓨터에 연결할 수 있는 소위 통합 파일 어댑터가 도입되었습니다. 이 사실에서 BESM-6에서 채택한 합리적인 장치 연결 방법과 유사한 점을 볼 수 있습니다.

일반 언어로 번역하면 다음과 같이 밝혀졌습니다. S / 360에서와 같이 채널 보조 프로세서로 정상적인 작업을 구현하려면 보조 프로세서를 기계에 도입하는 것을 광적으로 반대한 Lebedev의 욕구와 충분한 돈이 없었습니다. 몇 천 개의 소비에트 품질 램프를 추가해도 안정성이 향상되지 않고 게임이 양초의 가치가 없었을 때, Burtsev는 채널 프로세서를 5E26으로 밀어 넣었고 실제로 성능이 크게 향상되었습니다. , 그 당시에는 건축을 할 수 없었던 이미 매우 아픈 Lebedev 뒤에 있습니다).

일반적으로 채널 작업은 프로그래머에게 지나치게 혼란스러운 경우가 많았습니다. 따라서 이와 관련하여 EU 시리즈에 비해 BESM-6이 우월하다는 신화가 있습니다. 낮은 문맹률, 첫 번째 EU 클론의 품질에 대한 큰 문제, 교과서, 문서, 예제 프로그램, 패치 등이 거의 완전히 부재한 점을 감안할 때 물론 채널과 같은 복잡한 작업은 지옥이 될 수 있습니다. BESM-6의 구현 입출력에 비해 펠트 부트처럼 간단합니다. 따라서 믿을 수 없을 정도로 진보적인 아키텍처에 대한 수많은 신화가 있습니다.

동시에 많은 사람들이 주변 장치의 물리적 연결 등을 설명하는 명령 시스템의 아키텍처와 시스템 아키텍처와 같은 다양한 수준의 아키텍처를 혼동합니다. BESM-6의 시스템 아키텍처에서는 모든 것이 가능했습니다. 아주 좋음 - 머신을 네트워크로 결합할 수 있고 최대 8대의 컴퓨터를 클러스터에 연결할 수 있으며 원격 터미널, 클러스터 디스크 컨트롤러를 포함하여 최대 128개의 터미널에 연결할 수 있습니다(클러스터의 각 머신은 각 디스크에 액세스할 수 있음) 등 이 클래스의 모든 서양 컴퓨터).

재미있는 역설은 국내 요소 기반의 비참함을 극복하려는 시도에서 많은 성공적인 기술 솔루션이 탄생했다는 사실입니다.

예를 들어, 테이프에 이중 기록하는 진보적인 기술(블록에 오류가 있더라도 두 곳의 다른 위치에서 조각에서 수집되어 정상적으로 읽음)은 소련 테이프의 역겨운 품질에 대한 응답으로 나타났습니다. 두세 번 실행한 후 문자 그대로 쏟아집니다. EU에서는 IBM 이후에는 그러한 메커니즘이 없었습니다.

동시에 프로그레시브 하드 디스크가 자기 드라이브로 사용되지 않고 구식 자기 드럼이 사용되었지만 디스크 컨트롤러는 고대 General Electric 메인 프레임의 컨트롤러에서 복사 된 후 1974 년에만 나타났습니다 (당시 CoCom은 너무 구식 KIAE 및 ITEP의 필요에 따라 공식적으로 판매를 해결하는 데 문제가 없었습니다. 비공식적으로 - BESM-6에 유용한 부품으로 분해하기 위해

일반적으로 순수한 소비에트 주변부의 공포와 그 품질에 대해 별도의 책을 작성할 수 있습니다. 잡지의 BESM-6에 대한 토론에서 1500py470.라이브저널, 그녀와 함께 작업한 프로그래머 중 한 명이 이 기회에 다음과 같은 추억을 남겼습니다.

나는 우연히 당신의 대화에 끼어들었습니다. 그는 BESM-6에서 17년 동안 일했습니다. # 135와 # 335 두 대의 기계가있었습니다 ... 특히 부동 오류가있는 기계 작동 오류를 테스트 및 진단하기위한 표준 도구 중 하나는 무거운 금속 실린더 형태의 망치였습니다 (모두 탭할 때 손에서 미끄러지지 않도록 노치가 있음) 양쪽에 교체 가능한 에보나이트 팁이 있습니다(마모로 변경됨). 우리 차는 XNUMX년에 한 번 꺼졌습니다. 추측하기 쉽습니다 - 31월 XNUMX일. 그래서 전원을 켜면 모두가 탭했습니다. 총 용량이 8x128Kb인 메모리(6개의 이중 캐비닛) 이 1Mb 미만이고 면적이 60-80m 또는 그 이상을 차지했습니다. 우리는 DISPAK OS에서 작업했으며 배치 모드에서 프로세서는 5-10개의 작업을 처리했으며(작업량에 따라 다름) CRAB 시스템은 지속적으로 액세스할 수 있었습니다. 그런 다음 EU의 이점이 있었습니다. 아무도 다른 소스의 클록 주파수가 9MHz이고 10MHz가 서로 다르다는 것을 눈치채지 못했습니다. 10을 위해 개발되었지만 요소 기반이 우리를 실망시켜 9,1MHz를 만들었습니다. 할 이야기가 훨씬 더 많습니다. 두 대의 컴퓨터를 공유 디스크로 결합했습니다(처음에는 7,5MB, 다음에는 각 드라이브 29MB, 이동식 디스크). 이러한 드라이브가 16개 있습니다. 우리는 지역 자동 전화 교환기를 통해 터미널 네트워크를 만들었습니다. 최대 500m까지 전용선이 있습니다. 터미널은 영숫자였으며 Videoton-340이 최고로 간주되었습니다(헝가리는 구식 모델에 대해 IBM에서 라이센스를 구입했습니다). Intel 52100 프로세서의 Videoton VDT ​​8080은 훨씬 더 좋았습니다. 가장 큰 문제 중 하나는 마그네틱 드럼이었습니다. 세부 사항을 생략하면 HDD의 작동과 매우 유사하지만 헤드가 고정되어 있고 수백 개(정확히 기억나지 않음)가 있습니다. 전체 치질은 그 틈이 차가운 상태에서 각 머리에 수동으로 설정되고이 장치가 예열 된 후에는 가속 중에 진동이 증가하고 표면이 부풀어 오르는 동안 수행 할 수 없다는 것입니다 (무게는 200-250 킬로그램 , 따라서 작업에서 정권은 몇 시간 동안 들어가 거의 하루 동안 냉각되었습니다. 끄면 뜨겁게 시작할 수 없으며 식을 때까지 기다려야 합니다. 그래서 우리는 그것들도 없애고 전자 제품의 메모리를 넣었습니다. 16개의 드럼 대신 8개의 상자, XNUMX개의 랙. 6개의 BESM-200을 XNUMXm 홀 하나에 쉽게 넣고 플로터 디지그래프를 연결했다. 그들은 사실상 자기 테이프를 버리고 디스크로 전환하고 ARFA 소프트웨어(아카이브 파일 시스템)를 설치했습니다. Fortran으로 작성된 프로그램을 다운로드하기 위해 PC에 연결하고 Kermit을 설치했습니다. 사용자는 플로피 디스크에서 프로그램 텍스트를 받았습니다 ... 1975 년까지 단점을 고려하여이 라인의 새 시스템을 출시해야했습니다. 주소 부분의 15 비트는 막 다른 골목이고 요소 기반은 완전히 구식입니다. , ADCP, UPDK, ML 등에 대해 주변부와 아무 말도 하지 마세요, HORROR! 소비전력이 어마어마합니다! 한 번에 모든 단점을 기억할 수는 없습니다. 이것이 최선입니다. 그러나 그들은 공장에서 CAM을 납땜하고 조립했습니다. 구부러지고 때로는 냉정한 버디였습니다. 그 후 조정자는 XNUMX 개월 동안 작동했습니다.

OMOED의 LCTA 부서장인 G. N. Tentyukova(JINR 주간 "Dubna" No. 34(4325), 11년 2016월 XNUMX일, "때 기계가 컸을 때")는 다음과 같이 회상합니다.

아마도 BESM-6에 천공 카드를 삽입하는 첫 번째 장치를 찾지 못했을 것입니까? 이제 어떻게 작동했는지 알려 드리겠습니다. 당신은 갑판을 넣어. 당신은 그것을 켭니다. 천천히: 쯧쯧 쯧쯧... 갑자기: 쩝쩝쩝! 네 장의 카드 ... 이것은 당신이 데크를 꺼내고 지나간 카드에서 네 장을 세고 나머지 데크의 시작 부분에 놓고 시작을 다시 눌러야 함을 의미합니다. Valya Nikitina는 어떤 국제 회의(BESM-6이 막 도입된 지 얼마 되지 않았을 때)에서 Talker가 우리가 어떤 종류의 컴퓨터를 가지고 있는지 자랑하기 위해 외국인들을 터빈실로 데려왔다고 말했습니다. 그리고 Valya는 마치 일부러 큰 데크를 설치합니다. 글쎄, 당신은 무엇을 할거야! "XNUMX장의 카드", "XNUMX장의 카드" ... Valya가 서서 얼굴을 붉힙니다. 글쎄요, 외국인은 예의 바른 사람들입니다. Valya가 카드를 입력하고 나가는 것처럼 보였습니다. Valya의 말: 수치심에 거의 타버릴 뻔했습니다! 당신은 무엇을 할 수 있나요? 우리는 책임이 없습니다.

원한다면 단 한 기사에도 담지 못할 그런 추억을 많이 찾을 수 있습니다.

JINR 직원들 자신도 1990년 Dubna 신문에 기고했습니다(더 이상 부끄럽지 않을 때:

장비는 지속적으로 개선되고 있었습니다. V.V. Fedorin 및 I.A.의 지도 하에 있는 운영자 그룹 CDC 펀치 카드 입력 및 테이프 레코더, 헝가리어 터미널, 불가리아어 테이프 레코더 및 디스크, 폴란드어 프린터, 일본 플로터 등 어디에서도 이보다 다양한 외부 장치를 찾을 수 없습니다. 이 동물원은 국내 기술의 오랜 불행을 강조했습니다. 우리 사람들은 숙련되지만 업계는 그렇지 않습니다!

일반적으로 Dubna 과학자와 같이 가장 무거운 견인력을 가진 가장 관통력있는 동지들이 BESM 자체에서 쓰레기통에 전체 주변을 던진 때 BESM-6에서 자동차 출시 약 15 년 후에 정상적으로 작동하게되었습니다. 힙 (동시에 EU에서 왔을 때 훨씬 좋았지 만 수입품과 비교할 때 - 괴물 같은 고철)이었고 미국, 일본 및 독일 (최악의 경우 폴란드 또는 헝가리)을 모두 공급했습니다.

또한 메모리를 업그레이드하고 지옥 같은 목발로 일반 터미널을 망치고 (최악의 경우 EU에서) 번역기에서 OS에 이르기까지 엄청난 양의 소프트웨어를 직접 작성하는 것이 바람직했습니다. 그러면 BESM-6으로 작업한 좋은 추억이 남을 수 있습니다.

일반적으로 Union이 존재하는 모든 년 동안 간단한 아이디어는 범주 적으로 마스터되지 않았습니다. 클라이언트는 완제품을 원하고 몇 년 동안 마무리해야 하는 반제품이 아닌 완제품을 원합니다. 상황을 상상해보십시오. NSA는 천만 달러에 주문한 CDC 6600을 받았고 컴퓨터는 주변 장치 없이 도착했습니다(또는 작업이 불가능한 컴퓨터와 함께 도착했으며 가능하면 납땜 인두를 사용하여 XNUMX개월 동안 연결해야 하고 유명한 마법의 단어), 합리적인 OS, 컴파일러 및 완전히 미친 어셈블러가 없습니다.

그리고 여러분, 암호 작성자는 모든 시운전 작업을 자신의 손과 자비로 수행해야 하며 소프트웨어를 작성하고 일반적으로 10년 전에 기계로 정상적으로 작업해야 합니다. 시장 유형의 모든 회사에서 그러한 트릭은 작업의 마지막이 될 것이며 불만족한 고객은 두 번 오지 않을 것입니다. 계획 경제에서는 계급으로서 선택의 여지가 없었습니다. 파티는 무엇을 주고 먹고 먹으려고 했는지요.

성능 신화


성능에 관해서는 BESM-6이 거의 CDC 6600 수준으로 매우 강력하다는 신화가 있습니다. BESM-6의 선언된 성능은 1MIPS입니다. 실제로 이 정보는 명령 실행 시간이 몇 배 차이가 날 수 있기 때문에 근본적으로 일관성이 없습니다.

예를 들어, 곱셈 장치(MD) 단독의 이론적인 작동 속도는 실제로 1-1,3 MIPS의 값에 도달할 수 있는 반면 CD가 프로세스에서 메모리에 집중적으로 액세스할 때 실제 속도는 0,5-0,8을 초과하지 않았습니다. MIPS. Division 명령은 0,15–0,3 MIPS의 속도로 작동했지만 AU에서 UU(UI, MOD 등)로 데이터를 반환하는 명령은 5개 팀(4개 팀에서 LHC 및 PR에서 1). 동시에 BESM-6의 메모리 주기는 2μs입니다. 즉, BRZ에 없는 피연산자를 읽는 명령은 최악의 경우 실행 시간에 +2μs를 얻을 수 있습니다.

1992년 BESM-6을 폐기하기 전에 Research Computing Center의 직원은 브리지 조합을 286 프로세서(AMD의 구현은 표준 16에 비해 12MHz로 오버클럭됨)와 브리지 조합을 계산할 때의 성능을 비교했으며 보증에 따라 거의 동일한 수치를 받았습니다. . AMD 286의 성능은 2,6MIPS를 초과했지만 어떤 버전의 BESM-6(IC의 Elbrus-1K2가 원래 버전보다 훨씬 더 강력할 가능성이 높음)을 사용했는지 알 수 없습니다.

"마이크로프로세서에서 개인용 컴퓨터까지" 책(Cheremnykh S.V., Giglavy A.V., Polyak Yu.E., 1988, Radio and communication)은 서로 다른 언어로 된 벤치마크(루프에서 배열의 추가 및 곱)의 예를 제공합니다. 기계와 실행 시간이 제공됩니다. 이 정보에 따르면 테스트 실행 시간은 언어에 따라 BESM-0,08의 경우 0,23~6초, EC 0,11M의 경우 0,38~1055초, DCK(프로세서 MS 0,45)의 경우 1201.02초, PC의 경우 0,37초였습니다. 16MHz 프로세서가 있는 AT.

이 모든 데이터는 매우 모순적이며 작동하는 BESM-6이 없으면 진실을 찾는 것이 불가능하지만 어떤 경우에도 무작위 문제의 평균 결과는 0,8–1,5를 초과하지 않습니다. MIPS.

이 속도는 7030년 전에 IBM 6600 Stretch에 의해 달성되었고, 전설적인 CDC 3은 4년 전에 360MIPS 이상을 제공하는 것으로 확인되었으며, 이전 모델의 S/0,8은 몇 년 동안 동일한 1-XNUMXMIPS를 생산했습니다. 더 일찍.

따라서 우리는 BESM-6이 1959년에서 1960년 사이에 세계 기록 보유자 중 하나가 되었을 것이지만 1968년에는 그 매개변수가 초자연적인 것을 나타내지 않았으며 더욱이 BESM-6의 중간에 있는 일반적인 메인프레임의 수준 표준에 있었다는 것을 알 수 있습니다. 열개의. 당시 유럽 기계(Siemens, Bull, Olivetti) 수준에서 BESM-360은 정상처럼 보였지만 CDC(당시 가장 강력한 기계)를 따라가지 못했습니다. S / XNUMX은 과학적 계산에서 더 나쁘지 않았고 재정적 인 계산에서 훨씬 더 좋았습니다.

놀랄 것이 없습니다.

우리가 말했듯이 BESM-6은 정수 산술을 지원하지 않습니다. 즉, 모든 산술 명령이 실제 가산기에서 수행되었으며 이제 거의 모든 클록 사이클에서 정수 산술의 에뮬레이션을 통해 주소를 계산하는 즐거움을 상상해보십시오. 레지스터이지만 가산기를 사용하면 홍수 이전에 결과적으로 숫자가 RAM에서 RAM으로 지속적으로 구동되어야 합니다. 이로 인해 최상의 경우 읽기에는 3 틱, 더하기 - 5 틱(평균 - 11, 최악의 경우 - 280), 곱하기 - 15개의 틱(평균 - 18,5, 최악의 경우 - 162)이 필요하다는 사실로 이어졌습니다. 나눗셈은 평균 50 클럭 사이클이 소요되었습니다. 결과적으로 프로그램은 가능한 것보다 느리게 실행될 뿐만 아니라 더 많은 공간을 차지했습니다.

V.V. Przhiyalkovsky는 또한 그의 리뷰에서 이것을 언급합니다:

소련 과학 아카데미의 응용 수학 연구소에서 수행된 연구에 따르면 IBM S/360용으로 컴파일된 프로그램은 BESM-1,5, Vesna, M-3 프로그램보다 6-20배 적은 메모리가 필요합니다.

당시 유행했던 Whetstone 테스트에 따라 성능을 수치로 말하면 BESM-6은 초당 약 0,3만~0,4만 건의 단정밀도 연산을 달성했으며 이는 평균 IBM 모델 수준입니다.

또 다른 문제는 시간 작업의 완전한 예측 불가능성이었습니다. 문자 그대로 크기가 다른 타이밍에 대해 동일한 명령을 실행할 수 있습니다! 현대 기준으로는 악몽이고 1970년대 기준으로는 그다지 좋지 않습니다.

1960년대부터 시작하여 모든 명령 시스템에서 하나 또는 다른 작업이 수행되는 클록 주기가 정확히 알려져 있으며 이러한 타이밍은 하위 수준 프로그래머를 위한 모든 설명서에 명시되어 있습니다. 반면에 Lebedev는 적어도 일종의 예측 가능성이 필요한 이유를 이해하지 못했고 달성하려는 시도조차 하지 않았습니다.

결과적으로 BESM-6에서 실행 시간은 명백한 현상뿐 아니라 주소가 프리페치에 들어갔는지 여부는 물론 피연산자의 값에 따라 랜덤 현상에 따라 달라집니다.

경쟁자 Lebedev가 그에게 기인한 문구를 말한 것과 관련하여 알려지지 않았습니다. 두 번의 고장!" 하지만 많은 사람들이 이를 BESM-6의 초신뢰성의 증거로 해석한다.

그녀가 CDC 6500-Dubna에 있는 원자력 연구 센터-와 공정한 싸움에서 만날 수 있는 곳은 세계에서 유일한 곳이었습니다. 그들의 전투 결과는 다음과 같습니다. 연간 작업 시간 계획이 일치했습니다. 명목상 6000이지만 실제로 BESM-6은 1979년에 6910시간, CDC는 7440시간을 일했습니다. 가장 중요한 것은 다른 수치에 있습니다. 75개의 작업이 CDC의 Lebedev의 컴퓨터에서 처리되었습니다. 거의 200개 ...

BESM-6의 시스템 아키텍처에 대한 몇 가지 지속적인 신화가 있으며 그 중 하나는 가상 메모리의 존재입니다.

이 개념은 Atlas에서 처음 구현되었으며, RAM에 가상 메모리의 필수 페이지가 있는지 확인하기 위해 연관 메모리도 구현되었습니다.

BESM-6에 있던 것이 아닌 이유는 무엇입니까?

가상 메모리 지원을 통해 시스템에 실제로 설치된 것보다 더 많은 메모리를 지정할 수 있습니다. RAM이 6배인 버전의 BESM-128에서는 모든 것이 정반대였습니다. 시스템에 처리할 수 있는 것보다 더 많은 물리적 메모리가 있었습니다! 사실 15킬로워드의 메모리가 있는 우리는 1604비트 주소(CDC 1604의 유산)를 통해 작업해야 했습니다. "주소 형식은 CDC 32와 호환되지만 메모리는 5배 증가"라는 절대적으로 논란의 여지가 있는 개념으로 인해 소위 10라는 특수 목발이 도입되었습니다. 등록 등록. 실제 메모리에 액세스하기 전에 실행 주소는 7 + 10비트의 두 부분으로 분할되었습니다. 상위 부분은 등록 레지스터 번호로 해석되어 물리적 페이지 번호의 17비트를 가져오고 주소의 최하위 XNUMX비트와 함께 XNUMX비트 물리적 주소를 구성했습니다. Lebedev는 이 체제를 "가상 메모리"라고 자랑스럽게 불렀습니다.

Atlas에서 주소는 원래 24비트였으며 실제 메모리 외부에서 주소를 지정하려고 할 때 감독자는 현재 디스크에서 페이지를 다운로드할 때 발생하는 것과 유사한 RAM의 해당 가상 주소로 드럼에서 페이지를 펌핑했습니다.

그건 그렇고, BESM / BESM-2 / M-20 / BESM-4에도 비슷한 주소 지정 문제가 있었지만 모든 것이 훨씬 더 무시되었습니다. 그들에서 Lebedev는 KOP 형식의 사랑하는 1-주소 명령 시스템을 사용했습니다. | A2 | A3 | A1, 여기서 COP는 작업 코드, A3 – AXNUMX 주소입니다.

왜 우리는 이 원칙을 그렇게 꾸짖습니까? 모든 것이 외적으로 아름답습니까?

사실 각 주소는 최대 4096단어를 참조할 수 있으며, 이미 폭이 넓은 버스에 더 이상 맞지 않습니다. 그 이유는 이러한 주소 XNUMX개와 연산 코드를 따라야 했기 때문입니다. 그러나 첫 번째 BESM에도 더 많은 메모리가 있었습니다!

그녀에게 어떻게 의지합니까?

RAM의 전체 양을 사용하기 위해 소위로 나뉩니다. 이러한 큐브의 접두사인 "Cubes"는 주소 지정을 위해 도입되었습니다. 간접 주소 지정은 아직 발견되지 않았으므로(적어도 ITMiVT에서는) 프로그래머가 자체 수정 코드를 작성하여 즉석에서 명령에서 주소 A1, A2, A3을 변경했습니다(대부분 현대 프로그래밍의 관점에서 원칙은 더러운 핵이고 터무니없는 변태이므로 바이러스조차도 절대적으로 필요한 경우가 아니면 쓰지 않으려고 합니다. BESM에서는 일반적인 작동 모드였습니다.

추가 문제는 외부 장치를 사용한 악명 높은 작업이었습니다. 원래 기계의 Lebedev는 명령이 충분하지 않음에도 불구하고 하드웨어에서 직접 모든 호출을 하드 코딩하여 가능한 한 가혹하게 해결했습니다. 장치에서 추상화하려는 시도는 없었습니다. 다시 말하지만 그는 결함이 있는 시스템 설계자 못지않게 뛰어난 전기 엔지니어였습니다. 따라서 신에게 감사하게도 CDC는 BESM-6의 프로토타입으로 채택되었습니다. Lebedev는 (때로는) 자신의 능력의 한계를 이해했고 감히 자신의 상상력을 사용하여 완전히 처음부터 필요한 수준의 슈퍼컴퓨터를 개발하지 못했습니다.

다음 건축 신화


다음 건축 신화는 컨베이어 벨트와 관련이 있습니다. 그들은 BESM-6이 세계 최초의 기계로 뛰어난 Lebedev가 다름슈타트에서 열린 회의에서 보고한 그의 "물 공급 장치"를 구축했다고 말합니다. 마음이 있는 유럽인들은 충격과 경외심을 경험했습니다.

실제로 컨베이어의 아이디어는 Konrad Zuse에 의해 표현되었으며 Z3에서 원시적인 1949단계 형태로 구현되었습니다. 4년 그는 Z1960에서 구현에 대한 특허를 시도했지만 놀랍게도 Zuse의 후원자가 IBM이라는 사실에도 불구하고 XNUMX년대 중반까지 특허가 지연되었습니다.

비슷한 아이디어가 1950년대 초에 공중에 떠돌았고, Lebedev와 Rameev 모두 이에 대해 생각했으며 MPEI 세미나에서 논의되었습니다. 1946년에 영국은 핵 실험을 위해 거대한 무인 땅이 시급히 필요했습니다. оружия... 다행히 그런 스시를 발견해서 호주라고 불렀다.

결과적으로 파트너십 계약이 체결되었습니다 - 현대 기술에 대한 액세스 대가로 테스트 사이트. 이것이 Australian Arms Research Institution이 설립된 방식입니다(WRE, 그들은 많은 것을 발명했습니다. 예를 들어, 1957년에는 항공기용으로 동일한 "블랙박스"를 만들었습니다).

영국 회사 Elliott Brothers는 특히 WRE를 위해 Elliott 모델 403 컴퓨터(종종 WREDAC라고도 함)를 개발했습니다. 이 튜브 기계는 1955년에 시작되었으며 Zuse의 특허와 유사한 XNUMX단계 컨베이어가 있습니다.

Zuse나 Lebedev의 아이디어는 현대적 의미의 실제 컨베이어에 속하지 않습니다. "파이프라인"에서는 프로세서의 산술 논리와 RAM에서 다음 피연산자를 가져오는 두 가지 다방향 연산의 조합만 가정했습니다.

실제 컨베이어는 완전히 다른 원리로 작동하는 고급 제어 장치가 있다고 가정합니다. 실제 파이프라인에서 명령어 수준의 병렬화는 명령어에 대해 가져오기, 디코딩 및 실행의 세 가지 이상의 작업이 겹치는 것을 의미합니다.

이러한 의미의 컨베이어는 일리노이 대학에서 ILLIAC II 슈퍼컴퓨터 프로젝트에서 일한 저명한 캐나다 수학자이자 컴퓨터 과학자인 Donald Bruce Gillies에 의해 처음 기술되었습니다. 믿을 수 없을 정도로 진보적인 기계였지만 1962년에야 개발이 끝났고 모든 문서와 작동 원리는 1957-1958년에 공개된 학술 기사에 설명되었습니다. 특허가 없는 Stretch 개발자는 컨베이어 방식을 빌렸지만 공식적으로는 XNUMX년 전에 차를 출시했습니다.

같은 1959 년에 우리가 이미 쓴 M-100 Kitov 튜브 괴물의 단일 사본이 만들어졌으며 아키텍처에 대한 정보는 거의 없으며 Harvard 아키텍처와 파이프 라인 프로세서가 있다는 것은 확실하게 알려져 있지만 범용 프로그램을 어디까지 실행할 수 있는지, 어떤 컨베이어인지는 알려지지 않았다.

소련 미사일 방어 시스템의 탄생. BESM-6의 장단점

그대로 클래식합니다. 자연 서식지의 BESM-6, JINR 터빈실, Dubna(사진 https://ramlamyammambam.livejournal.com/). 동시에 4대의 BESM-1604, CDC 6500, CDC 1040, 1060대의 EC-1010, EC-1061, EC-4201, EC-XNUMX 및 Robotron KRS-XNUMX이 JINR에서 근무했습니다. 설치 수 면에서 소련에서 가장 강력하고 가장 큰 전시 센터였을 가능성이 큽니다.

BESM-6 파이프라인은 CDC-6600에서 감시되었으며 Cray에서만 각 프로세서에는 파이프라인의 명령을 병렬로 실행할 수 있는 10개의 독립 블록이 있으므로 이 기계는 세계 최초의 수퍼스칼라 프로세서로 간주됩니다.

7600년에 만들어진 CDC 1969과 투기적 실행, 레지스터 이름 바꾸기 등 파이프라인의 모든 현대적인 기능을 사용한 IBM System/360 모델 91(1967)은 훨씬 더 발전된 아키텍처를 가지고 있었습니다.

BESM-6의 가산기가 있는 훨씬 더 원시적인 회로는 가상 메모리뿐만 아니라 현대적인 의미의 컨베이어도 가질 수 없습니다. ALU 자체는 파이프라인 처리되지 않았습니다. 프로세서가 두 개의 숫자를 곱하면 다른 작업을 수행할 수 없지만 동시에 다음 명령을 가져올 수는 있습니다. 따라서 여기에서 "컨베이어"의 구현은 Zuse, Rameev 및 Elliot의 작업과 유사한 15년이었습니다.

마지막 망상


BESM-6의 "거대한 혁신"에 대한 마지막 오해는 캐시 메모리가 있다는 것입니다.

사실 현대적인 의미의 캐시는 없었고, 본격적인 캐시는 같은 360년 IBM System/85 모델 1967 시리즈에만 등장했다.

건강한 사람의 캐시는 초고속 RAM(보통 정적)의 레코드 집합으로 구성되며 각 레코드는 일반 RAM의 이 블록 복사본인 데이터 블록과 연결됩니다. 각 항목에는 캐시에 있는 데이터 항목과 주 메모리에 있는 해당 복사본 간의 대응 관계를 식별하는 식별자(종종 태그라고도 함)가 있습니다. 요청된 항목의 식별자와 일치하는 식별자를 가진 항목이 캐시에서 발견되면 캐시의 항목이 사용됩니다. 이것을 캐시 적중이라고 합니다. 요청된 데이터 항목을 포함하는 캐시에서 항목이 발견되지 않으면 주 메모리에서 캐시로 읽고 후속 호출에 사용할 수 있게 됩니다. 이것을 캐시 미스라고 합니다.

BESM-6에서는 이 모델 대신 소위 8개만 있었습니다. BRCH(버퍼 번호 레지스터)는 메모리에서 단어를 읽어 나중에 ALU가 더 빠르게 액세스할 수 있도록 합니다. 마찬가지로 XNUMX(역시 이상한 비대칭) 버퍼 쓰기 레지스터(BRZ)가 메모리에 쓰기 전에 번호가 배치되었습니다. 피연산자를 써야 하는 주소가 소위 저장되어 있었습니다. BAZ(버퍼 쓰기 주소 레지스터). 나중에 실행 주소가 BAZ / BAS의 주소 중 하나와 일치하는 것으로 판명되면 피연산자는 메모리가 아닌 BRZ / BRCH에서 가져왔습니다. 이것이 Besm 방식의 전체 "캐시"입니다.

그리고 마지막으로, 마지막 오해는 BESM-6이 RISC 아키텍처의 선구자라는 생각입니다.

물론 BESM-6에는 명령어가 많지 않고 적지만, 이것이 RISC와 유사한 유일한 매개변수입니다. 그러나 본격적인 RISC 프로세서: 간단한 명령어 세트, 엄청난 수의 RON(범용 레지스터), 이름 바꾸기를 위한 개발 방식, 기본 명령어 및 예측 가능하고 표준적인 실행 속도가 있습니다. - 1-2 클럭 사이클.

여기까지 기사를 읽었다면 BESM-6이 명령 수를 제외한 모든 매개변수에서 여기로 날아갔다는 것을 이미 이해하고 있을 것입니다.

이미 말했듯이 BESM-6의 소프트웨어는 모든 것이 아쉬웠습니다.

ITMiVT에서 개발한 OS "Dispatcher-68"의 전신으로만 제공되어 작업의 일괄 실행과 작업에 대한 리소스 할당만 허용했습니다. Lebedev 자동 코드는 모든 적절한 사람들에 의해 즉시 포기된 언어로 제안되었습니다. 이미 언급했듯이 BESM-6에서 CDC 1604의 전체 소프트웨어 어레이를 즉시 시작할 수 있을 것으로 기대했지만 실현되지 않았습니다. 결과적으로 각 과학 그룹은 물론 서로 호환되지 않는 다양한 언어 및 운영 체제 구현을 열렬히 살펴보기 시작했습니다.

그 중 가장 멋진 것은 "Dubna"모니터 시스템이었습니다. 소련에는 충분한 병력이 없었습니다. 전체 JINR 국제위원회는 동독, 헝가리, 심지어 몽골의 독일인을 포함시켜야했습니다.

도난당한 Fortran 및 Algol-60 컴파일러(훨씬 나중에 LISP와 Pascal)가 이를 위해 성공적으로 사용되었지만 이 모든 것은 지옥 같은 노력의 대가를 치러야 했습니다. Algol-60은 원래 BESM-2용으로 VM Kurochkin의 지도하에 프로그래밍 연구실의 소련 과학 아카데미 컴퓨팅 센터에서 만들어졌으며 나중에 BESM-6으로 이식되었습니다(BESM-4의 경우 최소 3개의 다른 Algol-60이 있는 컴파일러, 2개 이상의 다른 어셈블러, Dubninsky 및 Bayakovsky 및 원래 Epsilon 언어의 컴파일러 - 이것은 전형적인 동물원입니다. 대중적인 언어.

문제는 1964년에 새로운 언어 사양이 나왔다는 것입니다. 보통 (표준 채택의 마지막 해 이후) Kurochkin이 더 이상 마스터하지 못하는 Algol-68이라고 합니다. CDC 68 Algol-1604 번역기가 비뚤어지게 작동하여 Dubna의 물리학자들이 기대했던 많은 CERN 프로그램의 시작이 중단되었습니다.

유럽에서 Algol-68은 영국 왕립 통신 및 레이더 위원회에서 오랫동안 사용되어 왔습니다.

소련에는 Algol-68 개발을위한 작업 그룹이있었습니다 (예 : 학자 Andrei Petrovich Ershov의 지도하에 Novosibirsk, Andrei Nikolaevich Terekhov의 지도하에 Leningrad, Alexander Nikolaevich Maslov 및 Mikhail Ruvimovich Levinson의 지도하에 모스크바 ). Leningrad State University에서 Algol-68의 컴파일러와 강력한 프로그래밍 시스템이 만들어졌지만 ... 이미 수년 동안 작동했던 ES 컴퓨터를 위해 (그런데 Dubna를 포함하여 이것이 이유입니다. , 개발된 주변 장치와 BESM-6에 사용할 수 없거나 잘못 작동하는 수많은 소프트웨어 및 컴파일러를 위해 EU가 나타났습니다.


참고 사진 - 모스크바 주립 대학 컴퓨팅 센터에 동시에 6대의 BESM-6 설치(사진 http://www.besm-XNUMX.su)

많은 프로그램이 외국 소스 코드에 익숙해진 후 나타났습니다. 예를 들어 이미 언급한 LVT JINT의 NN Govorun은 컴퓨터 센터에서 만든 CDC 3200으로 기계 출력물을 사용하여 CERN을 방문한 후 BESM-6 Fortran 및 라이브러리에 6개의 BESM을 구현했습니다. 표준 프로그램 -20은 GDR로 이전되었고 JINR의 프로그래머는 고국으로 가서 어셈블러, Fortran-GDR 및 Algol-GDR의 자체 버전을 만들었습니다(국내 프로그램보다 30-XNUMX% 더 빠르게 작동함).

응용 수학 연구소의 V. S. Shtarkman의 지도하에 Z. F. Bochkova, G. N. Ezerov, V. M. Mikhelev. Keldysh(IBM 여행 후)는 BMSH 자동 코드를 개발했습니다. 왜냐하면 Lebedev 자신의 니모닉을 기반으로 한 M.G. Tchaikovsky의 원래 자동 코드가 기본적으로 두 글자로 되어 있고 절대적으로 비논리적이고 읽을 수 없기 때문에 호환되지 않는 변경이 많이 발생했기 때문입니다.

BESM-6 파일 시스템은 끝까지 작성 및 완료되지 않았으며 일반적으로 각 과학 센터에서 다른 모든 것을 해칠 자체적으로 작성하는 것이 가능했습니다. 첼랴빈스크에서는 VMK MSU(LISP 및 DISPAK)에서 Fortran-GDR 및 Algol-GDR의 작업을 설명하기 위한 인간 언어인 Dubna의 테이프에 보관이 있었습니다.


별도의 휴일은 BESM-6에 대한 문서였습니다. 당신이 예를 들어 수학 학부에서 일하기 위해 온 평범한 대학원생이나 후배 연구원이라고 상상해 보십시오. 그리고 당신은 IT에 대한 탐구를 제안받습니다. 최종 사용자를 위한 기계에 대한 이러한 품질 설명의 경우 미국의 이러한 사용자는 지침에 따라 Cray를 위험에 빠뜨렸을 것입니다.

물론 원래 OS/360과 IBM 모두 문제가 있었지만 매우 빠르게 상황을 수정했습니다. 소련에서는 누구나 서로 다른 시간에 작성된 수천 개의 라이브러리가 엉망이고 서로 호환되지 않는 혼란이 전혀 해결되지 않았습니다. EU 소프트웨어의 직접 복사가 아닌 영역.

BESM-6 팬들이 자랑스러워하는 모든 것 - 유명한 OS ND-70, Dubna, DISPAK 등은 1970년대 중반에만 개발되었습니다. DISPAK 덕분에 1972년에 마침내 하드 드라이브를 General Electric에서 BESM-6으로 가져온 컨트롤러와 연결하는 데 마스터했습니다.

IBM 머신은 1956년부터 디스크로 작업해 왔습니다. 이것이 BESM-6의 "고급 아키텍처"에 대한 질문입니다. 드럼 하나의 용량은 16킬로 단어(192킬로바이트)이고 무게는 4톤이었습니다. 드럼은 최대 5개까지 장착할 수 있습니다. 동시에 기존 IBM 하드 드라이브의 용량은 30MB, 대용량은 6MB였습니다. Dubna의 BESM-XNUMX에는 터미널 라인의 문자 패리티에서 레지스터의 물리적 주소 비트에 이르기까지 약간의 하드웨어 차이가 있습니다.

결과적으로 OS "Dubna"는 4개 이상의 메모리 큐브가 있는 시스템에서 시작되지 않았습니다. 물리적 주소의 추가 비트가 디스패처에서 고유한 목적으로 사용되기 때문입니다. 전반적으로 이것은 Dubna가 다른 곳에서 인기가 없었던 이유를 설명합니다.

일반적으로 서구의 컴퓨터 디자인과 거리가 먼 사람들은 기계의 핵심이 하드웨어가 아니라 소프트웨어라는 사실을 이해하지 못하는 경우가 많습니다. 완성된 기계를 위해 작성된 프로그램이 아닙니다. 기계는 프로그램을 작성하는 것이 편리하고 최소한의 변경으로 기존 것을 사용하는 것이 더 좋도록 만들어졌습니다. 불행히도 서양에서도 모든 사람이 이 단순한 공리의 본질을 이해하지 못했습니다.

이것은 Stretch의 선두 개발자 중 한 명인 Fred Brooks에 의해 매우 명확하게 언급되었습니다. 모든 컴퓨터 아키텍처의 디자인은 특정 시스템 설계자의 개인적 심오한 생각과 무엇에 대한 그의 개인적인 비전이 아니라 사용자 요구 사항을 수집하는 것으로 시작해야 합니다. 기계가 되어야 합니다.

컴퓨터를 위한 사람이 아니라 사람을 위한 컴퓨터.

두 번째 단계는 최종 사용자를 가장 만족시키는 명령 세트의 초안을 공식화하는 것입니다(시스템 설계자의 경우 최종 사용자는 일반 인간을 위한 모든 소프트웨어를 생성할 하위 수준 프로그래머임). 그런 다음 특정 회로의 개발 솔루션이 시작됩니다.

이 주기는 Stretch에서 배우고 훌륭한 S/360을 만든 IBM과 똑같이 훌륭한 B5000 시리즈를 유사하게 개발한 Burroughs의 두 회사에서 완벽하게 마스터했습니다. 슈퍼컴퓨터 - 과학자들의 애플리케이션과 요구사항을 수집하고 최대한 충족시키려고 노력).

그 결과 Z 시리즈 메인프레임은 여전히 ​​1960년대의 기계와 호환되며 은행 부문은 케네디 시대 이후 수십억 줄의 코드를 COBOL로 작성했으며 IBM과 Burroughs(UNISYS로 구체화)가 유일한 메인프레임 제조업체였습니다. XNUMX세기, XXI 세기에 설립되었습니다.

소련에서는 1960년까지 우리가 IBM에 필적하는 독점 기업으로 ITMiVT를 가졌다는 사실을 고려하여, 슬프게도 이 공리는 (단어에서 전혀) 실현되지 않았습니다. 동일한 Yuditsky가 미사일 방어 시스템(및 GRU)의 특정 요구 사항을 위해 Almaz를 설계했으며 그의 잠재적인 사용자는 시리즈 출시가 허용되지 않았지만 기계 프로토타입에 만족했습니다. ITMiVT에서는 모든 것이 달랐습니다. 기본적으로 천재 Lebedev는 어떤 컴퓨터가 필요한지 당신보다 더 잘 알고 있다고 믿었습니다. 그는 전문가이므로 그가 낳은 명령 시스템과 아키텍처로 살게 됩니다.

현대 기술에 대해 잘 아는 사람들의 경우 예를 들어 S / 360에서 메모리 작업 구현의 세부 사항에 대한 친숙함이 오해 나 혐오감을 유발하지 않습니다. BESM-6의 저수준 프로그래밍 특성에 대한 지식은 종종 현대 프로그래머에게 충격을 줍니다. 사실, 할아버지에게는 더 쉬운 시간이 없었기 때문에 BESM-6용 소프트웨어는 1990년대에 그녀가 사망할 때까지 아주 오랫동안 작성되었습니다.

구현 중 일부는 성공적이었고 일부는 그다지 좋지 않았습니다. 이 모든 것은 흩어져 있는 연구 기관과 연구 센터의 노력을 통해 이루어졌으며 어떻게든 전국에 다른 버전으로 퍼졌습니다. BESM-6용 소프트웨어의 품질과 양에 대한 신화는 처음에 거의 400개(수정 포함)가 생산되었다는 사실에서 크게 나타났습니다. 거의 모든 주요 과학 센터에서, 그리고 두 번째로, 그들은 6년 동안 리벳으로 고정되어 20년 동안 사용되었습니다.

결과적으로 과학자, 사람들은 어리 석음과 거리가 멀고이 기간 동안 꽤 견딜 수있는 프로그램을 낳을 수있었습니다. 당연히 프로그래밍의 큰 이론 학교도있었습니다 (일반적으로 컴퓨터 과학 이론가로 세계적으로 유명한 최대 강점의 소련 프로그래머는 Lyapunov와 Shura-Bura로 시작하여 수학에서 온 사람들이었습니다).

OS 및 컴파일러 구성의 이론적 원리가 개발되고 기사가 작성되고 논문이 옹호되고 과학 학교가 만들어졌습니다. 물론 이 모든 것은 양과 질 모두에 합당했습니다.

유일한 문제는 우수한 학문적 과학이 상아탑에 앉아 DISPAK, Dubna 및 ND-70과 같은 획기적인 개발을 도왔습니다. 그러나 국가에는 수만 명의 프로그래밍 학자가 아닌 수만 명의 프로그래머가 필요했습니다. 우리는 그들에게 아무런 문제가 없었지만 일반 코더에게는 ...

다음 글에서는 이러한 획기적인 국내 발전에 대한 고찰을 마치도록 하겠습니다.

계속 될 ...
15 댓글
정보
독자 여러분, 출판물에 대한 의견을 남기려면 로그인.
  1. +8
    16 12 월 2021 19 : 04
    정보 기술 발전의 역사는 저자에 의해 강력하게 제시됩니다.

    사이클이 끝난 후, 나는 미래를 위한 개발 전략에 대한 몇 개의 기사를 원합니다.
    대략적인 비용, 관련 기관 및 물론 돌파구는 아니지만 상위 XNUMX위 안에 들 수 있는 사람들이 있습니다. hi
    1. +3
      16 12 월 2021 20 : 17
      전략을 작성하기 전에 우리가 원하는 것이 무엇인가라는 질문에 답해야 합니다.
      여러 가지 이유로 세계 시장에 진출하는 것이 비현실적인 경우.
      goz를 수행하면 사용 가능한 기술로 충분하지만 삐걱 거리는 소리가납니다. 그래서 귀찮게 왜?
      1. +1
        16 12 월 2021 21 : 38
        새로운 유형의 컴퓨터로 새로운 세계 시장에 진입하는 것이 가능합니다. 예를 들어 양자 컴퓨터는 점차 성숙해지고 있으며 처음에는 오래된 실수를 반복하지 않고 경험을 통해 성공하는 것이 합리적입니다. 양자 컴퓨터는 아직 절반의 이론이지만, 지금은 동일한 기초 과학자들에게 미래 세계 시장의 잠재적 사용자 요구 사항을 수집하기 시작하고, 산업 응용 표준을 개발하고, 응용을 위한 과학 분야와 학교를 공식화하도록 지시하는 것이 흥미로울 것입니다. 사용자 요구 사항. 개발 및 구현을 발전시키고 결과적으로 새롭고 사용자 지향적인 컴퓨터 산업 분야의 빠른 형성.
    2. +2
      17 12 월 2021 05 : 07
      강력하지만 현대적입니다. 그래서 기계의 속도는 클럭 주파수가 아니라 초당 가산 등의 연산 횟수로 측정했다.
      소비에트 전자 및 컴퓨팅 기술은 서쪽으로 크게 치우치지 않고 나름대로 발전했습니다.
      유일한 문제는 우수한 학문적 과학이 상아탑에 앉아 DISPAK, Dubna 및 ND-70과 같은 획기적인 개발을 도왔습니다. 그러나 국가에는 수만 명의 프로그래밍 학자가 아닌 수만 명의 프로그래머가 필요했습니다. 우리는 그들에게 아무런 문제가 없었지만 일반 코더에게는 ...

      나는 동의하지 않는다. 기사에 따르면이 기계를 제외하고는 우리에게 아무것도 없었고 개발되지 않은 것으로 나타났습니다.
      Kazan, Penza 및 Minsk에서 생산된 ES 컴퓨터 시스템이 있었습니다. 민스크 컴퓨터 연구소의 발전. 보다 정확하게는 단일 CMEA 시스템이었습니다. 소련의 붕괴로 끝났다.
      VS에는 자체 컴퓨터가 있었습니다. 1959년부터 그들은 S-200 SAM Plamya-K 컴퓨터에서 방공 ASUKR(ACS 미사일 시스템)에 진입하기 시작했습니다. 새로운 S-125 방공 시스템의 개발 및 도입으로 다양한 유형의 단거리 방공 시스템을 사용하여 광범위한 범위에서 할당 된 작업을 해결할 수있는 혼합 형 방공 미사일이 등장하기 시작했습니다. S-125, 중형 C-75 및 대형 C-200. 2E5 컴퓨터를 탑재한 ASU Vector-86가 등장했습니다. 같은 컴퓨터가 철도에서 사용되었습니다 ... 티켓 예약 시스템 이름을 잊어 버렸습니다. 방공 시스템에서는 컴퓨터가 아니라 해군에서 항공과 동일한 계산 장치라고 불렀습니다. 우리나라에서 개발된 컴퓨팅 기술과 전자공학. 예, 그들은 Zabugrs보다 뒤떨어졌지만 모든 것을 스스로했고 좋은 일을했습니다.
      요소 기반에 대해. 반도체에 문제가 있어서 램프를 만드는 방법과 종류를 배웠습니다. 램프에 조립된 미사일용 전자 제어 장치를 제시합니다. 그러한 과부하가 있지만 작동했고 아주 미니어처였습니다.
      일반적으로 이 모든 것이 WAS였습니다. 그리고 태양에 대한 부족한 부분이 있습니다
  2. +1
    16 12 월 2021 20 : 28
    감사 해요! 매우 흥미롭고 기본적입니다!
  3. +3
    16 12 월 2021 20 : 28
    내가 말할 수있는 것은 - BESM-6에서 1977-78 년에 졸업장을 성공적으로 마쳤습니다. 로켓의 광산 발사입니다. 네, 정말 펀치카드로 프로그램에 들어가야 했습니다. 나는 저자가 설명한 공포를 경험하지 않았으며 졸업장은 매우 견고하고 사업에 착수했습니다. EC-80과 EC-1040(IBM의 빈약한 클론)가 1055년대 전반기에 우리에게 왔을 때 나는 그들과 함께 많은 문제를 겪었고 VAX를 의지하는 것이 훨씬 더 즐거웠습니다.
  4. -1
    17 12 월 2021 00 : 15
    조국에 대한 증오심이 얼마나 큰지! Kokom은주지 않았고 할아버지는 누워서 죽는 대신 조국을 위해 IT를했습니다. 그런 작가는 절대 용서하지 않을거야!
  5. +3
    17 12 월 2021 07 : 50
    우리는 여전히 우리만의 특별한 길을 가고 있습니다. 동일한 Elbrus 프로세서는 x86과 호환되지 않습니다. 자체 특수 OS가 있으며 x86 프로그램은 LINUX의 Vine과 같은 에뮬레이터를 통해 강제로 실행됩니다.
  6. -2
    17 12 월 2021 08 : 23
    저자는 분명히 서구에서 시민권을 약속받은 농노의 정신 유형을 가지고 있습니다. 또는 그들은 약속조차하지 않았지만 그는 정말로 희망합니다 ...
    1951 년에 이미 첫 번째 컴퓨터를 만든 것으로 나타났습니다. 미래에는 성공과 작업 자금 조달을 개발하지 않고 모든 것을 쓰레기통에 버리는 것이 필요했습니다. 그래서 "큰 마음에서"교활한 러시아 농민은 쓰레기 더미에서 자신과 자신을 속이고 그것을 던졌습니다 ..... 논리적으로 그리고 매우 정당합니다. !
  7. 0
    18 12 월 2021 00 : 30
    BESM-6 파이프라인은 CDC-6600에서 감시되었으며 Cray에서만 각 프로세서에는 파이프라인의 명령을 병렬로 실행할 수 있는 10개의 독립 블록이 있으므로 이 기계는 세계 최초의 수퍼스칼라 프로세서로 간주됩니다.
    ...
    BESM-6의 가산기가 있는 훨씬 더 원시적인 회로는 가상 메모리뿐만 아니라 현대적인 의미의 컨베이어도 가질 수 없습니다. ALU 자체는 파이프라인 처리되지 않았습니다. 프로세서가 두 개의 숫자를 곱하면 다른 작업을 수행할 수 없지만 동시에 다음 명령을 가져올 수는 있습니다. 따라서 여기에서 "컨베이어"의 구현은 Zuse, Rameev 및 Elliot의 작업과 유사한 15년이었습니다.

    두 번째 단편에서는 BESM-6에 본격적인 컨베이어 벨트가 없었다고 주장하는 것으로 보이며, 본문에서는 이에 대해 많이 언급되었으며 인용문의 첫 번째 부분에서는 마치 있었다. 아마도 이것은 텍스트 편집의 오류입니까? 그리고 컨베이어가 없었습니까?
    일반적으로 - 흥미로운 기사. 작가님은 많이 아십니다! hi
  8. 0
    22 12 월 2021 22 : 31
    일반적으로 Union이 존재하는 수년 동안 간단한 아이디어는 범주 적으로 마스터되지 않았습니다. 고객은 완제품을 원하고 수년 동안 완성해야 할 반제품이 아닌 완제품을 원합니다. ------------- 바로 그거죠. 가장 중요한 것은 해당 섹션을 공장 밖으로 밀어내고 군 대표를 설득하는 것입니다. 그런 다음 여단은 Balkhash로 이동하고 거기에서 수평선 너머 레이더 스테이션 섹션을 완료합니다.
    1. 0
      6 1 월 2022 05 : 01
      이것은 여전히 ​​사실입니다. 부피가 큰 사양, 깜박이는 LED 및 기타 재미 테스트.
      1. 0
        4 2 월 2022 16 : 45
        트랜지스터, 마이크로 회로가 그렇게 나빴다면, 예를 들어, 상상할 수없는 수의 요소로 포토 리소그래피로 만든 양극이 설치된 경우 한 램프에서 TV 튜브와 외형적으로 유사한 튜브 프로세서를 만들려고 시도하지 않은 이유는 무엇입니까? 스크린 매트릭스 대신에 음극이 전자총이고 빔이 상상할 수 없는 주파수로 라인 주위를 돌면(하나 이상의 음극 총이 있을 수 있음) 그러한 설계의 속도는 매우 빠를 것입니다. . 전자빔의 "두께"가 어느 정도 감소될 수 있는지, 전자빔이 얼마나 정확하게 제어될 수 있는지, 요소의 "선"이 양극에 얼마나 자주 배치될 수 있는지는 분명하지 않지만, 반면에, TV 화면과 유사한 이러한 프로세서의 크기는 상당히 클 수 있습니다. .
    2. 0
      22 March 2023 09 : 49
      소련에는 시장이 없었기 때문에 "고객"이 없었습니다. 귀하의 위시리스트 - 귀하의 문제 (C) Orshavin
  9. 0
    23 2 월 2022 19 : 15
    인용: 스모토
    일반적으로 Union이 존재하는 수년 동안 간단한 아이디어는 범주 적으로 마스터되지 않았습니다. 고객은 완제품을 원하고 수년 동안 완성해야 할 반제품이 아닌 완제품을 원합니다. ------------- 바로 그거죠. 가장 중요한 것은 해당 섹션을 공장 밖으로 밀어내고 군 대표를 설득하는 것입니다. 그런 다음 여단은 Balkhash로 이동하고 거기에서 수평선 너머 레이더 스테이션 섹션을 완료합니다.

    그런데 어떻게 그런 마음으로 당신이 아직 대통령도 아니고 국방부 장관도 아니라는 것이 놀랍습니까? 제 생각에는 이것이 훨씬 더 간단하고 분명한 아이디어입니다.