Основы вычислительных систем Курс лекций начало

 

8.2. Системотехническое проектирование

 

Цель системотехнического проектирования – определить следующие аспекты построения вычислительной системы:

1) структуру (конфигурацию) – состав технических средств (ЭВМ, устройства, каналы передачи данных) и связи между ними: (система интерфейсов);

2) режим функционирования – способы взаимодействия пользователей с системой и организацию вычислительных процессов (ввод, хранение, обработка и вывод данных);

3) состав лингвистического, информационного и программного обеспечения и порядок взаимодействия программ;

4) характеристики – производительность, время ответа, надежность, стоимость и др.

Структура, режим функционирования, состав лингвистического, информационного и программного обеспечения должны быть оптимально согласованы с назначением системы, определяемым техническим заданием, и в конечном итоге обеспечивать требуемые характеристики системы.

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

Выбор и разработка базовой структуры. Существует широкая номенклатура систем обработки данных: системы централизованной обработки на основе одной или многих несвязанных ЭВМ, обеспеченных при необходимости средствами теледоступа; многомашинные и многопроцессорные комплексы; глобальные (региональные) и локальные вычислительные сети. Перечисленные системы существенно различаются по производительности и надежности, объему хранимых данных и сложности реализуемых алгоритмов, а также в отношении расширения функциональных возможностей, увеличения производительности и надежности. Если в техническом задании не определен тип вычислительной системы, то первая задача системотехнического проектирования – выбор типа системы, наилучшим образом удовлетворяющего ее назначению. Основные факторы, влияющие на выбор типа системы, – рабочая нагрузка, режим взаимодействия пользователей с системой, требования к надежности и состояние производственно-технической базы, на основе которой предполагается создавать систему.

Рабочая нагрузка определяет потребность задач (пользователей) в ресурсах-памяти, процессорной обработки и ввода – вывода данных. На основе данных о рабочей нагрузке можно приближенно оценить минимальную необходимую емкость оперативной и внешней памяти и тип внешних запоминающих устройств, минимальную необходимую производительность процессоров и пропускную способность подсистемы ввода – вывода. Режим взаимодействия пользователей с системой – пакетная обработка, «запрос – ответ», диалоговый режим и обработка в реальном времени–влияет на уровень загрузки ресурсов системы, состав и число устройств ввода – вывода данных. При пакетной обработке: загрузка процессоров, памяти и системных устройств ввода – вывода оказывается наибольшей и составляет примерно 75–90 %. При обработке данных в режиме «запрос – ответ», диалоговом; режиме и реальном времени для уменьшения времени ответа создается запас производительности устройств обработки и ввода – вывода, а также запас емкости памяти, чтобы сохранить необходимое качество обслуживания при пульсациях нагрузки. За счет этого загрузка основных устройств и памяти системы составляет обычно не более 50–70 %.

Таким образом, исходя из сведений о рабочей нагрузке и. достижимого уровня загрузки устройств определяется примерная потребность в емкости памяти, производительности процессоров и в средствах ввода – вывода. Кроме того, тип данных, обработка которых возлагается на систему, предопределяет тип операций над ними: целочисленной арифметики, с плавающей запятой, десятичной арифметики над полями переменной длины, обработки текстов, матриц и т. д. Эти факторы влияют на выбор типа процессоров и ЭВМ.

 

Рис. 8.1. Варианты базовой структуры вычислительных систем

 

При выборе базовой структуры наиболее сложный момент – анализ состояния производственно-технической базы и возможности использования в проектируемой системе серийно выпускаемых технических средств (ЭВМ, процессоры, внешние запоминающие устройства, устройства ввода–вывода, аппаратура передачи данных и сопряжения каналов с ЭВМ) и существующего программного обеспечения. При проектировании вычислительных систем, за исключением принципиально новых, стремятся в максимальной степени использовать серийно выпускаемые устройства и существующее программное обеспечение, ориентируясь на средства ЕС ЭВМ, СМ ЭВМ или совместное применение этих средств.

В результате оценки потребностей в ресурсах и анализа состояния производственно-технической базы выбирается и обосновывается базовая структура проектируемой системы. При этом различные варианты построения систем (рис. 8.1) выравниваются по степени соответствия заданной рабочей нагрузке, требованиям к производительности и надежности с учетом состояния производственно-технической базы. В рамках выбранною варианта детализируются существенные моменты структурной организации и функционирования вычислительной системы: для многомашинных комплексов выбираются способы комплектования ЭВМ. разделения, рабочей нагрузки между ЭВМ и управления процессами, для многопроцессорных комплексов – способ доступа к общей памяти и периферийным устройствам, для вычислительных сетей – способ передачи данных и состав функций. В результате исследований, проводимых на стадиях технического предложения и эскизного проекта, формируется базовая структура вычислительной системы, обеспечивающая необходимую производительность процессорной обработки, надежность, а также режимы обслуживания пользователей.

Обеспечение требуемой производительности. Производительность вычислительной системы зависит от следующих основных факторов: 1) структуры системы; 2) режима функционирования; 3) характеристик рабочей нагрузки. Кроме того, на производительность существенно влияет надежность системы, поскольку в результате отказов часть ресурсов или вся система теряет работоспособность на время восстановления системы.

Обеспечение требуемой производительности в процессе системотехнического проектирования сводится к оценке производительности исследуемых вариантов построения системы, а также к оптимизации структуры и режима функционирования для достижения заданной производительности при минимальной стоимости системы.

Основным инструментом при исследовании производительности являются модели производительности вычислительных систем. Создаваемые модели базируются на эмпирических представлениях о процессе функционирования проектируемой системы и, естественно, не могут превосходить их по сложности. Структура проектируемой системы достаточно полно и точно задается выбранной базовой структурой и воспроизводится в модели с любой необходимой степенью подробности. Однако, формирование представлений о рабочей нагрузке (создаваемой потоками обрабатываемых задач) и системной нагрузке (порождаемой операционной системой при заданном режиме обработки задач и составе рабочей нагрузки) вызывает существенные трудности, обусловленные следующими причинами.

Сведения о рабочей и системной нагрузке проектируемых систем, за исключением специализированных систем с ограниченным и фиксированным набором функций, обычно получают путем измерения нагрузки систем, находящихся в эксплуатации и' обрабатывающих задачи подобного типа. Но даже при наличии представительной статистики, о работе существующих систем перенос имеющихся данных на систему с другой структурой и операционной системой приводит к значительным погрешностям в прогнозировании нагрузки, что связано со следующими обстоятельствами. Во-первых, при различии структуры и характеристик могут измениться принципы обработки данных и режим взаимодействия пользователей с проектируемой системой и, как следствие, характеристики рабочей нагрузки. Так, использование в проектируемой системе оперативной памяти большой емкости может привести к изменению структуры программ и перемещению в оперативную память значительной части операционной системы и данных, в результате чего уменьшится интенсивность обращений к внешней памяти. Использование во внешней памяти проектируемой системы накопителей большой емкости изменяет порядок размещения наборов данных по накопителям и интенсивность обращения к ним. Увеличение числа терминалов приводит к уменьшению объема ввода – вывода данных через системные устройства и т. д.

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

В-третьих, наличие средств телеобработки, возможность распределенной обработки в рамках вычислительной сети, организация данных в виде баз и другие подобные аспекты организации проектируемой системы, отсутствующие в существующих системах, влияют на процессы обработки данных и, следовательно, на характеристики нагрузки.

Таким образом, чем больше отличие проектируемой системы от существующих, тем меньше вероятность корректного воспроизведения рабочей и системной нагрузки в моделях производительности.

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

1) загрузка ресурсов и при необходимости профиль загрузки;

2) профили процессов, определяющие время пребывания заданий на разных стадиях их выполнения и в очередях;

3) производительность.

Модели должны воспроизводить следующее:

1) состав и технические характеристики основных устройств системы – процессоров, оперативной памяти, внешних запоминающих устройств и, возможно, каналов ввода – вывода и передачи данных;

2) основные параметры режима функционирования – уровень мультипрограммирования и системную нагрузку;

3) параметры нагрузки в однородном представлении или в виде нескольких классов задач, обрабатываемых, например, в пакетном режиме, двух-трех классов задач, обрабатываемых в оперативном режиме.

На стадиях технического предложения и эскизного проектирования, когда основное внимание уделяется выбору структуры системы и самых существенных параметров режима функционирования, погрешность оценки характеристик моделируемой системы на уровне 25–50% считается вполне, удовлетворительной. Поэтому для оценки характеристик проектируемых систем используются наиболее простые аналитические методы и несложные имитационные модели. При этом параметры структуры, режима функционирования и нагрузки воспроизводятся в моделях на уровне средних и редко на уровне средних и дисперсий. При этом, как правило, используется комплекс моделей производительности: общая модель производительности системы в целом и частные модели, воспроизводящие функционирование отдельных подсистем – общей памяти с многоканальным доступом, моноканала, виртуальной памяти и др. Частные модели позволяют оценить характеристики отдельных процессов, существенно влияющих на производительность системы, например вероятность блокировки обращений при доступе к общим модулям оперативной памяти и внешним устройствам, задержку передачи данных через общую шину, частоту страничных сбоев в виртуальной памяти и т. п. Характеристики, полученные с помощью частных моделей, вводятся в общую модель производительности в качестве параметров, представляющих свойства процессов более низких уровней (по сравнению с уровнями процессов, воспроизводимых общей моделью).

Оптимизация проектируемой системы по производительности сводится к согласованию структуры системы и технических характеристик устройств с режимом функционирования системы и рабочей нагрузкой. Согласование означает в основном выявление и устранение узких мест в системе. Узкое место – это ресурс (устройство или память), нехватка которого приводит к недоиспользованию остальных ресурсов системы. Устраняется узкое место путем изменения числа или характеристик соответствующих устройств. Если улучшить характеристики этого ресурса невозможно, изменяют структуру и режим функционирования системы. Например, невозможность увеличения производительности процессора может потребовать многомашинной организация системы, в частности использования сателлитной ЭВМ. При этом с помощью моделей производительности оценивается эффективность различных вариантов построения системы и выбирается вариант, в наибольшей степени соответствующий назначению проектируемой системы.

В результате исследования производительности на стадиях технического предложения и эскизного проекта базовая структура проектируемой системы конкретизируется до значений параметров, определяющих число и технические характеристики устройств, пропускную способность интерфейсов и каналов связи.

Модели производительности необходимы при эскизном и техническом проектировании программного обеспечения для оценки эффективности различных вариантов организации вычислительных процессов. Здесь требуются более детальные модели, чем при разработке базовой структуры системы. В моделях необходимо воспроизводить процессы планирования и выполнения работ, реализуемые управляющими программами операционной системы, и рабочую нагрузку в неоднородном представлении – в виде совокупности классов заданий, обрабатываемых в разных режимах, имеющих приоритеты и использующих различный состав и объем ресурсов, Наиболее подходящими для этой цели являются гибридные модели, в которых рабочая нагрузка и процессы планирования воспроизводятся имитационными, а процессы выполнения задач – аналитическими методами. Имитационные методы позволяют моделировать сколь угодно сложную организацию планирования и выполнения задач и используются для построения моделей производительности, детально отображающих все аспекты функционирования проектируемой системы.

Обеспечение надежности. Требования к надежности определяются назначением вычислительной системы и задаются, как правило, минимальным, допустимым: коэффициентом готовности, характеризующим долю времени, втечение которого система сохраняет работоспособность. В общем случае коэффициент готовности ,где T – средняя наработка на отказ и Тв – среднее время восстановления. Для систем повышенной надежности, которые должны функционировать непрерывно, требование к надёжности может характеризоваться предельным допустимым числом часов простоя системы в заданный период времени, например 2 часа за 10лет работы. В тех случаях, когда некоторые группы отказов приводят к прекращению обслуживания отдельных пользователей при сохранении работоспособности остальных, требования к. надежности задаются раздельно для подсистем вычислительной системы, обслуживающих часть рабочей нагрузки, и для ядра системы.

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

На стадии технического предложения и эскизного проекта оценивается надежность базовой структуры вычислительной системы. Вычисленные показатели сравниваются с требуемыми, и определяется способ повышения надежности системы. Надежность можно увеличить за счет использования высоконадежных элементов, облегчения режима работы элементов и совершенствования технологии изготовления и сборки системы. Другой подход к повышению надежности – обеспечение отказоустойчивости системы за счет резервирования. Резервировать можно технические средства на уровне логических элементов, устройств и ЭВМ или программные средства путем повторной реализации функций на основе одного и того же или разных алгоритмов и создания дополнительных программ для выявления и исправления ошибок. При резервировании технических средств в систему вводится аппаратурный резерв, при резервировании программных средств – временной резерв. Резервирование технических средств может выполняться различными способами – статическим, динамическим и гибридным. При статическом резервировании отказы блокируются автоматически, без изменения структуры и режима функционирования системы. Наиболее распространено тройное статическое резервирование – с использованием схемы голосования (мажоритарной латки), которая формирует результат, соответствующий совпадающим результатам двух из трех модулей, вследствие чего отказ одного модуля не нарушает работоспособность системы. При динамическом резервировании модули оснащаются средствами, контролирующими их работоспособность, и при обнаружении отказа производится реконфигурация системы для подключения резервного модуля или перераспределения функций между исправными модулями системы. Гибридное резервирование основано на совместном использовании принципов статического и динамического резервирования.

Эффективность вариантов повышения надежности оценивается с помощью моделей надежности, создаваемых на основе аппарата теории надежности. Определяются показатели надежности, и прирост надежности сопоставляется с затратами на введение резерва в систему. Путем сравнения вариантов выбирается наиболее, рациональный. Значительные трудности возникают при разделении требований к надежности между частями системы – ее подсистемами и устройствами. Чтобы обеспечить заданную надежность при минимальных затратах, необходимо установить соотношение между надежностью и затратами на ее обеспечение, для каждого типа устройств и подсистем. Оценка затрат производится на основе опыта предыдущих разработок, причем, естественно, с рядом допущений. По этой причине устанавливать требования к надежности подсистем приходится в условиях существенной неопределенности.

Для вычислительных систем характерны сбои в работе, вызванные электромагнитными помехами, пульсацией питания и другими причинами. Действие этих факторов обычно кратковременно. Для обеспечения работоспособности в условиях сбоев в систему встраиваются средства, позволяющие обнаружить ошибки и запускать процедуру восстановления (например, повторение действий). Если процедура восстановления работоспособности выполнена успешно, то причиной ошибки считается сбой и система продолжает функционировать в естественном режиме. В противном случае отказ считается катастрофическим.

В программе обеспечения надежности системы важная роль отводится повышению ремонтопригодности, позволяющей снижать затраты времени и средств на восстановление работоспособности системы. Для повышения ремонтопригодности существует множество способов, реализуемых на всех стадиях проектирования, производства и эксплуатации системы: встраивание в систему эффективных средств контроля и диагностики, унификация конструкций и рациональная их компоновка и др.

Машиностроительное черчение, инженерная графика, начертательная геометрия. Выполнение контрольной