Файл: Состав и свойство вычислительных систем. Информационное и математическое обеспечение вычислительных систем..pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 181

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Рис.3 Компьютерная система 1950-х

С середины 50-х годов начался новый период в развитии вычислительной техники, связанный с появлением новой технической базы - полупроводниковых элементов (Рис.3). Компьютеры второго поколения стали более надежными, теперь они смогли непрерывно работать настолько долго, чтобы на них можно было возложить выполнение действительно практически важных задач. Снижается потребление электроэнергии. Совершенствуются системы охлаждения. Уменьшились размеры. Снизилась стоимость эксплуатации и обслуживания вычислительной техники. Использование компьютеров коммерческими фирмами. Именно в этот период произошло разделение персонала на программистов и операторов, эксплуатационщиков и разработчиков вычислительных машин.

Одновременно наблюдается бурное развитие алгоритмических языков (LISP, kobo, Alco -go,pl). Появляются первые настоящие компиляторы, редакторы связи, библиотеки математических и служебных подпрограмм. Упрощается процесс программирования, происходит деление персонала на программистов и операторов, специалистов и разработчиков вычислительных машин. Также изменяется сам процесс прогона программ. Теперь пользователь приносит программы с входными данными в виде колоды перфокарт и указывает необходимые ресурсы. Такая колода получила название задание. Оператор загружает задание в память машины и запускает её на выполнение. Полученные выходные данные печатаются на принтере. Процесс ввода, вычисления, вывода выходных данных длится продолжительное время. Смена запрошенных ресурсов вызывает приостановку выполнения программ, в результате процессор часто простаивает. Для повышения эффективности использования компьютера, задания с похожими ресурсами начинают собирать вместе, создавая пакет заданий.

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

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


Рис.4 Компьютерная система IBM/360

Для этого периода характерно также создание семейств программно-совместимых машин. Первым семейством программно-совместимых машин, построенных на интегральных микросхемах, явилась серия машин IBM/360 (Рис. 4). Построенное в начале 60-х годов это семейство значительно превосходило машины второго поколения по критерию цена/производительность. Вскоре идея программно-совместимых машин стала общепризнанной.

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

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

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

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


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

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

Не менее важна в мультипрограммировании роль ОС. Она отвечает за:

1) организацию интерфейса между прикладными и аппаратными программами при помощи системных вызовов.

2) операция очереди из задания в памяти и выделение заданию процессора планирование использования процессора.

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

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

5) организация хранения информации на внешних носителях в виде файлов доступ к ним только определенному пользователю.

6) из-за требования санкционированного обмена данных необходимо обеспечить средствами коммуникаций.

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

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

1) пользователю взаимодействовать со своими программами во время их работы интерактивно.

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


3) записывать информацию на диск не использовать перфокарты, а непосредственно с клавиатуры.

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

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

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

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

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


В 1966 М. Флинн (США) предложил классифицировать ВС по числу потоков команд и потоков данных. Он выделил 4 класса:

1) SISD (один поток команд – один поток данных), к которому относятся системы с одним процессором;

2) SIMD (один поток команд – много потоков данных), включающий однородные векторные и матричные ВС;

3) MISD (много потоков команд – один поток данных);

4) MIMD (много потоков команд – много потоков данных), в котором каждый процессор работает по своей программе и со своими данными.

Эта классификация до сих пор актуальна, однако она не позволяет достаточно полно и точно охарактеризовать все виды ВС (например, потоковые), поэтому попытки более точно систематизировать всё разнообразие ВС продолжаются. Например, классификация Базу (США, 1987) основана на последовательном определении принятых при проектировании ВС решений: уровня параллелизма (данные, команды или задачи), метода реализации алгоритмов (аппаратный или программный), способа параллельного выполнения команд (конвейеризация или одновременное независимое), а также способа управления процессом выполнения команд (синхронный или асинхронный). Кришнамурти (Индия, 1989) предложил классифицировать ВС по четырём характеристикам: уровню параллелизма; способу реализации параллелизма (аппаратный или аппаратно-программный), топологии (матрица, линейный массив, тор, дерево, звезда и другие), степени связи процессоров (сильная, слабая, средняя) и механизму взаимодействия процессоров (посредством передачи сообщений, разделяемых переменных или по готовности операндов), способу управления (синхронный, асинхронный, потоком данных).

Важными вехами в развитии ВС стало создание таких систем, как ILLIAC IV (сдана в эксплуатацию в 1974; матричная В. с. из 64 процессоров), векторно-конвейерные «Cray-1» (1976, США), «Cyber 205» (1981, США), «Cray C90» (1991, США), ВС с массовым параллелизмом «Connection Machine-1» (объединяла 65 536 одноразрядных процессоров, связанных через гиперкуб, 1985), «Cray T3E» (1995) и др. В России выпускались ВС ПС-2000 (производство с 1981) и ПС-3000 (произ-во в 1984–87), многопроцессорные вычислит. комплексы «Эльбрус-1» (1980), «Эльбрус-2» (1985). Самая быстродействующая ВС в России на середину 2015 – «Ломоносов-2» производства компании «Т-Платформы», установленная в МГУ им. М. В. Ломоносова. Она занимает 31-е место в июньском выпуске международного рейтинга суперкомпьютеров TOP500, достигая производительности 1,8 Пфлопс (1 Пфлопс=1015 операций над вещественными числами в секунду) в тесте LINPACK при теоретическом пределе используемого оборудования в 2,6 Пфлопс. Первое место в TOP500 c рекордной производительностью в 33,8 Пфлопс занимает В. с. «Тяньхэ-2», спроектированная Оборонным научно-техническим университетом Народно-освободительной армии КНР.