Сайт Мальчиша-Кибальчиша


 
16.04.2024 г.
Разделы
Партнёры

Реклама

Две трагедии советской кибернетики. Часть 2.

Печать E-mail
(31 голосов)
Автор Максон   
23.09.2011 г.
IBM360
Самолёт наконец сел в аэропорту Толмачёво и пассажиры похватав сумки потянулись к выходу из "аэробуса". А320 - в общем неплохой самолёт и довольно тихий. И, видимо, удобен в эксплуатации, судя по популярности у наших авиакомпаний. Тот же Аэрофлот в своём парке имеет более 40 таких авиалайнеров, других же типов не более десятка в каждом. В общем же количестве А320 гораздо более половины и отечественных там наберётся едва ли десяток. Это я узнал сидя в своём кресле и листая какой-то рекламный журнал авиакомпании. И, надо сказать, другие авиакомпании не слишком отличаются в своём выборе. По-сути сейчас вся Россия летает на этих А320. Опять же, почему не на наших "тушках"? Ту-204 имеет чуть большую вместимость и почти ту же дальность, Ту-334 чуть меньше по вместимости. Ту-204-300 вообще был разработан в трёх вариантах с дальностью полёта 3400, 7500 и 9250 км. Таким образом, он стал первым отечественным двухмоторным самолётом, способным совершить беспосадочный перелёт из Москвы во Владивосток. Ту-334 и Ту-204 более экономичны по топливу и почти также комфортабельны, как "аэробус". Что мешает использовать их?
 
Они уступали лишь в одном - первоначальные проекты были на три члена экипажа, что уже многовато по международным стандартам. Нужно два. Но последние модификации устранили и этот недостаток. И опять же, "тушки" чем-то не угодили власти. Президент Медведев заявляет, "что самолёты российского производства имеют целый ряд технических недостатков", после чего Иран отказывается от своих планов закупок российских самолётов. Сделка на сотню самолётов отменена. Это у нас такой "государственный" подход? Раскручивают "Суперджет", который строится на западных комплектующих и появился только-только. При этом гражданские авиационные КБ еле сводят концы с концами. Нынешняя ситуация с авиапромом очень напоминает ту, что была в 70-х годах прошлого века с вычислительной техникой. Власть целенаправленно лишила заказов отечественных разработчиков. Заставила "интегрироваться" в мировую индустрию путём воспроизводства чужих разработок. Зачем? Какие были мотивы?

Строго говоря, кое-какие объективные причины всё же были. Как и в случае авиапрома. Для любого действия можно найти какие-то оправдания, и даже весьма убедительные. Глава "Сухого" (а ныне и ОАК, и, по сути, всего российского авиапрома) Михаил Погосян заявил:

"С Ту-334 невозможно реализовать бесстапельную сборку, а значит, трудоемкость процесса будет в три раза выше. Надо элементарные вещи понимать и не обманывать себя, не говорить, что "Сухой" закрыл программу Ту-334. Я ничего не закрывал! Просто Ту-334 спроектирован под никакое серийное производство. А мы "Суперджет" проектировали параллельно с программой технического перевооружения заводов в Комсомольске-на-Амуре и Новосибирске."
Есть резон в этих словах? Конечно. Есть только одно "но": Ту-334 разрабатывали ещё в конце 80-х, а первый полёт он совершил 8 февраля 1999 года, более 10 лет назад. Всё это время он ждал когда же будут заказы. Их не было. А "суперджета" с его "бесстапельной" сборкой не было ещё и в проекте. И если бы были заказы, были бы инвестиции, то КБ "Туполева" могло бы создать за это время и новый проект с "бесстапельной" сборкой. "Сухому" же просто повезло, с военными заказами на экспорт они не только сохранили производство, но и смогли его модернизировать. Смогли встроиться, так сказать, в мировой рынок, обзавестись при этом новой технологией сборки. В какой-то мере об этом позаботилась и российская власть и это хорошо. Плохо, что она не проявила аналогичной заботы о гражданских КБ.

Свои резоны можно найти и по вводу "Единой Системы ЭВМ" в конце 60-х:

"Стоит начать с того, что к середине 60-х годов прошлого века назрела необходимость перехода от ЭВМ второго поколения к машинам с общей архитектурой, т. е. программно-совместимым. Сегодня мы даже не задумываемся, почему разные по конфигурации компьютеры (и собранные в разных частях света) могут без проблем взаимодействовать между собой, а полвека назад о такой совместимости можно было только мечтать. ЭВМ второго поколения, создававшиеся на полупроводниковых элементах (транзисторно-диодные), представляли собой отдельные системы, не годящиеся для массового выпуска. А компьютеры уже требовались не только для научных вычислений и оборонных нужд, они нужны были на предприятиях и прочих организациях, причем в больших количествах."
Сформулирую это немного иначе. Речь, вообще говоря, идёт об идее стандартизации в отношении архитектуры ЭВМ. Действительно, в конце 60-х в СССР существовало более десятка различных КБ, разрабатывавших различные типы ЭВМ. И все они были совершенно несовместимы по системе команд и характеристикам. А значит требовали различное программное обеспечение. Простое введение стандарта резко сократило бы затраты на разработку программного обеспечения, которое стало бы едино для всех ЭВМ.

Сегодня мы этой проблемы не замечаем, поскольку система команд Intel и архитектура x86 (Pentium) по существу стали стандартом. Даже конкурент Intel, компания AMD, вынуждена выпускать процессоры с той же системой команд. И даже сам Intel теперь не может отказаться от введённого им же самим стандарта и вывести на рынок процессор с какой-то иной системой команд. Рынок просто откажется от него - слишком много программного обеспечения уже написано именно для x86. Та же проблема у Microsoft - все новые операционные системы должны быть совместимы с предыдущими версиями. Иначе не будут покупать! Система команд x86 стала отраслевым стандартом точно так же, как API (application programming interface - интерфейс программирования приложений) операционной системы Microsoft Windows. Это не строгое утверждение, Intel производит множество процессоров различной архитектуры. Но не для "десктопов" - настольных персональных компьютеров, здесь царствует именно x86. И в области программного обеспечения "стандартов", вообще говоря, два - Windows и Linux. И стандарты эти вводили не законом, так распорядился рынок.

Эта ситуация всеобщего стандарта на написание программ даёт огромные выгоды - вся масса программного обеспечения, созданная многими разработчиками и за многие годы продолжает быть полезной и постоянно накапливается. Сейчас выбор конкретной аппаратуры зависит чаще от того программного обеспечения, которое сможет на ней работать, чем от конкретных характеристик самой аппаратуры. Именно поэтому у какой-то новой архитектуры с новой системой команд на рынке нет шансов. Если нет режима совместимости со старой x86 никто не рискнёт её внедрять. И это не такое уж открытие, если вспомнить, что современный транслятор с языка программирования - это миллионы строк программы, это огромные затраты высококвалифицированного труда.

Совершенно иной была ситуация в 60-х годах прошлого века. Каждый новый компьютер вызывал необходимость создавать для него программное обеспечение буквально с нуля. И это правило сохранялось даже в рамках одного производителя! И первой это правило нарушила именно американская фирма IBM - она первая в отрасли начала создавать линейку программно совместимых компьютеров с различной производительностью и назначением. И именно поэтому захватила рынок так называемых "промышленных" компьютеров - массовых компьютеров средней производительности для экономических расчётов. Не Сеймур Крей со своими суперкомпьютерами захватил рынок, не фирма CDC, где он работал, а IBM, которая сделала ставку на стандарты программирования. Введение стандарта оказалось более важным, чем миллионы операций в секунду.

Image
Система IBM360 - образец для копирования

Причины успеха IBM не стали секретом для советских руководителей компьютерной индустрии и задача в принципе ставилась правильно - необходимо было создать "Единую Систему" - как стандарт для программного обеспечения ЭВМ. В Советском Союзе с плановой экономикой это сделать было значительно проще, чем в США, достаточно издать приказ, который в итоге и был отдан (приказ Министра радиопромышленности №138 о создании НИЦЭВТ и назначении его головной организацией по разработке Единой системы ЭВМ - ЕС ЭВМ). Другое дело, что основой для этого стандарта могли быть выбраны самые разные архитектуры. И архитектура IBM тут вовсе не была обязательной. Да, фирма IBM наработала достаточно богатое программное обеспечение, которое можно было "позаимствовать" в случае совместимости архитектуры ЭВМ. Но в конце 60-х этот фактор был пока не самым серьёзным в выборе, наши разработки не слишком уступали в богатстве и возможностях ПО.

Image
Минск-32 - самый массовый советский компьютер 70-х годов.

Для иллюстрации сказанного достаточно напомнить, что та же БЭСМ-6 производилась в течении 20 лет (до 1987 года) и общее количество произведённых комплектов достигало 367. Это очень много для таких дорогих машин. Программное обеспечение таких машин фактически становилось уже промышленным стандартом. Но и это не рекорд. ЭВМ "Минск-32" разработки Пржиялковского было выпущено около 3 тыс штук! Что неудивительно при относительной дешевизне, которая следовала из-за конвейерной сборки, осуществлённой впервые в практике электронного машиностроения. И для "Минск-32" было разработано достаточно богатое, по меркам того времени, программное обеспечение: система символьного кодирования (ССК); макрогенератор и язык макроописаний с набором библиотечных макрокоманд; транслятор с языка КОБОЛ; транслятор с языка АЛГАМС; транслятор с языка ФОРТРАН. На совещании СЭВ в Будапеште в 1972 г. она была признана базовой для организации АСУ в странах СЭВ. Чем не стандарт? Но "Минск-32" была разработана в 1968 году и стала последней песней Минского проектного бюро завода счётных машин им. Г. К. Орджоникидзе. Завод входил в ведомство Министерства радиопромышленности СССР и первым стал жертвой решения руководства.

Однако сам конструктор машины Виктор Владимирович Пржиялковский так описывает причины введения копирования системы IBM:

"Восьмибитный байт был главнейшим отличием архитектуры IBM 360, эффективно работать с ним не могла ни одна отечественная ЭВМ. Не принять его для машин “Ряда” означало крайне затруднить информационную совместимость с западными ЭВМ, что даже в условиях “железного занавеса” считалось нежелательным.

Принять восьмибитный байт после семибитного (“Минск-32”) и шестибитного (БЭСМ-6, “Весна”, М-220 и др.) было бы перспективно, но за этим решением стояла разрядная сетка 8-16-32-64 бита, вместо привычных 36- и 48-битных. Неизбежное увеличение оборудования можно было компенсировать новой микроэлектронной базой — интегральными микросхемами. А если взять принятую зарубежными фирмами кодировку восьмибитного байта, ставшую де-факто мировым стандартом и систему команд (одно-двухадресную систему с шестнадцатью регистрами общего назначения), то можно было ставить задачу обеспечения полной программной совместимости с IBM-360.

Проведённые в ИПМ АН СССР исследования показали, что программы, составленные для IBM-360, требуют в 1,5-3 раза меньшего объёма памяти, чем программы БЭСМ-6, “Весна”, М-20. Дискуссия в основном сводилась к вопросу о том, возможна ли реализация архитектуры IBM-360 в условиях жёсткого эмбарго, ибо если она без документации и образцов невозможна, то не стоит тратить силы на её точное воспроизведение и её нужно “улучшить”.

Конец этой дискуссии положило решение комиссии по ВТ АН СССР и ГКНТ от 27 января 1967 г. под председательством академика А. А. Дородницына, которым было предложено принять для “Ряда” архитектуру IBM-360 “с целью возможного использования того задела программ, который можно полагать имеющимся для системы 360”. Это решение было принято практически при поддержке присутствующих представителей организаций, которым предстояло работать по программе “Ряд”. Альтернативного предложения на этой комиссии никто не выдвигал."

Вот, как говорится, ещё один авторитетный свидетель о той самой комиссии. IBM и никаких вариантов! Здесь дипломатично не указывается кто конкретно и за что голосовал. Но отмечено, что те организации, которые будут задействованы в производстве ЕС, были активно за копирование. Выступал за копирование и сам Пржиялковский, так, по крайней мере, следует из его пояснений. И это удивительнее всего - ведь его "Минск-32" стал по существу промышленным стандартом в СССР как раз в то время, когда начинали внедрять ЕС! Хотя головной организацией тут было выбрано не Минское КБ, а вновь создаваемый Научно-исследовательский центр электронной вычислительной техники (НИЦЭВТ). "Для становления нового института из КБПА в него переводился коллектив разработчиков аванпроекта во главе с В.К. Левиным, занявшим должность заместителя директора НИЦЭВТ по научной работе." А организационно-технической основой НИЦЭВТ стал НИЭМ - разработчик М-205, М-220, специализированных (военных) ЭВМ 5Э61, «Радон», «Клен», первых бортовых ЭВМ комплекса «Аргон». Полагаю, что узкие ведомственные интересы при принятии решения тут присутствовали в полной мере - вновь образованный институт приобрёл практически монопольное право на разработки в области вычислительной техники, остальные разработчики ставились в зависимое положение. Ведомственная конкуренция, она играла важную роль в СССР.

Но если вернуться к вопросу объективной целесообразности копирования именно IBM, то чётких аргументов так и не прозвучало. Да, ввели восьмибитный байт, у нас он тогда был слишком разным - шестибитный в БЭСМ-6 и семибитный в «Минск-32». Это что, суть вопроса? А почему не 9, не 12 бит? На мой взгляд, с высоты 21 века, уже и 16 бит мало. Самое время вводить 32-битный байт. Байтовая адресация давно изжила себя, а машинное слово может иметь любую разрядность. Удобная для программистов шестнадцатеричная система счисления делает удобным 16-битный байт. С точки же зрения схемотехники байт следовало бы сделать четырёхбитным - для первых микросхем 4-х разрядная организация была оптимальной.

Может хотели сэкономить на разработке программного обеспечения? Для чего ещё нужна программная совместимость? Брать чужое программное обеспечение, своих программистов переучить на трактористов? Судя по тому, что число программистов не уменьшилось, этого всё же не планировалось. Однако именно это звучало главным аргументом! Полагаю, что такие аргументы служили в основном ширмой для проявления совершенно других интересов. Ведомственных и некоторых иных. Об этом говорит конечный результат проводимой политики. А также кое-какие странные совпадения. Вот о них и поговорим далее...

(Продолжение следует ...)

Часть 1.  

 

 

У вас нет прав для комментирования. Зарегистрируйтесь.

« Две трагедии советской кибернетики. Часть 3.   Две трагедии советской кибернетики. Часть 1. »
| Дизайн malchish.org