Некоторые вопросы философии развития вычислительных средств
Хетагуров Ярослав Афанасьевич
Более полстолетия в мире развиваются вычислительные средства, которые представляются двуединством вычислительных устройств и программирования. За этот период достигнуты фантастические успехи в создании вычислительных устройств (машин) и развитии программирования. Вычислительные средства получили широчайшее использование в различных областях нашей жизни.
Опыт развития вычислительных средств дает возможность анализировать принятые и принимаемые решения и рассматривать используемые оценки их рациональности. Представляется, что оценка рациональности решения во многом определяется условиями развития и целями, преследуемыми применением вычислительных средств.
Рассмотрим связь цели применения и условий развития ВС.
Если на начальном этапе развития области применения вычислительных средств ограничивались научными и главным образом военными целями и имели относительно простые оценки рациональности путей их решения — учитывались два фактора: время получения решения и затраты, то внедрение вычислительных средств в различные области современного общества существенно расширили, усложнили и увеличили требования к ним и к оценкам рациональности их применения.
История развития вычислительных средств показала, что задача увеличения объемов производства вычислительной техники оказалась существенно более простой для реализации, чем обеспечение областей программами решения задач.
Это обстоятельство оказало серьезное влияние на развитие вычислительных средств. Они стали совершенствоваться в направлении повышения основных характеристик вычислительных средств — вычислительных устройств (быстродействие и объемы памяти) и производительности программирования (языки высокого уровня).
Для вычислительных устройств повышение быстродействия и объемов памяти главным образом обеспечивалось технологическими средствами путем сокращения размеров элементов, что увеличивало частоту их работы и уменьшало размеры устройства, а также посредством повышения числа параллельно работающих вычислительных устройств.
Повышение производительности программирования обеспечивалось широким использованием языков высокого уровня, учитывающих особенности решения задач в различных областях применения вычислительных средств. Использование языков высокого уровня существенно повышало производительность программирования задач, но преобразование программы на языке высокого уровня в программу работы вычислительного устройства (в программу на машинном языке МЯ) приводило к значительному увеличению ее объема.
Суммируя приведенные данные, можно в широком смысле оценивать развитие вычислительных средств как экстенсивное и соответственно определять его роль в экономическом развитии общества.
Экстенсивное развитие вычислительных средств ярко выявило положительную обратную связь двух частей вычислительных средств — вычислительных устройств и программирования.
Так увеличение объема программ ставит задачи по повышению производительности вычислительных устройств, а их совершенствование приводит к возможности увеличения программного обеспечения. Таким образом эти две части создают условия друг другу для развития, что способствует сохранению существующего паритета в распределении и развитии работ и четкой экономической заинтересованности сторон.
В результате экстенсивное развитие вычислительных средств отрицательно влияет на генерацию и внедрение новых идей в построении вычислительных средств.
Важной проблемой развития вычислительных средств является оценка соотношения видов и числа операций у ЯВУ и МЯ и их выбор для построения вычислительных средств.
По-видимому целесообразно провести анализ движения от МЯ к ЯВУ, предполагая аппаратурную реализацию каждого шага этого движения. Учитывая признанные преимущества программирования на ЯВУ с одной стороны, и достижения в технологии минимизации размеров элементов на кристалле с другой стороны, а также развитие САПРа, практически созданы условия для построения сложных схем операции ЯВУ.
Однако, по публикациям, это направление ВС не получило развития по-видимому из-за корпоративных соображений, так как резко ограничивался рынок программных продуктов на МЯ с одной стороны, и существенно изменялись требования к быстродействию вычислительных устройств с другой стороны (сокращения количества команд на МЯ более, чем на порядок, практическое исключение ОСов).
Необходимо отметить, применение ВС с аппаратурной реализацией ЯВУ существенно сокращает затраты фирм, создающих системы с вычислительными устройствами как на программирование и отладку программ и всей системы, так и на эксплуатацию, но это проблемы другой группы фирм.
Следующей важной проблемой развития ВС является оценка универсальности создаваемых вычислительных устройств, имея в виду возможности эффективно проводить вычисления для широкого круга задач.
Для подавляющего числа пользователей ВС (более 80%) и особенно для ВС, работающих в различных областях главным является минимизация затрат на эксплуатацию. Это достигается двумя путями:
- использованием универсальных вычислительных устройств и широким применением разработанных типовых программ;
- применением специализированных вычислительных устройств, эффективно решающих определенные группы задач и использующие наиболее удобные ЯВУ.
Современный уровень развития технологии изготовления вычислительных устройств, использование САПР, создание базовых технических решений (базовые кристаллы для микропроцессоров, контролеров) изменяют оценки целесообразности применения в сторону специализированных решений.
Существующее распределение промышленных и экономических ресурсов ведущих производителей ВС больше заинтересовано в универсальных ВС, так как они обеспечивают экстенсивное развитие и определенный уровень прибыли и паритет между частями ВС. Хотя для потребителей, эксплуатирующих ВС это приводит к увеличению затрат. Но так организовано взаимодействие в производстве ВС. Это один из важных факторов, сдерживающих реализацию новых идей.
Проблемой развития ВС, несмотря на определенные достижения, является обеспечение достоверности выдаваемой информации. Как известно, достоверность информации (отсутствие ошибок в выдаваемых данных) определяется качеством используемых методов контроля правильности работы вычислительных устройств и выполняемой программы.
Необходимо отметить, что важность требований к достоверности информации определяется ограниченным числом потребителей ВС (15-20%), однако ущерб от ошибочной информации может достигать значительных величин.
К ошибочной информации, с точки зрения потребителя, отнесем и воздействие вирусов и различных закладок, которые наносят миллиардные ущербы.
Рассмотрим некоторые особенности появления вирусов, которые нарушают порядок выполнения программ решения задач. Необходимо отметить, что появление вирусов в программе не связано с нарушением работы аппаратуры вычислительного устройства, принимаемые меры по устранению влияния вируса осуществляются после его обнаружения и действуют только на этот вирус. Предсказать появление вируса пока, по опубликованным данным, не удавалось.
Анализируя программы вирусов, можно отметить, что в них используются команды, связанные с преобразованием адресов и изменениями данных. Возможное число сочетаний подобных команд в программах практически неограниченно.
Поэтому, для исключения влияния вирусов, необходимы изменения организации работы вычислительного устройства и условия формирования программ. Поэтому, существующий порядок работы ВС периодически будет нарушаться появлением очередного вируса, воздействие которого устраняется созданием очередной антивирусной программы, что связано с дополнительными затратами пользователя и увеличением объема программы и повышением требований к быстродействию.
Существующий экстенсивный порядок развития ВС, определенный главным образом экономическими отношениями между ведущими компаниями мира может измениться только в результате появлений новых условий и потребностей общества
Об авторе: МИФИ
Материалы международной конференции SORUCOM 2006 (3-7 июля 2006 года)
Статья помещена в музей 6.11.2007 с разрешения автора