Множественный поток инструкций одиночный поток данных

Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 3 февраля 2022 года; проверки требует 1 правка.

Классификация по Флинну

  Одиночный поток команд
(single instruction)
Множество потоков команд
(multiple instruction)
Одиночный поток данных
(single data)
SISD
(ОКОД)
MISD
(МКОД)
Множество потоков данных
(multiple data)
SIMD
(ОКМД)
MIMD
(МКМД)

MIMD (англ. Multiple Instruction stream, Multiple Data stream — Множественный поток Команд, Множественный поток Данных, сокращённо МКМД) — концепция архитектуры компьютера, используемая для достижения параллелизма вычислений. Один из классов вычислительных систем в классификации Флинна.

Машины имеют несколько процессоров, которые функционируют асинхронно и независимо. В любой момент различные процессоры могут выполнять различные команды над различными частями данных. MIMD-архитектуры могут быть использованы в целом ряде областей, таких, как системы автоматизированного проектирования / автоматизированное производство, моделирование, а также коммуникатор связей (англ. communication switches). MIMD-машины могут быть либо с общей памятью, либо с распределяемой памятью. Эта классификация основана на том, как MIMD-процессоры получают доступ к памяти. Этот класс предполагает, что в вычислительной системе есть несколько устройств обработки команд, объединённых в единый комплекс и работающих каждое со своим потоком команд и данных.

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

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

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

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

Множественный поток команд
— множественный поток данных (МКМД) —
Multiple Instruction Multiple Data (MIND) — множественный
поток инструкций — множественный поток
данных.

МКМД-структуры предполагают,
что все процессоры системы работают по
своим программам с собственным потоком
команд. В простейшем случае они могут
быть автономны и независимы. Такая схема
использования ВС часто применяется на
многих крупных вычислительных центрах
для увеличения пропускной способности.

2. Показатели целевой эффективности
ТВС.

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

Билет 23.

1. Для построения вычислительных
систем необходимо, чтобы элементы или
модули, комплектующие систему, были
совместимы. Понятие совместимости имеет
три аспекта:

аппаратный или технический;

программный;

информационный.

Техническая совместимость
(Hard Ware) предполагает, что еще в процессе
разработки аппаратуры обеспечиваются
следующие условия: подключаемая друг
к другу аппаратура должна иметь единые
стандартные, унифицированные средства
соединения: кабели, число проводов в
них, единое назначение проводов, разъемы,
заглушки, адаптеры, платы и т.д.;

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

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

2. Перспективы развития
информационных технологий зависит
прежде всего от их общего состояния в
мире на сегодняшний день и в России.

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

Телефонная плотность (с учетом
всех операторов) составляет 22 телефона
на 100 человек. Число абонентов подвижных
средств связи составило 2 млн. человек.
Услуги сотовой связи предоставляются
в 79 регионах, а пейджинга — в 74 регионах
страны.

Основную часть от общего числа
абонентов сотовой подвижной связи (СПС)
составляют пользователи сетей стандарта
GSM — Global System for Mobile telecommunication — глобальная
система для локальной связи или Мобильная
система (около 60%). СПС этого стандарта
предоставляют услуги в 226 городах на
территории 60 субъектов РФ. Развитие
сетей стандарта NMT — 450 — Nordie Mobile Telephone —
северный мобильный телефон или Мобильная
система проходит более медленно, чем
GSM из-за меньшего набора предоставляемых
услуг. Общее число абонентов сетейММТ-450
составляет более 225 тыс. человек, услуги
предоставляются в 470 городах РФ.

Билет 24.

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

При разработке эталонной модели
число ее уровней определялось из
следующих соображений:

разбивка на уровне должна
максимально отражать логическую
структуру компьютерной сети;

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

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

С учетом вышеизложенного МОС
была предложена 7-уровневая модель ВОС
(рис. 37).

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

2. Семейство протоколов TCP/IP
широко применяется во всем мире для
объединения компьютеров в сеть Internet.
Единая сеть Internet состоит из множества
сетей различной физической природы, от
локальных сетей типа Ethernet и Token Ring, до
глобальных сетей типа NSFNET. Основное
внима- ние в книге уделяется принципам
организации межсетевого взаимодействия.
Многие технические детали, исторические
вопросы опущены. Более подробную
информацию о протоколах TCP/IP можно найти
в RFC (Requests For Comments) — специальных документах,
выпускаемых Сетевым Информационным
Центром (Network Information Center — NIC). Приложение
1 содержит путеводитель по RFC, а приложение
2 отражает положение дел в области
стандартизации протоколов семейства
TCP/IP на начало 1991 года.

В книге приводятся примеры,
основанные на реализации TCP/IP в ОС UNIX.
Однако основные положения применимы
ко всем реализациям TCP/IP.

Надеюсь, что эта книга будет
полезна тем, кто профессионально работает
или собирается начать работать в среде
TCP/IP: системным администраторам, системным
программистам и менеджерам сети.

Основы TCP/IP

Термин «TCP/IP» обычно
обозначает все, что связано с протоколами
TCP и IP. Он охватывает целое семейство
протоколов, прикладные программы и даже
саму сеть. В состав семейства входят
протоколы UDP, ARP, ICMP, TEL- NET, FTP и многие
другие. TCP/IP — это технология межсетевого
взаимо- действия, технология internet. Сеть,
которая использует технологию internet,
называется «internet». Если речь идет
о глобальной сети, объе- диняющей
множество сетей с технологией internet, то
ее называют Internet.

Модуль IP создает единую
логическую сеть

Архитектура протоколов TCP/IP
предназначена для объединенной сети,
состоящей из соединенных друг с другом
шлюзами отдельных разнородных пакетных
подсетей, к которым подключаются
разнородные машины. Каждая из подсетей
работает в соответствии со своими
специфическими требованиями и имеет
свою природу средств связи. Однако
предполагается, что каждая под- сеть
может принять пакет информации (данные
с соответствующим сетевым заголовком)
и доставить его по указанному адресу в
этой конкретной под- сети. Не требуется,
чтобы подсеть гарантировала обязательную
доставку пакетов и имела надежный
сквозной протокол. Таким образом, две
машины, подключенные к одной подсети
могут обмениваться пакетами.

Когда необходимо передать
пакет между машинами, подключенными к
раз- ным подсетям, то машина-отправитель
посылает пакет в соответствующий шлюз
(шлюз подключен к подсети также как
обычный узел). Оттуда пакет направ-
ляется по определенному маршруту через
систему шлюзов и подсетей, пока не
достигнет шлюза, подключенного к той
же подсети, что и машина-получатель; там
пакет направляется к получателю.
Объединенная сеть обеспечивает
датаграммный сервис.

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

Билет 25.

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

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

Классификация уровней
программного параллелизма включает
шесть позиций:

независимые задания;отдельные
части заданий; программы и подпрограммы;
циклы и итерации (повторение); операторы
и команды; фазы отдельных команд.

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

Подобные ВС получили название
систем с массовым параллелизмом
(Mass-Parallel Processing, MPP). Все процессорные
элементы в таких системах должны быть
связаны единой коммутационной средой.

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

Управления вычислительными
процессами в ВС осуществляется с помощью
операционных систем, которые являются
частью общего программного обеспечения.

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

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

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

2.

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

Деление по признакам:

по виду эксплуатации
(использования) системы, а именно: СЧМ
регулярного (постоянного) применения
в течение более или менее длительного
времени; СЧМ многоразового применения,
используемые периодически, причем
периодичность использования определяется
назначением системы; СЧМ одноразового
применения, используемые однократно,
причем длительность использования
определяется назначением системы и
зависит от сложившихся условий ее
функционирования;

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

по степени влияния трудовой
деятельности человека-оператора на
эффективность функционирования СЧМ.
Здесь выделяют три типа СЧМ: системы
типа «А», в которых работа оператора
выполняется по жесткому технологическому
графику; система типа «В», в которых
такой график отсутствует, поэтому
оператор может изменять темп и ритм
своей работы;

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

Например, корпоративные
вычислительные сети (КВС) можно отнести
к таким видам СЧМ:

по виду использования это СЧМ
регулярного применения (в них
профилактические работы проводятся
без выключения сети, в оперативном
режиме). Однако отдельные подсистемы и
звенья КВС могут относится к СЧМ
многоразового применения: это отдельные
абонентские системы или ЛВС, которые
могут периодически отключаться ввиду
отсутствия необходимости в их использовании
или переключаться на проведение
профилактических работ;

по роли и месту человека-оператора
в сети они являются целенаправленными
СЧМ, в которых человек и материальные
(неэргатические) объекты рассматриваются
как равнозначные элементы. Соотношение
значимости этих элементов могут быть
различными, но не такими, чтобы сеть
следовало относить уже к другому типу
— целеустремленным (когда человек-оператор
полностью определяет процесс
функционирования КВС) или целесообразным,
когда человек оператор лишь обеспечивает
процесс функционирования сети);

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

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

Билет 26.

1. Вычислительные сети,
построенные на модели ВОС д. удовлетворять
требованиям открытости, гибкости,
эффективности. Открытость – возможность
включения дополнительных ЭВМ, терминалов,
узлов и линий связи без изменения
технических и программных средств сети.
Гибкость – сохранение работоспособности
при изменении структуры сети в результате
выхода из строя ЭВМ, линий, узлов связей.
Допустимость изменения типов ЭВМ, а
также возможность работы любых главных
ЭВМ с терминалами различных типов.
Эффективность – обеспечение требуемого
качества обслуживания пользователя
при минимальных затратах.

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

7 – пользовательские службы;
6– преобразование (представление)
данных; 5 – организация и проведение
диалога; 4 – представление сквозных
соединений; 3 – прокладка соединений
между системами; 2 – передача данных
между смежными системами; 1 –сопряжение
систем с физическими функциями системы.

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

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

Канальный уровень 2: предоставляет
услуги по обмену данными между логическими
объектами сетевого уровня и выполняет
функции, связанные формированием и
передачей кадров, обнаружением и
исправлением ошибок, возникающих на
физическом уровне посредством вычисления
контрольной суммы, проверяет доступность
среды передачи. Кадром называется пакет
канального уровня; поскольку пакет на
предыдущих уровнях может состоять из
одного или многих кадров. Канальный
уровень обеспечивает надежный транзит
данных через физический канал. На этом
уровне работают сетевые адаптеры,
коммутаторы. Протоколы – Ethernet, Token Ring,
FDDI

Сетевой уровень 3: Этот уровень
служит для образования единой транспортной
системы, объединяющей несколько сетей
с различными принципами передачи
информации между конечными узлами. На
этом уровне вводится понятие «сеть».
В данном случае под сетью понимается
совокупность компьютеров, соединенных
между собой в соответствии с одной из
стандартных типовых топологий и
использующих для передачи данных один
из протоколов канального уровня,
определенный для этой топологии. Таким
образом, внутри сети доставка данных
регулируется канальным уровнем, а вот
доставкой данных между сетями занимается
сетевой уровень. Сообщения сетевого
уровня принято называть пакетами
(packets). При организации доставки пакетов
на сетевом уровне используется понятие
«номер сети». В этом случае адрес
получателя состоит из номера сети и
номера компьютера в этой сети. На этом
уровне происходит формирование пакетов
по правилам тех промежуточных сетей,
через которые проходит исходный пакет
и маршрутизация пакетов, т.е. определение
и реализация маршрутов, по которым
передаются пакеты. Маршрутизация
сводится к образованию логических
каналов. Еще одной важной функцией
сетевого уровня является контроль
нагрузки на сеть с целью предотвращения
перегрузок. Примерами протоколов
сетевого уровня являются протокол
межсетевого взаимодействия IP стека
TCP/IP и протокол межсетевого обмена
пакетами IPX стека Novell. На этом уровне
работают маршрутизаторы (аппаратные и
программные).

Транспортный уровень 4: Работа
транспортного уровня заключается в
том, чтобы обеспечить приложениям или
верхним уровням стека — прикладному и
сеансовому — передачу данных с той
степенью надежности, которая им требуется.
Модель OSI определяет пять классов
сервиса, предоставляемых транспортным
уровнем. Эти виды сервиса отличаются
качеством предоставляемых услуг:
срочностью, возможностью восстановления
прерванной связи, наличием средств
мультиплексирования нескольких
соединений между различными прикладными
протоколами через общий транспортный
протокол, а главное — способностью к
обнаружению и исправлению ошибок
передачи, таких как искажение, потеря
и дублирование пакетов. Как правило,
все протоколы, начиная с транспортного
уровня и выше, реализуются программными
средствами конечных узлов сети —
компонентами их сетевых операционных
систем. В качестве примера транспортных
протоколов можно привести протоколы
TCP и UDP стека TCP/IP и протокол SPX стека
Novell.

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

Представительный уровень 6:
реализуются функции представления
данных (кодирование, форматирование,
структурирование). Например, на этом
уровне выделенные для передачи данные
преобразуются в кода EBCAIC в ASCII и т.п.
Представительный уровень отвечает за
то, чтобы информация, посылаемая из
прикладного уровня одной системы, была
читаемой для прикладного уровня другой
системы. На этом уровне может выполняться
шифрование и дешифрование данных,
благодаря которому секретность обмена
данными обеспечивается сразу для всех
прикладных сервисов. Примером протокола,
работающего на уровне представления,
является протокол Secure Socket Layer (SSL).

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

2. хз

Билет 27.

1.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Принципы построения компьютера

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

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

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

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

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

  • модульность построения;
  • магистральность;
  • иерархия управления.

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

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

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

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

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

Децентрализация управления предполагает иерархическую организацию структуры компьютера. Главный или центральный модуль системы определяет последовательность работ подчиненных модулей и их инициализацию, после чего они продолжают работу по собственным программам управления. Результаты выполнения требуемых операций представляются ими «вверх по иерархии» для правильной координации всех работ. Подключаемые модули могут, в свою очередь, использовать специальные шины, или магистрали, для обмена управляющими сигналами, адресами и данными.

Иерархический принцип построения и управления характерен не только для структуры компьютера в целом, но и для отдельных его подсистем. Например, по этому же принципу строится система памяти.

Децентрализация управления и структуры компьютера позволила перейти к более сложным многопрограммным (мультипрограммным) режимам. При этом в компьютере одновременно могут обрабатываться несколько программ пользователей.

Структурные схемы и взаимодействие устройств компьютера

Классическая схема компьютера, отвечающая программному принципу управления, логично вытекает из последовательного характера преобразований, выполняемых человеком по некоторому алгоритму (программе). Обобщенная структурная схема ЭВМ первых поколений представлена на рис.13.2.

В любом компьютере имеются устройства ввода информации (УВв), с помощью которых пользователи вводят программы решаемых задач и данные. Введенная информация сначала полностью или частично запоминается в оперативном запоминающем устройстве (ОЗУ), а затем переносится во внешнее запоминающее устройство (ВЗУ), предназначенное для длительного хранения информации, где преобразуется в специальный информационный объект — файл.

 Структурная схема первых компьютеров

Рис.
13.2.
Структурная схема первых компьютеров

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

Устройство управления (УУ) предназначается для автоматического выполнения программ путем принудительной координации всех остальных устройств. Цепи сигналов управления показаны на рис.13.2 штриховыми линиями. Вызываемые из ОЗУ команды дешифрируются устройством управления: определяют код операции, которую необходимо выполнить следующей, и адреса операндов, принимающих участие в данной операции.

Арифметико-логическое устройство (АЛУ) выполняет арифметические и логические операции над данными. Основной частью АЛУ является операционный автомат, в состав которого входят сумматоры, счетчики, регистры, логические преобразователи и др. Он каждый раз перестраивается на выполнение очередной операции. Результаты выполнения отдельных операций сохраняются для последующего использования на одном из регистров АЛУ или записываются в память. Отдельные признаки результатов r (r=0, r<0, r>0 и др.) устройство управления использует для изменения порядка выполнения команд программы. Результаты, полученные после выполнения всей программы вычислений, передаются на устройство вывода информации (УВыв). В качестве УВыв могут использоваться экран дисплея, принтер, графопостроитель и др.

Классическая структура компьютера представляла собой «удивительно изящное инженерное решение», хорошо отвечающее тогдашнему уровню развития промышленных технологий. Она стала фактическим стандартом (de facto), которому стали следовать производители вычислительной техники.

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

 Структура ПК

Рис.
13.3.
Структура ПК

Ядро ПК образуют процессор, основная память (ОП), состоящая из оперативной памяти и постоянного запоминающего устройства (ПЗУ), и видеопамять. ПЗУ предназначается для записи и постоянного хранения наиболее часто используемых программ управления.

Подключение всех внешних устройств (ВнУ), дисплея, клавиатуры, внешних ЗУ и др. обеспечивается через соответствующие адаптеры — согласователи скоростей работы сопрягаемых устройств, или контроллеры — специальные устройства управления периферийной аппаратурой. Контроллеры в ПК играют роль каналов ввода-вывода. В качестве особых устройств следует выделить таймер — устройство измерения времени, и контроллер прямого доступа к памяти (КПД) — устройство, обеспечивающее доступ к ОП, минуя процессор.

Организацию согласованной работы шин и устройств выполняют микросхемы системной логики, называемые чипсетом (Chipset). Большинство наборов микросхем системной логики имеют ярко выраженную иерархическую структуру построения, отвечающую уровням высокоскоростных и ввода-вывода данных. Уровень высокоскоростных устройств образуют процессоры, видеопамять, оперативная память; уровень низко-скоростных устройств образуют любые внешние устройства.

Компьютерные системы

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

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

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

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

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

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

Основные принципы построения, закладываемые при создании ВС:

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

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

Большое разнообразие структур ВС затрудняет их изучение. Поэтому их классифицируют с учетом их обобщенных характеристик. С этой целью вводится понятие «архитектура системы».

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

Классификация архитектур была предложена М. Флинном (M. Flynn) в начале 60-хгг. В ее основу заложено два возможных вида параллелизма: независимость потоков заданий (команд), существующих в системе, и независимость (несвязанность) данных, обрабатываемых в каждом потоке. Классификация до настоящего времени еще не потеряла своего значения. Однако подчеркнем, что, как и любая классификация, она носит временный и условный характер. Своим долголетием она обязана тому, что оказалась справедливой для ВС, в которых вычислительные модули построены на принципах классической структуры ЭВМ. С появлением систем, ориентированных на потоки данных и использование ассоциативной обработки, эта классификация может быть некорректной.

Согласно данной классификации существует четыре основных архитектуры ВС, представленных на рис.13.4:

  • одиночный поток командодиночный поток данных (ОКОД), в английском варианте Single Instruction Single Data (SISD) — одиночный поток инструкцийодиночный поток данных (рис.13.4a);
  • одиночный поток командмножественный поток данных (ОКМД), или Single Instruction Multiple Data (SIMD) — одиночный поток инструкцийодиночный поток данных (рис.13.4б);
  • множественный поток командодиночный поток данных (МКОД), или Multiple Instruction Single Data (MISD) — множественный поток инструкцийодиночный поток данных (рис.13.4в);
  • множественный поток командмножественный поток данных (МКМД), или Multiple Instruction Multiple Data (MIMD) — множественный поток инструкциймножественный поток данных (рис.13.4г).

Коротко рассмотрим отличительные особенности каждой из архитектур.

Архитектура ОКОД охватывает все однопроцессорные и одномашинные варианты систем, то есть варианты с одним вычислителем. Все ЭВМ классической структуры попадают в этот класс. Здесь параллелизм вычислений обеспечивается путем совмещения выполнения операций отдельными блоками АЛУ, а также параллельной работой устройств ввода-вывода информации и процессора. Закономерности организации вы-числительного процесса в этих структурах достаточно хорошо изучены.

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

 Архитектуры вычислительных систем: а) ОКОД (SISD) - архитектура; б) ОКМД (SIMD) - архитектура; в) МКОД (MISD) - архитектура; г) МКМД (MIMD) - архитектура

Рис.
13.4.
Архитектуры вычислительных систем: а) ОКОД (SISD) — архитектура; б) ОКМД (SIMD) — архитектура; в) МКОД (MISD) — архитектура; г) МКМД (MIMD) — архитектура

Эту схему использовали и используют все суперЭВМ без исключения, начиная с таких известных систем, как Cyber-205 и Gray различных модификаций. Узким местом подобных систем является необходимость изменения коммутации между процессорами, когда связь между ними отличается от матричной. Кроме того, задачи, допускающие широкий матричный параллелизм, составляют достаточно узкий класс задач. Структуры ВС этого типа по существу являются структурами специализированных суперЭВМ.

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

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

Архитектура МКМД предполагает, что все процессоры системы работают с различными программами и с индивидуальным набором данных. В простейшем случае они могут быть автономны и независимы. Такая схема использования ВС часто применяется во многих крупных вычислительных центрах для увеличения пропускной способности центра.

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

Контрольные вопросы

  1. Каково содержание понятия «структура компьютера»?
  2. По каким техническим характеристикам осуществляется оценка и выбор компьютера?
  3. Что представляет собой класс карманных персональных компьютеров?
  4. Каковы основные тенденции развития компьютеров?
  5. Объясните суть принципа иерархии построения ЭВМ.
  6. Перечислите отличительные особенности классической структуры ЭВМ.
  7. Каковы отличительные особенности структуры ПК?
  8. Объясните многообразие шин, используемых в структуре ПК.
  9. Каковы основные предпосылки появления и развития компьютерных систем?
  10. Какие принципы положены в основу классификации архитектур компьютерных систем?

Данная статья написана для подготовки к экзамену по дисциплине ИВС

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

A — арифметические блоки обработки данных; Y — управляющие блоки; П — блоки памяти.

Single Instruction stream / Single Data stream (SISD) — в русской аббревиатуре ОКОД или же одиночный поток команд и одиночный поток данных.

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

Single instruction stream / Multiple Data stream (SIMD) — в русской аббревиатуре ОКМД или же одиночный поток команд и множественный поток данных.

К нему относятся векторные ВС, в которых одинаковые преобразования выполняются над различными компонентами вектора (элементами данных). Иначе говоря, данная система выполняет одну операцию над множеством данных сразу. 

Multiple Instruction stream / Single Data stream (MISD) — в русской аббревиатуре МКОД или же множественный поток команд и одиночный поток данных.

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

Multiple Instruction stream / Multiple Data stream (MIMD) — в русской аббревиатуре МКМД или же множественный поток команд и множественный поток данных. 

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

Подход Флинна порождает неоднозначность в классификации систем, потому что то же самый поток векторных данных можно рассматривать и как одиночный, и как множественный. Так же неоднозначно классифицируется конвейеризация, которая применяется на нескольких уровнях организации вычислительных процессов. Недостатком является и большое многообразие систем в классе MIMD, поэтому были разработаны и другие классификации систем параллельной обработки данных.

Архитектура   вычислительных систем.

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

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

Согласно этой классификации существует четыре основных ар­хитектуры ВС:

•   одиночный поток команд — одиночный поток данных (ОКОД), в английском варианте — Single Instruction Single Data (SISD) — оди­ночный поток инструкций — одиночный поток данных;

•   одиночный поток команд — множественный поток данных (ОКМД), или Single Instruction Multiple Data (SIMD) — одиночный поток инструкций — одиночный поток данных;

•   множественный поток команд — одиночный поток данных (МКОД), или Multiple Instruction Single Data (MISD) — множественный по­ток инструкций — одиночный поток данных;

•   множественный поток команд — множественный поток данных (МКМД), или Multiple Instruction Multiple Data (MIMD) — множе­ственный поток инструкций — множественный поток данных (MIMD).

Рекомендуем посмотреть лекцию «3. Информация как базовая категория».

Коротко рассмотрим отличительные особенности каждой из архи­тектур.

Архитектура ОКОД охватывает все однопроцессорные и одно­машинные варианты систем, т.е. с одним вычислителем. Все ЭВМ классической структуры попадают в этот класс. Здесь параллелизм вычислений обеспечивается путем совмещения выполнения операций отдельными блоками АЛУ, а также параллельной работы устройств ввода-вывода информации и процессора. Закономерности организа­ции вычислительного процесса в этих структурах достаточно хоро­шо изучены.

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

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

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

Архитектура МКМД предполагает, что все процессоры систе­мы работают по своим программам с собственным потоком команд. В простейшем случае они могут быть автономны и независимы. Такая схема использования ВС часто применяется на многих круп­ных вычислительных центрах для увеличения пропускной способно­сти центра.

Понравилась статья? Поделить с друзьями:
  • Многофункциональный фонарик полиции 1102 инструкция
  • Многофункциональный тестер gm328 инструкция как пользоваться
  • Многофункциональный бытовой комплект атлант инструкция
  • Многофункциональная долговарка киа 6523 инструкция
  • Многоуровневый потолок из гипсокартона своими руками пошаговая инструкция