Этот сайт предназначен, прежде всего, людям, ностальгирующим по ушедшим РУССКОМУ СЛОВУ, Windows 3.1, ФОТОНУ, процессорам 486SX и иже с ними.
Конечно, времена должны идти вперед, но почему они обязательно должны уходить?
StuhlbergR 2007 ©
|
Беседы о поколениях ЭВМН. Бусленко, В. Бусленко
© Издательство "Молодая гвардия", 1977 г.
Все настойчивее вторгаются электронные вычислительные машины в науку и в народное хозяйство. О зарождении этих машин, принципе их действия, их развитии и влиянии на жизнь человека расскажут член-корреспондент АН СССР Н. Бусленко и его сын кандидат технических наук В. Бусленко.
ЭВМ третьего поколения (окончание)
- Наверное, получится страшная неразбериха, если все эти устройства по всем 400 каналам начнут одновременно передавать информацию ЭВМ.
- Так бы оно и случилось, если бы речь шла о первом и даже втором поколениях ЭВМ. И здесь мы с вами приступаем к самому главному, к тому, без чего самый совершенный компьютер не может считаться машиной третьего поколения! И этим новым фактором является особая роль математического обеспечения, или, как его называют, программного хозяйства, ЭВМ.
Математическое обеспечение ЭВМ - это и специальная организация вычислительного процесса (операционная система), и разнообразные языки программирования с трансляторами, и вообще любые средства, предназначенные для использования всех возможностей аппаратуры ЭВМ в целях наилучшего и наискорейшего решения задач.
Элементы математического обеспечения зародились еще в недрах машин первого и второго поколений - это стандартные программы и алгоритмические языки. Однако при переходе к третьему поколению затраты на разработку математического обеспечения колоссально возросли. Если в 50-е годы расходы на программное хозяйство составляли каких-нибудь 5-10 процентов от общих затрат на разработку новой ЭВМ, то к 1970 году эта доля общих затрат составляла уже 70-80 процентов. Как же произошли эти перемены?
Вытекают они из возросшей производительности ЭВМ. Действительно, высокое быстродействие электронных устройств на полупроводниковых и интегральных схемах позволило сравнительно легко достичь большой скорости работы проектируемых ЭВМ. Более того, появились даже некоторые "резервы" быстродействия. Это привело к несколько неожиданному эффекту: стало модным перекладывать на арифметическое устройство, точнее говоря, на процессор ЭВМ, такие функции, для которых машины младших поколений имели специальную аппаратуру. Стоит ли, например, создавать дополнительную аппаратуру для перевода чисел в другую систему счисления, когда это преобразование по соответствующей программе может выполнить процессор ЭВМ? Или зачем строить специальные схемы формирования информации для выдачи из ЭВМ в каналы связи, если для этого достаточно составить несколько новых программ?
Число таких примеров стало расти. И это понятно: ведь чем больше скорость работы машины, тем больше, без ущерба для решаемых задач, можно поручить ЭВМ дополнительных функций. Кроме того, стремление к более полной загрузке оборудования и более полному использованию возможностей электронных схем потребовало специальной организации вычислительного процесса.
Все это привело к очень тесному переплетению в ЭВМ третьего поколения функций так называемой "аппаратной логики" (схемных решений) и "программированной логики" (программного хозяйства).
Данное обстоятельство коренным образом изменило соотношение сил между специалистами по электронной технике и математиками в коллективах, занимающихся созданием новых ЭВМ. А в вычислительных центрах стали говорить не только о "технической эксплуатации", но также и о "математической эксплуатации ЭВМ", математическом обеспечении ее работоспособности!
Математическое обеспечение - это, так сказать, подводная часть айсберга ЭВМ. Видимая глазом аппаратура составляет приблизительно десятую часть сути современного компьютера. Девять десятых, то есть все программное хозяйство, хранящееся в памяти машины на лентах, дисках, скрыто от глаз внешнего наблюдателя. По мере перехода от поколения к поколению ледяная гора аппаратуры как бы таяла, постепенно "погружаясь" в математическое обеспечение.
В США разработчики ЭВМ даже придумали специальные юмористические термины. На своем профессиональном жаргоне они говорят "хард вэр" (так в нефтяной промышленности обозначают тяжелые продукты перегонки - мазут, битум и т.п.), и все понимают, что имеются в виду технические средства ЭВМ; "софт вэр" (так называют легкие нефтепродукты: бензин, керосин, солярка) - и ясно, что речь пойдет о математическом обеспечении.
Сейчас в США для последних моделей ЭВМ третьего поколения соотношение "хард вэр" к "софт вэр" составляет по стоимости разработки примерно 1/10.
Математическое обеспечение обычно подразделяется на внутреннее и внешнее. Внутреннее представляет сообой, если можно так выразиться, программное продолжение аппаратуры ЭВМ. Это собственная неотъемлемая часть данной машины - программы, - относящаяся к организации вычислительного процесса вообще, независимо от того, какие конкретны задачи будут решаться на данной ЭВМ. Ко внутреннему математическому обеспечению в первую очередь следует отнести библиотеку стандартных подпрограмм (они ведь были еще в ЭВМ первого поколения), перевод чисел из одной системы исчисления в другую, синусы, косинусы, решения систем уравнений и т.п. Кроме того, для каждого из устройств ввода и вывода нужно иметь соответствующую программу обработки информации. Ведь один и тот же результат можно выдать из ЭВМ по-разному. Так, чтобы сделать лишь качественные выводы по решаемой задаче, нам достаточно бросить взгляд на грубый график полученной зависимости, и мы скорее всего потребуем выдать этот график на экран дисплея. Тогда вступит в строй программа кодирования информации для отображения на экране. Если же нам нужны подробные и точные данные о полученной зависимости, мы потребуем выдать результат в виде таблицы на печатающее устройство. В этом случае начнет работать программа кодирования и формирования информации для выдачи на алфавитно-цифровое печатающее устройство (АЦПУ). Наконец, можно потребовать дать точный график полученной зависимости. Тогда придется использовать программу кодирования и формирования информации для выдачи на грфопостроитель и т.п.
Особенно сложные и важные подпрограммы управляют работой устройств внешней памяти, так как быстро и безошибочно найти нужный байт среди сотен миллионов других - это отнюдь не простая задача. Однако все это покажется мелочью, если попытаться представить себе, хотя бы приближенно, суть процессов, которыми надлежит управлять при производстве самих расчетов в современной ЭВМ.
Электронная вычислительная машина похожа на гигантский завод, находящийся на пересечении железнодорожных и автомобильных линий. Сотни поездов ежедневно доставляют на него полуфабрикаты и сырье, узлы и отдельные детали. Все это надо принять, рассортировать, переправить для хранения туда, где это понадобится. Одновременно на заводе производится масса разнообразнейших изделий. Сплошным потоком отправляются от ворот тяжелые грузовики, доставляющие продукцию во все концы страны. Сотни погрузочно-разгрузочных средств день и ночь обеспечивают бесперебойный обмен полуфабрикатами, готовыми и требующими обработки изделиями.
На заводе дновременно работают десятки цехов: холодных и горячих, сборочных и обрабатывающих. Каждое производство ведется в своем ритме, режиме, требует особого контроля. Нужно знать, где, по каким чертежам и под чьим руководством осуществляется сейчас и будет осуществляться в следующий момент производство той или иной детали или узла.
Кроме того, вся техническая документация составлена на разных иностранных языках. Нужно отыскать переводчиков, обеспечить перевод и проверку содержания зданий. Следует все время контролировать исправность отдельных станков, линий, цехов и всего предприятия в целом. Поскольку производство не долно останавливаться ни на минуту, приходится постоянно держать в запасе дополнительное рабочее оборудование, своевременно заменять и ремонтировать вышедшее из строя.
Чтобы несколько приблизить картину к реальной действительности, следует сказать, что все это должно происходить с колоссальной скоростью (миллион операций в секунду) и абсолютно безошибочно.
Можно сделать вывод, что ЭВМ, бывшая раньше "счетной фабрикой" чисто внешне, теперь по сложности организации вычислительного процесса походит на фабрику по своей внутренней сути. Управлять такой "фабрикой" под силу только современной автоматизированной системе управления (АСУ), которая, в свою очередь, немыслима без быстродействующей ЭВМ третьего поколения. Вот и получается, что для управления ЭВМ нужно иметь как бы еще одну ЭВМ! Естественно напрашивается вопрос, а нельзя ли для управления вычислительным процессом в ЭВМ использовать ее же саму, предусмотрев соответствующий комплекс управляющих программ.
Учитывая колоссальное быстродействие ЭВМ третьего поколения, на этот вопрос можно ответить утвердительно!
Совокупность управляющих, вспомогательных и служебных программ, необходимых для управления вычислительным процессом ЭВМ, реализуемая на той же самой ЭВМ, получила название операционной системы.
Первая операционная система была создана в 1953-1955 годах для машины ИБМ-704. Современные операционные системы содержат десятки программ и сотни тысяч и миллионы команд ЭВМ. Они практически полностью автоматизируют вычислительный процесс, синхронизируя работу всех внешних и внутренних устройств.
В функции операционной системы, этой АСУ "счетной фабрики", входит: управление вычислительным процессом, управление потоком задач, поступающих в ЭВМ. Управление самим процессом решения задачи и управление обменом данными между всеми внешними устройствами. Важной частью операционной системы являются так называемые сервисные программы: сортировка, объединение, редактирование данных.
В ЭВМ третьего поколения также введены особые режимы работы, при которых любые устройства (как внутренние, так и внешние) могут работать одновременно и независимо друг от друга под воздействием команд управления, участвуя во многих, идущих параллельно процессах передачи и переработки информации.
Например, ЭВМ третьего поколения допускают так называемый мультипрограммный режим работы, при котором в процессоре машины одновременно решается несколько задач. Машина поочередно переходит к выполнению частей программы, относящихся к различным задачам, в заранее предусмотренном порядке. При этом по мере надобности вступают в действие необходимые внешние и внутренние устройства ЭВМ. В данный момент времени по одной или нескольким программам арифметическое устройство проводит вычисления, а по другим программам обеспечивается печатание результатов расчета, поиск информации по внешней памяти или выдача ее в каналы связи.
Операционной системе принадлежит огромная роль в работе ЭВМ третьего поколения, говорят, что без нее ЭВМ превращается в мертвый набор отдельных устройств, не способных к совместной работе. Употребляют даже сильные выражения: без внутреннего математического обеспечения ЭВМ третьего поколения превращается в груду лома.
- Что же такое математическое обеспечение?
- Это как бы живая душа машины, которую ее творец - человек - вложил в электронный организм!
- Нельзя ли провести сравнение с эволюцией в мире живого?
- Пожалуй, можно. На низшей ступени эволюции ЭВМ были подобны примитивным гигантским ящерам, способным лишь слепо подчиняться простейшим инстинктам. Затем они уменьшились в размерах и приобрели некоторые черты интеллекта, поднявшись, пожалуй, до уровня млекопитающих. И, наконец, в третьем поколении их интеллектуальная мощь возросла настолько, что человек счел возможным передать им часть своих знаний и опыта, научив их, так сказать, элементарной культуре работы.
- Значит, внутреннее математическое обеспечение - это знания, необходимые электронному организму для работы вообще, так сказать, начальная школа ЭВМ.
- Верно!
- Тогда что представляет собой внешнее математическое обеспечение?
- О нем машина могла бы сказать - "мои университеты"!
Внешнее математическое обеспечение - это как бы специализация машины в определенной области науки, техники, культуры. Как и в любом университете, обучение ЭВМ начинается с общеобразовательных предметов, которыми в данном случае являются универсальные алгоритмические языки. Ведь программирование задач "в лоб" (в цифровых кодах машины) чрезвычайно утомительно, поэтому трансляторы с таких универсальных языков программирования, как ФОРТАН, АЛГОЛ, PL-1, имеются на любой современной ЭВМ.
В отличие от универсальных языков, предназначенных в принципе для описания очень широкого круга задач, существуют еще два типа языков, функции которых несколько уже. Эти языки ориентированы на специфические классы задач.
Различают проблемно-ориентированные и машинно-ориентированные языки. Первые ориентированы на круг проблем, вторые - на тип машины. К проблемно-ориентированным языкам может быть отнесен достаточно универсальный язык КОБОЛ (планово-экономические задачи), язык моделирования СИМСКРИПТ и ЛИСП - язык для описания сложных логических задач (доказательство теорем, игра в шахматы).
Нужно отметить, что программы, полученные в результате трансляции с универсальных и проблемно-ориентированных языков, или, как их иногда называют, языков высокого уровня, обычно получаются неэкономичными. Дело в том, что сложная, ориентированная на человека, структура такого языка требует громоздких трансляторов и получаемые программы почти не поддаются оптимизации - они оказываются не всегда экономичными в расходовании памяти и времени счета.
Машинно-ориентированные языки как раз и призваны заменить языки высокого уровня в тех случаях, когда речь идет о программировании часто повторяющихся задач. Эти языки по своей структуре приближены к командам конкретной машины - их называют еще языками символического кодирования или автокодами.
Транслятор с автокода на конкретную ЭВМ позволяет, как правило, проводить частичную оптимизацию, что дает возможность использовать автокод везде, где требуется получать компактные и оптимальные программы. Автокод практически вытеснил программирование в численных адресах (вспомним программу для среднего арифметического), популярное в начале эры ЭВМ.
Говоря о проблемной ориентации, нельзя обойти молчанием и сравнительно новую идею - создание пакетов прикладных программ. Этот росток появился на заре стандартных подпрограмм и представляет собой совокупность программ, предназначенных для решения определенного класса задач. Известны пакеты прочностного расчета мостовых ферм и балок. Есть пакеты программ, по которым ЭВМ обрабатывает учетно-плановую информацию. Есть пакеты программ, по которым ЭВМ обрабатывали учетно-плановую информацию. Есть пакеты для статистической обработки данных, для моделирования аэродинамических расчетов и многие другие. Естественно, что все эти пакеты создаются для задач с большой повторяемостью.
Первоначально пакет рассматривался просто как несколько программ, выполняемых одна за другой в определенной последовательности. В последнее время на них смотрят как на весьма перспективное средство общения широкого потребителя с ЭВМ. Много внимания уделяется вопросам внутренней структуры и организации пакета, в том числе и автоматическому управлению соответствующим внутрипакетным вычислительным процессом. Но суть пакетов программ - в максимальном упрощении процедуры общения с ЭВМ.
На VI Международной конференции по проблеме организации и структуры пакетов прикладных программ академик А. Дородницын сказал: "Мы не можем требовать от пользователей пакетов знаний программирования и даже методов решения задач. Запрос на решение задачи должен задаваться на языке, близком к человеческому, хотя и строго формализованном".
Математическое обеспечение, например, ЕС ЭВМ содержит наряду с несколькими операционными системами, в которые входят трансляторы с языков программирования, также пакеты прикладных программ.
Основными языками программирования для ЕС ЭВМ являются ФОРТАН, PL-1, АЛГОЛ-60, КОБОЛ. Сравнительно новый язык PL-1 предназначен для программирования задач, имеющих сложную организацию, он в наибольшей степени ориентирован на современные операционные системы.
Язык символического кодирования - АССЕМБЛЕР ЕС - машинно-ориентированный язык, учитывающий особенности структуры и системы команд машин ЕС ЭВМ. На АССЕМБЛЕРе ЕС можно получать программы, хорошо реализуемые на ЭВМ этого семейства.
В математическом обеспечении ЕС ЭВМ имеются трансляторы со всех языков, перечисленных выше. Более того, для некоторых языков имеется несколько вариантов или версий транслятора. Для языка ФОРТАН, например, простейшая из этих версий пригодна для реализации на низших моделях ЕС ЭВМ, но качество программ получается невысокое. Наиболее сложный, оптимизирующий транслятор позволяет получить программы высокого качества, близкого к тому, что дает язык АССЕМБЛЕР ЕС. Но этот транслятор может быть реализован только на высших моделях ЕС ЭВМ, так он требует для своей работы большой оперативной памяти.
В состав математического обеспечения ЕС ЭВМ включено много вспомогательных и служебных программ, составляющих автоматизированный программный сервис, который чрезвычайно полезен при использовании ЭВМ и периферийных устройств в самых различных областях применения.
Для ЕС ЭВМ в нашей стране также создается большое количество пакетов прикладных программ для решения наиболее распространенных задач науки, техники и народного хозяйства.
Из сказанного видно, как непросты машины третьего поколения. Не только описание аппаратурной части, но даже рассказ об операционной системе не раскрывает сути этих машин. Внешнее же математическое обеспечение представляется просто необозримым, ведь машина теперь "пошла по университетам", а учиться можно практически всю жизнь.
ЭВМ первого и второго поколений были все-таки быстрыми арифмометрами. На них решались в основном инженерные задачи и арифметические применения пожирали все машинное время.
ЭВМ третьего поколения совершили качественный скачок вперед к вершинам интеллекта. Теперь ЭВМ помогают человеку практически во всех областях его деятельности: кто-то насчитал уже около двух тысяч специальностей, которыми овладели компьютеры.
Чтобы до конца раскрыть суть современной ЭВМ, нужно рассказать о тех, хотя бы основных, сферах, где ЭВМ активно помогают человеку.
[1] [2] [3]
Подраздел "Беседы о поколениях ЭВМ"
|
Большинство предоставленного здесь материала является цитированием со старых номеров компьютерных журналов, таких, как
"Мир ПК" или "Компьютерра". К сожалению, все мои попытки связаться с этими изданиями по поводу вопроса о цитировании были безуспешны.
Издания упорно хранили молчание. Что я разрешил себе расценивать как знак согласия, указывая, тем не менее, повсюду как выходные данные
издания (с работающей ссылкой на Интернет-представительство), так и автора публикации. Тем более, что, в силу срока давности этих публикаций, вряд ли материал можно рассматривать как коммерческий или рекламный,
пусть даже названия фирм здесь и присутствуют (уж без этого никуда).
Ежели появятся какие претензии по оному поводу, прошу
издания связаться со мной
Райво Штулберг |