Команда - прерывание - Большая Энциклопедия Нефти и Газа, статья, страница 3
Настоящий менеджер - это такой, который если уж послал тебя... к чертовой бабушке, то обязательно проследит, чтобы ты добрался по назначению. Законы Мерфи (еще...)

Команда - прерывание

Cтраница 3


Программы обращаются к системным вызовам, помещая аргументы в регистры центрального процессора ( или иногда в стек) и выполняя команду эмулированного прерывания для переключения из пользовательского режима в режим ядра и передачи управления операционной системе UNIX. Поскольку на языке С невозможно написать команду эмулированного прерывания, этим занимаются библиотечные функции, по одной на системный вызов. Эти процедуры написаны на ассемблере, но они могут вызываться из программ, написанных на С. Каждая такая процедура помещает аргументы в нужное место и выполняет команду эмулированного прерывания TRAP. Таким образом, чтобы обратиться к системному вызову read, программа на С должна вызвать библиотечную процедуру read. Кстати, в стандарте POSIX определен именно интерфейс библиотечных функций, а не интерфейс системных вызовов. Другими словами, стандарт POSIX определяет библиотечные процедуры, соответствующие системным вызовам, их параметры, что они должны делать и какой результат возвращать. В стандарте даже не упоминаются фактические системные вызовы.  [31]

Кроме этого, оператор может помещать в протокол выполнения заданий пользователя примечание, снабженное заголовком ЗАМЕЧАНИЕ ОПЕРАТОРА. Это замечание должно быть передано программе пакетной обработки BATCH с помощью команды прерывания NOTICE. Текст, указанный в этой команде, помещается в протокол выполнения задания.  [32]

Работой системы спулинга администратор системы управляет при запуске программ, задавая соответствующие ключи, которые определяют параметры, используемые при работе этих программ. Администратор системы имеет возможность оперативно изменять отдельные характеристики заданий пользователей, используя команды прерывания.  [33]

Команды передачи управления предназначены для организации перехода в программе. Существует четыре класса таких команд: безусловная передача управления, условная передача управления, управление циклами, команды прерываний.  [34]

Набор команд этих процессоров ( спецификация MIPS IV) был расширен командами загрузки и записи 128-разрядных чисел с плавающей точкой, командами вычисления квадратного корня с одинарной и двойной точностью, командами условных прерываний, а также атомарными операциями, необходимыми для поддержки мультипроцессорных конфигураций. В процессорах R10000 и R12000 реализованы 128-битовые шины данных, а также метод удвоения внутренней тактовой частоты.  [35]

В первую группу входят команды, дающие администратору системы дополнительные возможности управлять работой этих программ или следить за их работой. Команда PAUSE позволяет приостановить работу выбранной программы, а команда CONTINUE продолжить ее нормальную работу. По команде PAUSE программа спулинга переходит в состояние ожидания, в котором она обрабатывает большинство команд прерывания, но не производит обработку запросов.  [36]

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

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

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

40 Уровни операционной системы UNIX. [40]

Программы обращаются к системным вызовам, помещая аргументы в регистры центрального процессора ( или иногда в стек) и выполняя команду эмулированного прерывания для переключения из пользовательского режима в режим ядра и передачи управления операционной системе UNIX. Поскольку на языке С невозможно написать команду эмулированного прерывания, этим занимаются библиотечные функции, по одной на системный вызов. Эти процедуры написаны на ассемблере, но они могут вызываться из программ, написанных на С. Каждая такая процедура помещает аргументы в нужное место и выполняет команду эмулированного прерывания TRAP. Таким образом, чтобы обратиться к системному вызову read, программа на С должна вызвать библиотечную процедуру read. Кстати, в стандарте POSIX определен именно интерфейс библиотечных функций, а не интерфейс системных вызовов. Другими словами, стандарт POSIX определяет библиотечные процедуры, соответствующие системным вызовам, их параметры, что они должны делать и какой результат возвращать. В стандарте даже не упоминаются фактические системные вызовы.  [41]

Арифметические действия с числами, представленными в форме с фиксированной запятой, выполняют операции 1 - 17, причем операции 1 - 9 служат также для выполнения действий сложения и вычитания с целыми числами. Для умножения и деления целых чисел предусмотрены псевдооперации ут, дт. В операциях с индексами 2 и 3 результат действия анализируется на переполнение. В случае переполнения адрес следующей команды запоминается в ячейке 2046, а управление передается по адресу 2047, в котором должна быть предусмотрена либо команда прерывания работы программы, либо команда передачи управления к продолжению счета по другой части программы.  [42]

Прерывания делятся на аппаратурные и командные. Часть аппаратных прерываний вызывает немедленный переход, к их обработке. Они возникают при ошибках системной магистрали, ДП. Анализ таких аппаратных прерываний, как авария источника питания, внешний сигнал HALT, прерываний IRQ ( разряды 0 - 3), переполнения стека в моде операционной системы производится после завершения очередной команды в соответствии с приоритетом, указанным в табл. 11.10. К командам прерывания относятся ЕМТ, TRAP, BPT, ЮТ, а также ( если учитывать алгоритм выполнения) и резервные коды.  [43]



Страницы:      1    2    3