устройство, а после включения ЭВМ ее программное обеспечение автоматически определяет состав подключенных устройств, их типы в настраивает машину на работу с ними без вмешательства системного оператора.
Если при обращении ЦП к внешнему устройству продолжение выполнения основной программы центральным процессором возможно только после завершения операции ввода-вывода, то ЦП, запустив внешнее устройство, переходит в состояние ожидания и находится в нем до тех пор, пока внешнее устройство не сообщит ему об окончании обмена данными. Это приводит к простою большинства устройств ЭВМ, так как в каждый момент времени может работать только одно из них. Такой режим работы получил название однопрограммного — в каждый момент времени все устройства находятся в состоянии ожидания, и только одно устройство выполняет основную (и единственную) программу.
Для ликвидации таких простоев и повышения эффективности работы оборудования внешние устройства сделаны автономными. Получив от ЦП необходимую информацию, они самостоятельно организуют свою работу по обмену данными. Процессор же, запустив внешнее устройство, пытается продолжить выполнение программы. При необходимости (если встретятся соответствующие команды) он может запустить в работу несколько других устройств (так как внешние устройства работают значительно медленнее процессора). Если ЦП необходимо перейти в режим ожидания, то, поскольку в ОП может одновременно находиться несколько программ, ЦП может переходить к выполнению очередной программы. При этом создается ситуация, когда в один и тот же момент времени различные устройства ЭВМ выполняют либо разные программы, либо разные части одной и той же программы, такой режим работы ЭВМ называется
многопрограммным.
Организация процессов ввода, преобразования и отображения результатов относится к сфере системного программного обеспечения. Это сложные процессы, которые чаще всего делаются “прозрачными”, т.е. незаметными для пользователя. Один из них — реализация задания пользователя: профессиональный пользователь (программист) пишет задание для ЭВМ в виде программы на алгоритмическом языке. Написанное задание (программа) представляет собой исходный модуль, сопровождаемый управляющими предложениями, указывающими операционной системе ЭВМ, на каком языке написана программа и что с ней надо делать. Если программа пишется на алгоритмическом языке, то управляющие предложения — на языке управления операционной системой (например, в ЕС ЭВМ и IBM 360/370 этот язык называется -Job Control Langiage, в MS DOS IBM PC — это язык команд DOS, иногда оформляемый в виде bat – файла и т.п.).
Исходный модуль перед исполнением должен быть переведен на внутренний язык машины. Эта операция выполняется специальной программой — транслятором (рис. 1). Трансляторы выполняются в виде двух разновидностей: интерпретаторы и компиляторы. Интерпретатор после перевода на язык машины каждого оператора алгоритмического языка немедленно исполняет полученную машинную программу. Компилятор же сначала полностью переводит всю программу, представленную ему в виде исходного модуля (ИМ), на язык машины. Получаемая при этом машинная программа представляет собой объектный модуль (ОМ). Результат работы компилятора может быть записан в библиотеку объектных модулей (БОМ) или передан другим программам для дальнейшей обработки, поскольку полученная машинная программа не готова к исполнению по двум причинам.
Во-первых, она содержит неразрешенные внешние ссылки (т.е. обращение к программам, которые не содержатся в исходном модуле, но необходимы для работы основной программы, например, к стандартным программам алгоритмического
Рис. 1. Обработка заданий операционной системой
языка, таким, как извлечение корня квадратного, вычисление тригонометрических функций и т.д.). Во-вторых, объектный модуль представляет собой машинную программу в условных адресах — каждый объектный модуль начинается с адреса Oh, тогда как для исполнения программа должна быть “привязана” к конкретным физическим адресам основной памяти.
Недостающие программы должны быть взяты из библиотек компилятора (которые могут быть написаны в виде исходных либо в виде объектных модулей) и добавлены к основной программе. Эту операцию выполняет редактор связей. В результате работы редактора связей образуется загрузочный модуль (ЗМ), который помещается в соответствующую библиотеку загрузочных модулей (БЗМ). В загрузочном модуле все ссылки разрешены, т.е. он содержит все необходимые стандартные программы, но привязки к памяти у загрузочного модуля нет.
Привязка к памяти загрузочного модуля производится программой выборки, которая переносит загрузочный модуль из библиотеки загрузочных модулей (обычно хранящейся на магнитном носителе) в основную память и во время этого переноса корректирует адреса, учитывая, с какого адреса основной памяти размещается
Аннотация: ЭВМ представляет собой совокупность устройств, выполненных на больших интегральных схемах, каждая из которых имеет свое функциональное назначение. Комплект интегральных схем (чипсет), из которых состоит ЭВМ, называется микропроцессорным комплектом. В состав микропроцессорных комплектов входят микросхемы, обеспечивающие совместную работу всех функциональных узлов ЭВМ.
Все устройства ЭВМ делятся на центральные и периферийные. Центральные устройства — полностью электронные, периферийные устройства могут быть либо электронными, либо электромеханическими с электронным управлением.
В центральных устройствах основным узлом, связывающим микропроцессорный комплект в единое целое, является системная магистраль. Она состоит из трех узлов, называемых шинами: шина данных (ШД), шина адреса (ША), шина управления (ШУ). В состав системной магистрали входят регистры защелки, в которых запоминается передаваемая инфор-мация, шинные формирователи, шинные арбитры, определяющие очередность доступа к системной магистрали, и др.
Логика работы системной магистрали, количество разрядов (линий) в шинах данных, адреса и управления, порядок разрешения конфликтных ситуаций, возникающих при одновременном обращении различных устройств ЭВМ к системной магистрали, образуют интерфейс системной шины.
В состав центральных устройств ЭВМ входят: центральный процессор, основная память и ряд дополнительных узлов, выполняющих служебные функции.
Периферийные устройства делятся на два вида: внешние ЗУ (НМД, НГМД, НМЛ) и устройства ввода-вывода (УВВ): клавиатура, дисплей, принтер, мышь, адаптер каналов связи (КС) и др.
Организация функционирования ЭВМ с магистральной архитектурой
Управляющая работой ЭВМ программа перед началом выполнения загружается операционной системой в основную память. Адрес первой выполняемой команды передается микропроцессору и запоминается в счетчике команд.
Начало работы процессора заключается в том, что адрес из счетчика команд (в котором всегда хранится адрес очередной команды) выставляется на шину адреса системной магистрали. Одновременно на шину управления выдается команда: выборка из ОП, которая воспринимается основной памятью. Получив с шины управления системной магистрали команду, основная память считывает адрес с шины адреса, находит ячейку с этим номером и ее содержимое выставляет на шину данных, а на шину управления выставляет сигнал о выполнении команды. Процессор, получив по шине управления сигнал об окончании работы ОП, вводит число с шины данных на внутреннюю магистраль МП и через нее пересылает введенную информацию в регистр команд.
В регистре команд полученная команда разделяется на кодовую и адресную части. Код команды поступает в блок управления для выработки сигналов, настраивающих МП на выполнение заданной операции, и для определения адреса следующей команды (который сразу заносится в счетчик команд). Адресная часть команды выставляется на шину адреса системной магистрали (СМ) и сопровождается сигналом выборки из ОП на шине управления. Выбранная из ОП информация через шину данных поступает на внутреннюю магистраль МП, с которой вводится в арифметико-логическое устройство (АЛУ). На этом заканчивается подготовка МП к выполнению операции и начинается ее выполнение в АЛУ.
Результат выполнения операции выставляется микропроцессором на шину данных, на шину адреса ставится адрес ОП, по которому этот результат необходимо записать, а на шину управления — команда запись в ОП. Получив с шины управления команду, ОП считывает адрес и данные с системной магистрали, организует запись данных по указанному адресу и после выполнения команды выставляет на шину управления сигнал, обозначающий, что число записано. Процессор, получив этот сигнал, начинает выборку очередной команды: выставляет адрес из счетчика команд на шину адреса, формирует команду выборка из ОП на шине управления и т.д.
В каждом цикле, получив команду в регистр команд и выделив код операции, процессор определяет, к какому устройству она относится. Если команда должна выполняться процессором, организуется ее выполнение по описанному циклу. Если же команда предназначена для выполнения в другом устройстве ЭВМ, центральный процессор (ЦП) передает ее соответствующему устройству. Процесс передачи команды другому устройству предусматривает следующие действия: ЦП выставляет на шину адреса СМ адрес интересующего его устройства. По шинам управления передается сигнал поиска устройства. Все устройства, подключенные к системной магистрали, получив этот сигнал, читают номер устройства с шины адреса и сравнивают его со своим номером. Устройства, для которых эти номера не совпадают, на эту команду не реагируют. Устройство с совпавшим номером вырабатывает сигнал отклика по шине управления.
ЦП, получив сигнал отклика, в простейшем случае выставляет имеющуюся у него команду на шину данных и сопровождает ее по шине управления сигналом «передаю команду». Получив сигнал о приеме команды, ЦП переходит к выполнению очередной своей команды, выставляя на шину адреса содержимое счетчика команд.
В более сложных случаях, получив сигнал, что устройство откликнулось, прежде чем передавать команду, ЦП запрашивает устройство о его состоянии. Текущее состояние устройства закодировано в байте состояния, который откликнувшееся устройство передает процессору через ШД системной магистрали. Если устройство включено и готово к работе, то байт состояния — нулевой. Наличие в нем единиц свидетельствует о нештатной ситуации, которую ЦП пытается проанализировать и в необходимых случаях извещает оператора о сложившейся ситуации.
Взаимодействие МП с внешними устройствами предусматривает выполнение логической последовательности действий, связанных с поиском устройства, определением его технического состояния, обменом командами и информацией. Эта логическая последовательность действий вместе с устройствами, реализующими ее, получила название «интерфейс ввода-вывода».
Для различных устройств могут использоваться разные логические последовательности действий, поэтому интерфейсов ввода-вывода может в одной и той же ЭВМ использоваться несколько. Если их удается свести к одному, универсальному, то такой интерфейс называется стандартным. В IBM PC есть три стандартных интерфейса для связи ЦП с внешними устройствами: параллельный (типа Centronics) и два последовательных (типа RS-232 и USB).
Интерфейсы постоянно совершенствуются, поэтому с появлением новых ЭВМ, новых внешних устройств и даже нового программного обеспечения появляются и новые интерфейсы. Так, в программном обеспечении, разработанном ведущими фирмами (в том числе фирмой Microsoft) все шире используется новый интерфейс «Plug and Play» («Включи и играй»), который предназначен для облегчения системной настройки ЭВМ при подключении новых устройств к машине. Этот интерфейс позволяет подключить с помощью кабеля новое устройство, а после включения ЭВМ ее программное обеспечение автоматически определяет состав подключенных устройств, их типы и настраивает машину на работу с ними без вмешательства системного оператора.
Если при обращении ЦП к внешнему устройству продолжение выполнения основной программы ЦП возможно только после завершения операции ввода-вывода, то ЦП, запустив внешнее устройство, переходит в состояние ожидания и находится в нем до тех пор, пока внешнее устройство не сообщит ему об окончании обмена данными. Это приводит к простою большинства устройств ЭВМ, так как в каждый момент времени может работать только одно из них. Такой режим работы получил название однопрограммного — в каждый момент времени все устройства находятся в состоянии ожидания, и только одно устройство выполняет основную (и единственную) программу.
Для ликвидации таких простоев и повышения эффективности работы оборудования внешние устройства сделаны автономными: получив от ЦП необходимую информацию, они самостоятельно организуют свою работу по обмену данными. Процессор же, запустив внешнее устройство, пытается продолжить выполнение программы. При необходимости (если встретятся соответствующие команды) он может запустить в работу несколько других устройств (так как внешние устройства работают значительно медленнее процессора). Если же ему приходится переходить в режим ожидания, то, пользуясь тем, что в ОП может одновременно находиться не одна, а несколько программ, ЦП переходит к выполнению очередной программы. При этом создается ситуация, когда в один и тот же момент времени различные устройства ЭВМ выполняют либо разные программы, либо разные части одной и той же программы. Такой режим работы ЭВМ называется многопрограммным.
Организация работы ЭВМ при выполнении задания пользователя
Организация процессов ввода, преобразования и отображения результатов в ЭВМ относится к сфере системного программного обеспечения. Это сложные процессы, которые чаще всего делаются «прозрачными», т.е. незаметными для пользователя. Один из них — реализация задания пользователя: профессиональный пользователь (программист) пишет задание для ЭВМ в виде программы на алгоритмическом языке. Написанное задание (программа) представляет собой исходный модуль, сопровождаемый управляющими предложениями, указывающими операционной системе ЭВМ, на каком языке написана программа и что с ней надо делать. Если программа пишется на алгоритмическом языке, то управляющие предложения — на языке управления операционной системой (в Windows всех версий это скрипты, оформляемые в виде командных файлов).
Исходный модуль перед исполнением должен быть переведен на внутренний язык машины. Эта операция выполняется специальной программой — транслятором. В качестве транслятора может выступать компилятор, или интерпретатор (рис.16.1).
Рис.
16.1.
Реализация задания пользователя
Результат работы компилятора может быть записан в библиотеку объектных модулей (БОМ) или передан другим программам для дальнейшей обработки, поскольку полученная машинная программа не готова к исполнению по двум причинам. Во-первых, она содержит неразрешенные внешние ссылки (т.е. обращение к программам, которые не содержатся в исходном модуле, но необходимы для работы основной программы — например, к стандартным программам алгоритмического языка, таким как извлечение корня квадратного, вычисление тригонометрических функций и т.д.). Во-вторых, объектный модуль представляет собой машинную программу в условных адресах: каждый объектный модуль начинается с адреса 0h, тогда как для исполнения программа должна быть «привязана» к конкретным физическим адресам основной памяти.
Недостающие программы должны быть взяты из библиотек компилятора (которые могут быть написаны в виде исходных либо в виде объектных модулей) и добавлены к основной программе. Эту операцию выполняет редактор связей. В результате работы редактора связей образуется загрузочный модуль (ЗМ), который помещается в соответствующую библиотеку программ — библиотеку загрузочных модулей (БЗМ). В загрузочном модуле все ссылки разрешены, т.е. он содержит все необходимые стандартные программы, но привязки к памяти у загрузочного модуля нет.
Привязка к памяти загрузочного модуля производится программой выборки, которая переносит загрузочный модуль из библиотеки загрузочных модулей (обычно хранящейся на магнитном носителе) в основную память и во время этого переноса корректирует адреса, учитывая, с какого адреса основной памяти размещается загрузочный модуль. После перемещения загрузочного модуля в основную память программа выборки инициирует ее выполнение.
Представление машинной программы в виде исходных, объектных и загрузочных модулей позволяет реализовать наиболее эффективные программные комплексы. Например, если по одной и той же программе необходимо много раз производить расчеты, то неэффективно тратить каждый раз время на трансляцию и редактирование программы — ее нужно оформить в виде загрузочного модуля и хранить в соответствующей библиотеке. При обращении к такой программе сразу будет вызываться программа выборки для загрузки соответствующего модуля (а этапы компиляции и редактирования связей будут опускаться), и время на выполнение программы существенно сократится.
Если же программа только отлаживается или после каждого просчета ее нужно будет модернизировать, то получение загрузочного модуля и обращение к программе выборки будут лишними операциями. Для их обхода вместо редактора связей может быть применен загрузчик — программа, сочетающая в себе функции редактирования связей и загрузки полученной машинной программы в основную память для исполнения. Но при использовании загрузчика многократные просчеты по программе проводить невыгодно, так как каждый раз приходится выполнять лишние операции редактирования связей.
Особенности управления основной памятью ЭВМ
Алгоритмы распределения, использования, освобождения ресурсов и представления к ним доступа предназначены для наиболее эффективной организации работы всего комплекса устройств ЭВМ. Рассмотрим их на примере управления основной памятью.
Для выполнения программы при ее загрузке в основную память ей выделяется часть машинных ресурсов — они необходимы для размещения команд, данных, управляющих таблиц и областей ввода-вывода, т. е. производится трансляция адресного пространства откомпилированной программы в местоположение в реальной памяти.
Выделение ресурсов может быть осуществлено самим программистом (особенно если он работает на языке, близком машинному), но может производиться и операционной системой.
Если выделение ресурсов производится перед выполнением программы, такой процесс называется статическим перемещением, в результате которого программа «привязывается» к определенному месту в памяти вычислительной машины. Если же ресурсы выделяются в процессе выполнения программы, это называется динамическим перемещением, в этом случае программа не привязана к определенному месту в реальной памяти. Динамический режим можно реализовать только с помощью операционной системы.
При статическом перемещении могут встретиться два случая.
Реальная память больше требуемого адресного пространства программы (рис.16.2):
Рис.
16.2.
Загрузка программы в реальную память
В этом случае загрузка программы в реальную память производится, начиная с нулевого адреса.
Загружаемая программа А является абсолютной программой, так как никакого изменения адресов в адресном пространстве, подготовленном компилятором, при загрузке в основную память не происходит — программа располагается с адреса реальной памяти 0h.
Реальная память меньше требуемого адресного пространства программы (рис.16.3):
Рис.
16.3.
Загрузка при реальной памяти меньше требуемого адресного пространства
В этом случае программист (или операционная система) вынужден решать проблему, как организовать выполнение программы. Методов решения проблемы существует несколько: можно создать оверлейную структуру (т. е. разбить программу на части, вызываемые в ОП по мере необходимости), сделать модули программы реентерабельными (т.е. допускающими одновременную работу модуля по нескольким обращениям из разных частей программы или из различных программ) и так далее.
В некоторых операционных системах адреса откомпилированной (с адреса 0h) программы могут быть преобразованы в адреса реальной памяти, отличные от 0h. При этом создается абсолютный модуль, который требует размещения его в памяти всегда с одного и того же адреса.
Тогда, при мультипрограммном режиме, если имеем программы А, В и С, для которых известно, что программа А выполняется при размещении в памяти с адреса 60 Кбайт до 90 Кбайт, В — с 60 Кбайт до 90 Кбайт, С — с 50 Кбайт до 120 Кбайт, организовать их совместное выполнение невозможно, так как им необходим один и тот же участок реальной памяти. Эти программы будут ждать друг друга, либо их нужно заново редактировать с другого адреса.
При работе в мультипрограммном режиме может сложиться ситуация, когда между программами образуются незанятые участки памяти. Такое состояние называется фрагментацией реальной памяти. Оно характерно для систем со статическим перемещением (рис.16.4).
Рис.
16.4.
Фрагментация памяти
В системах с динамическим перемещением программ перемещающий загрузчик размещает программу в свободной части памяти и допускает использование несмежных ее участков (рис.16.5).
Рис.
16.5.
Динамическое перемещение программ
В этом случае имеется больше возможностей для организации мультипрограммной работы, а следовательно, и для более эффективного использования временных ресурсов ЭВМ.
При больших размерах реализуемых программ возникают некоторые противоречия в организации мультипрограммного режима работы и трудности динамического распределения ресурсов.
В настоящее время разработано несколько способов решения этих противоречий. Например, для борьбы с фрагментацией основной памяти адресное пространство программы может быть разбито на отдельные сегменты, слабо связанные между собой. Тогда программа, которая имеет длину, превышающую размеры свободных участков памяти, может быть представлена в виде ряда сегментов, загружаемых в различные области ОП. Это позволяет использовать реальную память, теряемую из-за фрагментации.
Адреса в каждом сегменте начинаются с 0h. При статическом перемещении программы в процессе загрузки ее в основную память адреса должны быть привязаны к конкретному месту в памяти, на это уходит много времени, отвлекаются вычислительные ресурсы. Более эффективной является динамическая трансляция адресов (ДТА), которая заключается в том, что сегменты загружаются в основную память без трансляции адресного пространства (т.е. без изменения адресов в программе с учетом физического размещения в памяти команд и данных), а трансляция адресов каждой команды производится в процессе ее выполнения. Этот тип трансляции называется динамическим перемещением и осуществляется специальными аппаратными средствами ДТА (рис.16.6).
Для динамической трансляции адресов (т.е. при определении абсолютных адресов по известным относительным, содержащим номер сегмента и смещение) операционная система строит специальные таблицы, устанавливающие соответствие между сегментируемым адресным пространством программы и действительными адресами сегментов в реальной памяти (рис.16.7).
Рис.
16.6.
Динамическое перемещение программ
Рис.
16.7.
Динамическая трансляция адресов
Каждая строка таблицы сегментов содержит адрес начала сегмента в реальной памяти. Для каждого сегмента имеется одна строка таблицы.
Таблицу сегментов содержит каждая выполняемая программа.
В дополнение к таблице сегментов для динамической трансляции адреса применяется специальный управляющий регистр, называемый регистром начала таблицы сегментов (РНТС, или STOR (segment table origin register)). В этот регистр занесен адрес таблицы сегментов выполняемой в данный момент программы. В МП Pentium в качестве РНТС используются 3 регистра: GDTR, LDTR и IDTR.
Использованием сегментации программ достигается уменьшение фрагментации основной памяти, но полностью фрагментация не устраняется — остаются фрагменты, длина которых меньше длины сегментов программы.
Если сегменты разделить на одну или несколько единиц, называемых страницами, которые имеют фиксированный размер, то, поскольку размер страницы достаточно мал по сравнению с обычным размером сегментов, неиспользуемые фрагменты ОП значительно сокращаются в объеме, будет происходить так называемая фрагментация внутри страниц. Следовательно, потери все-таки останутся, но они будут существенно меньше. Такая организация использования ресурсов называется сегментно-страничной.
Формирование сегментно-страничной структуры выполняется автоматически с помощью операционной системы.
Все преимущества динамического перемещения с применением сегментации и страничной организации достигаются благодаря аппаратуре и программному обеспечению, а не пользователям системы. Специальные программы во время загрузки разбивают адресное пространство программы на сегменты и страницы, строят таблицы сегментов и страниц. Средства ДТА автоматически транслируют адрес в процессе выполнения программы.
Файл «Лекция 9_10 Общие принципы функциональной и структурной организации ЭВМ» внутри архива находится в следующих папках: DVCC, Лекции, Лекция 9_11. Документ из архива «Материалы по ВМСС»,
который расположен в категории «».
Всё это находится в предмете «вычислительные машины, системы и сети (вмсис)» из 6 семестр, которые можно найти в файловом архиве НИУ «МЭИ» .
Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе «остальное», в предмете «вмсс» в общих файлах.
Лекция 9—10
Функциональная и структурная организация ЭВМ
Оглавление
1.Общие принципы функциональной и структурной организации ЭВМ 1
2.Организация функционирования ЭВМ с магистральной архитектурой 2
3.Организация работы ЭВМ при выполнении задания пользователя 5
4. Отображение адресного пространства программы на основную память 7
4.1. Адресная структура команд микропроцессора и планирование ресурсов 10
4.2. Виртуальная память 14
4.3. Система прерываний ЭВМ 17
1.Общие принципы функциональной и структурной организации ЭВМ
Электронные вычислительные машины включают, кроме аппаратурной части и программного обеспечения (ПО), большое количество функциональных средств. К ним относятся коды, с помощью которых обрабатываемая информация представляется в цифровом виде:
-
арифметические коды — для выполнения арифметических преобразований числовой информации;
-
помехо — защищенные коды, используемые для защиты информации от искажений;
-
коды формы, определяющие, как должна выглядеть обрабатываемая в ЭВМ информация при отображении; цифровые коды аналоговых величин (звука, “живого видео”) и др.
Кроме кодов, на функционирование ЭВМ оказывают влияние:
-
алгоритмы их формирования и обработки,
-
технология выполнения различных процедур (например, начальной загрузки операционной системы, принятой в системе технологии обработки заданий пользователей и др.);
-
способы использования различных устройств и организация их работы (например, организация системы прерываний или организация прямого доступа к памяти),
-
устранение негативных явлений (например, таких, как фрагментация памяти) и др.
Будем считать, что коды, система команд, алгоритмы выполнения машинных операций, технология выполнения различных процедур и взаимодействия hard и soft, способы использования устройств при организации их совместной работы, составляющие идеологию функционирования ЭВМ, образуют функциональную организацию ЭВМ.
Реализована идеология функционирования ЭВМ может быть по-разному:
-
аппаратурными,
-
программно-аппаратурными или
-
программными средствами.
При аппаратурной и программно-аппаратурной реализации могут быть применены:
-
регистры, дешифраторы, сумматоры;
-
блоки жесткого аппаратурного управления или микропрограммного с управлением подпрограммами (комплексами микроопераций);
-
устройства или комплексы устройств, реализованные в виде автономных систем (программируемых или с жестким управлением) и др.
При программной реализации могут быть применены различные виды программ — обработчики прерываний, резидентные или загружаемые драйверы, соm-, ехе- или tsr — программы, bat- файлы и др.
Будем считать, что способы реализации функций ЭВМ составляют структурную организацию ЭВМ. Тогда элементная база, функциональные узлы и устройства ЭВМ, программные модули различных видов (обработчики прерываний, драйверы, соm-, ехе-, tsr-программы, bat-файлы и др.) являются структурными компонентами ЭВМ.
При серьезных конструктивных различиях ЭВМ могут быть совместимыми, т.е. приспособленными к работе с одними и теми же программами (программная совместимость) и получению одних и тех же результатов при обработке одной и той же, однотипно представленной информации (информационная совместимость). Если аппаратурная часть ЭВМ допускает их электрическое соединение для совместной работы и предусматривает обмен одинаковыми последовательностями сигналов, то имеет место и техническая совместимость ЭВМ.
Совместимые ЭВМ должны иметь одинаковую функциональную организацию: информационные элементы (символы) должны одинаково представляться при вводе и выводе из ЭВМ, система команд должна обеспечивать в этих ЭВМ получение одинаковых результатов при одинаковых преобразованиях информации. Работой таких машин должны управлять одинаковые или функционально совместимые операционные системы (а для этого должны быть совместимы методы и алгоритмы планирования и управления работой аппаратурно-программного вычислительного комплекса). Аппаратурные средства должны иметь согласованные питающие напряжения, частотные параметры сигналов, а главное — состав, структуру и последовательность выработки управляющих сигналов.
2.Организация функционирования ЭВМ с магистральной архитектурой
ЭВМ представляет собой совокупность устройств, выполненных на больших интегральных схемах, каждая из которых имеет свое функциональное назначение. Комплект интегральных схем, из которых состоит ЭВМ, называется микропроцессорным комплектом. В состав микропроцессорных комплектов входят:
-
системный таймер,
-
микропроцессор (МП),
-
сопроцессоры,
-
контроллер прерываний,
-
контроллер прямого доступа к памяти,
-
контроллеры устройств ввода-вывода и др.
Все устройства ЭВМ делятся на центральные и периферийные. Центральные устройства полностью электронные, периферийные устройства могут быть либо электронными, либо электромеханическими с электронным управлением.
В центральных устройствах основным узлом, связывающим микропроцессорный комплект в единое целое, является системная магистраль (СМ). Она состоит из трех узлов, называемых шинами: шина данных (ШД), шина адреса (ША), шина управления (ШУ). В состав системной магистрали входят регистры-защелки, в которых запоминается передаваемая информация, шинные формирователи, шинные арбитры, определяющие очередность доступа к системной магистрали, и др.
Системная магистраль
Логика работы системной магистрали, количество разрядов (линий) в шинах данных, адреса и управления, порядок разрешения конфликтных ситуаций, возникающих при одновременном обращении различных устройств ЭВМ к системной магистрали, образуют интерфейс системной шины.
Интерфейс системной шины
В состав центральных устройств ЭВМ входят: центральный процессор, основная память и ряд дополнительных узлов, выполняющих служебные функции: контроллер прерываний, таймер и контроллер прямого доступа к памяти (ПДП).
Периферийные устройства делятся на два вида: внешние ЗУ (НМД, НГМД, НМЛ) и устройства ввода-вывода (УВВ): клавиатура, дисплей, принтер, мышь, адаптер каналов связи (КС) и др.
Управляющая работой ЭВМ программа перед началом выполнения загружается в основную память. Адрес первой выполняемой команды передается микропроцессору и запоминается в счетчике команд.
Начало работы процессора заключается в том, что адрес из счетчика команд (в котором всегда хранится адрес очередной команды) выставляется на ША системной магистрали. Одновременно на ШУ выдается команда: «Выборка из ОП» , которая воспринимается основной памятью. Получив с ШУ системной магистрали команду, основная память считывает адрес с ША, находит ячейку с этим номером и ее содержимое выставляет на ШД, а на ШУ выставляет сигнал о выполнении команды. Процессор, получив по ШУ сигнал об окончании работы ОП, вводит число с ШД на внутреннюю магистраль МП и через нее пересылает введенную информацию в регистр команд.
В регистре команд полученная команда разделяется на кодовую и адресную части. Код команды поступает в блок управления для выработки сигналов, настраивающих МП на выполнение заданной операции, и для определения адреса следующей команды, который сразу заносится в счетчик команд. Адресная часть команды выставляется на ША системной магистрали и сопровождается сигналом «Выборка из ОП» на ШУ. Выбранная из ОП информация через шину данных поступает на внутреннюю магистраль МП, с которой вводится в арифметическое устройство (АУ). На этом заканчивается подготовка МП к выполнению операции, и начинается ее выполнение в АЛУ.
Результат выполнения операции выставляется микропроцессором на ШД, на ША выставляется адрес ОП, по которому этот результат необходимо записать, а на ШУ выставляется команда «Запись в ОП» . Получив с ШУ команду, ОП считывает адрес и данные с системной магистрали, организует запись данных по указанному адресу и после выполнения команды выставляет на ШУ сигнал, обозначающий, что число записано. Процессор, получив этот сигнал, начинает выборку очередной команды: выставляет адрес из счетчика команд на шину адреса, формирует команду «Выборка из ОП» на ШУ и т.д.
В каждом цикле, получив команду в регистр команд и выделив код операции, процессор определяет, к какому устройству она относится. Если команда должна выполняться процессором, организуется ее выполнение по описанному циклу. Если же команда предназначена для выполнения в другом устройстве ЭВМ, центральный процессор (ЦП) передает ее соответствующему устройству.
Процесс передачи команды другому устройству предусматривает следующие действия:
-
ЦП выставляет на шину адреса адрес интересующего его устройства.
-
По шинам управления передается сигнал «Поиск устройства» . Все устройства, подключенные к системной магистрали, получив этот сигнал, читают номер устройства с шины адреса и сравнивают его со своим номером. Устройства, для которых эти номера не совпадают, на эту команду не реагируют. Устройство с совпавшим номером вырабатывает сигнал отклика по шине управления.
-
ЦП, получив сигнал отклика, в простейшем случае выставляет имеющуюся у него команду на шину данных и сопровождает ее по шине управления сигналом «Передаю команду» .
-
Получив сигнал о приеме команды, ЦП переходит к выполнению очередной своей команды, выставляя на шину адреса содержимое счетчика команд.
В более сложных случаях, получив сигнал, что устройство откликнулось, прежде чем передавать команду, ЦП запрашивает устройство о его состоянии. Текущее состояние устройства закодировано в байте состояния, который откликнувшееся устройство передает процессору через ШД системной магистрали. Если устройство включено и готово к работе, то байт состояния — нулевой. Наличие в нем единиц свидетельствует о нештатной ситуации, которую ЦП пытается проанализировать и в необходимых случаях извещает оператора о сложившейся ситуации.
Взаимодействие МП с внешними устройствами предусматривает выполнение логической последовательности действий, связанных с поиском устройства, определением его технического состояния, обменом командами и информацией. Эта логическая последовательность действий вместе с устройствами, реализующими ее, получила название интерфейс ввода-вывода.
Для различных устройств могут использоваться разные логические последовательности действий, поэтому интерфейсов ввода-вывода может в одной и той же ЭВМ использоваться несколько. Если их удается свести к одному, универсальному, то такой интерфейс называется стандартным. В IBM PC есть два стандартных интерфейса для связи ЦП с внешними устройствами: параллельный (типа Centronics) и последовательный (типа RS-232).
Интерфейсы постоянно совершенствуются, поэтому с появлением новых ЭВМ, новых внешних устройств и даже нового программного обеспечения появляются и новые интерфейсы. Так, в программном обеспечении, разработанном ведущими фирмами, все шире используется новый интерфейс Plug and Play (Включи и играй), который предназначен для облегчения системной настройки ЭВМ при подключении новых устройств, к машине. Этот интерфейс позволяет подключить с помощью кабеля новое устройство, а после включения ЭВМ ее программное обеспечение автоматически определяет состав подключенных устройств, их типы в настраивает машину на работу с ними без вмешательства системного оператора.
Если при обращении ЦП к внешнему устройству продолжение выполнения основной программы центральным процессором возможно только после завершения операции ввода-вывода, то ЦП, запустив внешнее устройство, переходит в состояние ожидания и находится в нем до тех пор, пока внешнее устройство не сообщит ему об окончании обмена данными. Это приводит к простою большинства устройств ЭВМ, так как в каждый момент времени может работать только одно из них. Такой режим работы получил название однопрограммного — в каждый момент времени все устройства находятся в состоянии ожидания, и только одно устройство выполняет основную (и единственную) программу.
Для ликвидации таких простоев и повышения эффективности работы оборудования внешние устройства сделаны автономными. Получив от ЦП необходимую информацию, они самостоятельно организуют свою работу по обмену данными. Процессор же, запустив внешнее устройство, пытается продолжить выполнение программы. При необходимости (если встретятся соответствующие команды) он может запустить в работу несколько других устройств (так как внешние устройства работают значительно медленнее процессора). Если ЦП необходимо перейти в режим ожидания, то, поскольку в ОП может одновременно находиться несколько программ, ЦП может переходить к выполнению очередной программы. При этом создается ситуация, когда в один и тот же момент времени различные устройства ЭВМ выполняют либо разные программы, либо разные части одной и той же программы, такой режим работы ЭВМ называется многопрограммным.
3.Организация работы ЭВМ при выполнении задания пользователя
Организация процессов ввода, преобразования и отображения результатов относится к сфере системного программного обеспечения. Это сложные процессы, которые чаще всего делаются “прозрачными”, т.е. незаметными для пользователя. Один из них — реализация задания пользователя: профессиональный пользователь (программист) пишет задание для ЭВМ в виде программы на алгоритмическом языке. Написанное задание (программа) представляет собой исходный модуль, сопровождаемый управляющими предложениями, указывающими операционной системе ЭВМ, на каком языке написана программа и что с ней надо делать. Если программа пишется на алгоритмическом языке, то управляющие предложения — на языке управления операционной системой (например, в ЕС ЭВМ и IBM 360/370 этот язык называется -Job Control Langiage, в MS DOS IBM PC — это язык команд DOS, иногда оформляемый в виде bat – файла и т.п.).
Детали файла
Имя файла: | 0648.Экз.01;ЭЭ.01;2 |
Размер: | 124 Kb |
Дата публикации: | 2015-03-09 03:19:39 |
Описание: | |
Организация ЭВМ и систем — Электронный экзамен
Список вопросов теста (скачайте файл для отображения ответов): Верны ли определения? |
|
Для скачивания этого файла Вы должны ввести код указаный на картинке справа в поле под этой картинкой —> | |
ВНИМАНИЕ: | |
Нажимая на кнопку «Скачать бесплатно» Вы подтверждаете свое полное и безоговорочное согласие с «Правилами сервиса» | |
Однопрограммный режим — работа
Cтраница 1
Однопрограммный режим работы — режим, при котором выполняется не более одной независимой программы. При таком режиме работы ЭВМ решение задачи начинается с загрузки программы в ОП, после чего ЭВМ последовательно выполняет команды программы. При этом в каждый момент времени работает только одно ее устройство, в то время как остальные простаивают в ожидании окончания ранее начатого действия.
[1]
Однопрограммный режим работы ЭВМ — режим работы ЭВМ, при котором выполняется не более одной программы пользователя. Решение задачи начинается с ввода программы в память машины. Процесс вычислений производится по окончании ввода информации. При однопрограммном режиме работы каждое устройство ЭВМ осуществляет свои рабочие функции только часть времени, все остальное время оно находится в режиме ожидания. Такими же значительными оказываются простои других устройств ЭВМ.
[3]
В однопрограммном режиме работы в памяти ЭВМ находится и выполняется только одна программа.
[4]
В однопрограммном режиме работы все устройства ЭВМ заняты выполнением только одной программы. В режиме пакетной обработки одновременно решаются несколько задач, для которых пакет необходимой информации ( программы, исходные данные) заранее, до начала решения вводится в память машины, а в ходе решения вмешательство абонента ( пользователя) с пульта не допускается. Управляющая программа ОС устанавливает очередность решения задач пакета с учетом времени их поступления и наличия аппаратурных ресурсов в системе. В режиме разделения времени некоторое число независимых абонентов с помощью периферийных устройств ввода и вывода получают в процессе решения своих задач непосредственный, постоянный и одновременный доступ к ЭВМ.
[6]
При однопрограммном режиме работы ЭВМ в распоряжение каждой задачи отдаются все имеющиеся в машине ресурсы, в том числе и вся оперативная память. При мультипрограммном режиме в памяти находятся сразу несколько программ, выполняемых машиной параллельно, среди которых всегда присутствует и диспетчер. Это означает, что в физической оперативной памяти реальной машины одновременно размещаются оперативные памяти нескольких виртуальных машин. Но тогда возникает проблема защиты памяти: если какая-либо задача по решению диспетчера переводится в фазу счета, то необходима гарантия того, что данная задача будет использовать только выделенную ей часть физической памяти, ибо обращения к ячейкам памяти, не принадлежащим данной задаче ( что может, например, явиться следствием ошибок, содержащихся в ее программе), могут привести к нарушению правильности выполнения других программ, в том числе и самого диспетчера.
[7]
Первые системы пакетной обработки были ориентированы на однопрограммный режим работы, когда всеми ресурсами вычислительной машины распоряжается одна программа которая выполняется в данный момент. Остальные программы пакета в это время находятся в состоянии ожидания во внешней памяти или на вводном устройстве. Переход от одной программы к другой происходит в порядке очередности их в пакете только после естественного завершения исполняемой программы или после обнаружения в ней какой-либо ошибки. Хотя в целом ЭВМ работает при этом непрерывно, выполняя программы пользователя, ее отдельные устройства могут значительное время простаивать. Так, при исполнении программ решения задач с большим объемом обработки информации и незначительным количеством исходных данных и получаемых результатов интенсивно работает кроцессор и бездействуют периферийные устройства. Наоборот, если объем данных велик, а обработка весьма проста, вынуждены простаивать центральные устройства машины, что приводит к особенно резкому снижению производительности, так как скорости работы периферийных устройств на несколько порядков ниже, чем центральных устройств.
[8]
Максимальная длина дерева перекрытий транзитов равна 3 при однопрограммном режиме работы и 4 — при многопрограммном.
[9]
Рассмотрим наиболее употребляемые формы задания адреса загрузки при однопрограммном режиме работы машины.
[10]
Если при организации мультипрограммной работы сравнительно просто организовать параллельную работу процессора и устройства ввода, то при работе устройства вывода возникают дополнительные трудности, которых нет при однопрограммном режиме работы.
[12]
Графики зависимости (7.10) от параметров х и М представлены на рис. 7.12. Граничные значения вероятности Рг ( 7И, 0) определяются кривыми при М 1, что соответствует однопрограммному режиму работы СОО, связанной с единственным терминалом пользователя, и при М — оо, что соответствует подключению к системе бесконечно большого, числа терминалов.
[14]
Возможны разные режимы работы машин ЕС ЭВМ. Допускается однопрограммный режим работы, при котором машина решает только одну задачу. Этот способ работы является малоэкономичным и относительно редким. Чаще машина решает одновременно несколько задач — мультипрограммный режим. При этом может быть организовано последовательное решение одной за другой пакета задач, отчего такой режим называют режимом пакетной обработки. Одновременно с решением данной задачи производится ввод последующей задачи и выдача результатов предыдущей. Более сложной является работа ЭВМ в режиме с разделением времени, когда ЭВМ обслуживает одновременно — несколько абонентов ( в том числе и удаленных), используя некоторую систему приоритетов и прерываний при выборе очередности решения задачи. Допускается работа ЭВМ в реальном масштабе времени для управления технологическим процессом.
[15]
Страницы:
1
2