Файл: Состав и свойства вычислительных систем. Информационное и математическое обеспечение вычислительных систем (Многопроцессорность).pdf
Добавлен: 04.04.2023
Просмотров: 114
Скачиваний: 1
Различают две формы многопоточности, которые могут быть реализованы в процессорах аппаратно:
- Временная многопоточность (англ. Temporal multithreading)
- Одновременная многопоточность (англ. Simultaneous multithreading)
Следует отметить, что многопроцессорная вычислительная система в аппаратном плане значительно более сложны чем многомашинная ВС. При этом основная функция по организации вычислительного процесса возлагается на операционную систему, что значительно осложняет ее построение.
Однако, несмотря на все трудности, связанные с аппаратной и программной реализацией, многопроцессорные ВС получают все большее распространение, так как обладают рядом достоинств, основные из которых:
· высокая надежность и готовность за счет резервирования и возможности реконфигурации;
· высокая производительность за счет возможности гибкой организации параллельной обработки информации и более полной загрузки всего оборудования;
· высокая экономическая эффективность за счет повышения коэффициента использования оборудования комплекса.
Существует три типа структурной организации МПВС: с общей шиной; с перекрестной коммутацией; с многовходовыми ОЗУ.
В МПВС с общей шиной проблема связей всех устройств между собой решается крайне просто: все они соединяются общей шиной, по которым передаются информация, адреса и сигналы управления. Интерфейс является односвязным, т. е. обмен информацией в любой момент времени может происходить только между двумя устройствами. Если потребность в обмене существует более чем у двух устройств, то возникает конфликтная ситуация, которая разрешается с помощью системы приоритетов и организации очередей в соответствии с этим. Обычно функции арбитра выполняет либо процессор, либо специальное устройство, которое регистрирует все обращения к общей шине и распределяет шину во времени между всеми устройствами комплекса.
Достоинством такой структуры является простота, в том числе изменения комплекса, а также доступность модулей ОЗУ для всех остальных устройств.
Недостатком является возможность возникновения конфликтных ситуаций при обращении нескольких процессоров к одной области памяти, невысокое быстродействие (одновременный обмен информацией возможен между двумя устройствами, не более), относительно низкая надежность системы из-за наличия общего элемента – шины.
2. Многопроцессорные ВС с перекрестной коммутацией.
Среди многопроцессорных вычислительных систем существуют МПВС с перекрестной коммутацией, они лишены недостатков, присущих МПВС с общей шиной. В таких МПВС все связи между устройствами осуществляются с помощью коммутационной матрицы. Коммутационная матрица (КМ) позволяет связывать друг с другом любую пару устройств, причем таких пар может быть сколько угодно: связи не зависят друг от друга.
В МПВС с перекрестной коммутацией возможность одновременной связи нескольких пар устройств позволяет добиваться очень высокой производительности комплекса.
Также, к достоинствам структуры с перекрестной коммутацией можно отнести простоту и унифицированность интерфейсов всех устройств, а также возможность разрешения всех конфликтов в коммутационной матрице. Важно отметить и то, что нарушение какой-то связи приводит не к выходу из строя всего комплекса, а лишь к отключению какого-либо устройства, т. е. надежность таких комплексов достаточно высока.
Недостатками таких МПВС является сложность наращивания, что требует установки новой коммутационной матрицы, а также то, что при большой номенклатуре устройств КМ становится сложной, громоздкой и достаточно дорогостоящей.
В МПВС с многовходовыми ОЗУ все, что связано с коммутацией устройств, осуществляется в ОЗУ. В этом случае модули ОЗУ имеют число входов, равное числу устройств, которые к ним подключаются.
В отличие от МПВC с перекрестной коммутацией, которые имеют централизованное коммутационное устройство, в МПВК с многовходовыми ОЗУ средства коммутации распределены между несколькими устройствами. Такой способ организации МПВК сохраняет все преимущества систем с перекрестной коммутацией, несколько упрощая при этом саму систему коммутации.
Особенностью многопроцессорных вычислительных систем является наличие общей оперативной памяти в качестве общего ресурса
Кроме приведенных структурных организаций Многомашинных ВС и многопроцессорных ВС - нередко встречаются и смешанные.
Аппаратные и программные средства вычислительных систем принято рассматривать отдельно. Такой принцип разделения имеет большое значение, потому что часто решение одних и тех же задач может обеспечиваться как аппаратными, так и программными средствами. Критериями выбора аппаратного или программного решения являются производительность и эффективность. Зачастую аппаратные решения в среднем оказываются дороже, а реализация программных решений требует более высокой квалификации персонала.
3. Аппаратное обеспечение
К аппаратному обеспечению вычислительных систем относятся устройства и приборы, образующие аппаратную конфигурацию. Современные компьютеры и вычислительные комплексы имеют блочно-модульную конструкцию — аппаратную конфигурацию, необходимую для исполнения конкретных видов работ, можно собирать из готовых узлов и блоков.
По способу расположения устройств относительно центрального процессорного устройства (ЦПУ— Central Processing Unit, CPU) различают внутренние и внешние устройства. Внешними, как правило, являются большинство устройств ввода-вывода данных (их также называют периферийными устройствами) и некоторые устройства, предназначенные для длительного хранения данных.
Согласование между отдельными узлами и блоками выполняют с помощью переходных аппаратно-логических устройств, называемых аппаратными интерфейсами. Стандарты на аппаратные интерфейсы в вычислительной технике называют протоколами. Таким образом, протокол — это совокупность технических условий, которые должны быть обеспечены разработчиками устройств для успешного согласования их работы с другими устройствами.
Многочисленные интерфейсы, присутствующие в архитектуре любой вычислительной системы, можно условно разделить на две большие группы: последовательные и параллельные. Через последовательный интерфейс данные передаются последовательно, бит за битом, а через параллельный — одновременно группами битов. Количество битов, участвующих в одной посылке, определяется разрядностью интерфейса, например - восьмиразрядные параллельные интерфейсы передают один байт (8 бит) за один цикл.
Параллельные интерфейсы обычно имеют более сложное устройство, чем последовательные, но обеспечивают более высокую производительность. Их применяют там, где важна скорость передачи данных: для подключения печатающих устройств, устройств ввода графической информации, устройств записи данных на внешний носитель и т. п. Производительность параллельных интерфейсов измеряют байтами в секунду (байт/с; Кбайт/с; Мбайт/с).
Устройство последовательных интерфейсов проще; зачастую, для них не надо синхронизировать работу передающего и принимающего устройства (поэтому их часто называют асинхронными интерфейсами), пропускная способность их меньше и коэффициент полезного действия ниже, так как из-за отсутствия синхронизации посылок полезные данные предваряют и завершают посылками служебных данных, то есть на один байт полезных данных могут приходиться 1-3 служебных бита (состав и структуру посылки определяет конкретный протокол).
Поскольку обмен данными через последовательные устройства производится не байтами, а битами, их производительность измеряют битами в секунду (бит/с, Кбит/с, Мбит/с). Несмотря на кажущуюся простоту перевода единиц измерения скорости последовательной передачи в единицы измерения скорости параллельной передачи данных путем механического деления на 8, такой пересчет не выполняют, поскольку он не корректен из-за наличия служебных данных. В крайнем случае, с поправкой на служебные данные, иногда скорость последовательных устройств выражают в знаках в секунду или, что тоже самое, в символах в секунду (с/с), но эта величина имеет не технический, а справочный, потребительский характер.
Последовательные интерфейсы применяют для подключения «медленных» устройств (простейших устройств печати низкого качества, устройств ввода и вывода знаковой и сигнальной информации, контрольных датчиков, малопроизводительных устройств связи и т. п.), а также в тех случаях, когда нет существенных ограничений по продолжительности обмена данными (большинство цифровых фотокамер).
4. Программное обеспечение
Программы — это упорядоченные последовательности команд. Конечная цель любой компьютерной программы — управление аппаратными средствами. Даже если на первый взгляд программа никак не взаимодействует с оборудованием, не требует никакого ввода данных с устройств ввода и не осуществляет вывод данных на устройства вывода, все равно ее работа основана на управлении аппаратными устройствами компьютера.
Программное и аппаратное обеспечение в компьютере работают в неразрывной связи и в непрерывном взаимодействии. Несмотря на то что мы рассматриваем эти две категории отдельно, нельзя забывать, что между ними существует диалектическая связь, и раздельное их рассмотрение является по меньшей мере условным.
Состав программного обеспечения вычислительной системы называют программной конфигурацией. Между программами, как и между физическими узлами и блоками существует взаимосвязь — многие программы работают, опираясь на другие программы более низкого уровня, то есть, мы можем говорить о межпрограммном интерфейсе. Возможность существования такого интерфейса тоже основана на существовании технических условий и протоколов взаимодействия, а на практике он обеспечивается распределением программного обеспечения на несколько взаимодействующих между собой уровней. Уровни программного обеспечения представляют собой пирамидальную конструкцию. Каждый следующий уровень опирается на программное обеспечение предшествующих уровней. Такое членение удобно для всех этапов работы с вычислительной системой, начиная с установки программ до практической эксплуатации и технического обслуживания. Необходимо обратить внимание на то, что каждый вышележащий уровень повышает функциональность всей системы. Так, например, вычислительная система с программным обеспечением базового уровня не способна выполнять большинство функций, но позволяет установить системное программное обеспечение.
Базовый уровень. Самый низкий уровень программного обеспечения представляет базовое программное обеспечение. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило, базовые программные средства непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах, называемых постоянными запоминающими устройствами (ПЗУ— Read Only Memory, ROM). Программы и данные записываются («прошиваются») в микросхемы ПЗУ на этапе производства и не могут быть изменены в процессе эксплуатации.
В тех случаях, когда изменение базовых программных средств во время эксплуатации является технически целесообразным, вместо микросхем ПЗУ применяют перепрограммируемые постоянные запоминающие устройства (ППЗУ — Erasable and Programmable Read Only Memory, EPROM). В этом случае изменение содержания ПЗУ можно выполнять как непосредственно в составе вычислительной системы (такая технология называется флэш-технологией), так и вне ее, на специальных устройствах, называемых программаторами.
Системный уровень. Системный уровень — переходный. Программы, работающие на этом уровне, обеспечивают взаимодействие прочих программ компьютерной системы с программами базового уровня и непосредственно с аппаратным обеспечением, то есть выполняют «посреднические» функции.
От программного обеспечения этого уровня во многом зависят эксплуатационные показатели всей вычислительной системы в целом. Так, например, при подключении к вычислительной системе нового оборудования на системном уровне должна быть установлена программа, обеспечивающая для других программ взаимосвязь с этим оборудованием. Конкретные программы, отвечающие за взаимодействие с конкретными устройствами, называются драйверами устройств — они входят в состав программного обеспечения системного уровня.
Другой класс программ системного уровня отвечает за взаимодействие с пользователем. Именно благодаря им он получает возможность вводить данные в вычислительную систему, управлять ее работой и получать результат в удобной для себя форме. Эти программные средства называют средствами обеспечения пользовательского интерфейса. От них напрямую зависит удобство работы с компьютером и производительность труда на рабочем месте.
Совокупность программного обеспечения системного уровня образует ядро операционной системы компьютера. Полное понятие операционной системы мы рассмотрим несколько позже, а здесь только отметим, что если компьютер оснащен программным обеспечением системного уровня, то он уже подготовлен к установке программ более высоких уровней, к взаимодействию программных средств с оборудованием и, самое главное, к взаимодействию с пользователем. То есть наличие ядра операционной системы — непременное условие для возможности практической работы человека с вычислительной системой.