 
 
 
 
 
 
        Министерство приборостроения, средств автоматизации
 
                        и систем управления
 

 
           
 
               
 
 
                 ОПЕРАЦИОННАЯ СИСТЕМА  МОС ВП
  
              Подсистема системного программиста
  
                ПРОГРАММА  РЕГИСТРАЦИИ  ОШИБОК
 
                    Руководство  оператора
 
                      Лист утверждения
 
                    2б.00152-01 34 08-ЛУ
 
                           Листов 2
 
  
  
  
  
                    Руководитель темы
 
                           Зам. директора ИНЭУМ
 
                           -----------------Хрущев С.Н.
 
                           "---"------------1987 г.
 
                    Представители предприятия-разработчика:
 
                           Зав. отделом СКБ ВМ 
 
                           -----------------Паулаускас Э.С.
 
                           "---"------------1987 г.
 
                           Инж.-констр. 3 кат. СКБ ВМ
 
                           -----------------Крилавичене О.П.
 
                           "---"------------1987 г.
 
  
  
                         1987
 
        Перв. примен.                             Литера
 
        2б.00152-01
  
 

 
                              -2- 
  
                      2б.00152-01 34 08-ЛУ
  
  
 
 
 
 
 
                   Представители ИНЭУМ:
 
                            Ответственный исполнитель темы
 
                            Зав. отделением
 
                            -----------------Остапенко Г.П.
 
                            "---"------------1987 г.
 
                            Нормоконтролер
 
                            -----------------
 
                            "---"------------1987 г.
 
 
 
 
 
 
 

 
  
  
                          -1K-  
  
   Утвержден
 
   2б.00152-01 34 08-ЛУ
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
                  ОПЕРАЦИОННАЯ СИСТЕМА  МОС ВП
   
                Подсистема системного программиста
  
                  ПРОГРАММА  РЕГИСТРАЦИИ  ОШИБОК
 
                       Руководство оператора
 
                       2б.00152-01 34 08
 
                            Листов 49/2K
  
  
  
    
   
   
 
 
  
  
  
  
  
  
  
  1К  

  49К  
  
  
  
  
  
                              1987 
 
     Перв. Примен.                              Литера
     2б.00152-01
 
 
 
 
 
 

 

 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
                  ОПЕРАЦИОННАЯ  СИСТЕМА МОС ВП
   
                Подсистема системного программиста
                
                  ПРОГРАММА РЕГИСТРАЦИИ ОШИБОК
 
                      Руководство оператора
 
                       00152-01 34 08
 
                         Листов 48
  
  
  
  
    
   
   
 
 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
                              1987 
 


 
 
 
                             - 2 -
 
                         00152-01 34 08
 
 
 
                                          
 
 
                            АННОТАЦИЯ
 
 
 
 
 
        Настоящий документ является руководством по  использо-
 
   ванию программы регистрации ошибок, которая позволяет полу-
 
   чить выборочные отчеты о содержимом регистрационных  файлов
 
   ошибок.
 
 
        В документе описан механизм вызова программы регистра-
 
   ции ошибок и выход из нее, как направлять  выходной  поток,
 
   перечислены все квалификаторы и параметры программы.
 
 
 
 
                             - 3 -
 
                         00152-01 34 08
 
 
 
 
 
 
                           СОДЕРЖАНИЕ
 
 
 
 
 
   1.   НАЗНАЧЕНИЕ ПРОГРАММЫ                                 4
 
 
   2.  УСЛОВИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ                          6
 
 
   3.  ВЫПОЛНЕНИЕ ПРОГРАММЫ                                  7
 
 
   3.1.    Квалификаторы команды                             8
 
 
   4.  ПРИМЕРЫ ТИПИЧНЫХ ОПЕРАЦИЙ                            28
 
 
   4.1.    Отчет об ошибках                                 28
 
   4.2.    Примеры сообщений  о  штампах  времени,
 
           установке и снятии тома                          30
 
   4.3.    Сообщения о машинном контроле                    32
 
   4.4.    Примеры сообщений об ошибках памяти              37
 
   4.5.    Пример  сообщений   о   нефатальном   и
 
           пользовательском контроле ошибок                 40
 
   4.6.    Примеры неопознанных сообщений                   42
 
 
   5.  СООБЩЕНИЯ ОПЕРАТОРУ                                  45
 
 
 
 
 
                             - 4 -
 
                         00152-01 34 08
 
 
                    1.  НАЗНАЧЕНИЕ ПРОГРАММЫ
 
 
 
 
        Программа регистрации ошибок предназначена для получе-
 
   ния выборочных отчетов о содержимом одного  или  нескольких
 
   регистрационных  файлов  ошибок.  Выборочно  обрабатываются
 
   элементы журнала ошибок, относящиеся к заданному  интервалу
 
   времени и заданному типу устройства. Результаты в различных
 
   формах могут быть выведены на терминал , а  также  на  диск
 
   или магнитную ленту.
 
 
        Система МОС ВП автоматически  записывает  сообщение  в
 
   журнал ошибок под названием SYS$ERRORLOG:ERRLOG.SYS,  когда
 
   происходят следующие события:
 
 
        -ошибки  -  ошибки  устройства,  таймауты  устройства,
 
   машинный контроль, ошибки шины, ошибки  памяти  (аппаратные
 
   или программные ошибки,  обнаруженные  кодом,  исправляющим
 
   ошибки), ошибки при асинхронной записи, неопознанные преры-
 
   вания и контроль ошибок;
 
 
        -смены томов - установка и снятие тома;
 
 
        -системные события - пуск, сбой системы, с  перезапус-
 
   ком, сообщения, посылаемые системной  сервисной  программой
 
   процессу-регистратору ошибок /$SNDERR/, или временные штем-
 
   пели.
 
 
        Программа регистрации  ошибок  выборочно  обрабатывает
 
   сообщения в регистрационном файле и формирует отчет в одной
 
   из шести форм:
 
 
          - полный отчет по выбранным сообщениям.  Это  режим,
 
 
 
                             - 5 -
 
                         00152-01 34 08
 
 
            выбираемый по умолчанию;
 
 
          - краткий отчет по выбранным сообщениям;
 
 
          - сводный отчет по выбранным сообщениям;
 
 
          - отчет в  форме  регистрового  дампа  по  выбранным
 
            сообщениям;
 
 
          - двоичная копия выбранных сообщений;
 
 
          - двоичная копия прочих /невыбранных/ сообщений.
 
 
        Отчет в одной из этих форм  может  быть  направлен  на
 
   терминал для визуального осмотра или на диск, или в файл на
 
   магнитной ленте с помощью квалификатора /OUTPUT. По умолча-
 
   нию выходной поток направляется на  устройство  SYS$OUTPUT.
 
   Форматом отчета можно управлять  с  помощью  квалификаторов
 
   /FULL,  /BRIEF,  /SUMMARY,  /REGISTER_DUMP,   /REJECTED   и
 
   /BINARY.
 
 
        Выборка сообщений из журнала  ошибок  производится  по
 
   критериям, задаваемым  квалификаторами  /SINCE,  /BEFORE  и
 
   /ENTRY. Селекторные квалификаторы /INCLUDE и /EXCLUDE обра-
 
   зуют фильтр, используемый для определения того, какие сооб-
 
   щения отобрать, а какие отбросить.
 
 
        Все отчеты, формируемые программой регистрации ошибок,
 
   имеют 72 колонки в ширину, для того, чтобы можно было отоб-
 
   разить отчеты на экране  терминала.  Программа  регистрации
 
   ошибок формирует сообщения об  обнаруженных  противоречивых
 
   сообщениях в журнале. В разд. 4 перечислены эти сообщения с
 
   об'яснениями и рекомендуемыми мерами.

 
 
                             - 6 -
 
                         00152-01 34 08
 
 
                2. УСЛОВИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ
 
 
 
 
        Программа регистрации ошибок  вызывается  путем  ввода
 
   следующей команды языка DCL:
 
 
        ANALYZE/ERROR_LOG.
 
 
        Программа регистрации ошибок не выдает подсказку.
 
 
        Выход из программы регистрации ошибок происходит после
 
   нажатия CTRL/C (одновременно нажимаются  клавиши  "CTRL"  и
 
   "C") или по достижению конца файла.
 
 
        Для контроля за направлением выходного потока програм-
 
   мы регистрации ошибок служат квалификаторы /OUTPUT, /BINARY
 
   и /REJECTED.
 
 
        Для запуска  программы  пользователь  должен  обладать
 
   привилегией   SYSPRV.   Однако,   для   доступа   к   файлу
 
   ERRORLOG.SYS достаточно иметь лишь доступ с правом  чтения.
 
   /перед использованием программы регистрации ошибок необяза-
 
   тельно переименовывать файл ERRORLOG.SYS в ERRORLOG.OLD/.
 
 
        Не разрешается использовать квалификатор /BINARY  сов-
 
   местно   с   квалификаторами   /FULL,   /BRIEF,    /OUTPUT,
 
   /REGISTER_DUMP и /SUMMARY.
 
 
 
 
 
 
 
                             - 7 -
 
                         00152-01 34 08
 
 
                    3. ВЫПОЛНЕНИЕ ПРОГРАММЫ
 
 
 
 
        Формат команды:
 
 
   ANALYZE/ERROR_LOG [/квалификатор(ы)] [специф-файла] [,...]
 
 
        Квалификатор(ы),   которые    используются    командой
 
   ANALYZE/ERROR_LOG приведены в табл. 1.
 
 
 
                                                     Таблица 1
   -----------------------------------------------------------
                                       I
     Квалификаторы команды             I Значение по умолчанию
                                       I
   -----------------------------------------------------------
    /BEFORE[=дата-время]                    Все сообщения
    /[NO]BINARY[=специф-файла]              /NOBINARY
    /BRIEF                                   Нет
    /ENTRY[=START:десятичное-значение        START:1,
             [,END:десятичное-значение])]    END:конец файла
    /EXCLUDE=(тип-устройства-или-сообщения   Нет
               [,...])
    /[NO]FULL                                /FULL
    /INCLUDE=(тип-устройства-или-сообщения   Нет
               [,...])
    /[NO]LOG                                 /NOLOG
    /OUTPUT[=спецификация-файла]            /OUTPUT=SYS$OUTPUT
    /REGISTER_DUMP                           Нет
    /REJECTED[=спецификация-файла]           Нет
    /SID_REGISTER=%Xшестнадцатиричное-       Нет
                     значение
    /SINCE=дата-время                        См. В тексте
    /STATISTICS                              Нет
    /SUMMARY[=тип-сводки[,...]]              Нет
 
 
        Спецификация-файла[,...]
 
 
        Спецификация-файла определяет один или  более  файлов,
 
   содержащих двоичную информацию, которая должна быть интерп-
 
   ретирована  как  журнал  ошибок.  Спецификация-файла  может
 
   содержать метасимволы. Если этот  параметр  опущен,  то  по
 
   умолчанию обрабатывается файл SYS$ERRORLOG.
 
 
 
 
 
                             - 8 -
 
                         00152-01 34 08
 
 
        3.1. Квалификаторы команды
 
 
 
        /BEFORE
 
 
        Квалификотор /BEFORE указывает, что в отчет об ошибках
 
   должны быть включены только сообщения об  ошибках,  произо-
 
   шедших до заданного момента /дата-время/.
 
 
         Формат:
 
          /BEFORE[=дата-время]
 
 
        Значение квалификатора ограничивает отчет  сообщениями
 
   об ошибках, имевших место до указанного момента.
 
 
        Описание:
 
 
        Можно задать абсолютное время, приращение времени  или
 
   комбинацию того и другого.
 
 
        Если квалификатор /BEFORE опущен или в нем  не  заданы
 
   дата или время, то обрабатываются все сообщения.
 
 
        Пример.
 
        $ ANALYZE/ERROR_LOG/BEFORE=12-FEB-1985-10:00-
 
                            ERRLOG.OLD;5
 
 
        В команде отчет об ошибках, сгенерированный для  файла
 
   ERRLOG.OLD;5, будет содержать сообщения, зарегистрированные
 
   до 10:00 12 февраля 1985 года.
 
 
        /BINARY
 
 
        Квалификатор /BINARY применяется для того, чтобы  уве-
 
   домить систему о том, надо  ли  преобразовывать  записи  об
 
   ошибках, хранящиеся в дбоичном виде, в ASCII-текст  или  же
 
 
                             - 9 -
 
                         00152-01 34 08
 
 
   просто скопировать в указанный выходной файл.
 
 
         Формат:
 
          /BINARY[=спецификация-файла]
 
          /NOBINARY
 
 
        Значением квалификатора является имя выходного  файла,
 
   в который должны быть переписаны образы входных записей.
 
 
        Описание:
 
 
        Квалификатор /BINARY создает двоичный файл, содержащий
 
   копии двоичных записей  в  исходном  регистрационном  файле
 
   ошибок. Если ни интервал  /квалификаторы  /SINCE,  /BEFORE,
 
   /ENTRY/, ни фильтр /квалификаторы /INCLUDE или /EXCLUDE/ не
 
   заданы, то копируются все сообщения из журнала ошибок.
 
 
        При  использовании  квалификатора  в   форме   /BINARY
 
   =спецификация-файла, указанный выходной файл  будет  содер-
 
   жать образы двоичных входных записей /преобразование в  код
 
   ASCII не производится/. Если устройство или каталог не ука-
 
   заны, то используются текущее устройство и  принимаемый  по
 
   умолчанию каталог. Если опущено имя файла, то  используется
 
   имя входного файла. Если опущен тип файла, то тип выходного
 
   файла будет DAT.
 
 
        Не  употребляйте  /BINARY  с  квалификаторами   /FULL,
 
   /BRIEF,  /OUTPUT,  /REGISTER_DUMP  и  /SUMMARY.   Последние
 
   порождают отчет  в  коде  ASCII;  квалификатор  же  /BINARY
 
   порождает отчет в двоичном виде.
 
 
        Пример.
 
         $ ANALYZE/ERROR_LOG/INCLUDE=DBA1/BINARY=DBA1_ERR.DAT-
 
 
 
                            - 10 -
 
                         00152-01 34 08
 
 
                                       ERRLOG.OLD;5
 
 
        Команде выходной  файл  DBAI_ERR.DAT  будет  содержать
 
   копии тех сообщений в журнале ошибок, которые  относятся  к
 
   устройству DBAI.
 
 
        /BRIEF
 
 
        Квалификатор /BRIEF генерирует краткий отчет, содержа-
 
   щий минимальную информацию о содержании журнала ошибок.
 
 
         Формат:
 
         /BRIEF
 
 
        Описание:
 
 
        Не использовать /BRIEF с квалификатором /BINARY.
 
 
        Пример.
 
         $ ANALYZE/ERROR_LOG/BRIEF ERRLOG.OLD;97
 
 
        В команде отчет об ошибках, сформированный  для  файла
 
   ERRLOG.OLD;97, будет содержать только минимальную  информа-
 
   цию.
 
 
        /ENTRY
 
 
        Квалификатор /ENTRY генерирует  отчет  об  ошибках,  в
 
   котором учтены сообщения с номерами из заданного  диапазона
 
   или с номерами, большими заданной нижней границы.
 
 
         Формат:
 
         /ENTRY [=(START:десятичное-значение-
 
                         [,END:десятичное значение])]
 
 
 
 
 
                            - 11 -
 
                         00152-01 34 08
 
 
        Значением  квалификатора  указывает  диапазон  номеров
 
   сообщений, включаемых в отчет об ошибках.
 
 
        Описание:
 
 
        Если квалификатор /ENTRY опущен или  присутствует  без
 
   указания диапазона, то по  умолчанию  принимаются  значения
 
   параметров START:I, END:конец-файла.
 
 
        Пример.
 
 
         $ANALYZE/ERROR_LOG/ENTRY=(START:1,END:18)ERRLOG.SYS
 
 
        В команде генерируется  отчет  об  ошибках  для  файла
 
   ERRLOG.SYS, в который включаются сообщения с номерами от  1
 
   до 18.
 
 
        /EXCLUDE
 
 
        Квалификатор  /EXCLUDE  из  отчета  исключает  ошибки,
 
   относящиеся к заданному  устройству  /устройствам/  и  /или
 
   заданного типа /типов/.
 
 
         Формат:
 
         /EXCLUDE = (тип-устройства-или-сообщения[,...])
 
 
        Значением    квалификатора     является     устройство
 
   /устройства/ и/или тип /типы/  сообщений,  которые  следует
 
   исключат из отчета об ошибках.
 
 
        Описание:
 
 
        Можно задать одно или более устройств  путем  указания
 
   класса или имени устройства. Для  задания  устройств  можно
 
   использовать следующие ключевые слова и конструкции:
 
 
 
                            - 12 -
 
                         00152-01 34 08
 
 
       1) ключевые слова, определяющие класс устройства:
 
         -BUSES /шины/;
 
         -DISKS /диски/;
 
         -REALTIME  /реальное время/;
 
         -SYNC_COMMUNICATIONS  /синхронный обмен/;
 
         -TAPES  /ленты/.
 
       2) именные конструкции для устройств:
 
         -DB                     группа устройств;
 
         -DBA1                   конкретное устройство/
 
                                 номер устройства;
 
         -(DBA1,HSCI$DUA1,DYAO)  список устройств;
 
         -(DB,DR,XF)             список групп устройств.
 
 
        3) ключевое слово, идентифицирующие тип сообщения при-
 
   ведены в табл.2.
 
 
 
                                                     Таблица 2
   -----------------------------------------------------------
                    I
    Ключевое слово  I           Назначение
                    I
   -----------------------------------------------------------
   ATTENTIONS             Исключить из отчета сообщения о том,
                     что устройство требует внимания.
 
   BUGCHECKS             Исключить из отчета сообщения обо
                     всех типах контроля ошибок.
 
   CONTROL_ENTRIES     Исключить из отчета управляющие сообще-
                     ния. К управляющим относятся сообщения,
                     следующих типов:
                      - рестарт системы после сбоя по питанию;
                      - штампы времени;
                      - запуск системы;
                      - сообщения $SNDERR / системная  услуга
                        для отправки сообщений регистратору
                        ошибок/;
                      - сообщения оператору;
                      - сетевые сообщения;
                      - создан файл ERRLOG.SYS.
 
   CPU_ENTRIES          Исключить из отчета все сообщения, от-
                     носящиеся к работе центрального процессор
                     к ним относятся сообщения следующих типов
 
 
                            - 13 -
 
                         00152-01 34 08
 
 
                                           Продолжение табл. 2
   -----------------------------------------------------------
                    I
    Ключевое слово  I           Назначение
                    I
   -----------------------------------------------------------
                      - тревога/сбой SBI;
                      - неопознанные прерывания;
                      - ошибки адаптера  общей шины;
                      - ошибки при асинхронной записи;
                      - ошибки UBA.
 
   DEVICE_ERRORS      Исключить из отчета сообщения об ошибках
                    устройств.
 
   ENVIRONMENTAL_      Исключить из отчета все сообщения   об
   ENTRIES           окружающих условиях.
 
   MACHINE_CHECKS       Исключить из отчета сообщения, относя-
                     щиеся к машинному контролю.
 
   MEMORY               Исключить из отчета сообщения об ошиб-
                     ках  памяти.
 
   SNAPSHOT_ENTRIES     Исключить из отчета сообщения о "фото-
                     графиях"  системы.
 
   TIMEOUTS            Исключить из отчета сообщения о таймау-
                     тах  устройств.
 
   UNKNOWN_ENTRIES       Исключить все сообщения, для которых
                     неизвестен тип или тип/класс устроиства.
 
   UNSOLICITED_MSCP     Исключить из отчета сообщения о незат-
                     ребованных MSCP.
 
   VOLUME_CHANGES       Исключить из отчета сообщения об уста-
                     новках и снятиях томов.
 
        Ключевое слово UNKNOWN_ENTRIES используется для  полу-
 
   чения отчета о содержимом регистров устройств,  загруженных
 
   неподдерживаемыми устройствами.
 
 
        Вся известная информация из каждого сообщения преобра-
 
   зуется в код ASCII, остальное выводится в формате  длинного
 
   шестнадцатеричного слова.
 
 
        Если задается ключевое  слова  класса  устройства  или
 
   именная конструкция устройства с каждым  из  квалификаторов
 
   /INCLUDE и /EXCLUDE, то предпочтение отдается квалификатору
 
 
 
                            - 14 -
 
                         00152-01 34 08
 
 
   /INCLUDE.
 
 
        Примеры:
 
        1.   $ ANALYZE/ERROR_LOG/EXCLUDE=MTAO
 
 
        По команде, из  журнала  ошибок,  сформированного  для
 
   файла ERRLOG.SYS, исключаются сообщения, относящиеся к уст-
 
   ройству MTAO.
 
 
        2.  $ ANALYZE/ERROR_LOG/EXCLUDE=(MTAO,DRA5) ERRLOG.OLD
 
 
        По команде, из  журнала  ошибок,  сформированного  для
 
   файла ERRLOG.OLD, исключаются сообщения, относящиеся к уст-
 
   ройствам MTAO и DRA5.
 
 
        3.   $ ANALYZE/ERROR LOG/EXCLUDE=(DISKS,BUGCHECKS)
 
 
        По команде, из  журнала  ошибок,  сформированного  для
 
   файла ERRLOG.SYS, исключаются сообщения, относящиеся к дис-
 
   ковым устройствам и к контролю ошибок.
 
 
        4.   $ANALYZE/ERROR_LOG/INCLUDE=MTAO/EXCLUDE=TAPES
 
 
        По команде, отчет об ошибках, сформированный для файла
 
   ERRLOG.SYS, включаются сообщения об  ошибках,  связанных  с
 
   лентой МТАО, но исключаются сообщения, относящиеся ко  всем
 
   остальным магнитным лентам.
 
 
        5.   $ ANALYZE/ERROR_LOG/EXCLUDE=(DISK,VOLUME_CHANGES)
 
 
        По команде, из  журнала  ошибок,  сформированного  для
 
   файла ERRLOG.SYS, исключаются сообщения о сменах  томов  на
 
   магнитных дисках.
 
 
        6.  $ ANALYZE/ERROR_LOG/EXCLUDE=(DISK,VOLUME_CHANGES,-
 
 
 
                            - 15 -
 
                         00152-01 34 08
 
 
                                           DEVICE_ERROR)
 
 
        По команде, из  журнала  ошибок,  сформированного  для
 
   файла ERRLOG.SYS, исключаются сообщения о сменах  томов  на
 
   магнитных дисках и об ошибках дисковых устройств.
 
 
        7.  $ ANALYZE/ERROR_LOG/EXCLUDE=(DISK,VOLUME_CHANGES,-
 
                            DEVICE_ERROR,BUGCHECK)
 
 
        По команде, из журнала ошибок,сформированного для фай-
 
   ла ERRLOG.SYS, исключаются сообщения о смене томов на  маг-
 
   нитных дисках, об ошибках дисковых устройств и  о  контроле
 
   ошибок.
 
 
        /FULL
 
 
        Квалификатор /FULL генерирует полный отчет, содержащий
 
   всю возможную информацию по каждому включаемому  сообщению.
 
   По умолчанию выбирается этот режим.
 
 
         Формат:
 
         /[NO]FULL
 
 
        Описание:
 
 
        Не следует использовать /FULL совместно с квалификато-
 
   ром /BINARY.
 
 
        Примеры:
 
 
        1.   $ ANALYZE/ERROR_LOG/FULL ERRLOG.OLD;72
 
 
        Эта команда генерирует полный отчет об ошибках.
 
 
        2.   $ ANALYZE/ERROR_LOG ERLOG.OLD;72
 
 
 
 
                            - 16 -
 
                         00152-01 34 08
 
 
        Эта команда генерирует полный  отчет  об  ошибках.  По
 
   умолчанию тип отчета есть /FULL; поэтому явное включение  в
 
   командную строку необязательно.
 
 
        /INCLUDE
 
 
        Квалификатором /INCLUDE  в  отчет  включаются  ошибки,
 
   относящиеся  к  заданному  устройству  /устройствам/  и/или
 
   заданного типа /типов/.
 
 
         Формат:
 
        /INCLUDE=тип-устройства-или-сообщения
 
 
        Значением    квалификатора     является     устройство
 
   /устройства/  и/или  тип  /типы/  сообщения,  включаемые  в
 
   отчет.
 
 
        Описание:
 
 
        Можно задать одно или более устройств  путем  указания
 
   класса или имени устройства. Для  задания  устройств  можно
 
   использовать следующие ключевые слова и  именные  конструк-
 
   ции:
 
 
        1) ключевые слова, определяющие класс устройства:
 
         -BUSES    /шины/;
 
         -DISKS    /диски/;
 
         -REALTIME /реальное время/;
 
         -SYNC_COMMUNICATIONS   /синхронный обмен/;
 
         -TAPES    /ленты/;
 
        2) именные конструкции для устройств:
 
        -DB                  группа устройств;
 
        -DBA1              конкретное устройство/номер устрой-
 
 
 
                            - 17 -
 
                         00152-01 34 08
 
 
                            ства;
 
        -(DBA1, HSC1$DUA1, DYAO)  список устройств;
 
        -(DB, DR, XF)             список групп устройств.
 
 
        Ключевое слово, идентифицирующие тип сообщения, приве-
 
   дены в табл.3.
 
 
 
                                                     Таблица 3
   -----------------------------------------------------------
                    I
    Ключевое слово  I        Назначение
                    I
   -----------------------------------------------------------
   ATTENTIONS            Включить в отчет сообщения о том, что
                      устройство требует внимания.
 
   BUGCHECKS             Включить в отчет сообщения обо всех
                      типах контроля ошибок.
 
   CONTROL_ENTRIES     Включить в отчет управляющие сообщения.
                      к управляющим сообщениям относятся
                      сообщения следующих типов:
                      - рестарт системы после сбоя по питанию;
                      - штампы времени;
                      - запуск системы;
                      - сообщения $SNDERR системная услуга для
                        отправки сообщению регистратору ошибок
                      - сообщения оператору;
                      - сетевые сообщения;
                      - создан файл ERRLOG.SYS.
 
   CPU_ENTRIES           Включить в отчет все сообщения, отно-
                      сящиеся к работе цп.  К ним относятся
                      сообщения следующих типов:
                      - тревога/сбой SBI;
                      - неопознанные прерывания;
                      - ошибки адаптера MBA/UBA;
                      - ошибки при асинхронной записи;
                      - ошибки UBA.
 
   DEVICE_ERRORS         Включить в отчет сообщения об ошибках
                      устройств.
 
   ENVIRONMENTAL_         Включить в отчет все сообщения   об
       ENTRIES        окружающих условиях.
 
   MACHINE_CHECKS        Включить в отчет сообщения, относя-
                      щиеся к машинному контролю.
 
   SNAPSHOT_ENTRIES      Включить в отчет сообщения о "фото-
                      графиях" системы.
 
   MEMORY                Включить в отчет сообщения об ошибках
 
 
                            - 18 -
 
                         00152-01 34 08
 
 
                                           Продолжение табл. 3
   -----------------------------------------------------------
                    I
    Ключевое слово  I        Назначение
                    I
   -----------------------------------------------------------
                      памяти.
 
   TIMEOUTS             Включить в отчет сообщения о таймаутах
                      устройств.
 
   UNKNOWN_ENTRIES       Включить все сообщения,  для  которых
                      неизвестен тип или тип/класс устройства.
 
   UNSOLICITED_MSCP      Включить в отчет сообщения о незатре-
                      бованных MSCP.
 
   VOLUME_CHANGES       Включить в отчет сообщения об установ-
                      ках  и снятиях томов.
 
        Ключевое слово UNKNOWN_ENTRIES используется для  полу-
 
   чения отчета о содержимом регистров, загруженных  неподдер-
 
   живаемыми устройствами.
 
 
        Вся известная информация из каждого сообщения преобра-
 
   зуется в код ASCII, остальное выводится в формате  длинного
 
   шестнадцатеричного слова.
 
 
        Если ключевое  слово  класса  устройства  или  именная
 
   конструкция устройства задается с каждым из  квалификаторов
 
   /INCLUDE и /EXCLUDE, то предпочтение отдается квалификатору
 
   /INCLUDE.
 
 
        Примеры:
 
 
         1.   $ ANALYZE/ERROR_LOG/INCLUDE=MTAO
 
 
        Эта команда генерирует отчет для выбираемого по  умол-
 
   чанию файла ERRLOG.SYS. Включаются только сообщения,  отно-
 
   сящиеся к устройству MTA0.
 
 
        2.   $ ANALYZE/ERROR_LOG/INCLUDE=(MTAO,VOL)
 
 
 
 
                            - 19 -
 
                         00152-01 34 08
 
 
        Эта команда генерирует отчет для выбираемого по  умол-
 
   чанию файла  ERRLOG.SYS.  Включаются  только  сообщения  об
 
   установках и снятиях томов для устройства MTA0.
 
 
        3.  $ ANALYZE/ERROR_LOG/INCLUDE=(DISK,VOLUME_CHANGES)
 
 
        Эта команда генерирует отчет для выбираемого по  умол-
 
   чанию файла ERRLOG.SYS. Включаются только сообщения о смене
 
   томов на магнитных дисках.
 
 
        4. $ ANALYZE/ERROR_LOG/INCLUDE=(DISK,VOLUME_CHANGES,-
 
                                          DEVICE_ERROR)
 
 
        Эта команда генерирует отчет для выбираемого по  умол-
 
   чанию файла ERRLOG.SYS. Включаются только сообщения о смене
 
   томов на магнитных дисках и об ошибках дисковых устройств.
 
 
        5.  $ ANALYZE/ERROR_LOG/INCLUDE=(DISK,VOLUME_CHANGES,-
 
                                     DEVICE_ERROR,BUGCHECK)
 
 
        Эта команда генерирует отчет для выбираемого по  умол-
 
   чанию файла ERRLOG.SYS. Включаются сообщения о смене  томов
 
   на магнитных дисках, об  ошибках  дисковых  устройств  и  о
 
   контроле ошибок.
 
 
        /LOG
 
 
        Квалификатор /LOG определяет, следует  ли  посылать  в
 
   файл SYS$OUTPUT информационные  сообщения,  в  которых  для
 
   каждого входного файла указывается число выбранных  сообще-
 
   ний и сообщений, от которых отказались.  По  умолчанию  эта
 
   информация не отображается.
 
 
         Формат:
 
 
 
                            - 20 -
 
                         00152-01 34 08
 
 
         /[NO]LOG
 
         Пример.
 
        $ ANALYZE/ERROR_LOG/LOG ERRLOG.OLD;5
 
 
        По команде, информационные сообщения,  сгенерированные
 
   для файла ERRLOG.OLD;5, посылаются в файл SYS$OUTPUT.
 
 
        /OUTPUT
 
 
        Квалификатор /OUTPUT определяет выходной файл, в кото-
 
   ром помещается отчет об ошибках.
 
 
        Формат:
 
         /OUTPUT[= спецификация-файла]
 
 
        Значением квалификатора является имя выходного  файла,
 
   в который помещается отчет об ошибках.
 
 
        Описание:
 
 
        Если квалификатор /OUTPUT опущен,  то  выходной  поток
 
   направляется в файл SYS$OUTPUT. Если квалификатор присутст-
 
   вует в форме /OUTPUT=спецификация-файла, то отчет об  ошиб-
 
   ках помещается в файл с указанным именем. Если опущены спе-
 
   цификация устройства или каталога, то используется  текущее
 
   устройство и принимаемый по умолчанию каталог. Если опущено
 
   имя файла, то берется имя входного файла. Если  опущен  тип
 
   файла, то подразумевается тип LIS.
 
 
        Не  следует  использовать  /OUTPUT  с   квалификатором
 
   /BINARY.
 
 
        Пример.
 
        $ ANALYZE/ERROR_LOG/OUTPUT=ERROR_LOG.LIS ERRLOG.OLD;72
 
 
 
                            - 21 -
 
                         00152-01 34 08
 
 
        Данная   команда   указывает,   что   выходной    файл
 
   ERROR_LOG.LIS будет содержать отчет об ошибках,  сгенериро-
 
   ванный по файлу ERRLOG.OLD;72.
 
 
        /REGISTER_DUMP
 
 
        Квалификатор /REGISTER_DUMP используется в сочетании с
 
   квалификатором /INCLUDE для формирования отчета об информа-
 
   ции, хранящейся в регистрах устройств. Отчет генерируется в
 
   формате длинного шестнадцатеричного слова.
 
 
         Формат:
 
        /REGISTER_DUMP
 
 
        Описание:
 
 
        Квалификатор  /REGISTER_DUMP  можно  использовать  для
 
   получения отчета в шестнадцатеричном формате  о  содержимом
 
   регистров устройств,  задаваемых  квалификатором  /INCLUDE.
 
   Использование квалификатора REGISTER_DUMP предполагает обя-
 
   зательное использование квалификатора /INCLUDE.
 
 
        При использовании квалификатора /REGISTER_DUMP в отчет
 
   включаются только сообщения из журнала ошибок,  относящиеся
 
   к содержимому регистров для памяти, ошибок устройств и тай-
 
   маутах устройств.
 
 
        Не следует  использовать  квалификатор  /REGISTER_DUMP
 
   совместно с /BINARY.
 
 
        Пример.
 
    $ ANALYZE/ERROR_LOG/INCLUDE=DB/REGISTER_DUMP ERRLOG.OLD;72
 
 
        По данной команде  генерируется  отчет,  выдаваемый  в
 
 
 
                            - 22 -
 
                         00152-01 34 08
 
 
   формате REGISTER_DUMP. Включаются сообщения, относящиеся  к
 
   устройству DB.
 
 
        /REJECTED
 
 
        Квалификатор /REJECTED дает  возможность  пользователю
 
   задать имя файла, в который копируются двоичные записи отб-
 
   рошенных сообщений.
 
 
        Формат:
 
        /REJECTED[= спецификация-файла]
 
 
        Значением  квалификатора  является   название   файла,
 
   содержащего отброшенные сообщения.
 
 
        Описание:
 
 
        Квалификатор /REJECTED создает двоичный файл, содержа-
 
   щий копии сообщений из журнала ошибок, хранящегося в двоич-
 
   ном виде. Если какое-либо сообщение из  журнала  ошибок  не
 
   включается в отчет из-за заданного  фильтра  (/INCLUDE  или
 
   /EXCLUDE, или интервального критерия  /SINCE,  /BEFORE  или
 
   /ENTRY), и  присутствует  квалификатор  /REJECTED,  то  это
 
   сообщение переписывается в указанный файл.
 
 
        Отброшенными  считаются  сообщения,  не  включаемые  в
 
   отчет об ошибках из-за принадлежности к  следующим  катего-
 
   риям:
 
 
        -все сообщения, указываемые с квалификатором /EXCLUDE;
 
 
        -все   сообщения,   указываемые   без    квалификатора
 
   /INCLUDE;
 
 
 
 
 
                            - 23 -
 
                         00152-01 34 08
 
 
        -сообщения, не попадающие в период времени, определяе-
 
   мый квалификаторами /SINCE и /BEFORE;
 
 
        -сообщения, не попадающие ни в одну из групп,  опреде-
 
   ляемых квалификатором /ENTRY.
 
 
        Если  в  командной  строке  присутствует  квалификатор
 
   /REJECTED =  спецификация-файла,  то  выходной  файл  будет
 
   содержать копии всех отброшенных сообщений. Если специфика-
 
   ция устройства или каталога опущена, то используется  теку-
 
   щее устройство и принимаемый  по  умолчанию  каталог.  Если
 
   опущено имя файла, то берется имя входного файла. Если опу-
 
   щен тип файла, то подразумевается тип REJ.
 
 
        Пример.
 
        $ ANALYZE/ERROR_LOG/INCLUDE=MTAO/REJECTED=REAL_ERRS-
 
                                    DAT ERRLOG.OLD;5
 
 
        По данной команде выходной  файл  REAL_ERRS.DAT  будет
 
   содержать копии всех сообщений  из  файла  ERRLOG.OLD;5  за
 
   исключением тех, что относятся к устройству MTA0.
 
 
        /SID_REGISTER
 
 
        Квалификатор /SID_REGISTER генерирует отчет,  содержа-
 
   щий сообщения об ошибках, которые произошли во время работы
 
   определенного центрального процессора.
 
 
         Формат:
 
        /SID_REGISTER[=%х шестнадцатеричное-значение]
 
 
        Значение квалификатора, взятое из регистра идентифика-
 
   тора системы. Для выборки этого значения,  уникального  для
 
   каждой системы, используется программа системного  обслужи-
 
 
                            - 24 -
 
                         00152-01 34 08
 
 
   вания $GETSYI.
 
 
        Пример.
 
    $ ANALYZE/ERROR_LOG/SID_REGISTER=%X 02006148 ERRLOG.OLD;72
 
 
        Команда генерирует отчет об ошибках. В отчет об  ошиб-
 
   ках войдут только те сообщения, которые были  зарегистриро-
 
   ваны на системе с идентификатором 02006148 /16-ричный/.
 
 
        /SINCE
 
 
        Квалификатор /SINCE указывает, что в отчет об  ошибках
 
   должны быть включены только сообщения об  ошибках,  произо-
 
   шедших после заданного момента /дата-время/.
 
 
         Формат:
 
         /SINCE   [=дата-время]
 
 
        Значение квалификатора ограничивает отчет  сообщениями
 
   об ошибках, имевших место после указанного момента.
 
 
        Описание:
 
 
        Можно задавать только абсолютное время.
 
 
        Если квалификатор /SINCE опущен, то обрабатываются все
 
   сообщения.   Если   /SINCE   присутствует   без    указания
 
   даты-времени, то по умолчанию принимается "сегодня".
 
 
        Пример.
 
     $ ANALYZE/ERROR_LOG/SINCE=22-MAR-1985-15:00 ERRLOG.OLD;56
 
 
        По данной команде, отчет об  ошибках,  сгенерированный
 
   для файла ERRLOG.OLD;56, будет содержать  сообщения,  заре-
 
   гистрированные после 15:00 22 марта 1985 г.
 
 
 
                            - 25 -
 
                         00152-01 34 08
 
                                                 
        /STATISTICS
 
 
        Квалификатор  /STATISTICS  генерирует   статистическую
 
   информацию о времени прогона.
 
 
         Формат:
 
        /STATISTICS
 
 
        Описание:
 
 
        Квалификатор /STATISTICS можно использовать для  гене-
 
   рации   отчета   о   страничных   отказах    буферизованном
 
   вводе-выводе, прямом вводе-выводе и затратах времени цп  во
 
   время работы команды ANALYZE/ERROR.
 
 
        Пример.
 
 
        $ ANALYZE/ERROR_LOG/STATISTICS ERRLOG.OLD;4
 
 
        Эта команда генерирует полный  отчет,  включающий  все
 
   сообщения из файла ERRLOG.OLD;4 и статистические  данные  о
 
   работе команды.
 
 
        /SUMMARY
 
 
        Квалификатор /SUMMARY  генерирует  отчет  об  ошибках,
 
   содержащий сводные статистические данные.
 
 
        Формат:
 
         /SUMMARY[=тип-сводки[,...]]
 
         /NOSUMMARY
 
 
        Значением квалификатора является ключевое слово, опре-
 
   деляющее тип сводки.
 
 
 
 
 
                            - 26 -
 
                         00152-01 34 08
 
 
        Описание:
 
 
        Тип сводки указывает  ключевые  слова,  приведенные  в
 
   табл.4.
 
 
 
                                                     Таблица 4
                    Kлючевые слова тип-сводки
 
   -----------------------------------------------------------
                  I
   Ключевое слово I         Назначение
                  I
   -----------------------------------------------------------
      DEVICE         Включает в отчет сводку по устройствам.
 
      ENTRY         Включает в отчет сводку о зарегистрирован-
                  ных сообщениях.
 
      HISTOGRAM      Включает в отчет почасовую гистограмму
                  обработанных сообщений.
 
      MEMORY        Включает в отчет сводку по ошибкам памяти.
 
      VOLUME        Включает в отчет раздел "метка тома".
 
 
 
        П_р_и_м_е_ч_а_н_и_е. Если квалификатор  /SUMMARY  при-
 
   сутствует без указания типа-сводки, то в  отчет  включаются
 
   все перечисленные типы сводок. Если  нужен  только  сводный
 
   отчет, то в командной строке необходимо указать оба  квали-
 
   фикатора /NOFULL и /SUMMARY.  Не  пытайтесь  скоррелировать
 
   значения счетчиков ошибок, выдаваемые по команде SHOW ERROR
 
   и с помощью квалификатора /SUMMARY. Расхождение между  ними
 
   может быть обусловлено целым рядом системных событий.  Нап-
 
   ример, если ошибка происходит на диске, то она включается в
 
   сводный отчет, и счетчик ошибок диска увеличивается на еди-
 
   ницу. После этого система может попытаться повторить опера-
 
   цию, и если ошибка  повторяется,  то  увеличивается  только
 
   счетчик ошибок диска, но в сводны отчет  вторая  ошибка  не
 
   попадает. Не следует использовать /SUMMARY совместно с ква-
 
 
 
                            - 27 -
 
                         00152-01 34 08
 
 
   лификатором /BINARY.
 
 
        Примеры:
 
        1.   $ ANALYZE/ERROR_LOG/SUMMARY ERRLOG.OLD;5
 
 
        Эта команда генерирует полный отчет и сводный отчет по
 
   всем сообщениям из файла ERRLOG.OLD;5.
 
 
         2.   $ ANALYZE/ERROR_LOG/NOFULL/SUMMARY ERRLOG.OLD;5
 
 
        Эта команда генерирует только сводный  отчет  по  всем
 
   сообщениям из файла ERRLOG.OLD;5.
 
 
        3.   $ ANALYZE/ERROR_LOG/SUMMARY=(ENTRY,DEVICE)
 
 
        Эта команда включает в сводный отчет по сообщениям  из
 
   выбираемого по умолчанию файла  ERRLOG.SYS  только  разделы
 
   ENTRY и DEVICE.
 
 
         4.   $ ANALYZE/ERROR_LOG/INCLUDE=DBA4/NOFULL/SUMMARY-
 
                                             ERRLOG.OLD;5
 
 
        Эта команда генерирует только сводный отчет, в который
 
   войдут лишь данные, относящиеся к ошибкам  устройств,  тай-
 
   маутам устройств и запросам на внимание со стороны  цп  для
 
   устройства DBA4.
 
 
 
 
 
                            - 28 -
 
                         00152-01 34 08
 
 
                  4. ПРИМЕРЫ ТИПИЧНЫХ ОПЕРАЦИЙ
 
 
 
 
 
        4.1. Отчет об ошибках
 
 
 
        Сообщение в отчете об ошибках состоит из  двух  разде-
 
   лов: раздел идентификатора и раздел  данных,  зависящих  от
 
   устройства. Раздел  идентификации  включает  первые  четыре
 
   строки отчета. Он  генерируется  для  всех  видов  отчетов.
 
   Зависящие от устройств данные, следующие за разделом  иден-
 
   тификации, содержат информацию об отобранных  сообщениях  в
 
   журнале ошибок.
 
 
        Первая строка  раздела  идентификации  содержит  номер
 
   сообщения об ошибке.  Этот  номер  можно  использовать  для
 
   ссылки на конкретное сообщение  в  журнале  ошибок.  Вторая
 
   строка содержит порядковый номер ошибки и значение  иденти-
 
   фикатора системы. Порядковый номер присваивается  сообщению
 
   операционной системой с тем, чтобы можно  было  определить,
 
   не пропущены ли сообщения в журнале.  Значение  порядкового
 
   номера сбрасывается в нуль только при перезагрузке системы.
 
   Третья и четвертая строки этого раздела описывают тип сооб-
 
   щения об ошибке, время и дату ее регистрации, тип процессо-
 
   ра и номер версии, а также заводской номер системы.
 
 
        Первая строка в разделе зависящих от устройства данных
 
   может идентифицировать устройство или подсистему, в которой
 
   произошла ошибка. В остальной  части  этого  раздела  может
 
   содержаться аппаратная информация  о  содержимом  регистров
 
   устройства   и   программная   информация    о    состоянии
 
   ввода/вывода в момент ошибки.
 
 
                            - 29 -
 
                         00152-01 34 08
 
 
        В следующих примерах представлен отчет об ошибках уст-
 
   ройства, требовании внимания к устройству и таймаутах  уст-
 
   ройства, причем устройством является диск.
 
 
 
        Пример.
 
   МОС ВП    SYSTEM ERROR REPORT     COMPILED 0-MAR-85 14:30
 
                                                     PAGE   1.
 
    RPSN          00000247
 
    RPER3         00000000
 
    RPEC1         00000000
 
    RPEC2         00000000
 
    UCB$B_ERTCNT        08
 
                            ;8. Осталось попыток
 
    UCB$B_ERTMAX        08
 
                            ;8. Допустимо попыток
 
    UCB$L_OWNUIC  00000000
 
                            ;UIC владельца
 
    UCB$L_CHAR    1CC54008
 
                            ;со структурой каталога
 
                            ;орентированный на файл
 
                            ;разделяемый
 
                            ;доступный
 
                            ;регистрация ошибок
 
                            ;выделен
 
                            ;может выполнять ввод
 
                            ;может выполнять вывод
 
                            ;произвольная выборка
 
    UCB$W_STS         0910
 
                            ;онлайн
 
                            ;занят
 
 
                            - 30 -
 
                         00152-01 34 08
 
 
                            ;программное обеспечение правильно
 
    UCB$L_OPCNT   0000000E
 
                            ;14. Q10 этого устройства
 
    UCB$W_ERRCNT      0001
 
                            ;1.ошибок на этом устройстве
 
    UCB$L_MEDIA   00010104
 
                            ;адрес начала функции
 
                            ; - цилиндр #1.,
 
                            ; - дорожка #1.,
 
                            ; - сектор #4.
 
    IRP$W_FUNC        000B
 
                            ;писать физический блок
 
    IRP$W_BCNT        0200
 
                            ;длина передаваемой информации -
 
                            ;                     512 байтов
 
    IRP$W_BOFF        001C
 
                            ;смещение от начала страницы 28
 
                            ;                   байтов
 
    IRP$L_PID     0003003D
 
                            ;идентификатор процесса-запросчика
 
    IRP$Q_10SB    0000025C
 
                  00000000  ;10SB. 0. Передано байтов
 
 
 
        4.2. Примеры сообщений  о  штампах  времени,
 
             установке и снятии тома
 
 
 
        Сообщение о системном временном  штемпеле,  содержащее
 
   только раздел идентификации, регистрируется системой  через
 
   каждые 10 минут. Если никаких других ошибок за истекшие  10
 
   минут не произошло, то в конце периода  вместо  предыдущего
 
 
                            - 31 -
 
                         00152-01 34 08
 
 
   штампа времени записывается текущий. Сообщение об установке
 
   тома содержит раздел идентификации и данные,  зависящие  от
 
   устройства. В последнем разделе указывается имя устройства,
 
   на которое установлен  том,  метка  тома  /если  том  имеет
 
   метку/ и счетчики операций и ошибок для этого устройства.
 
 
        Сообщение о снятии тома почти совпадает  с  сообщением
 
   об установке тома. Кроме данных, содержащихся  в  сообщении
 
   об установке тома, в него вносятся также счетчики  операций
 
   ввода-вывода и ошибок для снятого тома.
 
 
        Пример.
 
   *************************ENTRY    93.**********************
 
   ERROR SEQUENCE 421.                  LOGGED ON SID 03003700
 
   TIME STAMP, 4-MAR-85 11:10:08.79
 
                  KA780 REV# 7. SERIAL#7.
 
   *************************ENTRY    94.**********************
 
   ERROR SEQUENCE 422.                  LOGGED ON SID 03003700
 
   MOUNT VOLUME, 4-MAR-85 11:14:12.51
 
                  KA780 REV# 7.SERIAL# 7.
 
   Устройство DMAO:, VOLUME LABEL "TEST"
 
   656.  QI0  операция ввода-вывода на этом устройстве,
 
          1. ОШИБОК НА ЭТОМ УСТРОЙСТВЕ
 
   *************************ENTRY    95.**********************
 
   ERROR SEQUENCE 423.                  LOGGED ON SID 03003700
 
   DISMOUNT VOLUME, 4-MAR-85 11:14:41.30
 
                  KA780 REV# 7. SERIAL# 7.
 
   Устройство DMAO:,метка тома "TEST"
 
   697. QI0 операций ввода-вывода на этом устройстве,
 
         1. ОШИБОК НА ЭТОМ УСТРОЙСТВЕ,
 
   41. QI0 операций ввода-вывода на этом томе,
 
 
                            - 32 -
 
                         00152-01 34 08
 
 
         0. ОШИБОК НА ЭТОМ ТОМЕ,
 
 
 
        4.3. Сообщения о машинном контроле
 
 
 
        Отчет, содержащий сообщения о машинном контроле,  сос-
 
   тоят из трех разделов: раздел идентификации, раздел счетчи-
 
   ка команд и суммарной информации о коде и  раздел  информа-
 
   ции, зависящей от ошибки.
 
 
        Раздел счетчика команд и суммарной информации содержит
 
   значение счетчика команд, длинного слова состояния  процес-
 
   сора и суммарный код. Содержимое длинного  слова  состояния
 
   процессора и суммарного кода расшифровываются  в  тексте  в
 
   правой стороне отчета.
 
 
        В остальной части отчета /зависящей от ошибки/  содер-
 
   жится информация о процессоре, зафиксированная в результате
 
   машинного контроля.
 
 
        Пример 1
 
 
   **********************ENTRY    6.**************************
 
   Порядковый номер 3.              Зарегистрировано на систем
 
   MACHINE CHECK, 6-MAR-1985 10:11:34.70
 
                  KA730 REV# 0.MIC# 55.
 
   EXCEPTION PC   80038DC0
 
   ERROR PSL      01C00000
 
                            ;уровень приоритета прерываний = 0
 
                            ;предыдущий режим = пользователь
 
                            ;текущий режим = диспетчер
 
   SUMMARY CODE   00000007
 
                            ;ошибка не может быть исправлена
 
 
                            - 33 -
 
                         00152-01 34 08
 
 
                            ;   кодом, исправляющим ошибки
 
   1ST PARAMETER  00166200
 
                            ;на странице 2865 ошибка
 
   *********************ENTRY     60.*************************
 
   ERROR SEQUENCE 4872.                LOGGED ON SID 02006148
 
   MACHINE CHECK, 6-MAR-1985 03:50:08.28
 
                  KA750 REV# 72. MIC# 97.
 
   EXCEPTION PC   80006173
 
   ERROR PSL      00C80009
 
                            ;C-бит
 
                            ;N-бит
 
                            ;уровень приоритета прерываний
 
                            ;предыдущии режим = пользователь
 
                            ;текущий режим = ядро
 
 
        Пример 2
 
 
   SUMMARY CODE   00000002
 
                            ;ошибка в буфере трансляции или на
 
                            ;                          шине
 
   VA LAST REF    800A070E
 
   PC AT ERROR    80000178
 
   MDR            8009F38C
 
   SMR            00000008
 
                            ;режим нп = ядро
 
                            ;виртуальный
 
                            ;чтение
 
   RLTO           00000000
 
   TBER           00000007
 
                            ;ошибка в данных
 
                            ;ошибка в признаке
 
 
                            - 34 -
 
                         00152-01 34 08
 
 
   CAER           00000000
 
   BER            00000000
 
   MCESR          00000004
 
                            ;обращение к операнду
 
                            ;ошибка четности тв
 
 
        Пример 3
 
 
   *************************ENTRY    7. **********************
 
   ERROR SEQUENCE 4949.                 LOGGED ON SID 01388525
 
   MACHINE CHECK,  6-MAR-1985 10:11:34.70
 
                  KA780 REV# 7. SERIAL# 1317.
 
   EXCEPTION PC   00004890
 
   ERROR PSL      03C00000
 
                            ;уровень приоритета прерываний
 
                            ;предыдущий режим = пользователь
 
                            ;текущий режим = пользователь
 
   SUMMARY CODE   00000000
 
                            ;таймаут при чтении ЦП или сбой
 
                            ;при подтверждении ошибки
 
   CES            00010084
 
                            ;ожидание AST супервизора
 
                            ;вложенная ошибка
 
   MICRO PC       00000200
 
   VA/VIBA        7FF735D4
 
   D REGISTER     FFFFC284
 
   TBERO          0000DCS1
 
                            ;разрешено управление памятью
 
                            ;поле "МСТ" микрокода
 
   TBER1          00000040
 
                            ;последний импульс записи тв в
 
 
                            - 35 -
 
                         00152-01 34 08
 
 
                            ;           группу 1
 
   SBITA          E00B83F5
 
                           ;адрес на концоли в момент таймаута
 
                            ;обращение, контролируемое защитой
 
                            ;в момент таймаута обращение в
 
                            ;             режиме пользователя
 
   CACHE PE REG   00004000
 
                            ;ошибка ЦП
 
   SBIER          00001802
 
                            ;SBI не занят
 
                            ;ожидания таймаута во время
 
                            ;чтения данных
 
                            ;таймаут центрального процессора
 
 
        Пример 4
 
 
   ********************ENTRY     82.**************************
 
   ERROR SEQUENCE 1077.               LOGGED ON SID   04FFFFFF
 
   NACHINE CHECK 30-MAR-1985 20:55:17.41
 
                 KA86  REV# 255. SERIAL# 4095. MFG PLANT 7.
 
   EHMSTS         40000802
 
                           ;код ошибки МОС ВП
 
                           ;вектор захвата микро = 08 (%)
 
                           ;вход в енм
 
   EVMQSAV        00000004
 
                           ;виртуальный адрес для запросов
 
                           ;      порта евох
 
   EBCS           00000800
 
                           ;ошибка паритета ЕСS
 
   EDPSR          00000000
 
   CSLINT         04183D1F
 
 
                            - 36 -
 
                         00152-01 34 08
 
 
                           ;адрес на с-шине = 1 (16-пичный)
 
                           ;данные на с-шине = 3 (16-ричный)
 
                           ;запрос на приоритет прерывания = 8
 
                           ;внутренний источник, адаптер ввода
 
                           ; вывода = 0, интервальный таймер
 
   IBESR          00004000
 
                           ;UOP SEL = IBOX REGISTER SELECT
 
                           ;UTPR < 2:C> = EBOX PORT
 
                           ;разрешено ETRAP
 
   EBXWD1         00000004
 
                           ;содержимое вершины "Р-стека" -
 
                           ;  одно из последних длинных слов,
 
                           ;  записанных в МВОХ
 
   EBXWD2         7FF593D0
 
                           ;содержимое ячейки, предшествующеи
 
                           ;  вершине "Р-стека" - одно из пос-
 
                           ;  ледних длинных слов, записанных
 
                           ;  в МВОХ
 
   VASAV          7FF593F8
 
                           ;виртуальный адрес для выборки опе-
 
                           ;  ранда
 
                           ;адрес запроса порта
 
                           ;вычисление операнда
 
                           ;предварительная выборка и доставка
 
                           ;  результата
 
   VIBASAV        0000E7FF
 
                           ;виртуальный адрес следующего запро
 
                           ;  са IBUF для заполнения буфера
 
                           ;  IBUFFER
 
   ESASAV         0000E7F2
 
 
                            - 37 -
 
                         00152-01 34 08
 
 
                           ;счетчик команд во время выполнения
 
                           ;  евох и запоминания результата
 
   ISASAV         0000E7F2
 
                           ;блок вычислений вычисляет адресили
 
                           ; производит предварительную выбор-
 
                           ; ку операнда, или передает операнд
 
   CPC            0000E7F4
 
                           ;счетчик команд в блоке декодирова-
 
                           ;  ния
 
   MSTAT1         34006004
 
                           ;признак со не найден
 
                           ;блок найден
 
                           ;адаптер А-шины
 
                           ;счетчик слов
 
                           ;тип цикла = чтение регистра
 
                           ;ср- адресат = ЕВОХ
 
   MSTAT2         00004F00
 
                           ;диагностический статус из SBIA
 
                           ;плохой код данных на шине
 
                                              6+
   AN/ER/INC=MACH ERR:ERRLOG.SYS_31MAR1985/ENT=S=82/OUT=DP.
 
 
 
        4.4. Примеры сообщений об ошибках памяти
 
 
 
        Сообщения об ошибках памяти  могут  быть  двух  типов:
 
   фатальные и нефатальные; нефатальная  ошибка  памяти  озна-
 
   чает, что один бит в некоторой ячейке оказался неверным и с
 
   помощью кода, исправляющего  ошибки,  удалось  восстановить
 
   его правильность. При фатальной  ошибке  неверны  несколько
 
   битов, и код, исправляющий ошибки, бессилен  Истранить  их.
 
 
 
                            - 38 -
 
                         00152-01 34 08
 
 
   формат сообщений о фатальных и нефатальных  ошибках  памяти
 
   одинаков. Отчеты об ошибках памяти могут  быть  разбиты  на
 
   две логически различные части.
 
 
        Первый раздел отчета об ошибках памяти идентификацион-
 
   ный. Второй содержит информацию о конкретной ошибке памяти.
 
   В него входит информация о значениях регистров  контроллера
 
   памяти в момент ошибки. При генерации  отчета  производится
 
   преобразование битовых значений регистров в  содержательный
 
   текст, который печатается в правой стороне отчета.
 
 
        Пример.
 
 
   *************************ENTRY    7. **********************
 
   ERROR SEQUENCE 4.                    LOGGED ON SID 03003700
 
   MEMORY ERROR.  6-MAR-1985 10:11:34.70
 
                  KA730 REV# 0.MIC# 55.
 
   CSRO           00166200
 
                            ;синдром ошибки
 
                            ;ошибка исправлена, бит 31
 
                            ;ошибка в массиве но.1
 
   CSR1           18000000
 
                            ;разрешено отображение памяти
 
                            ;разрешен отчет о "CRD"
 
   CSR2           8100000F
 
                            ;об'ем памяти
 
                            ;в наличии зупв по 64к
 
   *************************ENTRY    91.**********************
 
   ERROR SEQUENCE 342.                  LOGGED ON SID 0138207A
 
   FATAL MEMORY ERROR.  4-MAR-85 08:16:45.20
 
                  KA730 REV# 7. SERIAL# 122.
 
 
 
                            - 39 -
 
                         00152-01 34 08
 
 
   CONTROLLER AT TR #5.
 
   PRTCFNG        00000040
 
                            ;адаптер- многопортовая память
 
                            ;номер порта
 
   PRTCR          00000003
 
                            ;прерывания от главной управляющей
 
                            ;  программы разрешены
 
                            ;прерывания от интерфейса с портом
 
                            ;  разрешены
 
                            ;счетсик зупв
 
   PCSR           07870003
 
                            ;прерывания по ошибке разрешены
 
   IVDTCR         01870001
 
                            ;идентификатор неверного кэш-у-ств
 
                            ;в наличии матричных плат
 
                            ;базовый адрес памяти
 
   AER            16A70005
 
                            ;синдром ошибки
 
                            ;ошибка RDS
 
                            ;ошибка в матрице но.6
 
                            ;ошибка в банке матрицы но.1
 
                            ;запрос на запись в журнал ошибок
 
   CSRO           0000C2C8
 
                            ;память содержит верные данные
 
                            ;порт выключен
 
                            ;прерывание по ошибке от порта но.
 
                            ;порт в автономном режиме
 
   CSR1           0000380A
 
                            ;порт подсоединен к SBI
 
                            ;порт отсутствует
 
 
                            - 40 -
 
                         00152-01 34 08
 
 
                            ;есть карта отключения;
 
                            ;  принято подтверждение об отклю-
 
                            ;  чении
 
   MAT            0000C000
 
 
 
        4.5. Пример  сообщений   о   нефатальном   и
 
             пользовательском контроле ошибок
 
 
 
        Приведены примеры нефатального контроля ошибок. Отчеты
 
   о нефатальном и пользовательском контроле ошибок имеют оди-
 
   наковый формат. Они  состоят  из  трех  основных  разделов:
 
   идентификация, причина контроля ошибок и информация о  про-
 
   цессе, а также информация о системных регистрах.
 
 
        Пример 1
 
 
   *************************ENTRY    58.**********************
 
   ERROR SEQUENCE 1129.                 LOGGED ON SID 03003700
 
   FATAL BUGCHECK.  6-MAR-1985 10:11:34.70
 
                  KA730 REV# 0.MIC# 55.
 
   Сбой при чтении аср из почтового ящика
 
   PROCESS NAME   ..............
 
   PROCESS ID     00000000
 
   ERROR PC       0000033C
 
   ERROR PSL      00DF0008
 
                            ;N-бит
 
                            ;уровень приоритета прерываний
 
                            ;предыдущий режим = пользователь
 
                            ;текущий режим = ядро
 
 
 
 
 
 
                            - 41 -
 
                         00152-01 34 08
 
 
 
 
 
        Пример 2
 
 
   Указатели стека:
 
   KSP 7FFE7D84  ESP 7FFE9E00  SSP 7FFED04E  USP 7FF7F194
 
   ISP 80140000
 
   Регистры общего назначения:
 
   R0 00000001  R1 00090C00  R2 7FFDFD80  R3 80000F10
 
   R4 00000001  R5 00000001  R6 7FFFD78A  R7 7FFED78A
 
   R8 7FFED0B2  R9 7FFED25A  R10 00000000  R11 7FFE3FC0
 
   AP 00000000  FP 7FFE7DD0  SP 7FFE7DS8
 
   Системные регистры:
 
   POBR           80199000
 
                            ;PO PTE BASE (VIRT ADDR)
 
   POLR           00000003
 
                            ;TOTAL PO PAGES
 
   P1BR           7F9A8A00
 
                            ;P1 PTE BASE (VIRT ADDR)
 
   P1LR           001FFBE5
 
                            ;TOTAL NON-EXISTENT P1 PAGES
 
   SBR            001FA600
 
                            ;SYSTEM PTE BASE (PHY ADDR)
 
   SLR            00001680
 
                            ;TOTAL PAGES 'SYSTEM' VIRT MEM
 
   PCBB           00024874
 
                            ;PCB BASE (PHY ADDR)
 
   SCBB           001F8400
 
                            ;SCB BASE (PHY ADDR)
 
   ASTLVL         00000002
 
                            ;SUPERVISOR MODE AST PENDING
 
 
                            - 42 -
 
                         00152-01 34 08
 
 
   SISR           00000000
 
                            ;INTERRUPT REQUEST ACTIVE = 0.
 
 
 
        4.6. Примеры неопознанных сообщений
 
 
 
        Приведены примеры сообщений  об  ошибках  неизвестного
 
   типа. Эти отчеты состоят из раздела идентификации и раздела
 
   записи об ошибке. Запись об ошибке  будет  содержать  поля,
 
   которые поддаются интерпретации, а для остальных полей при-
 
   водятся значения в формате длинных шестнадцатеричных слов.
 
 
        Пример 1
 
 
   *************************ENTRY    95.**********************
 
   ERROR SEQUENCE 2.                    LOGGED ON SID 03003800
 
   "UNKNOWN DEVICE" ENTRY. 4-MAR-85 10:12:12.44
 
                           KA730 REV# 0.MIC# 54.
 
   Сообщение "неизвестное устройство"
 
   ERF$L_SID      03003800
 
                            ;регистр идентификатора системы
 
   ERL$W_ENTRY        0082
 
                            ;тип сообщения об ошибке
 
   EXE$GQ_SYSTIME C9764980
 
                  008C2F30  ;64-разрядное время регистрации
 
                            ;  ошибки
 
   ERL$GL_SEQUENCE    0002
 
                           ;уникальный порядковый номер ошибки
 
   UCB$W_STS          0110
 
                            ;состояние устройства
 
   UCB$B_DEVCLSS        42
 
                            ;класс устройства
 
 
                            - 43 -
 
                         00152-01 34 08
 
 
        Пример 2
 
 
   UCB$B_DEVTYPE        42
 
                            ;тип устройства
 
   UCB$W_UNIT         0000
 
                            ;физический номер устройства
 
   UCB$W_ERRCNT       0001
 
                            ;счетчик ошибок устройства
 
   UCB$L_OPCNT    00000001
 
                            ;счетчик операций устройства
 
   DRB$L_OWNER    00010004
 
                            ;UIC владельца
 
   UCB$L_DEVCHAR  0C440007
 
                            ;характеристики устройства
 
   UCB$B_SLAVE          00
 
                            ;подчиненный контроллер устройства
 
   DDB$T_NAME     41515403
 
                  00000000
 
                  00000000
 
                  00000000
 
                            ;   /.TQA............/
 
   LONGWORD 1.    00000008
 
   LONGWORD 2.    00000007
 
   LONGWORD 3.    00000502
 
   LONGWORD 4.    04000000
 
   LONGWORD 5.    00010000
 
   LONGWORD 6.    00000000
 
   LONGWORD 7.    00000080
 
   LONGWORD 8.    00000000
 
   LONGWORD 9.    00000000
 
 
 
                            - 44 -
 
                         00152-01 34 08
 
 
   *************************ENTRY   161.**********************
 
   ERROR SEQUENCE 213.                  LOGGED ON SID 070001FF
 
   "UNKNOWN ENTRY". 4-MAR-85 11:35:15.73
 
                    UVAX1 REV# 255. MIC# 1.
 
   Запись об ошибке
 
   ERF$L_SID      070001FF
 
                            ;регистр идентификатора системы
 
   ERL$W_ENTRY        0008
 
                            ;тип сообщения об ошибке
 
   EXE$GQ_SYSTIME 89953F20
 
                  008C3E2A  ;64-разрядное время регистрации
 
                            ;  ошибки
 
   ERL$GL_SEQUENCE    00D5
 
                            ;уникальный порядковый номер
 
   LONGWORD 1.    00000001
 
                            ; /...../
 
   LONGWORD 2.    00410001
 
                            ; /..A..../
 
 
 
 
 
                            - 45 -
 
                         00152-01 34 08
 
 
                     5. СООБЩЕНИЯ ОПЕРАТОРУ
 
 
 
 
        Программа регистрации ошибок  формирует  сообщения  об
 
   обнаруженных противоречивых сообщениях в  журнале.  В  этом
 
   разделе перечислены все сообщения с об'яснениями и рекомен-
 
   дуемыми мерами.
 
 
   BADEVTYP, BAD DEVICE TYPE, 'VALUE' IN TEXT LIBRARY MODULE
 
             'NAME'
 
 
        Об'яснение: значение в указанном  библиотечном  модуле
 
   выходит за требуемые пределы.
 
 
        Действие оператора:  принять  во  внимание  сообщения,
 
   выводимые программными средствами.
 
 
   CLSTBLERR, DEVICE CLASS VALUE,'VALUE' NOT IN CLASS TABLES
 
 
        Об'яснение: значение указанного  класса  не  поддержи-
 
   вается.
 
 
        Действие  оператора:  принять  во  внимание  сообщения
 
   выводимые программными средствами.
 
 
   CNFQUAVAL, CONFLICTING QUALIFIER VALUES FOR 'QUALIFIER',
 
              QUALIFIER
 
 
        Об'яснение: были указаны два или более  противоречащих
 
   друг другу квалификатора.
 
 
        Используйте команду HELP языка  DCL  для  того,  чтобы
 
   определить, какие квалификаторы находятся в противоречий  и
 
   повторите ввод команды.
 
 
 
 
                            - 46 -
 
                         00152-01 34 08
 
 
   CVTERR, ERROR CONVERTING TO DECIMAL VOLUE,'VOLUE'
 
 
        Об'яснение: была  предпринята  попытка  конвертировать
 
   некоторое значение в десятичную форму,  в  результате  чего
 
   получена ошибка.
 
 
        Действие оператора:  принять  во  внимание  сообщения,
 
   выводимые программными средствами.
 
 
   DEVSELREQ, DEVICE SELECTION REQUIRED
 
 
        Об'яснение: должен быть выбран тип или класс устройст-
 
   ва.
 
 
        Действие оператора: используйте  нужный  квалификатор,
 
   выберите тип или класс.
 
 
   INCENTRY, INCOMRLETE ENTRY TYPE,'ENTRY TYPE VALUE'
 
 
        Об'яснение: в процессе регистрации ошибки была внесена
 
   только часть записи об ошибке.
 
 
        Действие оператора: эта ошибка не восстанавливаема.
 
 
   IMPUT, 'FILE-NAME','N' REJECTED
 
 
        Это сообщение выдаст имя входного файла и число  вхож-
 
   дений, выбранных из этого  входного  файла,  или  же  число
 
   вхождений, доступ к которым был отвергнут.
 
 
        Действие оператора: нет.
 
 
   INVDEVICE, INVALID OR UNSUPPORTED DEVICE 'DEVICE-NAME'
 
 
        Об'яснение:  было  указано  имя  устройства,   которое
 
   является недопустимыми, или оно не поддерживается.
 
 
 
                            - 47 -
 
                         00152-01 34 08
 
 
        Действие оператора: используйте команду HELP языка DCL
 
   для выбора допустимых ключевых слов и повторите ввод коман-
 
   ды.
 
 
   INVKEYWRD, INVALID KEYWORD 'STRING'
 
 
        Об'яснение: в  качестве  значения  квалификатора  было
 
   указано недопустимое ключевое слово.
 
 
        Действие оператора: используйте команду HELP языка DCL
 
   для выбора  допустимых  ключевых  слов,  и  повторите  ввод
 
   команды.
 
 
   INVREPTYP, IVALID REPORT TYPE
 
 
        Об'яснение: был указан недопустимый тип сообщения.
 
 
        Действие оператора: используйте команду HELP языка DCL
 
   для выбора допустимых ключевых слов и повторите ввод коман-
 
   ды.
 
 
   LOADERR, ERROR LOADING IMAGE,'IMAGE-NAME'
 
 
        Об'яснение: при  попытке  загрузки  указанного  образа
 
   возникла ошибка.
 
 
        Действие оператора: получите указанный образ из  дист-
 
   рибутивного набора. Если этого образа в вашем  дистрибутиве
 
   нет, то примите во внимание сообщения, выводимые  программ-
 
   ными средствами.
 
 
   TOTAL, 'N' SELECTED,'N' REJECTED,'N' IMPUT FILES
 
 
        Об'яснение: это сообщение содержит сведения  об  общем
 
   числе обработанных входных файлов и общем числе  обработан-
 
 
 
                            - 48 -
 
                         00152-01 34 08
 
 
   ных записей регистрации  ошибок,  которые  были  выбраны  и
 
   отвергнуты.
 
 
        Действия оператора: нет.
 
 
   UNKCLASS, UNKNOWN DEVICE CLASS FOUND,'DEVICE CLASS VALUE'
 
 
        Об'яснение: была получена запись с классом устройства,
 
   которое неизвестно или неподдерживается.
 
 
        Действие оператора: для получения сведений используйте
 
   ключевое слово UNKNOWN_ENTRIES с квалификатором /INCLUDE.
 
 
   UNKCPU, UNKNOWN CPU TYPE, 'SPU-TYPE VALUE'
 
 
        Об'яснение: получена запись с типом процессора,  кото-
 
   рый неизвестен или не поддерживается.
 
 
        Действие оператора: для получения сведений используйте
 
   ключевое слово UNKNOWN_ENTRIES с квалификатором /INCLUDE.
 
 
   UNKENTRY, UNKNOWN ENTRY TYPE, 'EPTRE-TYPE VALUE'
 
 
        Об'яснение: получена запись с типом записи, который не
 
   известен или не поддерживается.
 
 
        Действие оператора: для получения сведений используйте
 
   ключевое слово UNKNOWN_ENTRIES с квалификатором /INCLUDE.
 
 
   UNKTYPE, UNKNOWN DEVICE TYPE,'DEVICE-TYPE VALUE'
 
 
        Об'яснение: получена запись с типом устройства,  кото-
 
   рое не известно или не поддерживается.
 
 
        Действие оператора: для получения сведений используйте
 
   ключевое слово UNKNOWN_ENTRIES с квалификатором /INCLUDE.
 
 
   
                       -49K-  
  
                    00152-01 34 08  
 
   ------------------------------------------------------------
   I                                                          I
   I                  Лист регистрации изменений              I
   I                                                          I
   I----------------------------------------------------------I
   IНомера листов (страниц)IВсего IN     IВходящий IПодп.IДатаI
   I-----------------------IлистовIдоку- IN сопро- I     I    I
   IИ IИз- IЗа- IНо- IАнну-I(стра-Iмента Iводитель-I     I    I
   Iз Iме- Iме- Iвых Iлиро-Iниц   I      Iного до- I     I    I
   Iм Iнен-Iнен-I    Iван- Iв до- I      Iкум. и   I     I    I
   I. Iных Iных I    Iных  Iкум.  I      Iдата     I     I    I
   I----------------------------------------------------------I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
   I  I    I    I    I     I      I      I         I     I    I
                                                
                                              
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!