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

Ограничитель - стек

Cтраница 1


1 Схематическое изображение стека с использованием SL. [1]

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

3 Схематическое изображение стека с использованием SL. [3]

Адрес, задаваемый в ограничителе стека, определяет его нижнюю границу. Ниже границы стека находится так называемая желтая зона, состоящая из 16 слов.  [4]

Для определения нарушения границы стека содержимое регистра ограничителя стека сравнивается с адресом стека.  [5]

Нижняя граница стека может изменяться с дискретностью 200s слов и информация о ней записывается в специальный регистр ограничителя стека.  [6]

Граница стека может меняться с шагом 4008 или 200s, и информация о ней записывается в специальный регистр SL - ограничитель стека ( адрес 777774), доступный только процессору. Для определения нарушения стека содержимое регистра ( разряды 15 - 08) сравнивается с адресом стека.  [7]

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

9 Схематическое изображение стека с использованием SL. [9]

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

При необходимости расположить стек не в начальной, а в произвольной области памяти возможно распространение стека на другую зону памяти, в которой расположены программы. Избежать этого в УВК СМ-4 позволяет аппаратный ограничитель стека, который устанавливает программным путем нижнюю границу стека. При нарушении этой границы происходит внутреннее прерывание.  [11]

Чтобы при автоматической загрузке объем стека не превышал отведенного ему участка ОЗУ и не смог наложиться на участок программы, вводится ограничитель стека.  [12]

Другим аппаратным средством УВК СМ-4 является диспетчер памяти, который служит для увеличения до 124К слов объема используемого ОЗУ. Шестнадцатиразрядный формат слова не позволяет адресовать память объемом свыше 32К слов. Для выполнения нескольких задач необходима управляющая программа, которая распределяет память между задачами и выполняет диспетчерские функции по передаче управления той или другой задачи. Поэтому в УВК СМ-4 предусмотрены два режима работы: пользовательский и системный. Режим, в котором в текущий момент находится процессор, определяется разрядами 14 и 15 ССП. При смене режима может возникнуть необходимость в обмене информацией между текущей программой и программой, которая выполнялась до смены режима. Такой обмен может осуществляться через область стековой памяти. В УВК СМ-4 имеются два аппаратных указателя стека. Один из них работает в системном режиме, а другой - в пользовательском. Во время выполнения программы выбирается один из указателей в зависимости от текущего режима. Таким образом, одновременно существуют две области стека: системная и одна из пользовательских. Для предотвращения пересечения этих областей может служить ограничитель стека.  [13]



Страницы:      1