Домашняя страница Поиск Контакты ICN | |
E-Doku Информация Справка Обратная связь | |
Команда AMO DISPS служит для управления доступом к резидентному заданию Displayer в главной памяти процессора SWU. Это задание находится в одной подсистеме с заданием трассировки сообщений.
Инструментальная программа отображения содержимого памяти Memory Displayer позволяет системным специалистам считывать и изменять различные предварительно заданные и/или указанные участки памяти служебного терминала.
Команда AMO DISPS управляет поддержанием связи с этим терминалом, поэтому без нее Displayer не в состоянии выполнять свою задачу. Именно АМО используется для отображения содержимого памяти, считанного утилитой Displayer на служебном терминале, с которого и запускается само задание отображения памяти.
Displayer - это онлайновая инструментальная программа тестирования, которая может применяться для интеграции компонентов и проверки системы как техническими специалистами на местах, так и клиентами. Displayer совместим со всем процессорами (базовыми и групповыми), на которые может загружаться система администрирования и технического обслуживания.
Функции команды AMO DISPS приведены ниже.
Вывод на дисплей содержимого памяти в виде шестнадцатеричного дампа при выполнении как операций высокого уровня (например, для всех видов памяти обработки вызовов, обеспечивающих установленное соединение), так и операций логического уровня (например, для всех видов памяти, указанных в АМО по имени, адресу и размерам матрицы). |
Создание пользовательских логических идентификаторов памяти для любого заданного адреса в памяти, в том числе и в виде таблицы. |
Определение адресов и размеров матриц для наиболее важных видов памяти базы данных SWU. |
Дополнительное хранение адресов и размеров матриц для других видов памяти, задаваемых пользователем либо в рабочей области АМО (только при работе АМО), либо в области хранения резидентного задания Displayer на каждом процессоре (обеспечивается защита от стирания при перезапуске), либо в области хранения на жестком диске (обеспечивается защита от стирания при перезагрузке). |
Изменение содержимого памяти при выполнении операций логического уровня (содержимое участка памяти, имя, адрес и размеры матриц которого должны быть указаны в АМО пользователем). |
Отображение и изменение содержимого памяти при выполнении операций логического уровня (базовый образ памяти, для которой в АМО заданы имя, смещение адреса и размеры матрицы). |
Переключение между процессорными блоками, память которых нужно отобразить при операции логического уровня. |
Ограничения Memory Displayer
Displayer не способен выполнять функции отладчика и не предназначен для этого. Данную инструментальную программу следует рассматривать в качестве дополнения к средствам выявления неполадок и диагностики возникающих проблем.
Примечание
Функции команды AMO DISPS приведены ниже.
|
: | запуск AMO DISPS. | |||
|
: | запрос на ввод данных в диалоговом режиме. |
Обзор процедуры
Код команды | Параметр | |
EXEC-DISPS |
PROCID=<параметр>; |
Примечания
a) | AMO DISPS управляет программой Displayer, установленной на указанном процессоре, а сама выполняется в ADS. |
б) | Данная команда AMO в течение нескольких минут остается в диалоговом режиме, ожидая ввода. Если ввод не произведен, выполнение команды прекращается автоматически. |
Пример
Ввод:
<EXEC-DISPS:BPA; |
Вывод:
H500: AMO DISPS STARTED
AMO DISPS VARIANT/VERSION G1/002 OF 1994-09-29
DISPLAYER VARIANT/VERSION G1/007 OF 1994-09-29
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*END; |
* = запрос на ввод команды. |
Операция INPUT-DISPS используется только для доступа к функции записи-считывания WRITE-READ; выполнить ее с терминала администрирования и технического обслуживания (АМТ) пользователь не может. На этом терминале отображается только приведенная ниже текстовая строка, предлагающая пользователю произвести ввод (следующая после текста звездочка указывает на готовность системы принять ввод).
DISPLAYER-INPUT IN <имя процессора> PLEASE:
*
Данный текст указывает на то, что предыдущая команда АМО успешно выполнена.
Допустимые при этом команды перечислены ниже.
Создав определители памяти, можно присвоить ее участкам смысловые названия, что значительно упрощает их отображение и модификацию.
Как правило, воспользоваться определителями памяти можно только тогда, когда они хранятся в рабочей области АМО, которая после подачи команды AMO-DISPS всегда очищается. Чтобы сохранить созданные определители, их нужно скопировать в другую область хранения. При создании и сохранении таких определителей хранилище более высокого уровня всегда дополняется хранилищем низшего уровня (другими словами, если задано AREA= HD, создаваемый определитель заносится также в область хранения резидентного задания Displayer и в рабочую область АМО).
В области резидентных заданий всегда находится неизменная таблица компоновки элементов CC и GP. Доступ к этим определителям открывает команда DEF,DBL.
Определители памяти всегда создаются для того процессора, Displayer которого в данный момент контролируется с помощью данной команды АМО. При этом все остальные одноименные определители памяти, созданные для других процессоров и хранящиеся в рабочей области АМО или на жестком диске, заменяются на новые.
Если в названии определителей памяти имеются пробелы, они обязательно удаляются. Таким образом, названия "DB_D_ CPB_TBL" и "DB_D_CPB_TBL" воспринимаются системой как одно и то же. Правда, если название содержит только пробелы, один из них остается. Звездочка в начале или конце вводимого названия определителя памяти играет роль "символа замещения" и используется в тех случаях, когда не нужно вводить полного уникального имени (например, для команды DEF). С учетом этого, команда "LST,DEF,DB_D_DH*" выведет на дисплей содержимое как памяти DB_D_DH_DEV_TBL, так и памяти DB_D_DH_LINE_TBL.
Адрес памяти для команд LST, SET, и DEF имеет один и тот же формат (ADR=<селектор>-<смещение>).
a) | Определители физической памяти. В качестве таких определителей используются простые предварительно заданные имена (символьные адреса) для адресов физической памяти. |
б) | Определители логической памяти. Эти определители описывают размеры матрицы. В них указывается начальный адрес таблицы, длина элементов и диапазон индексов. |
в) | Определители памяти высокого уровня. Эти определители обрабатываются программой Displayer и используются совместно с DBAR (database access routines - подпрограммы обращения к базе данных); в некоторых случаях при этом задействуются и модули компоновки данных. |
a) | Модуль компоновки данных. В каждой CC и LTG имеется соответствующий модуль компоновки данных, который обеспечивает доступ к предварительно заданным участкам памяти (областям хранения) базы данных коммутационного устройства SWU. Для каждого из таких участков памяти указывается информация, приведенная ниже. |
1. | Название участка памяти. |
2. | Логические данные для описания адреса в памяти. |
3. | Сам адрес в памяти. |
4. | Диапазон индексов. |
5. | Длина элементарного режима. |
б) | Рабочая область AMO. В рабочей области AMO хранятся все данные, необходимые для обработки содержимого памяти в формате шестнадцатеричных файлов. Сразу после запуска АМО буфер этой рабочей области пуст. Всего в него можно поместить до 400 определителей памяти. При обработке содержимого памяти в формате шестнадцатеричных файлов достаточно данных, содержащихся в рабочей области АМО. При необходимости пользователь может копировать их сюда из других областей хранения. Для заполнения буфера рабочей области AMO можно воспользоваться способами, которые приведены ниже. |
1. | Создать определители памяти. |
2. | Копировать определители памяти: |
a) | из модуля компоновки данных того процессора, с которым ведется работа; |
б) | из области хранения резидентного задания Displayer главной памяти процессора, с которым ведется работа в данный момент; |
в) | из области хранения жесткого диска. |
в) | Область резидентного задания. Область резидентного задания создается в главной памяти каждого процессора, на котором загружена инструментальная программа Displayer. Она обеспечивает защищенное от перезапуска системы хранение определителей памяти. Всего в эту область можно записать до 50 таких определителей. Для заполнения буфера области резидентного задания можно воспользоваться способами, которые приведены ниже. |
1. | Создать определители памяти. |
2. | Копировать определители памяти: |
a) | из рабочей области АМО; |
б) | из области хранения на жестком диске. |
г) | Резервная область жесткого диска. Пользователь может выделить на жестком диске файл для использования в качестве области хранения определителей памяти, которые должны сохраняться и в случае перезапуска системы. Для заполнения области хранения на жестком диске можно воспользоваться способами, которые приведены ниже. |
1. | Создать определители памяти. |
2. | Копировать определители памяти: |
a) | из рабочей области АМО; |
б) | из области хранения резидентного задания Displayer в главной памяти процессора, с которым в данный момент ведется работа. |
Пользователи могут создавать определители как физической, так и логической памяти. Главное различие между ними состоит в том, что в определителях логической памяти кроме адреса хранения должна указываться также структура матрицы.
Определители физической памяти используются в качестве описательных символов для адресов хранения и предназначены для многократного использования. Им назначается структура фиктивной матрицы Dummy Array (диапазон индексов от 0 до 0, длина элемента 65535 байт), а сами такие определители вводятся в область администрирования AMO.
Определители логической памяти используются при обращении к области хранения как к матрице, а также для доступа к отдельным элементам.
Созданный адрес логической памяти можно сохранить либо в рабочей области АМО (которая доступна только при работе АМО), либо в области хранения резидентного задания, либо в области хранения жесткого диска, тогда как созданные адреса физической памяти хранятся исключительно в рабочей области АМО.
Синтаксис команды
> Описание адреса с указанием селектора и смещения.
DEF,ADR,название,ADR,селектор-смещение;
> Описание адреса с указанием места хранения.
> Описание структуры матрицы и места хранения.
Примеры
Пользователю нужно создать символ адреса для начального ввода в буфер слежения трассировщика сообщений. В соответствии со структурой данных в буфере слежения, адрес следующей записи может отстоять на четыре байта от данной.
Ввод:
*def,adr,ввод1,adr,3cf0-099c;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*def,adr,ввод2,табл1,ввод1,0,4;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Команда создания определителя логической памяти на основе адресного символа приведена ниже. В данном примере структура матрицы введена в буфер слежения трассировщика сообщений из второго ввода, а для элементов указан диапазон от 1 до 25. Каждый элемент имеет длину 30 байт (что соответствует длине стандартного ввода для сообщений ОС).
Ввод:
*def,logname,ввод2,amo,30,1&&25;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Синтаксис команды
LST,DEF,[название],область;
Название можно вводить частично, задав в начале и/или конце текстовой строки символ звездочки, который система воспринимает как символ замещения. Если название не введено или введено частично, в выводимый на дисплей список включаются все определители памяти.
В качестве областей хранения можно указывать AMO, HD и RES.
Пример
После выполнения действий, описанных в предыдущем примере, пользователь хочет просмотреть все определители памяти, хранящиеся в рабочей области АМО.
Ввод:
*lst,def,,amo;
Вывод:
DEFINITIONS IN AMO DISPS
NAME SEL OFF ELEM_L MIN_I MAX_I PID
ENTRY1 3CF0H 099CH FFFFH 0H 0H BPA
ENTRY2 3CF0H 09BAH 1EH 1H 19H BPA
DISPLAY-INPUT IN BPA PLEASE:
Значения заголовков:
NAME - название описываемой памяти;
SEL - селектор описываемой памяти;
OFF - смещение описываемой памяти;
ELEM_L - длина элемента описываемой памяти;
MIN_I - минимальный индекс описываемой памяти;
MAX_I - максимальный индекс описываемой памяти;
PID - идентификатор процессора описываемой памяти.
Адреса памяти можно копировать из мест их хранения в рабочую область АМО (когда АМО работает), в область хранения резидентного задания Displayer или в область хранения на жестком диске.
Примечание
Если участок памяти содержит несколько блоков данных, при копировании определителей логической памяти из модуля компоновки данных дополнительные блоки памяти помечаются в названии участка памяти символом "#", после которого указывается двузначный номер блока.
Фунции "copy" и "lst,def" предназначены только для тех блоков памяти, которым действительно выделена область в физической памяти. В модулях компоновки данных могут существовать и адреса памяти Flexama без реальных адресов памяти, однако на дисплей пользователя они не выводятся.
Синтаксис команды
> Копирование модуля компоновки данных в рабочую область АМО.
> Общая процедура копирования из одной области хранения в другую.
Примеры
Пользователь намерен скопировать все определители памяти, в названии таблицы которых содержится текст "CP_DEV" "ENT", из модуля компоновки данных базового процессора А в рабочую область АМО.
Ввод:
*copy,dbl,*cp_dev*;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*lst,def,,amo;
Вывод:
DEFINITIONS IN AMO DISPS
NAME SEL OFF ELEM_L MIN_I MAX_I PID
DB_D_CP_DEV_STATE 34A0H DEDAH 1H 0H 7FFH BPA
DB_D_CP_DEV_STATUS 34A0H CEDAH 2H 0H 7FFH BPA
DB_D_CP_DEV_TBL_EXT_ATN 01 0000H 0000H 56H 0H 0H BPA
DB_D_CP_DEV_TBL_EXT_ATND 3490H BF28H 56H 0H C0H BPA
DB_S_CP_DEV_STATUS 34C0H 5170H 2H 0H 7FFH BPA
DB_S_CP_DEV_TBL_APSE_PSM 15A0H 0CC1H 41H 0H 2H BPA
DB_S_CP_DEV_TBL_TMA_VERB 34E8H D89CH 17H 0H 6EH BPA
DB_S_CP_DEV_TYPE 34C0H 4970H 1H 0H 7FFH BPA
DISPLAY-INPUT IN BPA PLEASE:
Пользователь намерен скопировать все определители памяти, которые заканчиваются текстом "STATUS", из рабочей области АМО в область резидентного задания.
Ввод:
*copy,def,*status,amo-res;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*lst,def,,res;
Вывод:
DEFINITIONS DISPLAYER
NAME SEL OFF ELEM_L MIN_I MAX_I PID
CC-LAYOUT-ELEMENT-TABLE 1568H 0792H 2FH 0H C6H BPA
GP-LAYOUT-ELEMENT-TABLE 6960H 043CH 2FH 0H 30H BPA
DB_D_CP_DEV_STATUS 34A0H CEDAH 2H 0H 7FFH BPA
DB_S_CP_DEV_STATUS 34C0H 5170H 2H 0H 7FFH BPA
DISPLAY-INPUT IN BPA PLEASE:
Определители памяти приходится удалять, чтобы освободить пространство хранения в соответствующем месте.
После того, как выполнение команды AMO DISPS прекращено, рабочая область АМО автоматически очищается.
Синтаксис команды
Такой файл используется для хранения определителей памяти, скопированных в область резервирования жесткого диска с помощью команды COPY или DEF.
Применение области резервирования на жестком диске не только гарантирует защиту определителей памяти при перезагрузке, но и позволяет копировать их на съемные носители информации (например, картриджи) для использования на других системах. Такая операция выполняется простым копированием файла.
Синтаксис команды
В системе должен существовать файл с указанным в команде именем.
Если в команде указано, сколько определителей памяти нужно сохранить, АМО исходит из того, что файла для их сохранения на диске еще нет, и пытается создать файл указанного размера. Точно указывать число определителей памяти не обязательно, так как созданный файл затем можно динамически расширять по мере необходимости.
Если число не введено, АМО считает, что такой файл уже существует, находит и открывает его, после чего на дисплей выводится количество содержащихся в этом файле определителей памяти.
Если файл с указанным именем уже открыт для обработки (с помощью команды DUMP или PATCH), открыть второй раз его невозможно. В таких случаях на дисплей выводится сообщение об ошибке F16. Однако пользователям разрешено применять команду FILE для повторного открытия различных файлов с целью их последовательной обработки в одном и том же диалоговом окне Displayer .
Пример
Ввод:
*file,:dbd:els/defsav1;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Указанный файл уже существует. Если бы его не было, на экране появилось бы сообщение об ошибке.
При использовании определителей логической памяти информация на дисплей всегда выводится в байтах. Во всех других случаях пользователь может выбирать между байтами (BYTE), словами (WORD) и двойными словами (словами двойной точности - DWORD).
Синтаксис команды
> Вывод с использованием символа адреса.
> Вывод с использованием прямого адреса.
> Вывод с использованием определителя логической памяти.
Примеры
Ввод:
*copy,dbl,db_d_cp_logical_dev_tbl;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Пользователю нужно отобразить память для логических устройств с номерами LODEN 2 и 5.
Ввод:
*lst,logname,db_d_cp_logical_dev_tbl,2&5;
Вывод:
TABLE: DB_D_CP_LOGICAL_DEV_TBL
INDEX: 0002H ADDRESS: 3E20H:006EH
CONTENTS HEX (ASCII)
0( 0) 0000000000000000 00000082600F0002 ................
10( 16) 0002000000020000 0001A40000000000 ................
20( 32) 0000000000000000 000100F4F40000 ...............
TABLE: DB_D_CP_LOGICAL_DEV_TBL
INDEX: 0005H ADDRESS: 3E20H:00FBH
CONTENTS HEX (ASCII)
0( 0) 0000000000000000 0000009F600F0005 ................
10( 16) 0005000000050000 0001A40000000000 ................
20( 32) 0000000000000000 000100F4F40000 ...............
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*def,adr,sgl_dev2,adr,3e20-007d;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Предполагается, что вызов производится с номера 2101 (LODEN 2) на номер 1204 (LODEN 5), и пользователь хочет убедиться, что справочные индексы в компоненте SINGLE_DEV (FLAG_REFER, FORWRD_LINK, ACTUAL_CPB_IDX, BACKWARD_LINK, BACKGROUND_CPB_IDX) заслуживают доверия.
Ввод:
*lst,adr,sgl_dev2,adr,3e20-007d;
Вывод:
TABLE: SGL_DEV2
ADDRESS: 3E20H:007DH
CONTENTS HEX (ASCII)
0( 0) 0002 0005 0003 0005 0003 ..........
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*lst,da,3e20-10a,word,5;
Вывод:
ADDRESS: 3E20H:010AH
CONTENTS HEX (ASCII)
0( 0) 0002 0002 0003 0002 0003 ..........
DISPLAYER-INPUT IN BPA PLEASE:
Таким образом, справочные индексы доверия заслуживают.
В режиме высокоуровневого доступа пользователь может задавать различные типы (предустановленные в интерфейсе общения человека с машиной) отображения определителей памяти, либо указывать группы соответствующего содержимого памяти.
Если ожидается выбор определенных элементов памяти, его можно произвести с помощью пользовательских терминов (номер станции, номер логического устройства и т.д.).
Технические замечания
Когда для отображения памяти обработки вызовов используются определители памяти высокого уровня, программа DISPLAYER, как правило, всегда отображает содержимое памяти "активного" процессора. Это значит, что при DISPS-соединении с процессором, который находится в "ждущем" режиме, пользователь не может получить доступ к памяти высокого уровня для вывода на дисплей содержимого памяти этого процессора. Адреса памяти "ждущего" и "активного" процессоров идентичны, поэтому для вывода данных можно воспользоваться имеющимися определителями логической памяти. Однако сама функция остается в том процессоре, к которому пользователь подключен в данный момент!
Данные состояния (LST,SW,STA,..?) выводятся в формате слов.
Отображение памяти устройств (DH и CP) для станций с шиной S0 производится не так, как для обычных портов, поскольку для одного порта шины S0 может быть конфигурировано до 8 терминальных устройств. Как правило, положение (= DI) терминального устройства на шине S0 пользователю неизвестно, поэтому данное значение обрабатывается как служебный индикатор SERVICE INDICATOR (значения приводятся в разделе 0.82.9: "Описание параметров", параметр 'DI'). В таких случаях команда DISPS относится к положению (TSI) и участкам памяти ВСЕХ терминальных устройств, которые соответствуют данной услуге. Физическое положение устройства на шине S0 описывает идентификатор TSI (terminal selection identifier - идентификатор выбора терминала). Такой способ приходится применять только в тех случаях, когда пользователь задает адрес канала (CIR) или линии (LN), так как при этом адрес устройства четко не определен. Параметры LODEN, STNO, CRF и DTI позволяют четко описать одно устройство, благодаря чему на дисплей выводится только содержимое памяти, относящейся к этому устройству! Значение LODEN терминального устройства можно определить с помощью команды LST,SW,LODEN,CIR/LN,...., которая отображает также положение (см. колонку DI/TSI).
Для функциональных терминальных устройств шины S0 необходима (помимо фиксированной памяти устройств) дополнительная динамическая память с некоторыми специальными участками динамической адресации по номерам логических устройств LODEN. При выводе на дисплей она помечается как CRI (call reference internal - внутренний указатель вызова). В существующих вызовах сначала задействуется фиксированная память устройств (TSI), а затем, по мере необходимости, - динмиическая выделяемая память устройств (CRI).
При отображении данных маршрута непосредственно с MTS, для LTG можно ввести следующую информацию:
Stage 3000: LTG = 0 для CSN, LTG = 1 - 32 для GSN группы LTG;
Stage 600: LTG = 0 или 1 (указывает MTS на полке CC).
Синтаксис команды
> Вывод для группы интегрального тестирования Integration Test Team.
Вывод загрузочной области связи Boot Communication Area (BCA). |
Вывод области резервирования из загрузочной области связи. |
Вывод данных модуля для PIT. |
Вывод заголовка банка CPB-Pool |
Вывод данных маршрута. |
Вывод данных состояния для DC и PTI. |
> Вывод процесса коммутации
Примеры
Пользователь хочет просмотреть данные модуля TMBC (ИД_модуля: 30H).
Ввод:
*lst,int,bdtyt,30;
Вывод:
TABLE: DB_S_SWU_PER_BG_TYP_TBL
INDEX: 0009H ADDRESS: 50E8H:03AEH
CONTENTS HEX (ASCII)
0( 0) 013000001B3A5044 533A415053502F4C .0...:PDS:APSP/L
10( 16) 54472F4C4731312F 505A47544D424330 TG/LG11/PZGTMBC0
20( 32) 2020202020000120 2020202020202020 ..
30( 48) 2020202020202020 2020202020202020
40( 64) 2020202020202000 5801000000010A00 .X.......
50( 80) 0003 ..
DISPLAYER-INPUT IN BPA PLEASE:
Пользователь хочет вывести на дисплей данные о состоянии DC (device control - управление устройством) и PIT (peripheral initialization task - задание инициализации периферии) вплоть до уровня модуля.
Ввод:
*lst,int,sta,board,1,1,25;
Вывод:
LTG: 1T LTG-A STATUS: 1000H LTG-B STATUS: 1000H
LTU: 1T LTU STATUS: 1000H
SLOT: 025T BOARD-TYPE: 01H BOARD STATUS: 1000H CIRCUITS: 04T
CCT LINE CCT STATUS LINE-CONN
00T 002AH 1000H 04H
01T 002BH 1000H 04H
02T 002CH 1000H 04H
03T 002DH 1000H 04H
DISPLAYER-INPUT IN BPA PLEASE:
Отображение данных маршрута для stage 600, речевой магистрали 1 и временного интервала 2.
Ввод:
*lst,int,path,0,1,2;
Вывод:
A-PORT HWY-NO: 1 TSL-NO: 2
B-PORT HWY-NO: 0 TSL-NO: 11
DISPLAYER-INPUT IN BPA PLEASE:
Пользователь хочет вывести на дисплей состояние всех подблоков станции с номером 3100, доступных для услуги передачи голоса VOICE.
Ввод:
*lst,sw,sta,stno,3100,vce;
Вывод:
LTG: 01H
LINE: 0000H
CIRCUIT STATUS: 8H
AVAILABLE DEVICE (SUBUNIT) STATES
MAIN SU0 : 8H
FGND SU1 : 6008H
SU2 : 8H
CHECK SU3 : 8H
DISPLAYER-INPUT IN BPA PLEASE:
Отображение всех участков памяти устройств, задействованных в соединении шины S0 между устройством SET700 (шина S0 с Cornet-T) и функциональным устройством VOICE после установки соединения (динамическая память для динамического указателя вызова!).
Ввод:
*LST,SW,DCLDC,STNO,3770,VCE;
Вывод:
LINKS OF THE CONCERNED DEVICES (HEXADECIMAL),
FROM THE CURRENT DEVICE ON PER THE FORWARD LODEN:
INDEX: 01D1H ADDRESS: 5158H:F781H
FORWARD LODEN: 8002 48A
BACKWARD LODEN: 8002 48A
ACTUAL CPB INDEX: 2
BACKGROUND CPB INDEX: 2
TABLE: DB_S_CP_DEV_TYPE
INDEX: 048AH ADDRESS: 5158H:FA3AH
CONTENTS HEX (ASCII)
0( 0) 1F .
TABLE: DB_D_CP_DEV_STATE
INDEX: 048AH ADDRESS: 5260H:0ECEH
CONTENTS HEX (ASCII)
0( 0) 4C L
TABLE: DB_D_CP_DEV_STATUS
INDEX: 048AH ADDRESS: 52A8H:F226H
CONTENTS HEX (ASCII)
0( 0) 08C00800 ....
TABLE: DB_D_CP_LOGICAL_DEV_TBL
INDEX: 048AH ADDRESS: 5250H:730AH
CONTENTS HEX (ASCII)
0( 0) 0001010CFFFF0000 FFFF0000F4F4F4F4 ................
10( 16) 0304000000F13802 0000000000000000 ......8.........
. .
. .
B0( 176) F4F4F4F4F4F4F4F4 F4F4F4F4F4F4F4F4 ...............
C0( 192) F4F4 ..
TABLE: DB_S_CP_DEV_TYPE
INDEX: 01D1H ADDRESS: 5158H:F781H <----- physical LODEN of device
CONTENTS HEX (ASCII)
0( 0) 2F /
TABLE: DB_D_CP_DEV_STATE
INDEX: 0002H ADDRESS: 52B0H:0024H <----- dynamic LODEN of device
CONTENTS HEX (ASCII)
0( 0) 43 C
TABLE: DB_D_CP_DEV_STATUS
INDEX: 0002H ADDRESS: 5290H:0B38H
CONTENTS HEX (ASCII)
0( 0) 00000000 ....
TABLE: DB_D_CP_LOGICAL_DEV_TBL
INDEX: 0002H ADDRESS: 5278H:A5D0H
CONTENTS HEX (ASCII)
0( 0) 0001030CFFFF0000 FFFF0000FFFF0000 ................
10( 16) 0300000000000000 0000000000000000 ................
. .
. .
B0( 176) F4F4F4F4F4F4F4F4 F4F4F4F4F4F4F4F4 ...............
C0( 192) F4F4 ..
TABLE: DB_D_CPB_TBL
INDEX: 0002H ADDRESS: 52A0H:06A6H
CONTENTS HEX (ASCII)
0( 0) 0100000100000000 008A040004030707 ................
10( 16) 0000000F0F0F0F0F 0F0F0F0F0F0F0F0F ................
. .
. .
260( 608) 0000000000000000 0000000000000000 ...............
270( 624) 0000000000000000 ..
DISPLAYER-INPUT IN BPA PLEASE:
Пользователь намерен вывести на дисплей список всего свободного оборудования.
Ввод:
*lst,sw,free,all,1;
Вывод:
FREE LINK PATHS : 2H
FREE LINK PATHS : 2DDH
DISPLAYER-INPUT IN BPA PLEASE:
Пользователь хочет вывести на дисплей список всего задействованного оборудования.
Ввод:
*lst,sw,sz,all,1;
Вывод:
SEIZED POOL BUFFERS DH : 1H
SEIZED POOL BUFFERS PP (CMD) : 0H
SEIZED POOL BUFFERS PP (EVT) : 0H
SEIZED POOL BUFFERS CP : 0H
SEIZED B CHANNELS : 0H
SEIZED CALL PROCESSING BUFFERS: 0H
SEIZED DEVICES : DCH
SEIZED LINK PATHS : 0H
SEIZED LINE PATHS : 21H
DISPLAYER-INPUT IN BPA PLEASE:
Чтобы не допустить опечаток, количество вновь вводимых значений должно соответствовать количеству изменяемых участков памяти. Кроме того, длина новых значений должна быть точно такой же, как и для выбранного типа вывода памяти (если выбрана опция BYTE, например, должно быть введено двузначное шестнадцатеричное число).
Синтаксис команды
Количество участков памяти, которые нужно изменить, указывается десятичным числом.
Для ввода новых значений используются шестнадцатеричные числа, которые разделяются дефисами.
Ввод может производиться в форматах BYTE, WORD или DWORD.
> Внесение изменений с использованием символа адреса.
> Внесение изменений с прямым указанием адреса.
> Внесение изменений с использованием определителя логической памяти.
Пример
Пользователю нужно изменить ввод памяти с 12345678 на BADEAFFE. Участок памяти имеет адрес e36f:0f00, длина одного элемента равна 8, а смещение типа устройства относительно начала третьего элемента составляет 2.
Ввод:
*def,adr,корректируемый_элемент,adr,e36f-0f10;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*lst,adr,корректируемый_элемент,byte,8;
Вывод:
TABLE: KORR_ELEM
ADDRESS: 3E20H:00FBH
CONTENTS HEX (ASCII)
0( 0) 0000123456780000 ...4Vx..
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*set,adr,корректируемый_элемент,byte,6,00-00-ba-de-af-fe;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*lst,adr,корректируемый_элемент,byte,8;
Вывод:
TABLE: KORR_ELEM
ADDRESS: 3E20H:00FBH
CONTENTS HEX (ASCII)
0( 0) 0000BADEAFFE0000 ........
DISPLAYER-INPUT IN BPA PLEASE:
Перед тем, как приступить к обработке файла с помощью команды DUMP или PATCH, его нужно выбрать, воспользовавшись данной командой.
Если файл с таким же именем уже назначен в качестве области резервирования жесткого диска, открыть его еще раз невозможно. В таких случаях программа отображения Displayer AMO выводит сообщение об ошибке F16. Тем не менее, пользователю разрешается применять команду Е для повторного открытия различных файлов с целью их последовательной обработки в ходе одного диалогового сеанса работы с Displayer.
Синтаксис команды
Указанный в команде файл должен уже существовать.
Перед тем, как просматривать содержимое файла, его нужно выбрать с помощью команды Е.
Адреса, внесенные в определители памяти, интерпретируются как целые числа длиной 4 байта, которые указывают на сдвиг подлежащих выводу данных относительно начала файла. Это же относится и к адресам вывода при использовании команды LST.
При использовании определителей логической памяти информация отображается в байтах, во всех же других случаях пользователь может выбирать между байтами (BYTE), словами (WORD) или двойными (двойной точности) словами (DWORD).
Синтаксис команды
> Вывод с использованием символа адреса.
> Вывод с использованием прямого адреса (смещения/сдвига указателя).
> Вывод с использованием определителя логической памяти.
Пример
В данном примере предполагается, что определители памяти хранятся на жестком диске в файле defsav1, а пользователь хочет вывести на дисплей листинг первых двух определителей.
Ввод:
*e,:dbdb:els/defsav1;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*def,adr,entry_tbl,adr,0-0;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*def,logname,entry_tbl,amo,37,1&&2;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*dump,logname,entry_tbl,1&&2;
Вывод:
TABLE: ENTRY_TBL
INDEX: 0000H ADDRESS: 0000H:0000H
CONTENTS HEX (ASCII)
0( 0) 44425F445F43505F 4445565F53544154 DB_D_CP_DEV_STAT
10( 16) 4520202020202020 2020DADEA0340100 E ...4..
20( 32) 0000FF0700 .....
INDEX: 0001H ADDRESS: 0000H:0025H
CONTENTS HEX (ASCII)
0( 0) 44425F445F43505F 4445565F53544154 DB_S_CP_DEV_STAT
10( 16) 5553202020202020 20207051C0340200 US pQ.4..
20( 32) 0000FF0700 .....
DISPLAYER INPUT IN BPA PLEASE:
Данная функция не предназначена для замены функции AMO PATCH. При внесении изменений в область памяти на жестком диске программа отображения Displayer не использует адрес памяти, так как для обработки содержимого местоположение памяти на жестком диске значения не имеет.
Перед тем, как вносить изменения в содержимое файла, этот файл нужно выбрать с помощью команды Е.
Чтобы не допустить опечаток, количество вновь вводимых значений должно соответствовать количеству изменяемых участков памяти. Кроме того, длина новых значений должна быть точно такой, как и для выбранного типа вывода памяти (если выбрана опция BYTE, например, должно быть введено двузначное шестнадцатеричное число).
Синтаксис команды
Количество участков памяти, в которые нужно внести изменения, указывается десятичным числом, а новые значения вводятся в шестнадцатеричном коде и разделяются дефисом.
> Внесение изменений с помощью символа адреса.
> Внесение изменений с указанием прямого адреса.
> Внесение изменений с помощью определителя логической памяти.
Пример
На основании дампа памяти из приведенного выше примера пользователь решает откорректировать адрес второго участка памяти, заменив 34C0:5170 на 34A0:CEDA.
Ввод:
*patch,logname,entry_tbl,dword,1,34a0ceda,1,1a;
Вывод:
DISPLAYER-INPUT IN BPA PLEASE:
Ввод:
*dump,logname,entry_tbl,1&&2;
Вывод:
TABLE: ENTRY_TBL
INDEX: 0000H ADDRESS: 0000H:0000H
CONTENTS HEX (ASCII)
0( 0) 44425F445F43505F 4445565F53544154 DB_D_CP_DEV_STAT
10( 16) 4520202020202020 2020DADEA0340100 E ...4..
20( 32) 0000FF0700 .....
INDEX: 0001H ADDRESS: 0000H:0025H
CONTENTS HEX (ASCII)
0( 0) 44425F445F43505F 4445565F53544154 DB_S_CP_DEV_STAT
10( 16) 5553202020202020 2020DACEA0340200 US pQ.4..
20( 32) 0000FF0700 .....
DISPLAYER INPUT IN BPA PLEASE:
Коррекция успешно проведена..
Примечания
a) | Когда пользователь переключается на Displayer другого процессора и указывает статус этого процессора (например, активный базовый процессор), уже установленное соединение сохраняется даже после того, как система Hicom переключит процессоры. Другими словами, если было установлено соединение с базовым процессором В (который был активным на момент переключения АМО), то пользователь остается подключенным к этому процессору и после того, как тот станет резервным. Чтобы узнать, к какому процессору он подключен в данный момент, пользователь может ввести сообщение с запросом. |
б) | По умолчанию данная команда АМО выводит цифры в шестнадцатеричном коде (в этом случае они помечаются буквой H), если задан вывод в десятичном формате, используется суффикс T. |
в) | Если не указано иного, после запуска АМО на дисплей всегда выводится шестнадцатеричный дамп памяти вместе с соответствующими символами ASCII (аргумент CHAR) без вставки пустых строк (аргумент DIST). |
г) | Определители памяти всегда создаются для того процессора, Displayer которого АМО контролирует в данный момент. Все определители памяти для других процессоров, имеющие такое же название и расположенные в рабочей области АМО или в области хранения на жестком диске, удаляются, а их место занимает вновь созданный. |
д | При каждом запуске АМО и каждом переключении процессора производится повторная инициализация адресов и диапазонов индексов таблицы компоновки элементов CC и GP. После этого они остаются неизменными на протяжении всего времени подключения к данному процессору. |
е) | Если не указано иного, таблицы компоновки элементов модулей компоновки данных (модуля компоновки данных CC и модуля компоновки данных LTG) сохраняются как определители логической памяти в области резидентных заданий процессора, с которым ведется работа. Благодаря этому пользователь получает возможность вводить новые участки памяти Flexama в таблицы компоновки элементов, которые после этого можно копировать в соответствующий модуль компоновки данных, как определители памяти для следующего запуска АМО или переключения процессора. Эти два определителя памяти всегда занимают первые два места в области резидентного хранения, и изменить их невозможно. |
ж) | Когда производится копирование определителей
логической памяти из модуля компоновки данных и участки памяти содержат
более одного блока данных, дополнительные блоки данных помечаются символом
"#" , за которым следует двузначный номер блока, и такая группа символов
присоединяется к названию участка памяти. Функции "copy" и "lst,def" предназначены для работы только с теми блоками памяти, которым действительно назначена физическая область памяти. В модуле данных могут существовать и участки памяти Flexama без реальных адресов, однако на дисплей пользователя они не выводятся. |
з) | Адрес для определителя памяти (DEF,ADR,..?) выделяется только в рабочей области АМО, после чего его можно перенести в другие области с помощью команд DEF (DEF,LOGNAME,..?) или COPY (COPY,DEF,...?). |
и) | При создании и сохранении определителей памяти область хранения высшего уровня всегда содержит область хранения низшего уровня (т.е., если задано AREA=HD, определители памяти могут также вводиться в область хранения резидентного задания Displayer и в рабочую область АМО). |
к) | После ввода имени файла, который будет использоваться для хранения определителей памяти на жестком диске, сам этот файл не создается до тех пор, пока пользователь не укажет примерное число определителей памяти, которое планируется включить в него (в противном случае система сочла бы новый файл созданным и открыла его). В дальнейшем файл по мере необходимости расширяется (динамически). |
л) |
Если в названии определителей памяти имеются пробелы, они обязательно удаляются. Таким образом, названия "DB_D_ CPB_TBL" и "DB_D_CPB_TBL" воспринимаются системой как одно и то же. Правда, если название содержит только пробелы, один из них остается. |
м) | Звездочка в начале или конце вводимого названия определителя памяти играет роль "символа замещения" и используется в тех случаях, когда не нужно вводить полного уникального имени (например, для команды DEF). С учетом этого, команда "LST,DEF,DB_D_DH*" выведет на дисплей содержимое как памяти DB_D_DH_DEV_TBL, так и памяти DB_D_DH_LINE_TBL. |
н) | Когда для отображения участков памяти обработки вызовов используются определители памяти высокого уровня (например, LST,SW,<DCLD/SCLD/....>,...), утилита DISPLAYER, как правило, всегда выводит на дисплей содержимое памяти соответствующего "активного" процессора. Это значит, что при DISPS-соединении с процессором, который находится в "ждущем" режиме, пользователь не может обратиться к памяти высокого уровня для вывода на дисплей содержимого памяти этого процессора. Адреса памяти "ждущего" и "активного" процессоров идентичны, поэтому для вывода данных можно воспользоваться имеющимися определителями логической памяти. Однако сама эта функция остается в том процессоре, к которому пользователь подключен в данный момент! |
о) | При обработке содержимого файлов в качестве "адреса" указывается место в файле относительно его начала (смещение). |
п) | Данные состояния (LST,SW,STA,..?) отображаются в формате слов (WORD). |
p) | Когда на пульт оператора (SEL=SCREEN) выводится область сохранения загрузочной области связи (BCASA), система АМО прерывает вывод после каждых 2000 байт, предоставляя тем самым оператору возможность прекратить выполнение данной функции. Такая необходимость возникает вследствие очень большого размера BCA, который составляет около 48 Кбайт. На жесткий диск BCASA выводится полностью. Для каждой команды должно указываться новое имя файла - это исключает опасность случайного стирания данных уже существующего файла (см. сообщение F29). |
с) | В командах LST, SET и DEF адрес памяти имеет один и тот же формат (ADR=<селектор>-<смещение>). |
т) | Для вывода данных конкретного периферийного модуля необходимо указать его идентификатор. Если ИД модуля не введен, АМО выводит данные всех периферийных модулей в конфигурации системы. |
у) |
Отображение памяти устройств (DH и CP) для станций с шиной S0 производится не так, как для обычных портов, поскольку для одного порта шины S0 может быть конфигурировано до 8 терминальных устройств. Как правило, положение (= DI) терминального устройства на шине S0 пользователю неизвестно, поэтому данное значение обрабатывается как служебный индикатор SERVICE INDICATOR (значения приводятся в разделе 0.1.4, параметр 'DI'). В таких случаях команда DISPS относится к местоположению (TSI) и участкам памяти ВСЕХ терминальных устройств, которые соответствуют данной услуге. Физическое положение устройства на шине S0 описывает идентификатор TSI (terminal selection identifier - идентификатор выбора терминала). Такой способ приходится применять только в тех случаях, когда пользователь задает канал (CIR) или адрес линии (LN), так как при этом адрес устройства четко не определен. Параметры LODEN, STNO, CRF и DTI позволяют четко описать конкретное устройство, благодаря чему на дисплей выводится только содержимое памяти, относящейся к этому устройству! Значение LODEN терминального устройства можно определить с помощью команды LST,SW,LODEN,CIR/LN,...., которая отображает также положение (см. колонку DI/TSI). |
ф) |
Для функциональных терминальных устройств шины S0 необходима дополнительная (кроме фиксированной) динамическая память с некоторыми динамическими участками динамической адресации LODEN. При выводе на дисплей она помечается как CRI (call reference internal - внутренний указатель вызова). В существующих вызовах сначала задействуется фиксированная память устройств (TSI), а затем, по мере необходимости, - динамическая выделяемая память устройств (CRI). |
х) |
При отображении данных маршрута непосредственно с
MTS, для LTG можно ввести следующую информацию: |
Hicom 300 E V3.0 Руководство по обслуживанию | Siemens Ном. для зак.: P31003-G1037-E403-4-5620 | Дата конвертации: 2000-10-27 |
Контакты: группа E-Doku | © Siemens AG 2000 |