Есть такая фича, "yellow stack exception" называется, предупреждает что стек близок к переполнению. Судя по реверсу - она реально в 1801ВМ3 1988 года есть.
Вид для печати
В наименее продвинутых - нет вообще, в продвинутых - тупо ниже 400 (ЕМНИП) - прерывание, в более продвинутых (35, 40, 45, 50, 55, 60, 70, 73, 83, 84, 93, 94) - два - yellow stack и red stack
- - - Добавлено - - -
Я тогда не преследовал цель - проверить работу границы стека, поэтому точные результаты не помню, но вроде как нет. Что бы сказать точнее - надо поставить эксперимент.
- - - Добавлено - - -
Да, ещё нюанс. Этот механизм, если он есть, защищает также psw и (если на процессоре они есть, типа J11) системные регистра в верхней (примерно - от 17777526 и выше) памяти
Да, точно. Мой любимый приём очистки памяти с Э-60 прекрасно работает на ВМ1 и ВМ2, и валится на ВМ3. Заносим в R6 адрес за последним словом ОЗУ, т.е. 160000, заносим по нулевому адресу код 4747 т.е. JSR R7,-(R7) и запускаем машинку с нулевого адреса. Стек опускается на двоечку (157776), нем запоминается адрес команды JSR, т.е. ноль и происходит переход опять же по нулевому адресу. Когда указатель стека съедет до нуля, команда 4747 тоже будет очищена, следующее исполнение этого нуля вызовет останов машинки. Всё. Вся память содержит только нули, R7 (PC) содержит двойку, R6 (SP) - ноль.
А на ВМ3 оно слетает при R6 = 0400, по какому трапу, увы, не помню. Trap to 4?