
- •1. Сравнительная оценка аналоговых и цифровых вычислительных машин
- •22. Ассоциативные и многофункциональные зу (lect15add.Doc)
- •1. Сравнительная оценка аналоговых и цифровых вычислительных машин
- •2. Структура цифровых эвм и принципы Дж. Фон Неймана
- •3. Структура пэвм (по му к выполнению лр)
- •4. Классификация (цифровых) эвм
- •5. Методы оценки производительности эвм (по пособию “Организация эвм”)
- •6. Оценка эффективности эвм
- •7. Режимы работы эвм
- •8. Общие закономерности и принципы построения эвм
- •9. Этапы проектирования эвм
- •10. Логические элементы и элементы памяти эвм
- •11. Узлы комбинационного типа
- •12. Регистры и счетчики
- •12(0). Элементы памяти (эп) статических и динамических зу
7. Режимы работы эвм
Исторически первым был однопрограммный режим работы ЭВМ. В этом режиме запущенная на исполнение программа полностью занимала процессор (такого термина тогда еще не было) ЭВМ и выполнялась до своего завершения. Как правило, такая программа сама и управляла остальными устройствами, используя имеющиеся для этого команды.
Помимо неудобств работы в таком режиме, которые сейчас, видимо, может представить себе каждый пользователь, низкой оказывалась и загрузка устройств ЭВМ, да и различные задачи загружали эти устройства по-разному.
Все это привело к появлению идеи, а затем и реализации, многопрограммного режима работы, при котором отдельные устройства ЭВМ поочередно использовались несколькими программами или несколькими частями (в современной терминологии - процессами) одной программы. Такой режим должен был повысить и производительность, и коэффициент (полезного) использования отдельных устройств и ЭВМ в целом.
Однако, для реализации этого режима необходимо было обеспечить ряд требований и функциональных возможностей, закладываемых в организацию ЭВМ:
1. Независимость хранящихся в памяти программ и данных от абсолютных адресов памяти (для возможности их загрузки в имеющуюся свободную память).
2. Наличие системы приоритетов программ, позволяющей осуществлять быстрый выбор программы на исполнение при наличии нескольких программ (очереди), готовых к выполнению.
3. Наличие средств сохранения текущего состояния каждой программы.
4. Возможность использования любого свободного в данный момент устройства (или части устройства, например, регистров) любой из готовых к выполнению программ (команд).
5. Возможность прекращения (прерывания) выполнения программы при возникновении определенных условий (состояний устройств) или поступлении внешних сигналов.
6. Минимально возможные временные и аппаратные затраты на реализацию слежения за состоянием устройств машины и выполняемых программ, пересылки данных внутри системы, а также отсутствие усложнений для программирования.
Перечисленные требования была сформулированы в работах конца 1950-х – начала 1960-х годов [см. напр. S.Jill или B.Ryle], а их реализация уже имела место в ЭВМ, созданных в начале 1960-х годов.
Естественно, что для их реализации потребовалось введение новых механизмов и модификация структуры ЭВМ.
Так, для обеспечения перемещаемости программ стали использоваться различные механизмы адресации (в первую очередь, относительная), а позже средства сегментной и страничной организации памяти. Приоритетный выбор, прекращение исполнения и сохранение состояния программ стали обеспечивать аппаратные и программные средства системы прерываний, появившейся в ЭВМ. Реализация требований доступности свободных устройств для использования различными программами была достигнута распределенной организацией средств управления и увеличением количества самих таких устройств в ЭВМ, например, операционных блоков процессоров.
Обеспечение возможности многопрограммной работы ЭВМ привело и к появлению новых режимов их работы. Первоначально, эти режимы подразделяли на режим пакетной обработки и режим разделения времени.
Первый из них предполагал загрузку в ЭВМ группы (пакета) задач и запуск их на поочередное решение следующим образом. Из пакета выбирается одна (очередная) задача и ей передается управление процессором. Задача решается до тех пор, пока либо ее решение заканчивается, либо ей требуется выполнение операций ввода-вывода или иных действий, не позволяющих продолжить ее выполнение. В первом случае из пакета выбирается новая задача, и управление процессором передается этой задаче, во втором – запускается операция ввода вывода или иное действие, а до его окончания на решение вызывается следующая задача пакета. По окончании операции ввода-вывода управление возвращается первой задаче.
Режим разделения времени, напротив, предполагал выделение для каждой из задач, ожидающих выполнения, некоторой порции (кванта) процессорного времени, в течение которого задача получала управление процессором. За это время она могла завершиться и тогда она просто удалялась из очереди, либо ее выполнение не заканчивалось, тогда данная задача снималась с решения и возвращалась в очередь, где она ожидала предоставления ей следующего кванта процессорного времени, а управление процессором передавалось следующей задаче. Это же происходило, если в течение своего кванта времени задаче требовалось выполнить операцию ввода-вывода.
Очевидно, что пакетный режим обеспечивал более эффективное использование ЭВМ, так как требовал минимального количества переключений с одной задачи на другую. Однако работать в таком режиме, особенно, программисту при отладке задачи, было сложно, так как никакого контакта с ЭВМ пользователь не имел, а сдавал свои программы на решение в вычислительный центр, откуда получал результаты через несколько часов или даже на следующий день.
Напротив, режим разделения времени (называемый также многотерминальным режимом), позволял пользователям, работать, имитируя непосредственный контакт с ЭВМ, так как задачи попадали в очередь прямо при вводе с терминала (рабочей станции). Такой режим гораздо удобнее для человека, но эффективность использования ЭВМ при этом меньше, чем в пакетном режиме.
Впоследствии эти два режима работы ЭВМ породили много различных модификаций, в том числе и смешанного типа, сочетающего различным образом их свойства.