Шина – набор проводников, объединенных едиными функциями. В структуре с общей шиной все устройства ВМ подключаются к системной шине (магистрали). Все устройства ввода-вывода (УВВ) имеют встроенную небольшую микросхему – контроллер, управляющий операциями обмена данными.
Рис. 1.3. Архитектура на основе общей шины
— простота изменения конфигурации.
— единственная шина для разнообразных потоков данных, сильно отличающихся по скорости (например, процессор-память и процессор-принтер);
— невозможна параллельная передача данных несколькими устройствами, так как информацию по шине в один момент времени может передавать только одно устройство.
Архитектура с иерархией шин
В структуре с иерархией шин помимо системной шины (между процессором и памятью) существует ряд дополнительных шин. Каждая шина имеет свою пропускную способность, достаточную для устройств, которые она связывает. Контролирует взаимодействие всех устройств в такой архитектуре чипсет (chipset – набор микросхем).
Рис. 1.4. Архитектура с иерархией шин
Структуры вычислительных систем
ВС с общей памятью
В такой структуре все процессоры используют для хранения и обмена данными общую память.
Рис. 1.5. Структура вычислительной системы с общей памятью
Распределенная ВС
В распределенных ВС каждый процессор имеет собственную локальную память (говорят, что память распределена по узлам), а обмен информацией осуществляется посредством коммуникационной сети. В такой структуре каждый узел системы представляет, по сути, отдельную вычислительную машину.
Рис. 1.6. Структура распределенной вычислительной системы
Видео:Виды топологий локальных сетей | Звезда, кольцо, шинаСкачать
Достоинства и недостатки архитектуры с общей шиной.
Из рассмотренной схемы связи всех устройств компьютера с помощью общей шины легко увидеть как достоинства, так и недостатки этой архитектуры. Несомненным достоинством этой архитектуры является её простота и возможность лёгкого подключения к шине новых устройств. Для подключения нового устройства необходимо оборудовать его соответстсвующими портами, присвоив им свободные номера, благо этих номеров много – 2 16 .
Главный недостаток этой архитектуры тоже очевиден: пока два устройства обмениваются данными, остальные должны простаивать. Можно сказать, что компьютер в какие-то периоды времени вынужнен соизмерять скорость своей работы со скоростью самого медленного устройства на общей шине. Этот недостаток давно осознан конструкторами ЭВМ и с ним пытаются бороться. Например, наряду с главной шиной, соединяющей все устройства, вводят в архитектуру вспомогательные шины, соединяющие избранные самые быстрые устройства (например, центральный процессор и оперативную память). Ясно, однако, что невозможно соединить своими шинами всевозможные пары устройств, это просто экономически нецелесообразно, не говоря уже о том, что такую архитектуру практически невозможно реализовать.
Исходя из таких очевидных недостатков архитектуры с общей шиной была разработана и другая архитектура связи устройств компьютера между собой. Обычно она называется архитектурой с каналами ввода/вывода.
15.2.3. Архитектура ЭВМ с каналами ввода/вывода.
Архитектура ЭВМ с каналами ввода/вывода предполагает возможность параллельной работы нескольких устройств. Поймём сначала, какие же работы нам надо производить параллельно. Оказывается, что нужно обеспечить параллельный обмен данными нескольких устройств с оперативной памятью. Действительно, когда мы рассматривали мультипрограммный режим работы ЭВМ, мы говорили, что для эффективного использования ресурсов необходимо обеспечить как можно более полную загрузку всех устройств компьютера.
Например, одна программа может выполнять свои команды на центральном процессоре, другая – читать массив данных с диска в оперативную память, третья – выводить результаты работы из оперативной памяти на печать и т.д. Как видим, здесь оперативная память параллельно работает с несколькими устройствами: центральным процессором (он читает из памяти команды и данные, а записывает в память результат выполнения некоторых команд), диском, печатающим устройством и т.д. Скорость работы оперативной памяти должна быть достаточна для такого параллельного обслуживания нескольких устройств (здесь, как мы уже говорили, сильно помогает расслоение оперативной памяти и использование кэша).
Читайте также: Летние шины nokian continental
Как мы знаем, центральный процессор выполняет обращения к оперативной памяти, подчиняясь командам выполняемой программы. Ясно, что и все другие обмены данными с оперативной памятью должны выполняться под управлением достаточно «интеллектуальных» устройств ЭВМ. Вот эти устройства и называются каналами ввода/вывода, так как они управляют обменом данными между оперативной памятью и, как говорят, периферией. По-существу, канал ввода/вывода является специализированным процессором со своей системой команд (своим машинным языком).
В современной литературе по архитектуре ЭВМ у термина «канал ввода/вывода» есть много синонимов. Часто их называют процессорами ввода/вывода или периферийными процессорами (смысл этих названий легко понять из назначения данных устройств). Наиболее «навороченные» каналы называют иногда машинами переднего плана (front-end computer), здесь имеется в виду, что все внешние устройства, а, следовательно, и пользователи, могут общаться с центральной частью компьютера только через эти каналы. Кроме того, машины передного плана могут разгрузить центральный процессор, взяв на себя, например, обработку прерываний от внешних устройств, весь диалог с пользователями, компиляцию программ в объектный код и т.д. Центральный процессор при этом будет выполнять только свою основную работу – быстрый счёт программ пользователей.
Чаще всего на комьютере есть несколько каналов ввода/вывода, так как эти каналы выгоднее делать специализированными. Обычно один канал ввода/вывода успевает обслуживать все медленные внешние устройства (клавиатура, печать, дисплеи, линии связи и т.д.), такой канал называется мультиплексным. Один или несколько других каналов работают с быстрыми внешними устройствами (обычно это дисковая память), такие каналы называются селекторными. В отличие от мультиплексного канала, который успевает, быстро переключаясь с одного медленного внешнего устройства на другое, обслуживать их все как бы одновременно, селекторный канал в каждый момент времени может работать только с одним быстрым внешним устройством. На рис. 15.3 показана схема ЭВМ с каналами ввода/вывода.
Как видно из этого рисунка, внешние устройства подключаются к каналам не напрямую, а через специальные электронные схемы, которые называются контроллерами. Это связано с тем, что каналы являются универсальными, они должны допускать подключение внешних устройств, очень разных по своим характеристикам. Таким образом, канал как бы работает с некоторыми обобщёнными внешними устройствами, а все особенности связи с конкретными устройствами реализуются в контроллерах. Например, один контроллер предназначен для подключения к нему жёстких дисков, другой – архивных накопителей на магнитной ленте (так называемых стриммеров) и т.д.
Как мы уже говорили, для компьютеров с общей шиной при выполнении системного вызова центральный процессор переключается на процедуру-обработчика прерывания, и эта процедура выполняет программу, реализующую требуемое действие, например, чтение массива с диска в оперативную память. Другими словами, во время выполнения процедуры-обработчика прерывания программа пользователя, естественно, не считается.
Совершенно по-другому производится обработка системного вызова на компьютере с каналами ввода/вывода. После того, как программа пользователя произведёт системный вызов, вызванная процедура-обработчик прерывания посылает соответствующему каналу приказ начать выполнение программы канала, реализующей требуемое действие, после чего производится немедленный возврат на выполнение программы пользователя. Далее начинается параллельная работа центрального процессора по выполнению программы пользователя и канала, выполняющего свою собственную программу по обмену с внешними устройствами, например, по чтению массива с диска в оперативную память. [91]
Читайте также: Шины для мото данлоп
Разумеется, параллельная работа нескольких устройств может привести к весьма неприятным последствиям. Например, если некоторая программа начнёт присваивать новые значения элементам массива, который в это время канал записывает на диск, то, как легко представить, ничего хорошего не получится. Для предотвращения таких ситуаций существуют особые аппаратные и программные средства, позволяющими, как говорят, синхронизовать параллельную работу нескольких устройств. С этими средствами Вы познакомитесь в следующем семестре.
Видео:03. Основы устройства компьютера. Память и шина. [Универсальный программист]Скачать
15.2.2. Достоинства и недостатки архитектуры с общей шиной.
Из рассмотренной схемы связи всех устройств компьютера с помощью общей шины легко увидеть как достоинства, так и недостатки этой архитектуры. Несомненным достоинством этой архитектуры является её простота и возможность лёгкого подключения к шине новых устройств. Для подключения нового устройства необходимо оборудовать его соответстсвующими портами, присвоив им свободные номера, благо этих номеров много – 2 16 .
Главный недостаток этой архитектуры тоже очевиден: пока два устройства обмениваются данными, остальные должны простаивать. Можно сказать, что компьютер в какие-то периоды времени вынужнен соизмерять скорость своей работы со скоростью самого медленного устройства на общей шине. Этот недостаток давно осознан конструкторами ЭВМ и с ним пытаются бороться. Например, наряду с главной шиной, соединяющей все устройства, вводят в архитектуру вспомогательные шины, соединяющие избранные самые быстрые устройства (например, центральный процессор и оперативную память). Ясно, однако, что невозможно соединить своими шинами всевозможные пары устройств, это просто экономически нецелесообразно, не говоря уже о том, что такую архитектуру практически невозможно реализовать.
Исходя из таких очевидных недостатков архитектуры с общей шиной была разработана и другая архитектура связи устройств компьютера между собой. Обычно она называется архитектурой с каналами ввода/вывода.
Видео:Различия SOA и микросервисной архитектуры за 9 минутСкачать
15.2.3. Архитектура эвм с каналами ввода/вывода.
Архитектура ЭВМ с каналами ввода/вывода предполагает возможность параллельной работы нескольких устройств. Поймём сначала, какие же работы нам надо производить параллельно. Оказывается, что нужно обеспечить параллельный обмен данными нескольких устройств с оперативной памятью. Действительно, когда мы рассматривали мультипрограммный режим работы ЭВМ, мы говорили, что для эффективного использования ресурсов необходимо обеспечить как можно более полную загрузку всех устройств компьютера.
Например, одна программа может выполнять свои команды на центральном процессоре, другая – читать массив данных с диска в оперативную память, третья – выводить результаты работы из оперативной памяти на печать и т.д. Как видим, здесь оперативная память параллельно работает с несколькими устройствами: центральным процессором (он читает из памяти команды и данные, а записывает в память результат выполнения некоторых команд), диском, печатающим устройством и т.д. Скорость работы оперативной памяти должна быть достаточна для такого параллельного обслуживания нескольких устройств (здесь, как мы уже говорили, сильно помогает расслоение оперативной памяти и использование кэша).
Как мы знаем, центральный процессор выполняет обращения к оперативной памяти, подчиняясь командам выполняемой программы. Ясно, что и все другие обмены данными с оперативной памятью должны выполняться под управлением достаточно «интеллектуальных» устройств ЭВМ. Вот эти устройства и называются каналами ввода/вывода, так как они управляют обменом данными между оперативной памятью и, как говорят, периферией. По-существу, канал ввода/вывода является специализированным процессором со своей системой команд (своим машинным языком).
Читайте также: Легковая шина laufenn s fit eq lk01
В современной литературе по архитектуре ЭВМ у термина «канал ввода/вывода» есть много синонимов. Часто их называют процессорами ввода/вывода или периферийными процессорами (смысл этих названий легко понять из назначения данных устройств). Наиболее «навороченные» каналы называют иногда машинами переднего плана (front-end computer), здесь имеется в виду, что все внешние устройства, а, следовательно, и пользователи, могут общаться с центральной частью компьютера только через эти каналы. Кроме того, машины передного плана могут разгрузить центральный процессор, взяв на себя, например, обработку прерываний от внешних устройств, весь диалог с пользователями, компиляцию программ в объектный код и т.д. Центральный процессор при этом будет выполнять только свою основную работу – быстрый счёт программ пользователей.
Чаще всего на комьютере есть несколько каналов ввода/вывода, так как эти каналы выгоднее делать специализированными. Обычно один канал ввода/вывода успевает обслуживать все медленные внешние устройства (клавиатура, печать, дисплеи, линии связи и т.д.), такой канал называется мультиплексным. Один или несколько других каналов работают с быстрыми внешними устройствами (обычно это дисковая память), такие каналы называются селекторными. В отличие от мультиплексного канала, который успевает, быстро переключаясь с одного медленного внешнего устройства на другое, обслуживать их все как бы одновременно, селекторный канал в каждый момент времени может работать только с одним быстрым внешним устройством. На рис. 15.3 показана схема ЭВМ с каналами ввода/вывода.
Как видно из этого рисунка, внешние устройства подключаются к каналам не напрямую, а через специальные электронные схемы, которые называются контроллерами. Это связано с тем, что каналы являются универсальными, они должны допускать подключение внешних устройств, очень разных по своим характеристикам. Таким образом, канал как бы работает с некоторыми обобщёнными внешними устройствами, а все особенности связи с конкретными устройствами реализуются в контроллерах. Например, один контроллер предназначен для подключения к нему жёстких дисков, другой – архивных накопителей на магнитной ленте (так называемых стриммеров) и т.д.
Как мы уже говорили, для компьютеров с общей шиной при выполнении системного вызова центральный процессор переключается на процедуру-обработчика прерывания, и эта процедура выполняет программу, реализующую требуемое действие, например, чтение массива с диска в оперативную память. Другими словами, во время выполнения процедуры-обработчика прерывания программа пользователя, естественно, не считается.
Совершенно по-другому производится обработка системного вызова на компьютере с каналами ввода/вывода. После того, как программа пользователя произведёт системный вызов, вызванная процедура-обработчик прерывания посылает соответствующему каналу приказ начать выполнение программы канала, реализующей требуемое действие, после чего производится немедленный возврат на выполнение программы пользователя. Далее начинается параллельная работа центрального процессора по выполнению программы пользователя и канала, выполняющего свою собственную программу по обмену с внешними устройствами, например, по чтению массива с диска в оперативную память. 1
Разумеется, параллельная работа нескольких устройств может привести к весьма неприятным последствиям. Например, если некоторая программа начнёт присваивать новые значения элементам массива, который в это время канал записывает на диск, то, как легко представить, ничего хорошего не получится. Для предотвращения таких ситуаций существуют особые аппаратные и программные средства, позволяющими, как говорят, синхронизовать параллельную работу нескольких устройств. С этими средствами Вы познакомитесь в следующем семестре.
- Свежие записи
- Нужно ли менять пружины при замене амортизаторов
- Скрипят амортизаторы на машине что делать
- Из чего состоит стойка амортизатора передняя
- Чем стянуть пружину амортизатора без стяжек
- Для чего нужны амортизаторы в автомобиле
💥 Видео
Целостность данных в микросервисной архитектуре / Николай Голов (Avito)Скачать
МИКРОСЕРВИСЫ VS МОНОЛИТ. Какую архитектуру выбрать? DevOps собеседованиеСкачать
Шаблоны проектирования микросервисов на примере Авито / Фрол Крючков (Авито)Скачать
Преимущества и недостатки микросервисной архитектуры в HeadHunter / Антон Иванов (HeadHunter)Скачать
Шины - ключевой элемент качественной архитектуры | Андрей ПутинСкачать
Архитектура ПО. ВведениеСкачать
Как работает компьютер? Шины адреса, управления и данных. Дешифрация. Взгляд изнутри!Скачать
Архитектура современных FRONTEND приложений. 5 видов. Преимущества и недостаткиСкачать
Архитектура ЭВМ. Лекция 1: Типы архитектур. Комбинационная и последовательная логика.Скачать
АПС Л14. ШиныСкачать
Лекция 1 | Архитектура ЭВМ и основы ОС | Кирилл Кринкин | CSC | ЛекториумСкачать
Базовая архитектура и структура ЭВМСкачать
АПС Л19. ШиныСкачать
Микросервисная архитектура, подходы и технологии / Кирилл Ветчинкин (TYME)Скачать
Руководство Factorio - Архитектура фабрики: Главная шинаСкачать
Обзор популярной архитектуры под WEBСкачать
Лекция 276. Способы передачи данных по Общей шинеСкачать