Диалоговое меню
Просмотр таблиц
Дополнительный сервис
Вызов Отладчика
Загрузка прикладных программ

Отладчик предназначен для тестирования прикладных программ СУ на Рабочих Станциях. Отладчик находится в каталоге "/prg" и имеет имя "ad".

Отладчик выполняет основные функции Диалоговой Программы СУ - выбор объекта управления и взаимодействие с прикладными задачами. Но из-за своей специфики имеет некоторые особенности и дополнительные свойства:

Работа ведется в текстовом режиме экрана, что позволяет использовать в прикладной программе любые операторы ввода, вывода (printf, fprintf, gets и др.) для отладки алгоритма.
Вывод диалогового меню СУ сопровождается информацией, позволяющей проверить корректность меню.
Имеется возможность просматривать содержимое необходимых таблиц, а также получить описание любой таблицы ССУДА.
Пункты диалогового меню СУ, в которых ведется работа с прикладной задачей, включают дополнительный сервис, предназначенный для детального
исследования задачи.
Имеется несколько режимов работы, отличающихся выводом комментариев и вспомогательной информации при взаимодействии с прикладной задачей.
Отладчик может загружать прикладные программы как из текущего каталога, так и их стандартного каталога "/prg".
При работе с Отладчиком ведется контроль корректности работы пользователя с СУ.

Работа с Отладчиком 

Работа с Отладчиком - интерактивная, ведется в текстовом режиме экрана дисплея с помощью вводимых с клавиатуры одно-символьных команд. Командную строку можно вводить в любом регистре, пробелы игнорируются. Некоторые команды имеют параметр.

Часто используемые команды выбора следующего пункта в меню и выбора страницы в таблице имеют упрощенную форму - допускается ввод только параметра, т.е. только номера пункта меню или номера страницы в таблице.

Работа с таблицей прикладных данных имеет дополнительные команды.

Существует команда помощи двух уровней - показать список допустимых команд и вывести краткое описание указанной команды.

Общие команды:
 
Q - закончить работу с Отладчиком;
 
T - перейти в начало меню;
 
B - перейти в предыдущее меню;
 
H - смотреть список команд, допустимых в данном месте меню;
 
H команда - смотреть краткое описание команды Отладчика;
 
. - повторить вывод на экран;
 
C - продолжить длинный вывод на экран;
 
Z команда UNIX - выполнить команду операционной системы.
Команды при работе с меню:
 
S число - выбрать номер пункта в меню; допускается упрощенная форма
   
число - упрощенная форма команды выбора номера пункта в меню;
 
V число - смотреть структуру данных указанного пункта диалогового меню СУ.
Команды при работе с таблицей прикладных данных:
 
S число - выбрать номер страницы таблицы;
   
число - упрощенная форма команды выбора номера страницы таблицы;
 
V число - смотреть интерфейсные семафоры, при этом
   
если число=0, то MAIN- и всех PASSPORT-таблиц;
   
если число>0, то MAIN- и указанной PASSPORT-таблицы;
     
названия таблиц,
     
номер плоскости,
     
номер строки,
     
значения семафоров;
 
I число - смотреть информацию о таблицах, содержащих значения физических и технологических данных, при этом
   
item3
если число=0, то для всех параметров;
   
item3
если число>0, то для параметра с указанным номером;
   
item3
для каждого параметра выводится:
     
название параметра,
     
название таблицы,
     
номер столбца со значениями параметра,
     
тип элемента столбца в терминах БД ССУДА,
     
длина элемента столбца в байтах,
     
число строк таблицы,
     
длина столбца в байтах,
     
число планов таблицы;
 
D - выбор прикладных данных: физические либо технологические в
указанной плоскости;
 
M строка1-строка2,столбец1-столбец2,значение - модифицировать данные в таблице; допускается неполное задание параметров:
   
M строка1-строка2,столбец,значение
   
M строка,столбец1-столбец2,значение
   
M строка,столбец,значение
 
P - выполнить команду "execute";
 
G номер - получить данные из режима с указанным номером.

Диалоговое меню 

Диалоговое меню состоит из меню Отладчика и меню СУ.

Меню СУ начинается с пункта Menus и заканчивается в пунктах загрузки прикладной задачи.

Пункты меню СУ сопровождаются информацией, которая содержит:

ненулевой номер строки в таблице "U70_DANGER_TREE";
минимально допустимый приоритет пользователя;
тип следующего пункта меню - меню, задача или пусто, имеющих обозначение next:Menu, next:Task или next:Empty;
номер плоскости для следующего пункта:
 
если следующий пункт - меню, то номер плоскости таблицы "U70_MENUS";
 
если следующий пункт - задача, то номер плоскости таблицы  "U70_APPLICATIONS".

Просмотр таблиц

Просмотр содержимого таблиц описания прикладных данных и некоторых системных таблиц возможен двумя способами:

Выбрать пункт меню Отладчика Tables/ и затем указать требуемую таблицу:
 
любую MAIN-таблицу физических или технологических данных;
 
любую PASSPORT-таблицу физических или технологических данных;
 
таблицу "U70_STATUS_TEXT" символьных значений статусов;
 
таблицу "U70_COMMENT_TEXT" текстовых комментариев;
 
таблицу "U70_DANGER_TREE" опасных вершин диалогового меню СУ.
Выбрать пункт меню отладчика Menus и использовать команду V для просмотра структур данных:
 
в пунктах диалогового меню СУ:
   
описание меню (таблица "U70_MENUS");
 
в пунктах меню Отладчика Application task description:
   
описание прикладных задач (таблица "U70_APPLICATIONS");
   
списки прикладных данных для вывода (MAIN-таблицы физических и технологических данных);
   
описание прикладных данных (PASSPORT-таблицы физических и технологических данных).

Описание любой таблицы ССУДА можно получить в ветви меню Отладчика Tables, пункт Description of any table. После ввода имени таблицы на экран выводится следующая информация:

  число плоскостей,
  число строк,
  число столбцов,
  длина одной строки в байтах,
  тип таблицы,
  состояние таблицы.

Дополнительный сервис 

Пункты меню СУ, в которых начинается работа с прикладной задачей, содержат следующие возможности:

1. Load application task - загрузка прикладной задачи, т.е. загрузка прикладных данных, прикладной программы или пакета прикладных программ:
  1. Input and save extra parameters and load task - запрос для каждой прикладной программы пакета:
   
ввести дополнительные параметры;
   
отказаться от загрузки этой прикладной программы пакета;
   
оставить условия загрузки без изменений.
Информация о загрузке спасается в файл ad.par в текущей директории, и согласно ей загружается прикладная программа или пакет программ.
  2. Input and save new parameters and load task - запрос для каждой прикладной программы пакета:
   
ввести новые параметры;
   
отказаться от загрузки этой прикладной программы пакета;
   
оставить условия загрузки без изменений.
Информация о загрузке спасается в файл ad.par в текущей директории, и согласно ей загружается прикладная программа или пакет программ.
  3. Load task for default - загрузить программу или программы пакета с параметрами, указанными в описании прикладной задачи.
  4. Load task for saving parameters - загрузить программу или программы пакета с условиями, указанными ранее и спасенными в файл ad.par.
2. View application data - просмотр прикладных данных, прикладные программы не загружаются:
  1. Physical data - физические параметры;
  2. Technological data - технологические параметры.
  3. Default data - физические параметры, если они не описаны, тогда технологические параметры. файл ad.par.
3. View info about data tables - вывод информации о таблицах данных, аналог команды I:
  1. Physical data - с физическими параметрами;
  2. Technological data - с технологическими параметрами.
4. View interfacing semaphores - просмотр значений интерфейсных семафоров, аналог команды V:
  1. MAIN-table and physical PASSPORT-tables - в главной MAIN-таблице и во всех PASSPORT-таблицах физических данных;
  2. MAIN-table and technological PASSPORT-tables - в главной MAIN-таблице и во всех PASSPORT-таблицах технологических данных;
  3. MAIN-table - в главной MAIN-таблице.
5. Clear interfacing semaphores - обнулить интерфейсные семафоры:
  1. MAIN-tables and physical PASSPORT-tables - во всех MAIN-таблицах и во всех PASSPORT-таблицах физических данных;
  2. MAIN-tables and technological PASSPORT-tables - во всех MAIN-таблицах и во всех PASSPORT-таблицах технологических данных;
  3. MAIN-tables - во всех MAIN-таблицах.
6. Stop application task - удалить из памяти прикладные программы:
  1. Write stopping semaphore to MAIN-table - писать в главную MAIN-таблицу семафор "конец работы";
  2. Look for memory and kill tasks - проверить наличие в памяти загруженных Отладчиком прикладных программ и удалить по требованию.
7. Application task description - смотреть все структуры данных описания прикладной задачи.

Вызов Отладчика

Отладчик может быть вызван из любого каталога, кроме каталога "/prg".

Отладчик может работать в нескольких режимах, отличающихся выводом вспомогательной информации. Режим задается с помощью параметра при вызове Отладчика:

Обычная загрузка:
 
/prg/ad
Сообщения и комментарии Отладчика сопровождать названием и идентификатором его процесса (PID). Это удобно использовать для отличия выводов на экран, которые делают Отладчик и прикладные программы:
 
/prg/ad d
Выводить комментарии о загрузке Отладчиком прикладных программ и работе Отладчика с интерфейсными семафорами:
 
/prg/ad a
 
/prg/ad a d
Выводить комментарии о работе Отладчика с таблицами БД ССУДА:
 
/prg/ad t
 
/prg/ad t d
Выводить все комментарии Отладчика:
 
/prg/ad a t
 
/prg/ad a t d

Загрузка прикладных программ 

Отладчик предназначен для работы с прикладными программами, которые не готовы для работы в СУ. Поэтому способ загрузки программ отличается от принятого в СУ и зависит от типа пользователя, определяемого по паролю, вводимому при вызове Отладчика.

Обычный пользователь СУ:
 
для загрузки ПП используется программа-Загрузчик.
Программист-разработчик:
 
Если имя программы начинается с символов "prg_" (стандартная ПП СУ), то для загрузки этой программы используется программа-Загрузчик;
 
Иначе Отладчик сам загружает эту программу из текущего каталога.

Отладчик является клиентом Диалогового Сервера, поэтому корректность работы пользователя в СУ гарантируется при любом способе загрузки ПП.

Отладчик контролирует работу загруженных им  ПП. Поэтому реакция на команду, введенную пользователем с клавиатуры, может иметь небольшую задержку (1 секунда).