Logo GenDocs.ru

Поиск по сайту:  


Загрузка...

Ответы на вопросы - файл вссит ответы 9-15.doc


Загрузка...
Ответы на вопросы
скачать (88.7 kb.)

Доступные файлы (2):

вссит ответы 1-8.doc89kb.25.06.2010 21:35скачать
вссит ответы 9-15.doc218kb.26.06.2010 01:44скачать

вссит ответы 9-15.doc

Реклама MarketGid:
Загрузка...
  1. Устройства, входящие в состав ЭВМ

  2. Повышение эффективности работы аппаратуры ЭВМ

  3. Мультипрограммный режим работы ЭВМ

  4. Развитие операционных систем

  5. Режимы использования ЭВМ

  6. Основные тенденции в развитии ЭВМ

ПРИНЦИПЫ ДЕЙСТВИЯ И СОСТАВ ЭВМ


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

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

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

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

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

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

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

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

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

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

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

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

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

Устройства, входящие в состав ЭВМ, выполняют или основные:

или вспомогательные функции.

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

устройства обмена, реализующие программы обмена и организующие обмен с периферийными устройствами.

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

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

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

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

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

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

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

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

– для автоматизации последовательности вычислений заранее составляется и записывается в память ЭВМ программа решения задач, определяющая эту последовательность;

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

– все задачи в ЭВМ решаются численными методами с заранее задаваемой точностью.

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

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

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

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

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

1. Информация кодируется в двоичной форме и разделяется на элементы, называемые словами.

2. Слова разного назначения при обращении к ним различаются не способом кодирования, а по необходимости использования.

3. Слова размещаются в памяти и идентифицируются (определяются) адресами слов.

4. Алгоритм представляется в виде последовательности команд, определяющих наименование операции и адрес (номер) слова в памяти.

5. Команды выполняются последовательно в соответствии с их расположением в памяти.

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

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

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

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

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

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

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

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

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

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

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

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

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

Для выполнения процесса необходима определенная подготовка:

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

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

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

Комплекс программных средств ЭВМ, называемый также математическим обеспечением (МО), состоит из трех частей: системное ПО, пакетов прикладных программ (ППП) и системы программирования.

Системное ПО включает операционную систему и программы технического обслуживания.

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

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

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

К пакетам прикладных программ относят также программы, расширяющие функции операционных систем.

^ Системы программирования –это программы для создания программ.

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

Принципы фон Неймана.


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

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

Чтобы обеспечить такой доступ к ячейкам памяти, с каждой из них связывают персональное имя и обращение к ячейке про­изводится с помощью указания ее имени. Для этого все ячейки основной памяти перенумеровывают от 0 до N—1 и в качестве имени ячейки используют ее порядковый номер — адрес ячейки. При этом общее число ячеек (N) называют объемом основной памяти.

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

Второй фундаментальный принцип фон Неймана — принцип хранимой программы. Программа решения задачи хранится в основ­ной памяти наряду с обрабатываемыми данными. Именно это делает ЭВМ универсальным средством обработки информации — для реше­ния другой задачи требуется смена в основной памяти программы и обрабатываемых данных.

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

Представление информации.


 Информация в ЭВМ пред­ставляется в двоичном виде, т. е. для представления команд и данных используется алфавит, состоящий всего из двух символов, которые обычно обозначают 0 и 1. Такое представление информа­ции объясняется техническими особенностями реализации конкрет­ных ЭВМ. В самом деле, технически гораздо проще реализовать, например, запоминающий элемент, имеющий только два устойчи­вых состояния, чем такой элемент, имеющий десять различных состояний. Аналогичное замечание относится и к различным пере­ключательным схемам — элементы таких схем достаточно просто могут быть реализованы в виде переключателей, либо пропускаю­щих, либо не пропускающих сигнал.

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

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

В большинстве современных ЭВМ принято выделять наряду со словом другую стандартную единицу информации, содержащую 8 бит и называемую байтом. Слово машины обычно содержит крат­ное число байтов, например 16-разрядные слова (длина— 16 бит) некоторых мини-ЭВМ содержат 2 байта, 32-разрядные слова (дли­на — 32 бит) больших ЭВМ содержат 4 байта и т. п.

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

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

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

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

В двоичной системе счисления для представления чисел внутри ЭВМ используются те же формы, что и в большинстве языков про­граммирования для представления десятичных чисел. Это пред­ставление чисел с фиксированной и плавающей точкой. В первом случае число представляется в виде целой и дробной части, причем положение двоичной точки в числе фиксировано раз и навсегда. Кроме того, один двоичный разряд используется для представ­ления знака числа (0 для положительных чисел и 1 для отрица­тельных). Во втором случае число представляется в виде dr/ra^-'P, причем в машинном слове, используемом для представления числа с плавающей точкой, в определенных разрядах записывается ман­тисса т, а в других разрядах— порядок р. Два разряда слова берутся соответственно для представления знака числа и знака порядка.

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

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

Машинные команды представляются в двоично-кодированном виде и, как правило, занимают одно машинное слово, но некоторые современные ЭВМ имеют в своей системе команд команды разной длины. В представлении команды различают два основных поля:

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

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

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

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

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

РАЗВИТИЕ СТРУКТУРЫ ЭВМ


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

Большое разнообразие существующих типов ЭВМ не позволяет коротко рассмотреть все особенности их архитектурных решений, поэтому оста­новимся лишь на некоторых общих особенностях, присущих архитектуре ЭВМ разных поколений, и проследим основные тенденции ее развития.
^

Повышение эффективности работы аппаратуры ЭВМ.


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

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

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

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

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

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

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

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

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

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

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

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



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

Мультипрограммный режим работы ЭВМ.


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

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

Временная диаграмма исполнения трех программ в мультипро­граммном режиме по описанному выше принципу приведена на рис. 2.5. На этой диаграмме на оси абсцисс отмечаются моменты времени ti, ts, ts, . . ., в которые центральный процессор переклю­чается с исполнения одной программы на другую, а на оси ординат отмечены точки 1, 2 и 3, соответствующие этим программам. Работа центрального процессора изображается сплошной жирной линией,



Рис. 2.5. Временная диаграмма одновременного вы­полнения трех программ

а работа канала — сплошной тонкой линией. Время, когда про­грамма находится в состоянии ожидания, изображено на диаграмме пунктиром.

Из этой временной диаграммы видно, что при одновременном исполнении трех программ удается достичь достаточно эффективно-



Рис. 2.6. Временная диаграмма простоев цент­рального процессора при неудачном выборе од­новременно выполняемых программ

го совмещения работы центрального процессора и периферийных устройств. Однако и здесь возможны случаи простоя центрального процессора. Действительно, в периоды от t^ до ^ и от ^в Д° ^? Цент­ральный процессор простаивает, так как в это время производится обмен для всех трех программ.

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

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

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



Рис. 2.7. Временная диаграмма работы ЭВМ при наличии фоновой программы 1

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

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

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

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

Каждая программа в мультипрограммном режиме имеет дело не с реальной, а с виртуальной (идеальной) машиной, располагаю­щей виртуальной основной памятью и виртуальными устройст­вами ввода — вывода, причем программа может использовать все ресурсы этой виртуальной машины. Соответствие же между вирту­альными и реальными (физическими) ресурсами устанавливает супервизор.

Таким образом, в мультипрограммном режиме на одной физичес­кой ЭВМ одновременно работают несколько виртуальных, а супер­визор отображает каждую виртуальную машину на реальную. На­пример, если какая-то программа использует весь объем виртуаль­ной основной памяти, то супервизор может ей выделить какую-то часть физической основной памяти, а остальную виртуальную основную память отобразить на физическую внешнюю память ЭВМ, например на магнитные диски. Управление исполнением такой программы супервизор должен реализовать так, чтобы программа «не знала», где физически записаны данные. Для этого по мере не­обходимости супервизор вызывает в физическую основную память те данные, которые записаны на магнитных дисках.

Чтобы супервизор мог реализовать алгоритм управления про­граммами в мультипрограммном режиме, к аппаратуре ЭВМ предъ­являются дополнительные требования по сравнению с требования­ми к аппаратуре однопрограммной ЭВМ. Рассмотрим основные из них.

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

Такая реакция обеспечивается включением в аппаратуру ЭВМ механизма прерываний, который обеспечивает запоминание при­чины прерывания, прерывает исполняемую программу и передает управление на исполнение программы — супервизора.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Кроме того, часы обычно используются для ведения общего временного протокола исполнения программы, в котором указы­вается время использования центрального процессора и время, за­траченное на выполнение ввода—вывода.
^

Развитие операционных систем.


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

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

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

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

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

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

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

Операционная система является программным расширением аппаратуры ЭВМ и составляет такую же неотъемлемую часть любой машины, как и ее аппаратура. Функционирование любой современ­ной ЭВМ просто невозможно без операционной системы. Кроме того, операционная система является посредником между челове­ком и ЭВМ, предоставляя человеку возможность иметь дело с вир­туальной машиной.

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

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

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

РЕЖИМЫ ИСПОЛЬЗОВАНИЯ ЭВМ

Режим пакетной обработки программ.


Он получил свое развитие в машинах второго и последующих поколений.

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

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

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

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

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

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

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

Режим коллективного пользования.


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

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

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

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

Режим реального времени.


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

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

Примером использования ЭВМ в режиме реального времени является созданная в нашей стране система «Сирена» по продаже авиационных билетов или аналогичная система «Экспресс» по про­даже железнодорожных билетов.

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

ОСНОВНЫЕ ТЕНДЕНЦИИ В РАЗВИТИИ ЭВМ


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

Сейчас речь идет об ЭВМ с быстродействием в сотни миллионов, а на ближайшую перспективу — в 1 и даже 10 млрд. операций/с. Такие машины называют супер-ЭВМ. Создание супер-ЭВМ связано не только с появлением соответствующей элементной базы, но и с применением новых конструктивных и архитектурных решений.

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

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

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

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

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

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

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

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

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

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

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

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

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


Скачать файл (88.7 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации
Рейтинг@Mail.ru