Sự ra đời của hệ thống phòng thủ tên lửa Liên Xô. Đối với và chống lại BESM-6
CDC 6200
Về tốc độ, BESM-6 trong những năm đó cũng không còn là một đài phun nước nữa, từ năm 1960 máy tính đã tiến xa, và tôi phải tìm giải pháp cho vấn đề này. Liên Xô nuốt chửng niềm tự hào lần thứ hai và đi yêu cầu bán nó cũng là CDC 6600. Ở đây KoKom đã cắm sừng, và họ đã xúc phạm không chỉ Liên minh, không một CDC 6600 nào được giao cho bất kỳ ai bên ngoài Hoa Kỳ, ngay cả Pháp cũng bị từ chối. Chỉ đến năm 1972, KoKom mới cho phép (và sau đó dưới sự giám sát chặt chẽ của mình) cài đặt ở Dubna phiên bản trẻ hơn của CDC 6200, phiên bản này đã được nâng cấp lên đa xử lý 1975 vào năm 1 (đã lỗi thời sau khi phát hành Cray-6500) và - 6600, vẫn hoàn toàn là quái vật của Mỹ.
Đây là cách G. Ososkov nhớ lại điều này (Báo "Dubna", số 21 (3759) ngày 27 tháng 2005 năm XNUMX)
Hầu hết các bài thuyết trình của người dùng tại hội nghị Dulus đều được dành để thảo luận về các cơ hội và nhược điểm của mạng này. Bây giờ, 30 năm sau, những khả năng như vậy có vẻ phổ biến, nhưng vào thời điểm đó, nó trông khá tuyệt vời. Mục đích chính của chuyến đi là ký kết hợp đồng mua máy tính CDC-6200, bỏ qua thỏa thuận COCOM khét tiếng nhằm cấm cung cấp các công nghệ máy tính mới nhất cho các nước xã hội chủ nghĩa. Bằng cách đồng ý cho COCOM kiểm tra vĩnh viễn tại Dubna, Ban Giám đốc LVTA vào năm 1972 đã được phép mua CDC-6200. Những chiếc máy thuộc dòng 6000 như vậy là những chiếc máy tính mạnh mẽ, có nhiều chương trình ứng dụng cho chúng trong thư viện CERN, và mặc dù chiếc 6200 đã khá lỗi thời, việc mua bán như vậy đã cho phép LVTA vào năm 1974 phát triển chiếc máy này lên CDC-6400, và năm tiếp theo với bộ vi xử lý CDC-6500. Cùng với BESM-6, điều này đã làm tăng đáng kể sức mạnh tính toán của JINR, giúp nó có thể tạo ra một mạng đầu cuối rộng khắp và khởi động các trạm fortran.
Điều hài hước nhất về điều này những câu chuyện thực tế là một chiếc máy có chỉ số CDC 6200 chưa bao giờ tồn tại trong tự nhiên! Nó không được phát hành bởi CDC và không được tìm thấy trong bất kỳ nguồn phương Tây nào!
Nó là gì?
Nó rất đơn giản - công ty của Cray cần các đối tác mới, công việc kinh doanh tốt, nhưng CoCom không đồng ý cung cấp cho Liên Xô ngay cả một siêu máy tính cơ sở - 6500. Sau đó, các kỹ sư của CDC đã tháo dỡ một bộ xử lý khỏi nó, hạ cấp một bộ xử lý khác và nhận được một sơ khai duy nhất - CDC 6200 đặc biệt cho Liên Xô trong một bản sao duy nhất. Họ được phép bán sơ khai, và một vài năm sau, khi dây chuyền đã lỗi thời và ngừng hoạt động, CoCom cho phép bộ xử lý được khôi phục lại.
Một câu chuyện tương tự sau đó lặp lại với CDC 7600 và Cray-1, họ không mua được và nỗ lực tạo bản sao dưới dạng "Electronics SS BIS" đã thất bại một cách phi thường, nhưng họ đã tìm cách mua hợp pháp thêm hai CDC nữa, những mẫu đơn giản hơn. , 170 và 172 CYBER.
CYBER 172 được mua vào năm 1975 cho Trung tâm Khí tượng Thủy văn của Liên Xô và hoạt động thành công tại đây cho đến năm 1996. Nhìn chung, việc nghiên cứu khí hậu có ý nghĩa vô cùng quan trọng đối với Liên Xô do diện tích đất nước rộng lớn và nhu cầu sử dụng hàng hải và đất liền, do đó Trung tâm Khí tượng Thủy văn đã có một trong những bộ máy mạnh nhất của Liên minh, không kém hơn Dubna và Arzamas-16, và thường một số máy được sử dụng cùng một lúc. Máy tính đầu tiên dành cho các nhà khí tượng học là M-20, hoạt động ở đó từ năm 1959 đến năm 1962, nó đã bị loại bỏ chỉ sau ba năm, và không có gì lạ.
Giám đốc Trung tâm Máy tính Chính Vladimir Antsipovich, người đã làm việc ở đó hơn 40 năm, nhớ lại:
Nó được thay thế bằng M-220, sau đó là M-222 và Vesna, một máy tính lớn khá kỳ lạ với công suất 300 KIPS, được tạo ra vào năm 1965 tại Cục Thiết kế Tự động hóa Công nghiệp thuộc Bộ Công nghiệp Vô tuyến điện (như bạn có thể thấy, mặc dù BESM-6, các bộ khác vẫn tiếp tục nhiệt tình chơi các kiến trúc vườn thú).
Cỗ máy này làm việc tại Trung tâm Khí tượng Thủy văn cho đến năm 1972, song song với đỉnh cao của các máy chủ lực hoàn toàn của Liên Xô - Minsk-32. Ngoài ra, từ năm 1968 đến năm 1985, BESM-6 cũng hoạt động ở đó.
CYBER-172 là người nước ngoài đầu tiên trong Trung tâm Máy tính Chính (dành cho các nhà khí tượng học rằng họ muốn mua một CDC 1975 vào năm 7600, nhưng đã chia tay với CoCom), và sự thống trị của các siêu máy tính phương Tây trong khí tượng Liên Xô bắt đầu từ đó. Nói chung, họ muốn mua hai con, nhưng CoCom cũng trồng một con lợn ở đây, họ quyết định rằng hai con này quá béo đối với Liên Xô.
Đương nhiên, cũng có EU 1060 và 1066, cũng như IBM 3033 - sự thay thế mới nhất cho dòng S / 370, được phát hành vào năm 1979, tuy nhiên, vì âm mưu nó được gọi là Hitachi (tuy nhiên, có một câu chuyện khó hiểu - liệu của chúng tôi đã mua bản sao được cấp phép của nó từ Hitachi, hoặc IBM ban đầu, nhưng họ gọi nó là vì lợi ích bí mật hơn, trong mọi trường hợp, máy Hitachi 3033 không tồn tại trong tự nhiên, chỉ có Hitachi HITAC M-220 hoặc IBM 3033 ).
Năm 1992, họ đã muốn cung cấp Elbrus-2 lâu đời, nhưng sau đó đột nhiên CoCom chấp thuận bán cho Nga loại Cray Y-MP mạnh nhất, gấp khoảng 30 lần so với Elbrus. Trong khi thảo luận về tất cả các chi tiết - cài đặt đã chuyển sang năm 1996 và đã không còn trong Thor 500 Cray Y-MP.
Con quái vật này đã làm việc trong MCC 10 năm liên tục, cho đến năm 2006, khi anh ta chết an toàn tại một đồn quân sự. Điều này phần lớn là do ba năm sau khi cài đặt, vì lý do tài chính, tôi đã phải tiếp tục sử dụng Cray Y-MP mà không có sự hỗ trợ từ nhà sản xuất. Antsypovich nói:
Sau đó, hai cụm xuất hiện - SGI Alltix 4700 (11 Tflops 832 Intel Itanium 2 9140M) và SGI Alltix ICE (16 Tflops, một số chưa xác định của Intel Xeon E5440) và vào năm 2019, các nhà chức trách đã tách ra một cụm mới từ Cray - XC40.
CYBER 170 được mua vào năm 1976 cho phòng thí nghiệm LNIVT của Viện Hàn lâm Khoa học Liên Xô tại Lian, nay là SPII RAS. Tác giả không rõ số phận của chiếc xe của Trung tâm Khí tượng Thủy văn, và anh đã tận mắt nhìn thấy dấu tích của chiếc xe LIAN trong tòa nhà của SPII RAS trên đảo Vasilyevsky, rất khó để đến đó, nhưng không phải là không thể, nhân viên rất thân thiện và nếu bạn gọi điện và đồng ý trước, họ sẽ sẵn lòng cung cấp một chuyến tham quan ngắn ngày, vì vậy những người sống ở St.Petersburg có cơ hội tốt để chạm vào lịch sử.
Để giải quyết vấn đề thiếu khả năng tính toán, vào năm 1973, Melnikov đã phát triển cái gọi là. thiết bị giao diện, phức hợp AS-6, thực sự là một công tắc lập trình phức tạp với bộ nhớ bổ sung và bộ xử lý đồng bộ, cho phép bạn kết hợp nhiều BESM-6 và biến chúng thành một cụm với RAM dùng chung. Tổng cộng có 8 bộ đã được thực hiện.
câu hỏi
Chúng tôi có hai câu hỏi cần trả lời.
Đầu tiên, tại sao kiến trúc hệ thống BESM-6 lại không thành công như vậy?
Thứ hai - điểm mạnh của nó là gì và tại sao nó lại quá phát triển với những câu chuyện thần thoại và truyền thuyết?
Hãy bắt đầu với thực tế là Lebedev ban đầu thiết kế những chiếc máy đầu tiên của mình cho những mục đích rất cụ thể - cụ thể là để giải các hệ phương trình vi phân (nghĩa là tính toán quỹ đạo tên lửa hoặc mô hình hóa các phản ứng hạt nhân). Anh ấy hiểu cách chế tạo những chiếc máy tính như vậy, vì bản thân anh ấy là một kỹ sư điện xuất sắc và là nhà phát triển máy tính analog để mô hình hóa các phương trình vi phân giống nhau.
Không giống như Eckert, Wilks, Amdalla - Lebedev hoàn toàn không phải là một nhà khoa học máy tính, không có tư duy phù hợp, và càng không phải là một lập trình viên, nỗ lực duy nhất của anh ấy để tạo ra một mã tự động đã kết thúc với sự thật là không ai sử dụng thứ kinh dị này. Do đó, Lebedev đã không hình dung kỹ các vấn đề của người sử dụng máy của mình, mặc dù chính thức và phổ biến, nhưng trên tinh thần là các máy tính đơn nhiệm, thích ứng tốt với việc giải các hệ thống khác và kém hơn mọi thứ khác.
Nhân tiện, đây là một vấn đề chung của tất cả mọi người trong ITMiVT: họ vẫn có thể tạo ra những cỗ máy cho các nhà khoa học tên lửa, nhưng một chiếc máy tính phổ thông thực sự đã gặp rất nhiều khó khăn. Burtsev cuối cùng cũng gặp phải vấn đề tương tự với Elbrus, lấy máy tính lớn ngân hàng Burroughs làm cơ sở và cố gắng chuyển nó thành máy tính điều khiển phòng thủ tên lửa. Ít nhất, nó đã thành công, nhưng một siêu máy tính đa năng thành công cho các nhà khoa học từ Elbrus cũng không ra đời.
CDC chế tạo máy cho hệ thống điều khiển và máy tính khoa học, trong khi IBM sản xuất máy cho doanh nghiệp, chủ yếu cho hệ thống tài chính và kế toán. Về cơ bản, đây là những lĩnh vực ứng dụng khác nhau và chúng đã để lại dấu ấn trong kiến trúc. BESM-6 đã đạt mức tuyệt đối trong phân đội này.
Hãy bắt đầu với một sự thật đã xuất hiện ở đây. Nó không có số học nguyên. Nói chung là. Nó không hề.
Nó nằm trong CDC 1604, và nó rất tiên tiến, nhưng Lebedev đã ném nó ra khỏi BESM-6, tại sao?
Bởi vì cả cuộc đời của mình, ông đã chế tạo máy nghiền đơn nhiệm các phương trình vi phân (monotask - theo nghĩa là, theo logic của ông, chúng chỉ đơn giản được đưa ra với chi phí của một hệ thống các difur khác nhau, và hơn thế nữa - chúng không được sử dụng đặc biệt), và số nguyên số học là không cần thiết ở đó. Kết quả là, đối mặt với những khó khăn trong việc kết hợp ALU thực và toàn bộ, anh ấy chỉ đơn giản là ném ra toàn bộ, quyết định rằng trong trường hợp ai đó đột nhiên cần nó, họ sẽ mô phỏng nó với một cái thật.
Tại sao chúng ta cần số học số nguyên?
Câu trả lời rất đơn giản - để thao tác các địa chỉ trong RAM. Như bạn đã hiểu, cả CDC-1604 và BESM-6 đều là máy có bộ cộng (nghĩa là, theo thuật ngữ hiện đại, chúng chỉ có hai thanh ghi, trong đó một thanh ghi chuyên dụng - bộ tích lũy, trong đó tất cả các hành động được thực hiện). Một phần, điều này tương tự như kiến trúc ngăn xếp hiện được tìm thấy trong Forth và Java.
Vấn đề là với một tổ chức như vậy, ALU phải liên tục tải / dỡ thứ gì đó vào bộ nhớ, và điều này yêu cầu các thanh ghi chỉ mục và số học chỉ mục nâng cao cho phép bạn thao tác các địa chỉ trong RAM.
Nhân tiện, trong BESM-6 và CDC có một sự bất tiện nhất định - độ sâu bit của thanh ghi chỉ mục không khớp với kích thước từ (!) Và kích thước của thanh ghi tích lũy, và thậm chí không phải là bội số của nó (15 và 48 bit), vẫn là bình thường theo tiêu chuẩn của những năm 1959–1960, nhưng để kéo một chủ nghĩa cổ xưa như vậy vào năm 1968 đã là bóng tối.
Vì vậy, theo lẽ tự nhiên, các máy có bộ cộng có số học số nguyên khá phát triển, chính xác vì nhu cầu tải một thứ gì đó từ RAM hoặc ném nó vào nó mỗi chu kỳ, trong khi Lebedev bỏ qua tính năng này của CDC. Kết quả là, mỗi phép tính địa chỉ yêu cầu mô phỏng trên một bộ xử lý thực, điều này không ảnh hưởng tích cực đến tốc độ làm việc hoặc sự thuận tiện của lập trình.
Một vấn đề rất nghiêm trọng khác của BESM-6 là vùng ngoại vi.
Thứ nhất, như chúng tôi đã nói, Melnikov đã từ bỏ bộ xử lý kênh và giải thích nó theo cách này:
Nhưng nếu bạn suy nghĩ cẩn thận hoặc đơn giản là so sánh chi phí và khối lượng của thiết bị cần thiết để thực hiện giao tiếp với các thiết bị bên ngoài trong cả hai trường hợp, thì các quyết định được đưa ra trong BESM-6 có thể không quá tệ. Trên thực tế, mỗi thiết bị bên ngoài cho giao tiếp tiêu chuẩn bao gồm một bộ điều khiển hoặc được kết nối với thiết bị phức tạp và đắt tiền này cung cấp đầu ra tiêu chuẩn cho các kênh ghép kênh hoặc kênh bộ chọn. Nếu chúng ta tổng hợp chi phí của thiết bị bổ sung và không gian sử dụng nó, cần thiết khi kết nối các thiết bị thông qua giao diện tiêu chuẩn, thì kết quả là hệ thống BESM-6 tiết kiệm hơn nhiều lần. Nói cách khác, thiết bị điều khiển tập trung BESM-6 rẻ hơn nhiều lần so với chi phí của các bộ điều khiển cho một bộ tiêu chuẩn lưu trữ bên ngoài và thiết bị đầu vào / đầu ra của các máy cùng loại.
Tuy nhiên, trong một số kiểu máy IBM, cái gọi là bộ điều hợp tệp tích hợp đã được giới thiệu, cho phép bạn kết nối thiết bị lưu trữ đĩa với máy tính mà không cần sử dụng kênh và bộ điều khiển tiêu chuẩn. Trên thực tế, người ta có thể thấy một số điểm tương đồng với cách kết nối hợp lý các thiết bị được áp dụng trong BESM-6.
Được dịch sang ngôn ngữ thông thường, hóa ra như sau - để thực hiện công việc lành mạnh với bộ đồng xử lý kênh, như trong S / 360, chúng tôi không có đủ tiền và mong muốn của Lebedev, người đã phản đối một cách cuồng nhiệt việc đưa bộ đồng xử lý vào máy của mình (một cách khắc phục ý tưởng còn lại từ những ngày ống, khi thêm vài nghìn chiếc đèn chất lượng Liên Xô rõ ràng sẽ không có độ tin cậy được cải thiện và trò chơi không đáng giá, Burtsev đã đẩy bộ xử lý kênh vào 5E26, điều này đã làm tăng mạnh hiệu suất của nó, trên thực tế, đằng sau Lebedev vốn đã rất ốm yếu, người sau đó không theo học kiến trúc).
Nói chung, việc làm việc với các kênh thường quá khó hiểu đối với các lập trình viên của chúng tôi, do đó, những lầm tưởng về tính ưu việt của BESM-6 về mặt này so với loạt phim ở EU. Xem xét trình độ dân trí thấp của họ, vấn đề chất lượng rất lớn với các bản sao đầu tiên của EU và sự vắng mặt gần như hoàn toàn của hướng dẫn, tài liệu, chương trình mẫu, bản vá, v.v., tất nhiên, làm việc với một thứ phức tạp như các kênh có thể là địa ngục so với triển khai I / O trong BESM-6, đơn giản như một khởi động phớt. Do đó có vô số huyền thoại về kiến trúc vô cùng tiến bộ.
Đồng thời, nhiều người nhầm lẫn giữa các cấp độ kiến trúc khác nhau - kiến trúc của hệ thống lệnh và hệ thống, mô tả, trong số những thứ khác, kết nối vật lý của các thiết bị ngoại vi, v.v. Mọi thứ đều ổn với kiến trúc hệ thống trong BESM- 6 - các máy có thể được nối mạng, nhóm lên đến 8 máy tính, có thể kết nối tới 128 thiết bị đầu cuối, bao gồm cả thiết bị điều khiển từ xa, bộ điều khiển đĩa cụm (mỗi máy cụm có quyền truy cập vào mỗi đĩa), v.v. (một điều khác là chúng đã có thể làm điều tương tự và hầu như tất cả các máy tính phương Tây thuộc loại này).
Một nghịch lý thú vị là nhiều giải pháp kỹ thuật thành công ra đời từ những nỗ lực khắc phục tình trạng yếu kém của cơ sở yếu tố trong nước.
Ví dụ, công nghệ ghi băng kép tiến bộ (ngay cả khi một khối có lỗi, nhưng ở hai vị trí khác nhau, nó sẽ được ghép lại từ các mảnh và đọc bình thường) xuất hiện như một phản ứng đối với chất lượng ghê tởm của băng Liên Xô, bắt đầu sụp đổ theo đúng nghĩa đen sau hai hoặc ba lần chạy - ở EU, theo sau IBM, không có cơ chế như vậy, kết quả là, một huyền thoại đã nảy sinh về sự không đáng tin cậy của hệ thống con ghi băng của họ so với BESM.
Đồng thời, không phải ổ cứng tiến bộ được sử dụng như một ổ đĩa từ, mà là một trống từ đã lỗi thời, trong khi bộ điều khiển cho đĩa chỉ xuất hiện vào năm 1974, sau khi chúng được sao chép từ bộ điều khiển của các máy tính lớn General Electric cổ đại (vào thời điểm đó đã lỗi thời đến mức CoCom cho phép bán chính thức cho nhu cầu của KIAE và ITEP, một cách không chính thức - được tháo dỡ thành các phụ tùng thay thế hữu ích cho BESM-6).
Nói chung, người ta có thể viết một cuốn sách riêng về sự khủng khiếp của vùng ngoại vi thuần túy của Liên Xô, cũng như về chất lượng của nó. Trong một cuộc thảo luận về BESM-6 trên tạp chí 1500py470.livejournal, một trong những lập trình viên đã làm việc với cô ấy đã để lại những kỷ niệm như vậy về điều này:
G. N. Tentyukova, người đứng đầu lĩnh vực OMOED của LVTA, nhớ lại (tuần báo JINR “Dubna” số 34 (4325) ngày 11 tháng 2016 năm XNUMX, “Khi máy móc lớn”):
Nếu bạn muốn, bạn có thể tìm thấy nhiều kỷ niệm như vậy mà không một bài báo nào có thể chứa được.
Ngay cả chính các nhân viên của JINR cũng đã viết trên tờ báo "Dubna" vào năm 1990 (khi đã có thể không ngại ngùng:
Nói chung, nó có thể hoạt động bình thường trên BESM-6 khoảng 15 năm sau khi phát hành máy - khi những đồng đội thâm nhập nhất, những người có lực kéo nặng nhất (như các nhà khoa học từ Dubna) ném vào thùng rác tất cả các vùng ngoại vi từ chính BESM. (và đồng thời từ EU, nó tốt hơn nhiều, nhưng so với hàng nhập khẩu - kim loại phế liệu khổng lồ) và họ cung cấp mọi thứ của Mỹ, Nhật và Đức (tệ nhất là - Ba Lan hoặc Hungary).
Ngoài ra, người ta mong muốn nâng cấp bộ nhớ, vặn các thiết bị đầu cuối bình thường bằng nạng địa ngục (tệ nhất là từ EU) và tự viết một loạt phần mềm khổng lồ, từ trình dịch cho đến hệ điều hành. Sau đó, những kỷ niệm ấm áp khi làm việc với BESM-6 có thể vẫn còn.
Nói chung, trong suốt những năm tồn tại của Liên minh, một ý tưởng đơn giản không được nắm vững trong đó - khách hàng muốn một sản phẩm hoàn chỉnh, chứ không phải một bán thành phẩm thô cần được hoàn thiện trong nhiều năm. Hãy tưởng tượng tình huống - NSA nhận được CDC 6600 do họ đặt hàng với giá XNUMX triệu đô la, máy tính đến mà không có thiết bị ngoại vi (hoặc với thiết bị không thể hoạt động được và nếu có thể, bạn cần kết nối nó với một mỏ hàn và phép thuật đã biết từ trong sáu tháng), không có hệ điều hành hợp lý, không có trình biên dịch và với trình hợp ngữ hoàn toàn điên rồ.
Và các bạn ơi, các nhà mật mã phải tự tay làm tất cả các công việc vận hành bằng tay và bằng chi phí của mình, viết phần mềm và nói chung là hoạt động bình thường với máy trong 10 năm nữa - hãy kiên nhẫn. Đối với bất kỳ công ty kiểu thị trường nào, thủ thuật như vậy sẽ là chiêu cuối cùng trong công việc của họ, một khách hàng không hài lòng sẽ không đến lần thứ hai. Trong nền kinh tế kế hoạch, không có sự lựa chọn, như một giai cấp - bất cứ thứ gì đảng cam kết cho, sau đó ăn.
Thần thoại về hiệu suất
Về hiệu suất, có một huyền thoại rằng BESM-6 cực kỳ mạnh mẽ, gần như ngang bằng với CDC 6600. Hiệu suất được công bố của BESM-6 là 1 MIPS. Trong thực tế, thông tin này về cơ bản là không thể xác thực được, vì thời gian thực hiện các lệnh có thể khác nhau theo thứ tự độ lớn.
Ví dụ, tốc độ hoạt động lý thuyết của một thiết bị nhân (MD) thực sự có thể đạt đến giá trị 1–1,3 MIPS, trong khi tốc độ thực tế, khi MU truy cập mạnh vào bộ nhớ trong quá trình này, không vượt quá 0,5–0,8 MIPS . Các lệnh phân chia hoạt động ở tốc độ 0,15–0,3 MIPS, trong khi các lệnh trả về dữ liệu từ AU đến CU (UI, MOD, v.v.) có thể phát ra bất kỳ điều gì, vì chúng đang chờ thực thi 5 các đội (4 từ LHC và 1 từ PR). Trong trường hợp này, chu kỳ bộ nhớ BESM-6 là 2 µs, nghĩa là, các lệnh đọc một toán hạng không có trong BRZ, trong trường hợp xấu nhất, có thể lấy +2 µs cho thời gian thực thi của chúng.
Năm 1992, trước khi ngừng hoạt động BESM-6, các nhân viên của Trung tâm Nghiên cứu và Phát triển đã so sánh hiệu suất của nó trong việc đếm các kết hợp cầu nối với 286 bộ xử lý (triển khai của AMD, được ép xung lên 16 MHz, so với tiêu chuẩn 12) và theo đảm bảo của họ, đã nhận được số lượng xấp xỉ bằng nhau. Hiệu suất của AMD 286 vượt quá 2,6 MIPS, nhưng chúng tôi không biết họ đã sử dụng phiên bản BESM-6 nào (rất có thể là Elbrus-1K2, trên vi mạch mạnh hơn nhiều so với bản gốc).
Cuốn sách "Từ bộ vi xử lý đến máy tính cá nhân" (Cheremnykh S. V., Giglavy A. V., Polyak Yu. E., 1988, Vô tuyến và truyền thông) cung cấp các ví dụ về điểm chuẩn (cộng và nhân các mảng trong một chu kỳ) bằng các ngôn ngữ khác nhau cho các máy móc và cho biết thời gian thực hiện của chúng. Theo thông tin này, thời gian thực hiện thử nghiệm là (tùy thuộc vào ngôn ngữ) từ 0,08 đến 0,23 giây đối với BESM-6 và từ 0,11 đến 0,38 giây đối với EU 1055M, 0,45 giây đối với DVK (bộ xử lý MS 1201.02) và 0,37 giây đối với PC / AT với bộ xử lý 16 MHz.
Tất cả những dữ liệu này rất mâu thuẫn và trong trường hợp không có BESM-6 hoạt động, sẽ không thể tìm ra sự thật, tuy nhiên, chúng tôi lưu ý rằng kết quả trung bình của một bài toán ngẫu nhiên trong mọi trường hợp không vượt quá 0,8–1,5 MIPS .
Lưu ý rằng tốc độ này đã đạt được bởi IBM 7030 Stretch tám năm trước đó, CDC 6600 huyền thoại đã xác nhận hơn 3 MIPS 4 năm trước đó và S / 360 cũ hơn tạo ra 0,8–1 MIPS tương tự vài năm trước đó.
Do đó, chúng ta thấy rằng BESM-6 chắc chắn sẽ nằm trong số những người nắm giữ kỷ lục thế giới vào năm 1959–1960, nhưng trong năm 1968, các thông số của nó không đại diện cho bất cứ điều gì siêu nhiên và ở mức tiêu chuẩn cho một máy tính lớn thông thường, và thậm chí vào giữa thập kỷ. . Ở cấp độ ô tô châu Âu thời đó (Siemens, Bull, Olivetti), BESM-6 trông bình thường, trong khi không thể so sánh với CDC (vốn là những chiếc xe mạnh nhất thời đại). S / 360 không tệ hơn - về tính toán khoa học và tốt hơn đáng kể - về tài chính.
Không có gì phải ngạc nhiên ở đây.
Như chúng tôi đã nói, BESM-6 không có hỗ trợ số học số nguyên, có nghĩa là bất kỳ lệnh số học nào được thực hiện trên một bộ cộng thực và bây giờ hãy tưởng tượng niềm vui của việc tính toán địa chỉ thông qua mô phỏng số học số nguyên hầu hết mọi chu kỳ đồng hồ - máy không đăng ký, nhưng tiếng xưa, với một bộ cộng, do đó, các con số phải được điều khiển liên tục từ RAM đến RAM. Điều này dẫn đến thực tế là ngay cả trong trường hợp tốt nhất, việc đọc yêu cầu 3 chu kỳ, cộng - 5 chu kỳ (trung bình - 11, kém nhất - 280), nhân - 15 chu kỳ (trung bình - 18,5 và trong trường hợp xấu nhất - 162 ), quá trình phân chia diễn ra trung bình 50 chu kỳ. Kết quả là, các chương trình không chỉ chạy chậm hơn có thể mà còn chiếm nhiều dung lượng hơn.
V. V. Przyjalkowski cũng đề cập đến điều này trong bài đánh giá của mình:
Nếu chúng ta nói về hiệu suất theo con số theo bài kiểm tra Whetstone phổ biến lúc bấy giờ, BESM-6 đã đạt được khoảng 0,3-0,4 triệu hoạt động với độ chính xác đơn mỗi giây, ở mức độ của các mẫu IBM trung bình.
Một vấn đề khác là hoàn toàn không thể đoán trước được thời gian. Lệnh tương tự có thể được thực hiện cho các thời gian khác nhau theo nghĩa đen theo thứ tự độ lớn! Theo tiêu chuẩn hiện đại, đây là một cơn ác mộng, và theo tiêu chuẩn của những năm 1970 - không tốt hơn nhiều.
Trong bất kỳ hệ thống hướng dẫn nào, bắt đầu từ những năm 1960, người ta biết trước chính xác bao nhiêu chu kỳ mà hành động này hoặc hành động đó sẽ thực hiện, và các thời gian này được quy định trong tất cả các sách hướng dẫn dành cho lập trình viên cấp thấp. Mặt khác, Lebedev hoàn toàn không hiểu tại sao cần ít nhất một loại khả năng dự đoán nào đó, và thậm chí còn không cố gắng đạt được nó.
Kết quả là, trong BESM-6, thời gian thực thi thay đổi tùy thuộc vào các hiện tượng ngẫu nhiên, không chỉ đối với những hiện tượng hiển nhiên - ví dụ, liệu một địa chỉ có được đưa vào tìm nạp trước hay không, mà ngay cả trên giá trị của các toán hạng.
Không rõ đối thủ cạnh tranh nào mà Lebedev nói cụm từ được gán cho anh ta: “Đúng, tốc độ máy của bạn cao hơn của tôi, nhưng do độ tin cậy thấp, nó vẫn sẽ không có thời gian để tính toán nhiệm vụ giữa hai sự cố! ”, Nhưng nhiều người giải thích nó như một bằng chứng về độ siêu tin cậy của BESM-6.
Chỉ có một nơi trên thế giới mà cô có thể đối mặt với CDC 6500 trong một cuộc chiến công bằng - trung tâm nghiên cứu hạt nhân ở Dubna. Đây là kết quả của trận chiến của họ: họ có cùng kế hoạch hàng năm về số giờ làm việc - trên danh nghĩa là 6000 giờ, nhưng trên thực tế BESM-6 làm việc 1979 giờ vào năm 6910 và CDC là 7440 giờ. Điều quan trọng nhất nằm ở các số liệu khác - 75 nghìn tác vụ được xử lý trên máy của Lebedev, trên CDC - gần 200 nghìn ...
Có một số lầm tưởng dai dẳng về kiến trúc hệ thống BESM-6, một trong số đó là sự hiện diện của bộ nhớ ảo.
Khái niệm này lần đầu tiên được thể hiện trong Atlas, và cũng có một bộ nhớ kết hợp được triển khai để xác định sự hiện diện của trang bộ nhớ ảo cần thiết trong RAM.
Tại sao nó lại là những gì trong BESM-6 không phải là nó?
Hỗ trợ bộ nhớ ảo giúp bạn có thể xử lý nhiều bộ nhớ hơn so với thực tế được cài đặt trên máy. Trên BESM-6, trong phiên bản có RAM tăng gấp ba lần, mọi thứ ngược lại - có nhiều bộ nhớ vật lý trên máy hơn khả năng giải quyết! Thực tế là, có bộ nhớ 128 kwords, chúng tôi phải làm việc với nó thông qua các địa chỉ 15 bit (kế thừa từ CDC 1604). Do khái niệm hoàn toàn mâu thuẫn về việc “giữ định dạng địa chỉ tương thích với CDC 1604, nhưng tăng gấp ba lần bộ nhớ”, một loại nạng đặc biệt đã được giới thiệu - cái gọi là 32. sổ đăng ký. Trước khi truy cập bộ nhớ thực, địa chỉ thực thi được chia thành hai phần 5 + 10 bit. Phần cao được hiểu là số đăng ký nhà, từ đó 7 chữ số của số trang vật lý được lấy và cùng với 10 bit quan trọng nhất của địa chỉ, chúng tạo thành một địa chỉ vật lý 17 bit. Lebedev tự hào gọi chế độ này là “bộ nhớ ảo”.
Trong Atlas, địa chỉ ban đầu là 24-bit và khi cố gắng định địa chỉ bên ngoài bộ nhớ thực, người giám sát sẽ hoán đổi trang với địa chỉ ảo tương ứng trong RAM từ trống, giống như những gì xảy ra hiện nay khi các trang được phân trang từ đĩa.
Nhân tiện, một vấn đề tương tự với địa chỉ đã tồn tại trong BESM / BESM-2 / M-20 / BESM-4, nhưng mọi thứ thậm chí còn bị bỏ qua nhiều hơn ở đó. Trong đó, Lebedev sử dụng hệ thống lệnh ba địa chỉ yêu thích của mình ở định dạng KOP | A1 | A2 | A3, trong đó COP là mã hoạt động, các địa chỉ A1 – A3.
Tại sao chúng ta lại mắng nguyên tắc này nhiều như vậy, bề ngoài cái gì cũng đẹp?
Thực tế là mỗi địa chỉ có thể tham chiếu đến tối đa 4096 từ, nó không còn phù hợp với xe buýt, vốn đã quá rộng, bởi vì ba địa chỉ như vậy và một mã hoạt động phải được đẩy qua nó. Nhưng ngay cả BESM đầu tiên cũng có nhiều bộ nhớ hơn!
Làm thế nào để liên lạc với cô ấy?
Để sử dụng toàn bộ dung lượng RAM, nó được chia thành cái gọi là. "cubes", tiền tố của các hình khối này đã được giới thiệu để giải quyết. Tính năng định địa chỉ gián tiếp chưa được mở vào thời điểm đó (ít nhất là trong ITMiVT), vì vậy các lập trình viên đã viết mã tự sửa đổi, thay đổi địa chỉ A1, A2, A3 trong các lệnh khi đang di chuyển (theo quan điểm của ít nhiều nguyên tắc lập trình hiện đại, là một cuộc tấn công bẩn thỉu và biến thái thái quá, vì vậy ngay cả virus cũng cố gắng không viết trừ khi thực sự cần thiết, trong BESM, đó là một phương thức hoạt động thường xuyên).
Một vấn đề khác là công việc khét tiếng với các thiết bị bên ngoài, Lebedev đã giải quyết nó một cách khắc nghiệt nhất có thể trong các máy ban đầu của mình - đơn giản bằng cách mã hóa cứng tất cả các cuộc gọi ngay trong phần cứng, mặc dù thực tế là đã không có đủ lệnh. Không có nỗ lực nào trong việc trừu tượng hóa các thiết bị, điều này một lần nữa cho thấy rằng anh ta là một kỹ sư điện xuất sắc cũng như anh ta là một kiến trúc sư hệ thống sai sót. Từ đó, cảm ơn Chúa, CDC đã được lấy làm nguyên mẫu cho BESM-6. Lebedev hiểu rõ giới hạn năng lực của mình (đôi khi) và không dám phát triển một siêu máy tính ở mức cần thiết hoàn toàn từ đầu theo cách tưởng tượng của riêng mình.
Huyền thoại kiến trúc tiếp theo
Huyền thoại kiến trúc tiếp theo được kết nối với băng tải, họ nói, BESM-6 là cỗ máy đầu tiên trên thế giới mà Lebedev khéo léo đã xây dựng “đường ống dẫn nước” của mình, điều mà ông đã báo cáo tại một hội nghị ở Darmstadt, và những người châu Âu hẹp hòi đã trải nghiệm sốc và kinh ngạc.
Trên thực tế, ý tưởng về băng tải đã được Konrad Zuse thể hiện và được thực hiện dưới dạng hai giai đoạn sơ khai trong Z3. Năm 1949, ông cố gắng cấp bằng sáng chế cho việc triển khai nó trên Z4, nhưng đáng ngạc nhiên là bằng sáng chế này đã bị giữ lại cho đến giữa những năm 1960, mặc dù thực tế IBM là người bảo trợ cho Zuse.
Những ý tưởng tương tự đã xuất hiện vào đầu những năm 1950, cả Lebedev và Rameev đều nghĩ về chúng, và chúng đã được thảo luận tại các cuộc hội thảo của MPEI. Năm 1946, nước Anh khẩn cấp cần một mảnh đất khổng lồ không có người ở để thử nghiệm hạt nhân. vũ khí. May mắn thay, họ đã tìm thấy một mảnh đất như vậy, và nó được gọi là Australia.
Kết quả là, một thỏa thuận đối tác đã được ký kết - các địa điểm thử nghiệm để đổi lấy quyền tiếp cận các công nghệ hiện đại. Đây là cách thành lập Cơ sở Nghiên cứu Vũ khí Úc (WRE, đã phát minh ra rất nhiều thứ, ví dụ, vào năm 1957, họ đã tạo ra chính “hộp đen” cho máy bay).
Đặc biệt đối với WRE, công ty Elliott Brothers của Anh đã phát triển máy tính Elliott model 403 (thường được gọi là WREDAC). Máy ống này được đưa vào sản xuất năm 1955 và có băng tải hai tầng tương tự như bằng sáng chế của Zuse.
Chúng tôi lưu ý rằng cả ý tưởng của Zuse và Lebedev đều không thuộc về một băng chuyền thực sự theo nghĩa hiện đại của từ này. "Đường ống" của họ chỉ giả định sự kết hợp của hai hoạt động được định hướng đối lập nhau - số học-logic trong bộ xử lý và tìm nạp toán hạng tiếp theo từ RAM.
Băng tải này liên quan đến sự hiện diện của một thiết bị điều khiển tiên tiến hoạt động trên một nguyên tắc hoàn toàn khác. Song song mức lệnh trong một đường ống thực có nghĩa là chồng chéo ít nhất ba hoạt động trên lệnh - tìm nạp, giải mã và thực thi, vì vậy cần phải thực hiện một cơ chế dự đoán nhánh có điều kiện khá phức tạp.
Đường ống theo nghĩa này lần đầu tiên được mô tả trong tác phẩm của Donald Bruce Gillies, một nhà toán học và khoa học máy tính lỗi lạc người Canada, người đã làm việc tại Đại học Illinois trong dự án siêu máy tính KaraokeIAC II. Nó là một cỗ máy tiến bộ đáng kinh ngạc, nhưng sự phát triển của nó chỉ kết thúc vào năm 1962, trong khi tất cả các tài liệu và nguyên tắc hoạt động đều được đưa ra trong các tài liệu học thuật mở đầu năm 1957-1958. và không được cấp bằng sáng chế, các nhà phát triển Stretch đã mượn sơ đồ băng tải từ họ, nhưng chính thức quản lý để phát hành chiếc xe của họ ba năm trước đó.
Cùng năm 1959, con quái vật ống M-100 của Kitov được tạo ra trong một bản sao duy nhất, mà chúng tôi đã viết về nó, thực tế không có thông tin gì về kiến trúc của nó, người ta chắc chắn rằng nó có kiến trúc Harvard và một bộ xử lý pipelined, nhưng làm thế nào nó có thể thực hiện các chương trình có mục đích chung và loại băng tải nào thì vẫn chưa được biết.
Đường ống BESM-6 được CDC-6600 theo dõi, chỉ trong Cray mỗi bộ xử lý có 10 khối độc lập có thể thực hiện song song các lệnh từ đường ống, đó là lý do tại sao chiếc máy này được coi là bộ xử lý siêu thanh đầu tiên trên thế giới.
Các kiến trúc tiên tiến hơn nữa là CDC 7600, được tạo ra vào năm 1969 và IBM System / 360 model 91 (1967), sử dụng tất cả các tính năng hiện đại của đường ống, bao gồm thực thi suy đoán và đổi tên thanh ghi.
Một mạch nguyên thủy hơn nhiều với bộ cộng trong BESM-6 không thể có một đường dẫn theo nghĩa hiện đại của từ này, giống như bộ nhớ ảo. Bản thân ALU không phải là pipelined - nếu bộ xử lý nhân hai số, nó không thể làm bất cứ điều gì khác, mặc dù đồng thời có thể tìm nạp lệnh tiếp theo. Vì vậy, việc thực hiện “đường ống” ở đây đã lỗi thời trước 15 năm, tương tự như công việc của Zuse, Rameev và Elliot.
Ảo tưởng cuối cùng
Quan niệm sai lầm cuối cùng về "những đổi mới khổng lồ" của BESM-6 là sự hiện diện của một bộ nhớ đệm trong đó.
Trên thực tế, không có bộ nhớ cache theo nghĩa hiện đại của từ này; một bộ nhớ cache chính thức chỉ xuất hiện trong dòng IBM System / 360 model 85 vào cùng năm 1967.
Bộ nhớ đệm của người khỏe mạnh bao gồm một tập hợp các mục nhập trong RAM cực nhanh (thường là RAM tĩnh), mỗi mục nhập được liên kết với một khối dữ liệu, là bản sao của khối đó trong RAM thông thường. Mỗi mục nhập có một mã định danh (thường được gọi là thẻ) xác định sự tương ứng giữa các mục dữ liệu trong bộ đệm và các đối tác của chúng trong bộ nhớ chính. Nếu mục nhập được tìm thấy trong bộ đệm có ID khớp với ID của mục được yêu cầu, thì các mục trong bộ đệm sẽ được sử dụng. Đây được gọi là lần truy cập bộ nhớ cache. Nếu mục nhập có chứa phần tử dữ liệu được yêu cầu không được tìm thấy trong bộ đệm, thì mục đó sẽ được đọc từ bộ nhớ chính vào bộ đệm và trở nên khả dụng cho các lần truy cập tiếp theo. Đây được gọi là lỗi bộ nhớ cache.
Trong BESM-6, thay vì mô hình này, chỉ có bốn cái gọi là. thanh ghi bộ đệm số (BRCh), nơi các từ được đọc từ bộ nhớ, để sau này ALU có thể truy cập chúng nhanh hơn. Tương tự, có 8 thanh ghi bộ đệm ghi (BRZ) (một lần nữa là bất đối xứng kỳ lạ) nơi số được đặt trước khi được ghi vào bộ nhớ. Địa chỉ nơi toán hạng sẽ được ghi được lưu trữ trong cái gọi là. BAZ (thanh ghi đệm địa chỉ của bản ghi). Nếu sau đó hóa ra rằng địa chỉ thực thi trùng với một trong các địa chỉ trong BAZ / BAS, thì toán hạng được lấy từ BRZ / BRCh chứ không phải từ bộ nhớ. Đó là toàn bộ "bộ nhớ cache" trong Besmovsky.
Và cuối cùng, ảo tưởng cuối cùng là ý tưởng rằng BESM-6 là tiền thân của kiến trúc RISC.
Tất nhiên, không có quá nhiều lệnh trong BESM-6, khá ít, nhưng đây là tham số duy nhất mà nó tương tự như RISC. Tuy nhiên, một bộ xử lý RISC chính thức: có một tập hợp nhỏ các lệnh đơn giản, một số lượng lớn RON (thanh ghi đa năng), một kế hoạch được phát triển để đổi tên chúng, các lệnh cơ bản và tốc độ thực thi chuẩn và có thể dự đoán của bất kỳ lệnh nào trong số chúng - 1–2 chu kỳ.
Nếu bạn đã đọc bài báo cho đến thời điểm này, bạn đã hiểu rằng BESM-6 đã bay qua đây trong mọi khía cạnh, ngoại trừ số lượng đội.
Như chúng tôi đã nói, mọi thứ thật đáng buồn với phần mềm trong BESM-6.
Nó chỉ được cung cấp với tiền thân của Hệ điều hành Dispatcher-68 do ITMiVT phát triển, chỉ cho phép khởi chạy hàng loạt các tác vụ và phân bổ tài nguyên cho chúng. Mã tự động của Lebedev được đề xuất như một ngôn ngữ, ngay lập tức bị bỏ rơi bởi tất cả những người thích hợp. Như chúng tôi đã đề cập, hy vọng có thể khởi chạy ngay toàn bộ mảng phần mềm từ CDC 6 trên BESM-1604, nhưng điều đó đã không thành hiện thực. Kết quả là, mỗi nhóm khoa học bắt đầu sốt sắng cắt giảm các cách triển khai khác nhau của các ngôn ngữ và hệ điều hành, tất nhiên, không tương thích với nhau.
Điều tuyệt vời nhất trong số đó là cùng một hệ thống giám sát "Dubna" - và lực lượng của Liên Xô là không đủ cho nó, cần phải kết nối người Đức từ CHDC Đức, người Hungary và thậm chí cả người Mông Cổ - toàn bộ ủy ban quốc tế của JINR.
Theo đó, có thể chọn lại các trình biên dịch Fortran và Algol-60 đã bị đánh cắp, muộn hơn nhiều so với LISP và Pascal, nhưng tất cả điều này đều phải trả giá bằng những nỗ lực cực kỳ nguy hiểm. Algol-60 ban đầu được tạo ra tại Trung tâm Máy tính của Học viện Khoa học Liên Xô trong Phòng thí nghiệm Lập trình dưới sự chỉ đạo của V. M. Kurochkin, đầu tiên là BESM-2, sau đó được chuyển sang BESM-6 (đối với BESM-4 có ít nhất 3 trình biên dịch khác nhau với Algol-60, không ít hơn 2 trình biên dịch khác nhau, Dubninsky và Bayakovsky và một trình biên dịch từ ngôn ngữ Epsilon gốc - đây là một vườn thú điển hình), và như nhiều người đã nói, ông vẫn là người dịch duy nhất cho cô ngôn ngữ.
Rắc rối là vào năm 1964, một đặc tả ngôn ngữ mới ra đời, thường được gọi là (sau năm cuối cùng tiêu chuẩn được thông qua) Algol-68, mà Kurochkin không còn thông thạo nữa. Máy phiên dịch Algol-68 từ CDC 1604 đã làm việc không cẩn thận, điều này đã phá vỡ sự ra mắt của nhiều chương trình CERN mà các nhà vật lý của chúng tôi ở Dubna đang tin tưởng.
Ở châu Âu, Algol-68 đã được sử dụng bởi Ủy ban Liên lạc và Radar Hoàng gia Anh trong một thời gian dài.
Ở Liên Xô, có các nhóm công tác phát triển Algol-68 (ví dụ, Novosibirsk dưới sự lãnh đạo của Viện sĩ Andrei Petrovich Ershov, Leningrad dưới sự lãnh đạo của Andrei Nikolaevich Terekhov, Moscow dưới sự lãnh đạo của Alexander Nikolaevich Maslov và Mikhail Ruvimovich Levinson ). Một trình biên dịch và một hệ thống lập trình mạnh mẽ trong Algol-68 đã được tạo ra tại Đại học Bang Leningrad, nhưng ... đã dành cho máy tính của EU, được vận hành trong nhiều năm (nhân tiện, đây là lý do tại sao EU cũng xuất hiện ở Dubna, vì vì lợi ích của một vùng ngoại vi được phát triển và vì lợi ích của số lượng phần mềm và trình biên dịch không khả dụng cho BESM-6 hoặc hoạt động không chính xác).
Nhiều chương trình đã xuất hiện sau khi làm quen với mã nguồn nước ngoài, ví dụ như N. N. Govorun từ LVT JINAT, sau một chuyến công tác đến CERN, sử dụng bản in máy từ CDC 3200 được thực hiện tại trung tâm máy tính của họ, được triển khai trên BESM-6 Fortran và thư viện các chương trình tiêu chuẩn, sáu BESM -6 đã được bàn giao cho CHDC Đức, và các lập trình viên của họ từ JINR, đã về quê hương của họ, đã tạo ra phiên bản trình hợp dịch của riêng họ, Fortran-GDR và Algol-GDR (hoạt động được 20–30% nhanh hơn so với trong nước).
Z. F. Bochkova, G. N. Ezerov, V. M. Mikhelev dưới sự chỉ đạo của V. S. Shtarkman từ IPM. Keldysh (sau chuyến công tác tới IBM) đã phát triển mã tự động BEMSh, vì mã tự động ban đầu của M. G. Tchaikovsky, dựa trên kỹ năng ghi nhớ của chính Lebedev, về cơ bản là hai chữ cái, hoàn toàn phi logic và không thể đọc được, dẫn đến nhiều thay đổi không tương thích.
Hệ thống tệp BESM-6 không bao giờ được viết và hoàn thiện đến cùng; nói chung, mỗi trung tâm khoa học đều cố gắng viết một cái gì đó của riêng mình để gây bất lợi cho mọi thứ khác. Ở Chelyabinsk có lưu trữ trên băng, ở Dubna - ngôn ngữ của con người để mô tả các nhiệm vụ và Fortran-GDR, và Algol-GDR, tại VMK MGU - LISP và DISPAK.
Tất nhiên, cả OS / 360 ban đầu và IBM đều gặp sự cố, nhưng họ đã khắc phục tình hình cực kỳ nhanh chóng, trong khi ở Liên Xô, mớ hỗn độn với hàng nghìn thư viện được viết vào các thời điểm khác nhau bởi bất kỳ ai và không tương thích với nhau chưa bao giờ được giải quyết. các khu vực mà vụ việc không liên quan đến việc sao chép trực tiếp phần mềm cho EU.
Mọi thứ mà người hâm mộ BESM-6 rất tự hào - hệ điều hành nổi tiếng ND-70, Dubna, DISPAK, v.v., chỉ được phát triển vào giữa những năm 1970. Nhờ DISPAK, vào năm 1972, cuối cùng họ đã kết nối được ổ cứng với bộ điều khiển lấy từ General Electric đến BESM-6, trước đó mọi người đã làm việc với trống cổ, ban đầu từ đầu những năm 1950.
Máy IBM đã làm việc với đĩa từ năm 1956 - đây là câu hỏi về "kiến trúc tiên tiến" của BESM-6. Một cái trống có sức chứa 16 kilo (192 kilobyte) và nặng nửa tấn. Trống có thể được gắn vào tối đa 4 miếng. Đồng thời, ổ cứng IBM thông thường có dung lượng 5 megabyte và ổ cứng lớn - 30 megabyte. Lưu ý rằng BESM-6 ở Dubna có một số khác biệt về phần cứng, từ tính chẵn lẻ trong các dòng đầu cuối đến các bit địa chỉ vật lý trong thanh ghi.
Do đó, hệ điều hành Dubna không khởi động được trên các máy có nhiều hơn 4 khối bộ nhớ, vì các bit phụ của địa chỉ vật lý được người điều phối sử dụng cho các mục đích riêng của họ. Nói chung, điều này giải thích tại sao Dubna không phổ biến ở những nơi khác.
Nói chung, những người khác xa với thiết kế máy tính của phương Tây thường không thể hiểu rằng thứ chính của một chiếc xe hơi không phải là phần cứng, mà là phần mềm. Không phải chương trình được viết dưới máy đã hoàn thiện. Máy được tạo ra theo cách thuận tiện để viết các chương trình cho nó, và thậm chí tốt hơn - sử dụng các chương trình hiện có với những thay đổi tối thiểu. Thật không may, ngay cả ở phương Tây, không phải ai cũng hiểu được bản chất của tiên đề đơn giản này.
Fred Brooks, một trong những nhà phát triển hàng đầu của Stretch, đã xây dựng điều này rất rõ ràng - thiết kế của bất kỳ kiến trúc máy tính nào nên bắt đầu với tập hợp các yêu cầu của người dùng, chứ không phải suy nghĩ cá nhân của một kiến trúc sư hệ thống cụ thể và tầm nhìn độc đáo của cá nhân anh ta về những gì máy nên hóa ra.
Không phải người cho máy tính, mà là máy tính cho người.
Bước thứ hai là xây dựng một hệ thống lệnh dự thảo đáp ứng tốt nhất cho người dùng cuối (và đối với kiến trúc sư hệ thống, người dùng cuối là các lập trình viên cấp thấp, những người sẽ tạo ra tất cả phần mềm cho những người bình thường) và chỉ sau đó mới phát triển các giải pháp mạch cụ thể bắt đầu.
Chu trình này đã được làm chủ để hoàn thiện bởi hai công ty - IBM, đã học hỏi từ Stretch và tạo ra S / 360 tuyệt vời, và Burroughs, công ty đã phát triển tương tự như dòng B5000 tuyệt vời (ở đây chúng ta đang nói về các máy thương mại hàng loạt, CDC và Cray tương tự tạo ra siêu máy tính khoa học - thu thập các ứng dụng và yêu cầu của các nhà khoa học và cố gắng đáp ứng chúng càng nhiều càng tốt).
Do đó, các máy tính lớn dòng Z vẫn tương thích với các máy từ những năm 1960, ngành ngân hàng có hàng tỷ dòng mã được viết bằng COBOL của Kennedy, và IBM và Burroughs (trong thế hệ UNISYS) là những nhà sản xuất máy tính lớn duy nhất bước ra. của thế kỷ XNUMX, khi họ được thành lập, trong thế kỷ XNUMX.
Ở Liên Xô, tiên đề này, than ôi, không được hiện thực hóa (từ một từ nào đó), vì vào năm 1960, chúng tôi đã có ITMiVT như một công ty độc quyền tương đương với IBM. Cũng chính Yuditsky đã thiết kế Almaz theo các yêu cầu cụ thể của hệ thống phòng thủ tên lửa (và sau đó là GRU), và những người sử dụng tiềm năng của nó rất vui mừng với các mô hình nguyên mẫu của chiếc máy này, mặc dù họ không cho phép ông phát hành loạt phim này. Mọi thứ ở ITMiVT hoàn toàn khác, người ta tin rằng Lebedev tài giỏi hơn bạn hiểu rõ bạn cần loại máy tính nào, anh ấy là một người chuyên nghiệp, vì vậy hãy sống với hệ thống lệnh và kiến trúc mà anh ấy đã khai sinh ra.
Ví dụ, những người đã quen thuộc với các công nghệ hiện đại sẽ không bị hiểu lầm hoặc chán ghét bởi sự quen thuộc với các chi tiết của việc triển khai quản lý bộ nhớ trong S / 360. Sự quen thuộc với các tính năng của lập trình cấp thấp trong BESM-6 thường gây sốc cho các lập trình viên hiện đại. Trên thực tế, nó không dễ dàng hơn đối với các ông nội, vì vậy phần mềm cho BESM-6 đã được viết trong một thời gian dài, rất lâu, cho đến khi nó qua đời vào những năm 1990.
Một số triển khai thành công, một số không quá nhiều, tất cả những điều này được thực hiện bởi nỗ lực của các viện nghiên cứu và trung tâm nghiên cứu khác nhau, bằng cách nào đó đã lan rộng ra khắp cả nước theo những cách khác nhau. Huyền thoại về chất lượng và số lượng phần mềm cho BESM-6 phần lớn xuất phát từ thực tế là, đầu tiên, gần 400 trong số chúng đã được phát hành (bao gồm cả các sửa đổi), điều này thật đáng kinh ngạc theo các tiêu chuẩn của Liên minh, hầu hết mọi trung tâm khoa học lớn, và thứ hai, chúng đã được tán trong 6 năm và sử dụng trong 20 năm.
Kết quả là, các nhà khoa học, con người còn lâu mới ngu ngốc, trong thời gian này họ đã có thể sinh ra khá nhiều chương trình chịu đựng. Đương nhiên, cũng có những trường phái lập trình lý thuyết lớn (nói chung, các lập trình viên Xô Viết có sức mạnh tối đa, được cả thế giới tôn trọng như các nhà lý thuyết khoa học máy tính, là những người đến từ toán học, bắt đầu với Lyapunov và Shura-Bur).
Các nguyên tắc lý thuyết để xây dựng hệ điều hành và trình biên dịch được phát triển, các bài báo đã được viết, các luận án được bảo vệ, các trường khoa học được tạo ra. Tất cả những điều này, tất nhiên, xứng đáng cả về số lượng và chất lượng.
Vấn đề duy nhất là nền khoa học hàn lâm xuất sắc đang nằm trong tháp ngà của nó, giúp tạo ra những bước phát triển mang tính bước ngoặt như DISPAK, Dubna và ND-70, nhưng đất nước cần hàng chục nghìn lập trình viên chứ không chỉ hàng chục học giả lập trình. Chúng tôi không gặp vấn đề gì với chúng, nhưng với các bộ mã hóa thông thường ...
Trong bài tiếp theo, chúng tôi sẽ hoàn thành việc xem xét sự phát triển trong nước mang tính bước ngoặt này.
Để được tiếp tục ...
tin tức