Статьи

Нариси історії радянської обчислювальної техніки

  1. Школа Лебедєва: високопродуктивні ЕОМ
  2. Машини другого покоління. БЕСМ-6
  3. Багатопроцесорні обчислювальні комплекси "Ельбрус"
  4. Спогади Дональда Кнута про Андрія Єршова
  5. З плеяди перших вітчизняних програмістів


Багато принципів структурної організації БЕСМ-6 були революційними для свого часу і передбачали архітектурні особливості машин третього покоління "Генеологія" обчислювальної техніки в СРСР

Жалюгідний стан радянської обчислювальної техніки сьогодні, як говориться, у наявності. Оглядаючи швидким поглядом цю колись славну імперію, батьківщину знаменитих БЕСМ, що дала світові стільки видатних інженерів - фахівців в комп'ютерній області, бачиш лише дим пожарища. Все згоріло! ..

Ні, десь на кшталт ще жевріє життя. Ось залишки НІЦЕВТ під прапором IBM, ось ІНЕУМ, теж ще живий ... І все ж це погорільці. Однак, як було ясно ще Грибоєдова, і дим вітчизни нам солодкий і приємний. Кинемо ще один погляд на рідні попелища. Якщо і не утішимося, то принаймні відповімо на деякі запитання. Наприклад: чи була у нас альтернатива західному шляху в комп'ютеробудування, як була вона в космонавтиці та оборонної промисловості? Або для нас неминучим було копіювання IBM, як в політиці і економіці єдиним виходом виявилася західна лібералізація? А може бути лібералізація 90-х років стала неминучою після загального повороту до архітектури IBM в кінці 60-х років?

Як би там не було, сумний підсумок цілком закономірний. Можна говорити про негнучкості радянської економіки взагалі, про принципову для неї неможливості сприймати і ефективно використовувати досягнення науково-технічного прогресу. У сфері обчислювальної техніки всі економічні вади проявили себе раніше і яскравіше, ніж в інших галузях радянської промисловості. Можливо, тому, що саме тут останні 50 років йде найбільш інтенсивне, захоплююче широке коло людей науково-технічний розвиток.

І тим не менше, здається, все могло бути інакше. Не викликає сумніву той факт, що Радянський Союз в 50-ті - 60-ті роки мав дуже сильну наукову школу, точніше, кілька шкіл розробки обчислювальної техніки. Перші моделі електронних лічильних машин з'являються приблизно в один і той же час в США і Європі (Англія) і трохи пізніше в СРСР. Ідеї ​​створення таких машин зароджуються в різних країнах, можна сказати, паралельно.

Коли радянські вчені починали свої розробки, вони знали, що на Заході ЕОМ вже існують. Однак відомості були вельми мізерними, і на даному етапі говорити про будь-яке копіювання західних зразків не можна. Ідеї ​​та розробки були абсолютно оригінальними.

В кінці 60-х років в країні був накопичений достатній досвід по виробництву ЕОМ. У цей момент робиться рішучий крок від різноманіття до уніфікації, від моделей з різними принципами організації до серії машин єдиної архітектури різної продуктивності. Як зразок такої єдиної серії вибирається архітектура мейнфреймів IBM 360. Цей поворотний момент в історії радянської обчислювальної техніки трактується по-різному, в тому числі, як початок її кінця. Однак, як ми бачимо сьогодні, при всьому різноманітті моделей, є ряд визначальних архітектурних стандартів, яких дотримуються розробники комп'ютерів у всьому світі.

На користь вибору архітектури американських машин говорить також той факт, що в нашій країні практично була відсутня індустрія програмного забезпечення. Відтворення архітектурних принципів західних систем автоматично давало нам в руки багатющу бібліотеку ПЗ.

Інша справа, що створення IBM- або DEC-подібних комп'ютерів відбувалося, по суті, без можливості легального доступу до першоджерел. Можна тільки припустити, наскільки плідним було б відкрите співробітництво вчених двох країн. Однак тоді машини відтворювалися багато в чому на підставі лише примірних відомостей про їх прототипах, так що нашим розробникам все ж залишався великий простір для творчості. Творці ЄС і СМ наполягають на тому, що ці машини є оригінальними розробками, орієнтованими на вітчизняну промисловість.

Спілкування з провідними спеціалістами радянського комп'ютеробудування 70-х - 80-х років дозволяє зробити висновок, що однією з основних причин сумного кінця вітчизняного комп'ютеробудування була дуже слабка елементна база. Уже в 80-ті роки отстававаніе на рівні чіпів був катастрофічним, і про створення конкурентоспроможних ПК в країні не могло бути й мови. Знову ж заборона на використання західної мікроелементної бази, який можна пояснити тільки політичними міркуваннями, не давав можливості виробляти обчислювальну техніку на сучасному рівні. Якби такої заборони не було, ймовірно, справи пішли б інакше. У всякому разі, досвід сучасних російських збирачів дозволяє так думати.

На мій погляд, нашим головним лихом в цій області була відсутність нормальної інтеграції в світовий процес розвитку обчислювальної техніки. Якби робота йшла в умовах співпраці на рівних, то при нашому науковому потенціалі напевно результати були б зовсім інші.

А починалося все, як уже говорилося, паралельно і незалежно, в характерній для холодної війни обстановці глибокої секретності. У США головним замовником зароджується обчислювальної техніки було Міністерство оборони. У нас в кінці 40-х - початку 50-х років з'являються перші ідеї, перші проекти і, нарешті, перші цифрові обчислювальні машини - цілком оригінальні, що не скопійовані з західних зразків. Власне, ніяких зразків і бути не могло. Формуються основні наукові школи, які створювали машини першого і другого поколінь. Це перш за все школа видатного вченого, основоположника ЦВМ в нашій країні, академіка С. А. Лебедєва. Це школа І.С. Брука, під керівництвом якого створювалися малі та керуючі ЕОМ. Це Пензенська наукова школа, яку очолював Б.І. Рамі, і яка до кінця 60-х років успішно займалася універсальної обчислювальної технікою загального призначення (див. малюнок ). Безумовно, в одній статті неможливо дати повну картину розвитку радянської обчислювальної техніки. За рамками нашої розповіді залишиться багато: діяльність видатного вченого В. М. Глушкова - блискучого теоретика і практика в справі розробки обчислювальної техніки, ще в 60-і роки висунув ідею створення глобальної інформаційної інфраструктури з управління економічними процесами; розробка ЕОМ для спецпрімененій, якої займалися Н.Я. Матюхін і М.О.Карцев, учні І.С.Брука; комп'ютеробудування в Білорусії і Вірменії, розробка нетрадиційних архітектур ЕОМ. Кожна з цих тем заслуговує на окрему розмову. Так ми і не прагнули охопити все. Так само як і не можемо гарантувати абсолютної об'єктивності викладу, оскільки спиралися в основному на суб'єктивні спогади учасників тих подій. Але, без сумніву, історію розвитку ЕОМ у своїй вітчизні треба знати. Треба знати, що вона була, багата подіями і видатними особистостями.

Малюнок. Генеалогія обчислювальної техніки в СРСР

Школа Лебедєва: високопродуктивні ЕОМ

У перші повоєнні роки Сергій Олександрович Лебедєв був директором Інституту електротехніки АН України і за сумісництвом керував лабораторією Інституту точної механіки та обчислювальної техніки АН СРСР. У цих наукових організаціях і була почата розробка перших діючих ЕОМ. Нашим вченим було відомо про створення в США машини ENIAC - першої в світі ЕОМ з електронними лампами в якості елементної бази і автоматичним програмним управлінням. В 1948-49 років в Англії з'явилися обчислювальні машини з збереженими в пам'яті програмами. Відомості про розробки на Заході надходили уривчасті, і, природно, документація по перших ЕОМ була недоступна нашим фахівцям.

Лебедєв почав роботу над своєю машиною в кінці 1948 року. Розробка велася під Києвом, в секретній лабораторії в містечку Феофанія. Незалежно від Джона фон Неймана Лебедєв висунув, обгрунтував і реалізував в першій радянській машині принципи побудови ЕОМ з зберiгається в пам'ятi. Мала електронна лічильна машина (МЕСМ) - так називалося дітище Лебедєва і співробітників його лабораторії - займала ціле крило двоповерхової будівлі і складалася з 6 тисяч електронних ламп. Її проектування, монтаж і налагодження були виконані в рекордно швидкий термін - за 2 роки, силами лише 12 наукових співробітників і 15 техніків. Ті, хто створював перші обчислювальні машини, були одержимі своєю роботою, і це цілком зрозуміло. Незважаючи на те, що МЕСМ по суті була лише макетом діючої машини, вона відразу знайшла своїх користувачів: до першої ЕОМ стояла черга київських та московських математиків, завдання яких вимагали використання швидкодіючого обчислювача.

У своїй першій машині Лебедєв реалізував основоположні принципи побудови комп'ютерів, такі як:

  • наявність арифметичних пристроїв, пам'яті, пристроїв введення / виводу і управління;
  • кодування і зберігання програми в пам'яті, подібно числах;
  • двійкова система числення для кодування чисел і команд;
  • автоматичне виконання обчислень на основі збереженої програми;
  • наявність як арифметичних, так і логічних операцій;
  • ієрархічний принцип побудови пам'яті;
  • використання чисельних методів для реалізації обчислень.

Після Малої електронної машини була створена і перша Велика - БЕСМ-1, над якою С.І. Лебедєв працював вже в Москві, в ІТМ і ВТ АН СРСР. У 1953 році, після здачі нової ЕОМ в експлуатацію, її творець став дійсним членом АН СРСР і директором інституту, який був у той час осередком наукової думки в області обчислювальної техніки.

Одночасно з ІТМ і ВТ і конкуруючи з ним, розробкою ЕОМ займалося недавно сформований СКБ-245 зі своєю ЕОМ "Стріла". Між цими двома організаціями йшла боротьба за ресурси, причому промислове СКБ-245, що знаходилося у відомстві Міністерства машинобудування і приладобудування, часто отримувало пріоритет по відношенню до академічного ІТМіВТ. Тільки на "Стрілу", зокрема, були виділені потенціалоскопи для побудови пристрою, що запам'ятовує, а розробникам БЕСМ довелося задовольнятися пам'яттю на ртутних трубках, що серйозно вплинуло на початкову продуктивність машини.

БЕСМ і "Стріла" склали парк створеного в 1955 році Обчислювального центру АН СРСР, на який відразу лягла дуже велике навантаження. Потреба в надшвидких (на ті часи) розрахунках відчували математики, вчені-термоядерщікі, перші розробники ракетної техніки і багато інших. Коли в 1954 році оперативна пам'ять БЕСМ була укомплектована удосконаленої елементної базою, швидкодія машини (до 8 тис. Операцій в секунду) виявилося на рівні кращих американських ЕОМ і найвищим в Європі. Доповідь Лебедєва про БЕСМ в 1956 році на конференції в західнонімецькому місті Дармштадті викликав справжній фурор, оскільки маловідома радянська машина виявилася кращою європейською ЕОМ. У 1958 році БЕСМ, тепер уже БЕСМ-2, в якій пам'ять на потенціалоскопах була замінена ЗУ на феритових сердечниках і розширений набір команд, була підготовлена ​​до серійного виробництва на одному із заводів в Казані. Так починалася історія промислового випуску ЕОМ в Радянському Союзі.

МЕСМ, "Стріла" і перші машини серії БЕСМ - це обчислювальна техніка першого покоління. Елементна база перших обчислювальних машин - електронні лампи - визначала їх великі габарити, значне енергоспоживання, низьку надійність і, як наслідок, невеликі обсяги виробництва і вузьке коло користувачів, головним чином, зі світу науки. У таких машинах практично не було коштів суміщення операцій виконуваної програми і розпаралелювання роботи різних пристроїв; команди виконувалися одна за одною, АЛУ простоювало в процесі обміну даними з зовнішніми пристроями, набір яких був дуже обмеженим. Об'єм оперативної пам'яті БЕСМ-2, наприклад, становив 2048 39-розрядних слів, в якості зовнішньої пам'яті використовувалися магнітні барабани і накопичувачі на магнітній стрічці.

Більш продуктивною була наступна розробка Лебедєва - ЕОМ М-20, серійний випуск якої почався в 1959 році. Число 20 в назві означає швидкодія - 20 тисяч операцій в секунду, обсяг оперативної пам'яті в два рази перевищував ОП БЕСМ, передбачалося також деякий суміщення виконуваних команд. У той час це була одна з найпотужніших машин в світі, і на ній вирішувалося більшість найважливіших теоретичних і прикладних задач науки і техніки.

Дуже трудомістким і малоефективним був процес спілкування людини з машиною першого покоління. Як правило, сам розробник, який написав програму в машинних кодах, вводив її в пам'ять ЕОМ за допомогою перфокарт і потім вручну керував її виконанням. Електронний монстр на певний час віддавався в безроздільне користування програмісту, і від рівня його майстерності, здатності швидко знаходити і виправляти помилки і вміння орієнтуватися за пультом ЕОМ багато в чому залежала ефективність рішення обчислювальної задачі. Орієнтація на ручне управління визначала відсутність яких би то не було можливостей буферизації програм.

Треба відзначити, що перші кроки до створення основ системного програмного забезпечення Лебедєв зробив в машині М20, де були реалізовані можливості написання програм в мнемокодах. І це значно розширило коло фахівців, які змогли скористатися перевагами обчислювальної техніки.

Машини другого покоління. БЕСМ-6

У 1948 році американськими вченими був створений напівпровідниковий транзистор, який став використовуватися в якості елементної бази ЕОМ. Цей винахід дозволив розробити машини значно менших габаритів і енергоспоживання і набагато більш високої продуктивності і надійності при меншій вартості. Для машин другого покоління тим більш актуальною ставала завдання автоматизації програмування, оскільки збільшувався розрив між часом на розробку програм і безпосередньо часом рахунку. Другий етап розвитку обчислювальної техніки кінця 50-х - початку 60-х років характеризується створенням розвинених мов програмування (Алгол, Фортран, Кобол) і освоєнням процесу автоматизації управління потоком завдань за допомогою самої ЕОМ, тобто розробкою операційних систем. Перші ОС автоматизували роботу користувача з виконання завдання, а потім були створені засоби введення декількох завдань відразу (пакета завдань) і розподілу між ними обчислювальних ресурсів. З'явився мультипрограмний режим обробки даних.

Якщо говорити в загальних рисах про структурні зміни машин другого покоління, то це, перш за все, поява можливості суміщення операцій введення / виводу з обчисленнями в центральному процесорі, збільшення обсягу оперативної і зовнішньої пам'яті, використання алфавітно-цифрових пристроїв для введення і виведення даних. "Відкритий" режим використання машин першого покоління змінився "закритим", при якому програміст вже не допускався в машинний зал, а здавав свою програму на алгоритмічній мові оператору ЕОМ, який і займався її подальшим пропуском на машині.

Комп'ютери цього часу ставали більш доступними, розширювалася область їх застосування і поряд з завданнями обчислювальними з'являлися завдання, пов'язані з обробкою текстової інформації. Їх рішення стало можливим завдяки появі команд, що оперують символами. Тоді ж, до речі, з'явився восьмизарядний байт, байтовая струтктура ОП, більш зручна для роботи з текстами. Машини першого покоління мали набагато більшу розрядність, наприклад, в БЕСМ-1 було 39 розрядів.

До кінця 50-х років радянська електронна промисловість освоїла і почала серійний випуск транзисторів. Таким чином, з'явилася можливість створення ЕОМ на напівпровідниковій елементній базі. Найяскравіший представник радянських ЕОМ другого покоління - БЕСМ-6, вершина наукової творчості С.А. Лебедєва і його колег. Розповісти про цю машину ми попросили чл.-кор. РАН Геннадія Георгійовича Рябова, директора ІТМіВТ, який багато років працював з Лебедєвим і знає про легендарну БЕСМ-6 практично всі. За його словами, при розробці цієї машини з самого початку була задана висока планка - наблизитися до продуктивності в мільйон одноадресних операцій в секунду. І це найвища на той момент швидкодію було досягнуто.

Однак не тільки, і навіть не стільки високою продуктивністю відрізняється ця машина. Багато принципів її структурної організації були революційними для свого часу і, по суті, передбачали архітектурні особливості машин третього покоління.

З цілої низки властівостей це булу Незвичайна машина. Тут Було реалізовано розшарування оператівної пам'яті на блоки, что допускаються одночасну вібірку информации, что дозволяло різко підвіщіті швідкодію Звернення до системи пам'яті. Метод буферизації запитів до системи пам'яті разом зі спеціальними механізмами пристрої управління давав можливість згладити нерівномірність надходження запитів до пам'яті і тим самим підвищити ефективність її використання. Ще однією структурною особливістю БЕСМ-6 є поява прообразу сучасної кеш-пам'яті - сверхоперативной, неадресованими з програми пам'яті невеликого обсягу, в якій розміщувалися часто використовувані операнди і невеликі внутрішні командні цикли. Застосування таких швидких регістрів дозволяло скоротити число звернень до ОЗУ і істотно підвищити загальну швидкодію машини.

Перераховані особливості структурної організації отримали назву "вододпроводной" структури машини. По суті, вперше в радянських ЕОМ було реалізовано конвеєрне асинхронне виконання команд процесора. Крім того, в БЕСМ-6 знайшла втілення ідея віртуальної пам'яті - апаратний спосіб перетворення математичних (віртуальних) адрес в фізичні. Підтримувалася посторінкова організація пам'яті і на цій основі - засоби захисту інформації, була створена розвинена система переривань, необхідна для ефективної реалізації багатозадачності і звернення до зовнішніх пристроїв.

Цікаві архітектурні рішення ЕОМ, як правило, мають певні надмірності, які вимагають додаткової апаратури. У той же час машина, призначена для серійного випуску, повинна бути досить раціональна в конструктивному відношенні. У зв'язку з цим Г.Рябов підкреслив, що С.А.Лебедев, генеральний конструктор БЕСМ-6, був дійсно геніальним інженером: він зумів розробити у багатьох відношеннях оригінальну архітектуру і в той же час відсікти все зайве, всі додаткові компоненти, здатні знизити надійність основної апаратури.

Заступником С.О.Лебедєва при розробці нової машини був Володимир Андрійович Мельников. Державні випробування БЕСМ-6 завершилися в 1967 році. А демонтаж останньої машини цієї марки відбувся всього три-чотири роки тому. За словами Г.Рябова, подібна ситуація унікальна - навряд чи в світі вдасться знайти іншу модель, яка експлуатувалася б майже 25 років. За весь час існування БЕСМ-6 московським заводом САМ було випущено 350 таких машин. Незважаючи на відсутність серійності виробництва в повному сенсі цього слова - друкований монтаж перебував у зародковому стані, дуже багато операцій виконувалися вручну - роль цієї системи для вітчизняної науки і народного господарства в цілому важко переоцінити. На основі БЕСМ-6 створювалися центри колективного користування, координаційно-обчислювальні системи телеобробки і т.д. Один приклад: БЕСМ-6 успішно експлуатувалася в центрі управління польотами, зокрема, при обробці інформації за програмою "Союз-Аполлон". Географія застосування БЕСМ-6 теж вражає: ця машина працювала не тільки в обох столицях, але і на Далекому Сході, в Новосибірську, Іркутську і багатьох інших містах Радянського Союзу.

Будучи універсальною, а не керуючої машиною, БЕСМ-6, проте, могла використовуватися в системах управління реального часу за рахунок високої швидкості обробки даних, а також дуже гарного програмного забезпечення. Про матобеспечніі цієї машини варто сказати окремо. При створенні БЕСМ-6 вперше з успіхом об'єдналися як інженерні, так і математичні наукові сили. І саме починаючи з БЕСМ-6 матзабезпечення стало поставлятися заводом-виробником як невід'ємна частина системи. Інститут прикладної математики АН СРСР, Обчислювальний центр Академії наук, Московський державний університет зробили дуже багато, щоб гідно "одягнути" нову машину. Створена в Університеті бібліотека чисельних методів для БЕСМ-6 сама по собі представляла величезну цінність.

Структурні особливості БЕСМ-6, такі як посторінкова організація пам'яті, захист, механізми переривань і підтримка режимів багатозадачності, дозволяли розгорнути на ній повноцінну операційну систему. Така операційна система була Розроблено командою в МГУ під керівництвом член-кореспондента АН СРСР Льва Миколайовича Королева.

Багатопроцесорні обчислювальні комплекси "Ельбрус"

Надалі ІТМіВТ продовжив роботи зі створення суперЕОМ, розробивши сімейство високопродуктивних машин "Ельбрус". Цей проект був початий ще Лебедєвим, а після його смерті роботу і інститут очолив учень і соратник вченого Всеволод Сергійович Бурцев. В кінці 60-х в країні були розпочаті роботи зі створення єдиної серії ЕОМ загального призначення, про що ми докладніше поговоримо пізніше. Треба сказати, що С.О.Лебедєву пропонували очолити цей масштабний проект, однак академік вважав за краще розвивати лінію обчислювальних систем надвисокої продуктивності. Розробка таких "граничних" машин мала певні відмінності від створення універсальних ЕОМ, оскільки тут пред'являлися максимальні вимоги і до архітектури, і до елементної бази, і до конструкції обчислювальної системи.

Говорячи про "Ельбрус", нам доведеться кілька забігти вперед, оскільки ці ЕОМ належать навіть не до третього, а до четвертого покоління обчислювальної техніки. У роботі над "Ельбрус" і ряді попередніх їм розробок інституту на перше місце ставилися питання ефективної реалізації відмовостійкості і невпинної роботи системи. Тому в них з'являються такі особливості, як многопроцессорность і пов'язані з нею кошти розпаралелювання гілок завдання.

Багатопроцесорний обчислювальний комплекс Ельбрус-1, випущений в 1979 році, включав 10 процесорів і базувався на схемах середньої інтеграції. У цій машині радянські вчені випередили американців, створивши сіммерічную многопроцессорную систему із загальною пам'яттю. За принципами побудови система команд ЦП "Ельбрус" близька системі команд машин компанії Burroughs, що вважається нетрадиційної. Машина Ельбрус-1 забезпечувала швидкодію від 1,5 млн. До 10 млн. Оп / с, а Ельбрус-2 - більш 100 млн. Оп / с.

Ельбрус-2, робота над яким була завершена в 1985 році, також був симетричний многопроцессосрний обчислювальний комплекс з 10 суперскалярні процесорів на матричних полузаказних БІС, які випускалися в Зеленограді. Серійне виробництво машин такої складності зажадало термінового розгортання систем автоматизації проектування ЕОМ, і це завдання було вирішено під керівництвом Г. Г. Рябова настільки успішно, що її автори були удостоєні Державної премії.

"Ельбрус" взагалі несли в собі ряд революційних нововведень. Суперскалярність процесорної обробки, симетрична багатопроцесорна архітектура з загальною пам'яттю, реалізація захищеного програмування з апаратними типами даних - всі ці можливості з'явилися у вітчизняних машинах раніше, ніж на заході. Г. Г. Рябов особливо виділив створення єдиної операційної системи для багатопроцесорних комплексів, яким керував Борис Арташесович Бабаян, свого часу відповідав за розробку системного програмного забезпечення БЕСМ-6. Однією з найважливіших завдань цієї ОС було управління паралельно виконуються процесами та їх синхронізація.

Нарешті, функціонування таких масштабних систем вимагало особливої ​​уваги до питань супроводу та ремонту, заміни елементів, забезпечення нон-стопности і завадостійкості ЕОМ, пошуку ефективних шляхів вирішення проблеми тепловідведення і т.д.

"Ельбрус" були потужними рахунковими машинами, потреба в яких відчували багато наукові організації. Але основним замовником цих комплексів був ВПК. Машини працювали в цілому ряді важливих систем, пов'язаних з обробкою радіолокаційної інформації, на них вважали в номерних Арзамасі і Челябінську, ними комплектувалася обробка даних в центрі управління польотами. На деяких великих об'єктах "Ельбрус" функціонують і донині.

Цікаво, що в рамках програми "Ельбрус" в кінці 80-х років була створена мікроелектронна копія БЕСМ-6 - суперЕОМ "ЕльбрусБ" (керівник роботи - М.В.Тяпкін), на якій можна було працювати в системі команд БЕСМ-6. Цих машин було випущено трохи, не більше десятка екземплярів, з них чотири стояли в обчислювальному центрі МГУ. Завдяки їм естафетна паличка багатющого матзабезпечення БЕСМ6 була передана в 80-90-і роки.

Робота над останньою машиною сімейства, Ельбрус-3, з швидкодією до 1 млрд. Оп / с і 16 процесорами, була закінчена в 1991 році. Однак на що існувала в той момент елементної базі система вийшла надто громіздкою. Крім того, як зазначає Г. Г. Рябов, в цей час розвиток робочих станцій і поява можливостей будувати комплекси на їх основі дозволяли зробити висновок, що нарощування потужності за рахунок більш простих структур у багатьох відношеннях може виявитися економічно ефективніше.

Зі зрозумілих причин ІТМіВТ зараз переживає не найкращі часи. Частина фахівців на чолі з чл.-кор. РАН Б.А.Бабаяном на початку 90-х років виділилася з інституту і створила Московський Центр SPARC-технологій. Б.А.Бабаян був основним ідеологом архітектури комплексів "Ельбрус". І в 90-ті роки головними напрямками діяльності його колективу, який працює в тісній співпраці з рядом західних компаній, і перш за все Sun Microsystems, є розробка сучасних мікропроцесорних архітектур і створення сверхоптімального компілятора для ефективного використання програмного паралелізму. В кінці 1998 року правонаступник Центру SPARC-технологій, компанія МЦСТ, і созданнная в 1994 році також вихідцями з ІТМіВТ компанія Ельбрус-2000, об'єдналися в Групу Ельбрус, яка продовжить роботи в сфері сучасних комп'ютерних технологій і системної інтеграції на основі робочих станцій і серверів Sun .

У самому ІТМіВТ ведуться роботи по більш вузьким спеціалізаціями. Директор інституту переконаний, що на сучасному етапі використання полноразрядних мікропроцесорних архітектур Intel або інших компаній, які знаходяться на самому піку свого розвитку, буде доповнюватися спеціалізованим обрамленням - полузаказних БІС або програмованими логічними матрицями. На думку Г. Г. Рябова, інтелектуальний потенціал інституту необхідно використовувати саме в цьому напрямку. Досвід швидкої і гнучкої розробки спеціалізованої логіки накопичений фахівцями ІТМіВТ ще при створенні "Ельбрус". Г. Г. Рябов вважає, що хоча інститут не може конкурувати з провідними світовими виробниками універсальних чіпів, розробка логічних структур спеціалізованих процесорів для певних завдань - якраз та ніша, яку він здатний зайняти в міжнародній комп'ютерній кооперації. У всякому разі, в нашій країні ІТМіВТ вже має ряд таких замовлень.

В наступному нарисі мова піде про наукові школи І.С.Брука і Б.І. Рамєєва.

Спогади Дональда Кнута про Андрія Єршова


Андрій Єршов на конференції Algorуthms in Modern Mathematics and Computer Science, СРСР, Ургенч, 1979 рік

Редактори попросили мене записати деякі з моїх особистих спогадів про Андрія Єршова. Хоча ми з Андрієм жили на різних кінцях Землі і нас розділяло майже 12 часових поясів, його життя зробила на мою значний позитивний вплив.

Це почалося ще коли я був студентом останнього курсу інституту Case Institute of Technology. Тоді тільки з'явилася книга Андрія "Програмування для БЕСМ", і ми, група студентів, змогли переконати викладача російської мови включити її в курс в якості одного з двох збірок текстів для вивчення наукової лексики. Для нас це був чудовий досвід роботи, оскільки багато технічних комп'ютерні терміни не можна було знайти в наших словниках, і навіть викладач деякі з них раніше взагалі не чув! (Виконаний Недлером переклад на англійську мову тоді ще не був виданий.) Ми відчули, що бачимо "справжній" російську мову в тому вигляді, в якому він дійсно використовується в науці; книга справила на нас набагато сильніше враження, ніж другий текст, в якому говорилося про супутники і дослідженні космосу, але на дуже примітивному рівні.

Ця книга не тільки допомогла мені краще освоїти російську мову; з неї я дізнався цікаві алгоритми оптимізації компілятора. Насправді рання робота Андрія, яка послужила поштовхом до створення цієї важливої ​​галузі комп'ютерної науки, до сих пір викликає інтерес. Його метод викладу матеріалу також виявився вельми значущим: блок-схеми, представлені вперше в його книзі, я згодом використав для ілюстрації процесу виконання програми в своїй статті Computer-drawn flow charts ( "Блок-схеми, побудовані комп'ютером"), виданої в Communications of the ACM, вересень 1963 стор. 555-563) і подальшої серії книг "Мистецтво програмування".

Перша особиста зустріч з Андрієм сталася на конференції робочої групи IFIP, де готувався наступник мови Algol-60. На той час я дізнався, що Андрій незалежно від Джина Амдала винайшов хешування з лінійним числом випробувань - важливий алгоритм, вивчення якого стало поворотним моментом мого життя, оскільки привело мене в область алгоритмічного аналізу. (Див. Виноску на стор. 529 в моїй книзі Sorting and Searching ( "Сортування і пошук"); в російській перекладі ця виноска знаходиться на стор. 628). Я багато чув про нові методи, які входять до складу проекту мови Alpha, який вів Андрій. Тому я був украй радий можливості зустрітися з ним особисто, тим більше що, як з'ясувалося, він вільно володіє англійською мовою. Ми проговорили близько двох годин про компіляторах і мови, поки він копіював на ксероксі численні документи для цієї конференції.

Згодом ми змогли частіше з ним бачитися, оскільки він регулярно приїжджав на зустрічі з Джоном Маккарті в Стенфордський університет. Один з таких візитів став першопричиною, мабуть, самого пам'ятного для мене події - мого

участі в конференції Algorуthms in Modern Mathematics and Computer Science ( "Алгоритми в сучасній математиці та комп'ютерної науці"), що відбулася в СРСР в Ургенче в 1979 році. Ця конференція - паломництво вчених до святих місць, до місця народження самого поняття "алгоритм" - для мене виявилася мрією, що стала реальністю. Хоча ми з Андрієм офіційно числилися співголовами конференції, насправді Андрій взяв на себе 99% роботи, в той час як я міг відпочивати і насолоджуватися тим, що відбувається, дізнаючись безліч важливого від людей, з якими тут зустрічався. Таке буває раз у житті, і я сподіваюся, що багато вчених, що працюють в області комп'ютерних наук, зможуть взяти участь в аналогічній зустрічі, якщо хтось надихнеться прикладом Андрія. За цей тиждень я дізнався його набагато краще і був особливо вражений тим, наскільки блискуче він справлявся з усіма численними ролями: керівника конференції, організатора, філософа, оратора, перекладача і редактора.

У мене є чимало інших спогадів, в тому числі і про чудовому випадку, коли ми з дружиною зустріли Андрія на вечорі американської кадрилі і він виконував Virginia Reel і "до-сі-до", але того, що вже сказано, цілком достатньо, щоб зрозуміти, наскільки важливу роль в моєму житті зіграв Андрій.

Під час його останнього візиту в Стенфорд я дізнався про величезну роботу, яку він вів в останні роки життя, про революційні зміни у викладанні комп'ютерних наук мільйонам студентів, про що із захопленням говорили в усьому світі. Ми всі сумуємо про те, що життя Андрія було визначено закінчитися так скоро, ми захоплюємося тим багатьом, що вдалося йому зробити, і знаємо, що плоди його життя стануть джерелом знань для наступних поколінь вчених усього світу, які працюють в області комп'ютерних наук.

Редакція журналу "Відкриті системи" дякує С. В. Клименко за допомогу в підготовці до публікації спогадів Дональда Кнута

З плеяди перших вітчизняних програмістів

гелій Рузайкін

Андрій Петрович Єршов народився в Москві в 1931 р Закінчив механіко-математичний факультет Московського Державного Університету в 1954 р за фахом обчислювальна математика, є учнем Олексія Андрійовича Ляпунова. Будучи студентом четвертого курсу прослухав цикл лекцій "Принципи програмування", прочитаний Ляпуновим, і багато в чому визначив вибір програмування як життєвого шляху. У той же самий час Андрій Петрович почав працювати в ІТМіВТ АН СРСР, беручи участь в підготовці прийомних випробувань машини БЕСМ. Їм була розроблена в якості тестової задачі програма поводження матриці.

На другому році навчання в аспірантурі приступив до організації відділу теорії програмування в ОЦ АН СРСР. Виконані ним дослідження зі створення програмує програми для БЕСМ були опубліковані в 1958 р Їх результати склали першу в світі монографію з автоматизації програмування.

Поряд з науковою діяльністю Єршов з перших же кроків занять програмуванням брав участь в процесі викладання: ще студентом на прохання С.А. Лебедєва читав лекції з програмування для розробників БЕСМ, а в 1957 р вперше з його участю були організовані заняття зі студентами на мехматі.

На запрошення академіка С.Л. Соболєва в 1960 р Єршов починає працювати завідувачем лабораторії в Сибірському відділенні АН СРСР. Надалі переходить на роботу в створений ВЦ, СО АН СРСР, з яким і пов'язана його науково-педагогічна робота. Основні напрямки його діяльності пов'язані з питаннями автоматизації програмування та проблемами теоретичного програмування, об'єктами якого служать математичні абстракції програм. Його перу належать багато статей у вітчизняних та зарубіжних наукових виданнях і ряд книг.

У 1970 р був обраний членом-кореспондентом, а в 1984 р академіком АН СРСР. Зарубіжні колеги удостоїли його честі і обрали членом ACM (1965 р) і почесним членом Британського товариства з обчислювальної техніки (1974 рік).

Андрій Петрович брав активну участь в науковому житті в країні і за кордоном, його часто можна було бачити серед організаторів і виступаючих на семінарах, симпозіумах та інших заходах. Його доповіді викликали незмінний інтерес і нерідко служили приводом для широких обговорень. Так на Другій всесоюзній конференції з програмування в 1970 р, що проходила в Академмістечку в Новосибірську, він переконано відстоював тезу, що програма нарешті стала товаром, і це вимагає відповідного ставлення з боку держави як до продукту, так і до його творця - програмісту.

Андрій Петрович Єршов був обраний віце-президентом конгресу IFIP, членом редакційних колегій багатьох наукових видань та Головою Наукової ради з комплексної проблеми "Кібернетика" АН СРСР.

Наприклад: чи була у нас альтернатива західному шляху в комп'ютеробудування, як була вона в космонавтиці та оборонної промисловості?
Або для нас неминучим було копіювання IBM, як в політиці і економіці єдиним виходом виявилася західна лібералізація?
А може бути лібералізація 90-х років стала неминучою після загального повороту до архітектури IBM в кінці 60-х років?