PDPT3A на УКНЦ.
PDPT3A на УКНЦ.
Если ты имеешь в виду, что RTT (которая устанавливает T-бит) передает управление на RTI/RTT которая его очищает, то да. Аналогично - если это RTI/RTT прерывания которое произошло перед T-бит трапом. Если же речь про сам хандлер Т-бита то нет - если он очистит, то это насовсем.
У 11/80 Т-трап после второго RTT не возникает.Код:102 000350 012746 000000 Mov #0, -(SP)
103 000354 012746 000374' Mov #LLL2a,-(SP)
104
105 000360 012746 000020 Mov #20, -(SP)
106 000364 012746 000372' Mov #LLL2, -(SP)
107 000370 000006 RTT
108 000372 LLL2:
109 000372 000006 RTT
110 000374 LLL2a:
111 000374 Nop
112 000376 Nop
Здесь ВМ1 и ВМ2 ведут себя принципиально иначе.
Все-таки предлагаю тестировать вчистую без системы. А также не надеяться, что вывод в буфер быстрый. DEC советует не больше 10 чтоли инструкций выполнять на интеррупт лежеле, а дальше - форк :)
Из системных вызовов я выполняю только EMT 350.
Обработчики всех прерываний в начале программы переключаются на внутренние.
...
Тест PDP-11 Interrupts Test #4 ищет ответ на вопрос, что случится, если выполнить подряд следующие команды:
На ДВК-1 результат такой:Код:BiS #100, @#TTPS
BiC #100, @#TTPS
Для продолжения работы программы после вылета в пульт - на ДВК нужно нажать <P>.Код:.RU PDPT4
PDP-11 Interrupts Test #4
BIS #100,@#TTPS
BIC #100,@#TTPS
001130
@M000011
@P
Program completed.
Команда пульта <M> докладывает, что произошло прерывание зависания при приёме вектора прерывания.
Код:.RU PDPT4
PDP-11 Interrupts Test #4
BIS #100,@#TTPS
BIC #100,@#TTPS
Program completed.
.D 10000=5037,177546,137,1000
.ST 10000
PDP-11 Interrupts Test #4
BIS #100,@#TTPS
BIC #100,@#TTPS
Program completed.
.
В E11 для разнообразия.
Это только первый этап - дальше интереснее.
Например, мало кто знает, что если при обработке прерывания происходит TrapTo4 из-за плохого стека, то до запроса вектора прерывания дело не доходит, а значит и реакция процессора будет другой.
Если же стек при этом указывает на что-то типа 0160004, то программа даже в пульт не вылетит.
Нас же в первую очередь интересует, как такая последовательность команд дружит с битом Т и командой RTT :)
Это проверяет следующая модификация теста: PDP-11 Interrupts Test #4a.
Похоже, что процессор 11/80 не испытывает проблем при снятии IRQ до приёма вектора.