Вопрос № 1 Оценка производительности ЭВМ 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Вопрос № 1 Оценка производительности ЭВМ



ОРГАНИЗАЦИЯ ЭВМ

ОРГАНИЗАЦИЯ ЭВМ... 1

Вопрос № 1 Оценка производительности ЭВМ... 1

Вопрос № 2 Структура ПЭВМ... 6

Вопрос № 3 Модули оперативных ЗУ на БИС.. 11

Вопрос № 4 Привилегии в ПЭВМ. Слово состояния программы.. 14

Вопрос № 5 Микропрограммное управление регистрами АЛУ.. 15

Вопрос № 6 Формирование адресов микрокоманд. 18

Вопрос № 7 Иерархия ЗУ вычислительных систем.. 22

Вопрос № 8 Сегментная и страничная адресация памяти. 28

Вопрос № 9 Система прерываний ЭВМ... 32

Вопрос № 10 Способы адресации в ПЭВМ с 32-разрядной архитектурой. 37

Вопрос № 11 Передача данных с прямым доступом к памяти. 43

Вопрос № 12 Особенности ЭВМ с конвейерными архитектурами. 44

 

Вопрос № 1 Оценка производительности ЭВМ

Показатели производительности

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

Методы оценки производительности

На рис. 14.1 собраны наиболее важные методы оценки производительности, взятые из исследования Лукаса (Lu71). В таблице представлены сами методы и указана их применимость для различных целей оценки производительности. Польза каждого метода исследована отдельно для случая оценки производительности аппаратуры и математического обеспечения. Рассмотрим каждый метод оценки производительности.

Элементарные времена

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

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

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

Смеси команд

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

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

Образцовые программы

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

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

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

Аналитические модели

Аналитическая модель — это математическое представление вычислительной системы или ее компонент. Находят применение модели многих видов, однако наиболее «гибкими» и полезными представляются модели, созданные с помощью теории очередей и Марковских процессов.

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

Измерительные программы

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

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

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

Синтетические программы

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

Моделирование

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

Поток запросов на обслуживание характеризуется интенсивностью обращений λ, являющейся обратной величиной к математическому ожиданию – tr, интервала времени tr между поступлениями соседних запросов, который, в свою очередь, представляет собой случайную величину с заданным законом распределения.

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

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

 

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

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

- простейший (пуассоновский) поток запросов на обслуживание;

- экспоненциальный закон распределения времени обслуживания в обслуживающих приборах;

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

Эти предположения обычно используют для получения достаточно приблизительных оценок.

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

Одним из наиболее значимых для практики результатов, полученных с помощью таких моделей, можно считать тот факт, что при загрузках систем (обозначаемых через ρ=λ/μ) более 0,8-0,85 имеет место резкий рост задержек в системе. Поэтому, планируя структуру и состав системы памяти, следует стараться обеспечить резерв пропускной способности трактов передачи данных (шины) и запоминающих устройств.

Зачем нужны контроль и оценка производительности

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

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

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

• наилучшую организацию аппаратуры;

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

• удовлетворяет ли разработанная система предъявляемым к ней требованиям по производительности.

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

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

 

Вопрос № 2 Структура ПЭВМ

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

В любой ЭВМ имеются устройства ввода информации (УВв), с помощью которых пользователи вводят в ЭВМ программы решаемых задач и данные к ним. Введенная информация полностью или частично сначала запоминается в оперативном запоминающем устройстве (ОЗУ), а затем переносится во внешнее запоминающее устройство (ВЗУ), предназначенное для длительного хранения информации, где преобразуется в специальный программный объект - файл. “Файл - идентифицированная совокупность экземпляров полностью описанного в конкретной программе типа данных, находящихся вне программы во внешней памяти и доступных программе посредством специальных операций (ГОСТ 20866 - 85)”.

Рис. 1.1. Структурная схема ЭВМ первого и второго поколений

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

Устройство управления предназначается для автоматического выполнения программ путем принудительной координации всех остальных устройств ЭВМ. Цепи сигналов управления показаны на рис. 1.1 штриховыми линиями. Вызываемые из ОЗУ команды дешифрируются устройством управления:

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

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

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

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

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

Все команды программы выполняются последовательно, команда за командой, в том порядке, как они записаны в памяти ЭВМ (естественный порядок следования команд). Этот порядок характерен для линейных программ, т.е. программ, не содержащих разветвлений. Для организации ветвлений используются команды, нарушающие естественный порядок следования команд. Отдельные признаки результатов r(r = 0, r < 0, r > 0 и др.) устройство управления использует для изменения порядка выполнения команд программы.

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

Современные ЭВМ имеют достаточно развитые системы машинных операций. Например, ЭВМ типа IBM PC имеют около 200 различных операций (170 - 230 в зависимости от типа микропроцессора). Любая операция в ЭВМ выполняется по определенной микропрограмме, реализуемой в схемах АЛУ соответствующей последовательностью сигналов управления (микрокоманд). Каждая отдельная микрокоманда- это простейшее элементарное преобразование данных типа алгебраического сложения, сдвига, перезаписи информации и т.п.

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

В ЭВМ третьего поколения произошло усложнение структуры за счет разделения процессов ввода-вывода информации и ее обработки (рис. 1.2).

Рис. 1.2. Структурная схема ЭВМ третьего поколения

Сильносвязанные устройства АЛУ и УУ получили название процессор, т.е. устройство, предназначенное для обработки данных. В схеме ЭВМ появились также дополнительные устройства, которые имели названия: процессоры ввода-вывода, устройства управления обменом информацией, каналы ввода-вывода (КВВ). Последнее название получило наибольшее распространение применительно к большим ЭВМ. Здесь наметилась тенденция к децентрализации управления и параллельной работе отдельных устройств, что позволило резко повысить быстродействие ЭВМ в целом.

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

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

Рис. 1.3. Структурная схема ПЭВМ

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

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

Способ формирования структуры ПЭВМ является достаточно логичным и естественным стандартом для данного класса ЭВМ.

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

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

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

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

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

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

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

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

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

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

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

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

Часть машинных программ, обеспечивающих автоматическое управление вычислениями и используемых наиболее часто, может размещаться в постоянном запоминающем устройстве (ПЗУ). На более низких уровнях иерархии находятся внешние запоминающие устройства на магнитных носителях:

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

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

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

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

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

Как видно, полувековая история развития ЭВТ дала не очень широкий спектр основных структур ЭВМ. Все приведенные структуры не выходят за пределы классической структуры фон Неймана. Их объединяют следующие Традиционные признаки [53]:

• ядро ЭВМ образует процессор - единственный вычислитель в структуре, дополненный каналами обмена информацией и памятью;

• линейная организация ячеек всех видов памяти фиксированного размера;

• одноуровневая адресация ячеек памяти, стирающая различия между всеми типами информации;

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

• последовательное централизованное управление вычислениями;

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

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

• несоответствие машинных операций операторам языков высокого уровня;

• примитивная организация памяти ЭВМ;

• низкая эффективность ЭВМ при решении задач, допускающих параллельную обработку и т.п.

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

В ЭВМ будущих поколений, с использованием в них “встроенного искусственного интеллекта”, предполагается дальнейшее усложнение структуры; В-первую очередь это касается совершенствования процессов общения пользователей с ЭВМ (использование аудио-, видеоинформации, систем мультимедиа и др.), обеспечения доступа к базам данных и базам знаний, организации параллельных вычислений. Несомненно, что этому должны соответствовать новые параллельные структуры с новыми принципами их построения. В качестве примера укажем, что самая быстрая ЭВМ фирмы IBM в настоящее время обеспечивает быстродействие 600 MIPS (миллионов команд в секунду), самая же большая гиперкубическая система nCube дает быстродействие 123.103 MBPS. Расчеты показывают, что стоимость одной машинной операции в гиперсисте-ме примерно в тысячу раз меньше. Вероятно, подобными системами будут обслуживаться большие информационные хранилища.

 

 

ОРГАНИЗАЦИЯ ПРЕРЫВАНИЙ.

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

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

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

1. определение наиболее приоритетного незамаскированного запроса на прерывание (если одновременно поступило несколько запросов)

2. определение типа выбранного запроса

3. сохранение текущего состояния счетчика команд и регистра флагов

4. определение адреса обработчика прерывания по типу прерывания и передача управления первой команде этого обработчика

5. выполнение программы – обработчика прерывания

6. восстановление сохраненных значений счетчика команд и регистра флагов прерванной программы

7. продолжение выполнения прерванной программы

Этапы 1-4 выполняются аппаратными средствами ЭВМ автоматически при появлении запроса прерывания. Этап 6 также выполняется аппаратно по команде возврата из обработчика прерывания.

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

Время реакции – это время между появлением сигнала запроса прерывания и началом выполнения обработчика прерывания в том случае, если данное прерывание разрешено к обслуживанию.

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

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

 

 



Поделиться:


Последнее изменение этой страницы: 2016-06-06; просмотров: 1495; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.244.201 (0.094 с.)