Ну это который за диск отвечает, 176674 и 176676. Железка чисто для УКНЦ, поэтому и программа тоже.
Вид для печати
Ну это который за диск отвечает, 176674 и 176676. Железка чисто для УКНЦ, поэтому и программа тоже.
А разве может быть более чем одна foreground программа?
Может быть одна background программа (в данном случае она и выполняет команду), может быть foreground (это уже вторая программа). Еще может быть 6 системных программ разного приоритета ниже fg, выше bg (бит наличия foreground для них также активен), но в случае с FB монитором (единственный многозадачный работающий на УК-НЦ) такая конфигурация почти бесполезна так как слишком много памяти потратится на поддержку всего этого. Но две задачи FB+BG - вполне нормальная конфигурация.
У меня просто утилита командной строки, думал она всегда foreground. В любом случае сначала нужно отладить основную функцию, а потом уже навешивать проверки, я считаю.
А есть какой-нибудь способ заблокировать переключение задач, запретить прерывание от таймера, например?
В RT-11 можно воспользоваться макрокомандой .MTPS со значением 340 чтобы поднять приоритет процессора и тем самым запретить все прерывания (и соответственно любые переключения). В первом приближении тоже вариант, хотя в теории возможны ситуации с непредсказуемым результатом. При этом следует помнить, что почти все системные вызовы понизят приоритет процессора на время выполнения вызова.
В целом же RT-11 как правило все-таки используется как однозадачная система, да и в многозадачном режиме обычно не все так страшно. Так, что заморачиваться или нет - вопрос косметики :)
Можно добавить в вызов .GTLIN вывод промпта при ожидании ввода и сделать промпт типа: "Введите имя образа для подключения >"
Код:.MCALL .GTLIN,.PRINT,.EXIT
START: .GTLIN #BUFF,#PROMPT
.PRINT #BUFF
.EXIT
PROMPT:.ASCII <016>/Введите имя образа для подключения > /<017><200>
BUFF: .BLKB 120.
.END START
;
А можно как-нибудь вместе с SAV файлом получать листинг с кодами? Добавлял .List в начало - не помогает.