


Утвержден

2б.00152-01 97 14-1-ЛУ











               Операционная система МОС ВП

         Подсистема режима совместимости с ОС РВ

                  Справочный материал



                 2б.00152-01 97 14-2



                     Листов 206/4К



















Перв. примен.               1987             Литера

2б.00152-01



























               Операционная система МОС ВП

         Подсистема режима совместимости с ОС РВ

                   Справочный материал



                     00152-01 97 14-2



                       Листов 202





























                           1987




                          - 2 -

                     00152-01 97 14-2


                        АННОТАЦИЯ



     Справочный материал подсистемы  режима  совместимости

содержит информацию,  необходимую  для  использования  ко-

мандного языка MCR системы МОС ВП, для выполнения  косвен-

ных командных файлов  и  для  использования  обслуживающих

программ ОС РВ в МОС ВП.


                          - 3 -

                     00152-01 97 14-2


                       СОДЕРЖАНИЕ



1.       Команды MCR.....................................5

1.1.     Команда PURGE...................................5

1.2.     Команда RENAME.................................10

1.3.     Команда RESUME.................................15

1.4.     Команда RUN (образ)............................16

1.5.     Команда RUN (процесс)..........................18

1.6.     Команда RUNOFF.................................34

1.6.1.   Форматирование файлов..........................34

1.6.2.   Получение оглавления...........................35

1.6.3.   Получение предметного указателя................37

1.7.     Команда SEARCH.................................38

1.8.     Команда SET....................................42

1.8.1.   Описание  выборов команды SET..................42

1.9.     Команда SHOW...................................91

1.9.1.   Описание выборов команды SHOW..................91

1.10.    Команда SORT..................................134

1.11.    Команда SUBMIT................................145

1.12.    Команда TIME..................................155

1.13.    Команда TKB...................................155

1.14.    Команда TYPE..................................166

1.15.    Команда UFD...................................170

2.       Косвенные командные файлы.....................172

2.1.     Директивы  процессора   косвенных  командных

         файлов системы МОС ВП.........................173

2.2.     Запуск косвенного командного файла............180

2.3.     Директивы .IFINS, .IFACT и .IFLOA.............181

2.4.     Директива .ONERR..............................181

2.5.     Недопустимые директивы........................181


                          - 4 -

                     00152-01 97 14-2


2.5.1.   Альтернатива директив .XQT и .WAIT............182

2.5.2.   Альтернатива директивы .ONERR.................182

2.6.     Ключи.........................................182

2.7.     Специальные переменные........................183

2.8.     Числовые переменные...........................186

2.9.     Таблица меток.................................187

2.10.    Логические имена SYS$INPUT и SYS$COMMAND......188

2.11.    Директива .ASKN...............................189

2.12.    Директива .ENABLE DOLLARS.....................190

2.13.    Директива .PAUSE..............................191

2.14.    Директива .DELAY..............................192

2.15.    Вложенные косвенные  командные файлы..........192

2.16.    Лексические функции...........................193

2.17.    Особенности выполнения  косвенных  командных

         файлов в МОС ВП...............................195

3.       Сообщения об ошибках..........................197

Приложение 1. Привилегии...............................198

Приложение 2. Квоты ресурсов и лимиты..................201

Перечень ссылочных документов..........................202


                          - 4K -

                   2б.00152-01 97 14-2


2.5.1.   Альтернатива директив .XQT и .WAIT............182

2.5.2.   Альтернатива директивы .ONERR.................182

2.6.     Ключи.........................................182

2.7.     Специальные переменные........................183

2.8.     Числовые переменные...........................186

2.9.     Таблица меток.................................187

2.10.    Логические имена SYS$INPUT и SYS$COMMAND......188

2.11.    Директива .ASKN...............................189

2.12.    Директива .ENABLE DOLLARS.....................190

2.13.    Директива .PAUSE..............................191

2.14.    Директива .DELAY..............................192

2.15.    Вложенные косвенные  командные файлы..........192

2.16.    Лексические функции...........................193

2.17.    Особенности выполнения  косвенных  командных

         файлов в МОС ВП...............................195

3.       Сообщения об ошибках..........................197

Приложение 1. Привилегии...............................198

Приложение 2. Квоты ресурсов и лимиты..................201

Перечень ссылочных документов.........................202K


                          - 5 -

                     00152-01 97 14-2


                    1. Команды MCR



     В данном разделе описываются  команды  интерпретатора

МCR системы МОС ВП и их квалификаторы. В описаниях  команд

указаны различия между командами интерпретатора MCR систе-

мы МОС ВП и командами интерпретатора MCR системы ОС РВ.

     Для совместимости с командами интерпретатора MCR сис-

темы ОС РВ  в системе МОС ВП  синтаксис  некоторых  команд

интерпретатора MCR OTличен ОТ СИнтаксиса их аналогов в ин-

терпретаторе DCL.

     Информация о командах DCL содержится в [1], [2], [3],

[4].



     1.1. Команда PURGE



     Команда PURGE удаляет все, кроме последней  или  нес-

кольких последних, версии указанного файла или файлов.

     Формат

PURGE [спец_файла[,...]]

где спец_файла - спецификация файла,  над  которым  должна

быть выполнена операция. Если задается  несколько  файлов,

их спецификации следует отделять друг от друга запятой (,)

или знаком плюс (+). Если спецификация файла  не  указана,

команда PURGE производит операцию над всеми файлами в  те-

кущем каталоге по умолчанию.

     Команда PURGE не предусматривает умолчаний для  имени

файла и типа файла. В спецификации файла нельзя  указывать

номер версии. При задании каталога,  имени  и  типа  файла

можно использовать символ обобщения.


                          - 6 -

                     00152-01 97 14-2


     Командные квалификаторы

     /BACKUP

     /BEFORE[=время]

     /BY_OWNER[=UIC]

     /[NO]CONFIRM

     /CREATED

     /[NO]ERASE

     /EXCLUDE=(спец_файла[,...])

     /EXPIRED

     /KEEP=N

     /[NO]LOG

     /MODIFIED

     /SINCE[=время]



/BACKUP

     - квалификатор /BACKUP позволяет выбрать файлы в  со-

     Ответствии с датой их самого  последнего  сохранения.

     Этот  квалификатор   указывается   с   квалификатором

     /BEFORE или /SINCE. Недопустимо использование  квали-

     Фикатора /BACKUP с квалификаторами /CREATED, /EXPIRED

     И /MODIFIED. По умолчанию  используется  квалификатор

     /CREATED.

/BEFORE[=время]

     - квалификатор /BEFORE позволяет  выбрать  только  те

     файлы, которые датируются до указанного времени. Вре-

     мя может быть указано как абсолютное  время  или  как

     комбинация абсолютного времени и дельта-времени.  При

     указании времени  могут  быть  использованы  ключевые

     слова TODAY, TOMORROW и YESTERDAY. Если время не ука-

     зано, предполагается TODAY.


                          - 7 -

                     00152-01 97 14-2


/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER позволяет выбрать  один  или

     более файлов,  UIC  владельца  которых  соответствует

     указанному в квалификаторе /BY_OWNER коду идентифика-

     ции  пользователя   (UIC).   Если   в   квалификаторе

     /BY_OWNER UIC не указан,  используется  UIC  текущего

     процесса.

/CONFIRм

/NOCONFIRM

     - квалификатор /CONFIRM указывает, что  перед  каждой

     операцией, выполняемой по команде  PURGE,  необходимо

     подтверждение пользователя, что эта  операция  должна

     быть  выполнена.  Утвердительными  ответами  являются

     YES, TRUE и 1. Отрицательными ответами  являются  NO,

     FALSE, 0 и <CR>. Ответы QUIT и CTRL/Z  означают,  что

     выполнение команды  PURGE  необходимо  приостановить.

     ответ ALL, означает, что выполнение команды PURGE не-

     обходимо  продолжить,  не  запрашивая  в   дальнейшем

     подтверждения у пользователя.

/CREATED

     - квалификатор /CREATED позволяет выбрать файлы,  ос-

     новываясь на дате их создания. Квалификатор  /CREATED

     используется только  с  квалификаторами  /BEFORE  или

     /SINCE.  Не  допустимо  использование   квалификатора

     /CREATED  с  квалификаторами  /BACKUP,   /EXPIRED   и

     /MODIFIED.  По  умолчанию  используется  квалификатор

     /CREATED.

/ERASE

/NOERASE

     - квалификатор /ERASE позволяет  при  удAлении  файла


                          - 8 -

                     00152-01 97 14-2


     произвести затирание данных, которые в нем хранились.

     по умолчанию после удаления файла  потери  данных  не

     происходит.

/EXCLUDE=(спец_файла[,...])

     - квалификатор /EXCLUDE позволяет указать файлы,  ко-

     торые исключаются из  выполняемой  по  команде  PURGE

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

     спецификация только одного файла. В спецификации фай-

     ла можно  указать  каталог,  допустимо  использование

     символа обобщения, но нельзя указать устройство.

/EXPIRED

     - квалификатор /EXPIRED позволяет выбрать файлы в со-

     ответствии с их датами истечения.  Этот  квалификатор

     указывается с квалификаторами /BEFORE или /SINCE.  Не

     допустимо использование этого квалификатора с  квали-

     фикаторами /BACKUP, /CREATED и /MODIFIED. По  умолча-

     нию используется квалификатор /CREATED.

/KEEP=N

     - квалификатор /KEEP задает максимальное число версий

     для указанных файлов, которые должны быть  сохранены.

     если квалификатор /KEEP не задан, удаляются все  вер-

     сии файла, кроме последней.

/LOG

/NOLOG

     - квалификатор /LOG управляет распечаткой  специфика-

     ций файлов по мере их удаления. По умолчанию  команда

     PURGE не распечатывает спецификации  файлов,  которые

     она удаляет.

/MODIFIED

     - квалификатор /MODIFIED позволяет  выбрать  файлы  в


                          - 9 -

                     00152-01 97 14-2


     соответствии с датой их самой последней  модификации.

     Этот квалификатор используется только с  квалификато-

     ром /BEFORE или /SINCE.  Не  допустимо  использование

     этого  квалификатора   с   квалификаторами   /BACKUP,

     /CREATED и /EXPIRED. По умолчанию используется квали-

     фикатор /CREATED.

/SINCE[=время]

     - квалификатор /SINCE позволяет выбрать файлы,  кото-

     рые датируются после указанного времени. Время  может

     быть указано как абсолютное время или как  комбинация

     абсолютного времени  и  дельта-времени.  Время  может

     быть задано с помощью ключевых слов TODAY, TOMORROW и

     YESTERDAY.  Если  время  не  указано,  предполагается

     TODAY.

     Примеры:

1. > PURGE

     В этом примере команда PURGE удаляет все версии, кро-

ме последней, всех  файлов  в  каталоге,  определенном  по

умолчанию.

2. > PURGE/KEEP=2

     В этом примере команда PURGE с  квалификатором  /KEEP

удаляет все версии, кроме двух последних,  всех  файлов  в

каталоге, определенном по умолчанию.

3. > PURGE *.COM

     В этом примере команда PURGE удалает в каталоге,  оп-

ределенном по умолчанию, все версии, кроме последней, всех

файлов с типом COM.

4. > PURGE/KEEP=3 [WILDER.JOB308]ACCOUNT.COB

     Команда PURGE в этом примере  удаляет  в  подкаталоге

[WILDER.JOB308] все версии, кроме  трех  последних,  файла


                          - 10 -

                     00152-01 97 14-2


ACCOUNT.COB.

5. > PURGE/KEEP=2 TAMPA::DISK1:[EXAMPLE]*.LIS

     Эта команда PURGE удаляет на удаленном узле TAMPA  на

устройстве с логическим именем DISK1 в каталоге  [EXAMPLE]

все версии, кроме двух последних, всех файлов с типом LIS.

     Примечания:

     1. Действия, аналогичные команде  PURGE,  могут  быть

выполнены по команде PIP с квалификатором /PU.

     2. Различие  между командой PURGE и  командой  PIP  с

квалификатором /PU обнаруживается лишь в том случае,  если

требуется сохранить заданное  число  версий,  а  некоторые

версии файла ранее были удалены. Например, если  последней

версией файла является 15, а версия 13  этого  файла  была

ранее удалена, то команда PURGE/KЕEP=3 удалит  все  версии

этого файла, кроме версий 12, 14 и 15. В результате выпол-

нения команды PIP с квалификатором /PU:3 останутся  только

14 и 15 версии этого файла,  т.  к.  вычисляется  разность

15-3 и сохраняются только файлы с номерами версий  больше,

чем эта разность.



     1.2. Команда RENAME



     Команда RENAME изменяет спецификацию каталога,  имени

файла, типа или номера версии существующего дискового фай-

ла или дискового каталога.

     Формат

RENAME  спец_вв_файла[,...]  спец_выв_файла[,...]

где спец_вв_файла - определяет имя одного  или  нескольких

файлов, спецификации которых должны быть изменены.

     При указании спецификации  файла  можно  использовать


                          - 11 -

                     00152-01 97 14-2


символы обобщения в полях каталога, имени файла, типа фай-

ла или номера версии. При использовании символов обобщения

переименовываются все файлы,  спецификации  которых  соот-

ветствуют определенным символом обобщения полям;

    спец_выв_файла - задает  спецификацию  файла,  которая

используется для переименования  вводного  файла.  Команда

RENAME использует поля устройства, каталога, имени файла и

типа файла из спецификации вводного файла для  определения

значений по умолчанию для спецификаций выводного файла.

     Символы обобщения в соответствующих полях  специфика-

ции вводного и выводного файлов приводят к нескольким опе-

рациям переименования.

     Команда RENAME определяет номер версии выводного фай-

ла в соотвествии со следующими правилами:

     1) если в спецификации выводного  файла  явно  указан

номер версии, команда RENAME использует этот номер версии;

     2) если в спецификации вводного или выводного файла в

поле номера версии находится звездочка, команда RENAME ис-

пользует номер версии каждого вводного файла для определе-

ния версии соответствующего выводного файла;

     3) если не существует файла с тем же именем  и  типом

файла, которые указаны для выводного файла, команда RENAME

назначает выводному файлу номер версии, равный 1;

     4) если существует файл с тем же самым именем  и  ти-

пом, которые указаны для выводного файла,  команда  RENAME

присваивает выводному файлу номер версии на единицу больше

последнего существующего номера версии этого  файла,  если

не задан квалификатор /NONEW_VERSION.

     Командные квалификаторы

     /BACKUP


                          - 12 -

                     00152-01 97 14-2


     /BEFORE[=время]

     /BY_OWNER[=UIC]

     /[NO]CONFIRM

     /CREATED

     /EXCLUDE=(спец_файла[,...])

     /EXPIRED

     /[NO]LOG

     /MODIFIED

     /[NO]NEW_VERSION

     /SINCE[=время]

/BACKUP

     - квалификатор /BACKUP позволяет выбрать для переиме-

     нования файлы в соответсвии с датой их самого послед-

     него сохранения. Этот квалификатор указывается с ква-

     лификатором /BEFORE  или  /SINCE.  Не  допустимо  ис-

     пользование  этого  квалификатора  с  квалификаторами

     /CREATED, /EXPIRED  и  /MODIFIED.  По  умолчанию  ис-

     пользуется квалификатор /CREATED.

/BEFORE[=время]

     - квалификатор /BEFORE позволяет выбрать для переиме-

     нования только те файлы, которые датируются  до  ука-

     занного времени. Время может быть указано  как  абсо-

     лютное время или как комбинация абсолютного времени и

     дельта_времени. При указании времени можно  использо-

     вать ключевые слова TODAY, TOMORROW и YESTERDAY. Если

     время не указано, предполагается TODAY.

/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER позволяет выбрать для переи-

     менования один или более файлов, UIC владельца  кото-

     рых   соответствует   указанному   в    квалификаторе


                          - 13 -

                     00152-01 97 14-2


     /BY_OWNER коду идентификации пользователя (UIC). Если

     в квалификаторе /BY_OWNER не указан UIC,  предполага-

     ется UIC текущего процесса.

/CONFIRM

     - квалификатор /CONFIRM указывает, что  перед  каждой

     операцией  переименования  необходимо   подтверждение

     пользователя, что эта операция должна быть выполнена.

     утвердительными ответами являются YES, TRUE и 1.  От-

     рицательными ответами являются NO, FALSE, 0  и  <CR>.

     Ответы QUIT и CTRL/Z означают, что выполнение команды

     RENAME необходимо приостановить. Ответ ALL  означает,

     что выполнение команды RENAME необходимо  продолжить,

     не запрашивая в дальнейшем подтверждения у  пользова-

     теля.

/CREATED

     - квалификатор /CREATED позволяет выбрать  файлы  для

     переименования, основываясь на дате их создания. Этот

     квалификатор  используется  только  с  квалификатором

     /BEFORE или /SINCE. Не допустимо использование квали-

     фикатора /CREATED с квалификаторами /BACKUP, /EXPIRED

     и /MODIFIED. По умолчанию  используется  квалификатор

     /CREATED.

/EXCLUDE=(спец_файла[,...])

     - квалификатор /EXCLUDE позволяет указать файлы,  ко-

     торые не  должны  быть  переименованы.  Скобки  можно

     опустить, если указывается спецификация только одного

     файла. В спецификации файла может быть  указан  ката-

     лог, допустимо использование  символа  обобщения,  но

     нельзя указывать устройство.


                          - 14 -

                     00152-01 97 14-2


/EXPIRED

     - квалификатор /EXPIRED позволяет выбирать файлы  для

     переименования в соответствии с их  датой  истечения.

     этот  квалификатор   указывается   с   квалификатором

     /BEFORE или /SINCE. Не допустимо использование  этого

     квалификатора с квалификаторами /BACKUP,  /CREATED  и

     /MODIFIED.  По  умолчанию  используется  квалификатор

     /CREATED.

/LOG

/NOLOG

     - квалификатор /LOG позволяет  управлять  распечаткой

     спецификаций файлов по  мере  их  переименования.  По

     умолчанию команда RENAME не распечатывает имена  фай-

     лов, которые были переименованы.

/MODIFIED

     - квалификатор /MODIFIED позволяет выбрать файлы  для

     переименования в соответствии с датой их  самой  пос-

     ледней модификации. Этот квалификатор используется  с

     квалификаторами /BEFORE или /SINCE. Не допустимо  ис-

     пользования  этого  квалификатора  с  квалификаторами

     /BACKUP, /CREATED и /EXPIRED. По умолчанию  использу-

     ется квалификатор /CREATED.

/NEW_VERSION

/NONEW_VERSION

     - квалификатор /NEW_VERSION  указывает,  что  команда

     RENAME должна  автоматически  назначать  новый  номер

     версии выводному файлу, Eсли уже  существует  файл  с

     тем же самым именем и типом. Значением  по  умолчанию

     для этого  квалификатора  является  /NEW_VERSION.  По

     умолчанию, если существует файл с таким же  именем  и


                          - 15 -

                     00152-01 97 14-2


     типом, команда RENAME назначает выводному файлу новый

     номер версии. Если указан квалификатор /NONEW_VERSION

     и если в каталоге уже есть файл с таким же  именем  и

     типом файла, что и выводной файл, система выводит со-

     общение об ошибке.

/SINCE[=время]

     - квалификатор /SINCE позволяет выбрать для  переиме-

     нования те файлы, которые датируются после указанного

     времени. Время может быть указано как абсолютное вре-

     мя  или  как   комбинация   абсолютного   времени   и

     дельта-времени. Время может  быть  задано  с  помощью

     ключевых слов TODAY, TOMORROW и YESTERDAY. Если время

     не указано, предполагается TODAY.

     Примеры:

1. > RENAME AVERAGE.OBJ OLDAVER

     В этом примере команда RENAME осуществляет  изменение

имени последней версии файла AVERAGE.OBJ на  OLDAVER.  Тип

файла остается без измененип.  Если  не  существует  файла

OLDAVER.OBJ, новому файлу присваивается номер версии, рав-

ный 1.

2. > RENAME *.TXT;*  *.OLD;*

     В  этом  примере  в  результате  выполенения  команды

RENAME осуществляется изменение типа файла TXT на OLD  для

всех версий всех файлов в текущем каталоге  по  умолчанию.

номера версий и имена файлов при этом не изменяются.



     1.3. Команда RESUME



     Команда RESUME позволяет продолжить  выполнение  кос-

венного командного файла после директивы .PAUSE.


                          - 16 -

                     00152-01 97 14-2


     Формат

RESUME

     Пример.

> @MYFILE

    .

    .

    .

  IND__PAUSING.TO CONTINUE TYPE "RES"

> RESUME

  IND__CONTINUING

    .

    .

    .

> @<EOF>

     Для запуска  косвенного  командного  файла  с  именем

MYFILE в этом примере издана команда  @MYFILE.  Выполнение

этого косвенного командного файла будет  приостановлено  в

результате выполнения директивы  .PAUSE.  Для  продолжения

выполнения косвенного командного файла  необходимо  ввести

команду RESUME.

     Примечание. В то время, когда  выполнение  косвенного

командного  файла  приостановлено,   нельзя   использовать

обслуживающие программы системы  МОС  ВП  и  универсальный

текстовый редактор (EDT).



     1.4. Команда RUN (образ)



     Команда RUN (образ) помещает образ  на  выполнение  в

процесс.

     Имя команды RUN может быть сокращено до одной  буквы.


                          - 17 -

                     00152-01 97 14-2


     Формат

RUN спец_файла

где спец_файла - определяет образ, который должен быть вы-

полнен в процессе. Если тип файла не указан,  команда  RUN

предполагает по  умолчанию  тип  файла  EXE.  При  задании

спец_файла недопустимо использование символа обобщения.

     Командный квалификатор

/DEBUG

/NODEBUG

     - квалификатор /DEBUG определяет для образов основно-

     Го режима системы МОС ВП,  что  образ  должен  выпол-

     Няться с отладчиком. Если при компоновке  образа  был

     Указан квалификатор /DEBUG и  пользователь  не  хочет

     Выполнять образ с отладчиком, в команде  RUN  следует

     Указать квалификатор /NODEBUG.  Eсли  при  компоновке

     Образа был указан  квалификатор  /TRACEBACK,  то  при

     Возникновении ошибки выводится информация о слежении.

     Если образ не был скомпонован с отладчиком, пользова-

     Тель имеет возможность  задать  квалификатор  /DEBUG,

     Запрашивая отладчик во время выполнения. Однако, если

     При компоновке был задан  квалификатор  /NOTRACEBACK,

     Задание квалификатора /DEBUG в команде  RUN  является

     Недопустимым.

     Примеры:

1. > RUN LIBRA

     По этой команде RUN образ LIBRA.EXE  начинает  выпол-

няться в процессе. Если образ LIBRA был установлен с  рас-

ширенными привилегиями, он запускается с этими привилегия-

ми, т. К. При его запуске явно не указаны номер версии или

точка с запятой (;). Образ LIBRA.EXE  также  будет  запус-


                          - 18 -

                     00152-01 97 14-2


каться с расширенными привилегиями, если для  его  запуска

была издана команда RUN LIBRA.EXE (приложение 1).

2. > MAC TEST, TEST/-SP=TEST

   > TKB TEST/DA, TEST/-SP=TEST

   > RUN TEST

     ODT:XXXXX

     В этом  примере  приведено  транслирование  программы

TEST, построение и выполнение образа TEST под  управлением

отладчика ODT.

     Примечание. В операционных системах МОС ВП  и  ОС  РВ

форматы команды RUN совместимы:

     RUN спец_файла



     1.5. Команда RUN (процесс)



     Команда RUN запрашивает выполнение  образа  основного

режима МОС ВП или образа режима совместимости. Можно  зап-

росить выполнение образа в своем процессе  (подраздел 1.4)

или использовать команду RUN для создания подпроцесса  или

отсоединенного процесса. По  умолчанию  выполнение  образа

происходит в том процессе, из которого издана команда RUN.

если указан любой из квалификаторов, за исключением квали-

фикаторов /UIC или /DETACH, команда  RUN  создает  подпро-

цесс. Отсоединенный процесс создается для выполнения обра-

за только в том случае, если в команде RUN указан квалифи-

катор /UIC и пользователь имеет привилегию DETACH.

     Формат

RUN спец_файла

где спец_файла - Cпецификация файла образа, который должен

быть выполнен. В том случае, если в спецификации файла  не


                          - 19 -

                     00152-01 97 14-2


указан тип файла, команда RUN использует по умолчанию  тип

файла EXE.

     Kомандные квалификаторы

/ACCOUNTING

/NOACCOUNTING

     - квалификатор /ACCOUNTING определяет, что для созда-

     ваемого процесса должны регистрироваться записи,  со-

     держащие учетную информацию. По умолчанию регистрация

     производится. Пользователь  должен  иметь  привилегию

     ACNT для запрещения регистрации учетной информации.

/AST_LIMIT=квота

     - квалификатор /AST_LIMIT определяет для создаваемого

     процесса максимальное число отложенных AST-прерываний

     (приложение 2).

     Если квота не задана, по умолчанию используется  зна-

     чение, установленное во время генерации системы.  Ми-

     нимальное число отложенных AST, требуемое для  выпол-

     нения любого процесса, равно  2.  Обычно  указывается

     значение, равное 10. Эта квота неуменьшаемая.

/AUTHORIZE

/NOAUTHORIZE

     - квалификатор /AUTHORIZE определяет,  что  системный

     образ LOGINOUT.EXE должен выполнять при создании  от-

     соединенного процесса проверку по  файлу  авторизации

     пользователей допустимости создания такого  процесса.

     По умолчанию образ LOGINOUT.EXE создает отсоединенный

     процесс, выполняющийся под управлением интерпретатора

     команд. Для  того,  чтобы  всякий  раз,  когда  образ

     LOGINOUT.EXE  создает  отсоединенный  процесс,   осу-

     ществлялась проверка по файлу авторизации пользовате-


                          - 20 -

                     00152-01 97 14-2


     лей, необходимо в команде  RUN  указать  квалификатор

     /AUTHORIZE. Постоянные файлы процесса, заданные с по-

     мощью квалификаторов /INPUT и /OUTPUT, предоставляют-

     ся в распоряжение интерпретатора команд для  ввода  и

     вывода. Для создания отсоединенного процесса требует-

     ся привилегия DETACH. Атрибуты, не указанные для соз-

     даваемого процесса, по умолчанию берутся  такими  же,

     как у текущего процесса.

/BUFFER_LIMIT=квота

     - квалификатор  /BUFFER_LIMIT  задает    максимальное

     количество памяти в байтах, которое создаваемый  про-

     цесс может использовать для операций  буферизованного

     ввода-вывода или для создания временных почтовых ящи-

     ков. Если квота буферизованного ввода-вывода не  ука-

     зана, используется значение по умолчанию,  определен-

     ное во время  генерации  системы.  Минимальное  коли-

     чество памяти, требуемое для выполнения  любого  про-

     цесса, составляет  1024  байта.  Обычно  используется

     значение 10240 байтов. Эта квота  является  разделяе-

     мой.

/DELAY=дельта_время

     - квалификатор /DELAY запрашивает помещение созданно-

     го процесса в состояние "спячки" и перевод его в  ак-

     тивное состояние после истечения указанного интервала

     времени. Дельта_время задается в соответствии с  пра-

     вилами, приведенными в [1].

     Если указаны квалификаторы  /INTERVAL  и  /DELAY,  то

     первый запрос на пробуждение процесса происходит  че-

     рез интервал времени, указанный с помощью  квалифика-

     Тора /DELAY, а все последующие запросы на пробуждение


                          - 21 -

                     00152-01 97 14-2


     происходят через интервал времени, заданный с помощью

     квалификатора /INTERVAL.

/DETACHED

/NODETACHED

     - квалификатор /DETACHED указывает, что процесс, соз-

     даваемый для выполнения указанного в команде RUN  об-

     раза, будет отсоединенным процессом с  тем  же  кодом

     идентификации пользователя (UIC), что и текущий  про-

     цесс.

     По умолчанию создаваемый процесс не является отсоеди-

     ненным процессом. Если текущий процесс не имеет  при-

     вилегии DETACH, то отсоединенный процесс будет  иметь

     такие же квоты ресурсов, что и текущий процесс.  Если

     текущий процесс имеет привилегию DETACH, то для  соз-

     даваемого отсоединенного процесса можно указать любые

     квоты.

     Если пользователь имеет привилегию DETACH, то  макси-

     мальное число отсоединенных процессов, которые он мо-

     жет создать, ограничивается квотой, указанной в файле

     авторизации пользователей с помощью MAX_DETACH.

     для того, чтобы создать отсоединенный процесс с  UIC,

     отличным от UIC текущего процесса, необходимо  в  ко-

     манде RUN указать квалификаторы /DETACH и /UIC.

/DUMP

/NODUMP

     - квалификатор /DUMP указывает, что содержимое адрес-

     ного пространства должно быть сохранено в файле в те-

     кущем каталоге по умолчанию,  если  образ  завершится

     вследствие возникновения условия, обработка  которого

     не предусмотрена. Этот файл будет иметь  то  же  имя,


                          - 22 -

                     00152-01 97 14-2


     что и образ, выполнение которого прекращено, тип фай-

     ла будет DMP. Для анализа содержимого этого файла ис-

     пользуется   команда   ANALYZE    с    квалификатором

     /PROCESS_DUMP [3]. Значением по умолчанию  для  этого

     квалификатора   является   /NODUMP.

/ENQUEUE_LIMIT

/ENQUEUE_LIMIT=квота

     - квалификатор /ENQUEUE_LIMIT указывает  максимальное

     число блокировок, которые процесс может  иметь  отло-

     женными в любое время. Если  квота  не  указана,  ис-

     пользуется значение по  умолчанию,  установленное  во

     время генерации системы. Минимальная квота, требуемая

     для выполнения любого процесса, равна 2. Обычно  ука-

     зывается значение 6.

/ERROR=спец_файла

     - квалификатор /ERROR  определяет  эквивалентное  имя

     для логического имени  SYS$ERROR.  Эквивалентное  имя

     может содержать от 1 до 63 алфавитно-цифровых  симво-

     лов. Логическое имя и эквивалентное имя для создавае-

     мого процесса помещаются в  таблицу  логических  имен

     процесса. Квалификатор /ERROR игнорируется, когда вы-

     полняется образ SYS$SYSTEM:LOGINOUT.

/EXTENT=квота

     - квалификатор /EXTENT задает максимальный размер, на

     который образ, выполняющийся в процессе, может увели-

     чить размер своей физической памяти.  Если  квота  не

     задана, система использует значение по умолчанию, ус-

     тановленное во время генерации  системы.  Минимальное

     значение, требуемое для выполнения  любого  процесса,

     составляет 10 страниц. Обычно указывается значение  в


                          - 23 -

                     00152-01 97 14-2


     диапазоне от 400 до 2000.  Эта  квота  является  неу-

     меньшаемой.

/FILE_LIMIT=квота

     - квалификатор  /FILE_LIMIT  определяет  максимальное

     число файлов, которые процесс может  иметь  открытыми

     одновременно.

     Если квота не задана, используется значение по  умол-

     чанию, установленное во время генерации системы.  Ми-

     нимальная квота, требуемая для выполнения любого про-

     цесса, равна 2. Обычно используется значение 20.  Эта

     квота является разделяемой.

/INPUT=спец_файла

     - квалификатор /INPUT  определяет  эквивалентное  имя

     для логического имени  SYS$INPUT.  Эквивалентное  имя

     может содержать от 1 до 63 алфавитно-цифровых  симво-

     лов. Логическое имя и эквивалентное имя для создавае-

     мого процесса помещаются в  таблицу  логических  имен

     процесса.

/INTERVAL=дельта_время

     - квалификатор /INTERVAL запрашивает  помещение  соз-

     данного процесса в состояние "спячки" и периодическое

     пробуждение его по истечении интервала времени,  про-

     должительность   которого   определяется    значением

     дельта_времени.  Дельта_время  указывается  в   соот-

     ветствии с правилами, приведенными в [1]. Если квали-

     фикатор   /INTERVAL  задан с   квалификатором  /DELAY

     или /SCHEDULE, то первое пробуждение процесса  проис-

     ходит через интервал времени, указанный  квалификато-

     ром /DELAY или /SCHEDULE. Все последующие пробуждения

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


                          - 24 -

                     00152-01 97 14-2


     квалификатором /INTERVAL. Если не указаны ни квалифи-

     катор /DELAY, ни квалификатор  /SCHEDULE,  но  указан

     квалификатор /INTERVAL, то первое пробуждение процес-

     са происходит, по умолчанию, немедленно.

/IO_BUFFERED=квота

     - квалификатор /IO_BUFFERED  определяет  максимальное

     число одновременно отложенных системных  буферизован-

     ных операций ввода-вывода. Если квота не указана, ис-

     пользуется значение по  умолчанию,  установленное  во

     время генерации системы. Минимальная квота, требуемая

     для выполнения любого процесса, равна 2.  Обычно  ис-

     пользуется значение 6. Эта квота является неуменьшае-

     мой.

/Iо_DIRECT=квота

     -  квалификатор  /IO_DIRECT  определяет  максимальное

     число одновременно отложенных операций ввода-вывода с

     прямым доступом.

     Если эта квота не указана, используется  значение  по

     умолчанию, установленное при генерации системы. Мини-

     мальное значение, которое требуется для  любого  про-

     цесса, равно 2. Обычно указывается  значение  6.  Эта

     квота является неуменьшаемой.

/JOB_TABLE_QUOTA=квота

     -  квалификатор  /JOB_TABLE_QUOTA  позволяет  указать

     квоту для таблицы логических имен задания (для отсое-

     диненного процесса и всех его подпроцессов). Значение

     о имеет особый смысл. Оно означает, что таблица логи-

     ческих имен имеет неопределенную квоту, т.к. Эта кво-

     та  является  разделяемой  с  квотой  таблицы   роди-

     телей - системной справочной таблицей


                          - 25 -

                     00152-01 97 14-2


     квалификатор /JOB_TABLE_QUOTA имеет смысл только  для

     отсоединенных    процессов.     Если     квалификатор

     /JOB_TABLE_QUOTA указан в команде  RUN  при  создании

     подпроцесса,      он      будет       игнорироваться.

/MAILBOX=устройство

     - квалификатор /MAILBOX определяет  номер  устройства

     почтового ящика, предназначенного для получения сооб-

     щения о завершении, когда созданный  по  команде  RUN

     процесс будет удален. Если квалификатор  /MAILBOX  не

     указан, процесс не будет  получать  сообщения,  когда

     созданные им подпроцессы или  отсоединенные  процессы

     будут удалены.

/MAXIMUM_WORKING_SET=квота

     - квалификатор /MAXIMUM_WORKING_SET определяет макси-

     мальный размер, на который может  увеличивать  размер

     своего рабочего набора образ, выполняющийся в процес-

     се. Образ может увеличить размер своего  набора  пос-

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

     $ADJWSL. Если квота  не  задана,  система  использует

     значение по умолчанию, установленное во время генера-

     ции системы. Минимальный размер рабочего набора, тре-

     буемый для выполнения любого процесса, составляет  10

     страниц. Обычно указывается значение 200.  Эта  квота

     является неуменьшаемой.

/OUTPUT=спец_файла

     - квалификатор /OUTPUT определяет имя, длиной от 1 до

     63 алфавитно-цифровых символов,  эквивалентное  логи-

     ческому имени SYS$OUTPUT. Логическое  имя  и  эквива-

     лентное имя помещаются в таблицу логических имен про-

     цесса, который будет создан по команде RUN.


                          - 26 -

                     00152-01 97 14-2


/PAGE_FILE=квота

     -  квалификатор  /PAGE_FILE  определяет  максимальное

     число страниц, которые могут быть выделены  для  про-

     цесса в файле обмена страниц. Квота задает количество

     страниц во вторичной памяти, которые  будут  доступны

     образу во время его выполнения. Если квота не  указа-

     на, система использует значение по  умолчанию,  уста-

     новленное во  время  генерации  системы.  Минимальный

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

     256  страниц.  Обычно  указывается  значение,  равное

     10000 страниц. Эта квота является разделяемой.

/PRIORITY=N

     - квалификатор /PRIORITY определяет  базовый  приори-

     тет, на котором будет выполняться  процесс.  Значения

     приоритетов в системе МОС ВП представляют собой деся-

     тичные числа в диапазоне от 0 до 31. Приоритеты от  0

     до 15 назначаются обычным процессам, приоритеты от 16

     до 31 являются приоритетами процессов реального  вре-

     мени.

     Необходимо иметь привилегию ALTPRI  для  того,  чтобы

     установить базовый приоритет для создаваемого процес-

     са выше, чем приоритет текущего процесса. Если  прио-

     ритет не указан или указан приоритет выше, чем  прио-

     ритет текущего процесса, и пользователь не имеет при-

     вилегии ALTPRI, система назначает  создаваемому  про-

     цессу базовый приоритет, равный  базовому  приоритету

     текущего процесса.

/PRIVILEGES=(привилегия[,...])

     - квалификатор /PRIVILEGES определяет привилегии  для

     создаваемого по команде RUN процесса. Созданному про-


                          - 27 -

                     00152-01 97 14-2


     цессу могут быть даны большие привилегии, чем текуще-

     му процессу - для этого необходимо  иметь  привилегию

     SETPRV.

     Если с квалификатором /PRIVILEGES указана только одна

     привилегия, скобки можно опустить (см. Приложение 1).

     При задании привилегий  можно  использовать  ключевое

     слово  NOSAME.  Если  в  команде   RUN   квалификатор

     /PRIVILEGES не указан, то создаваемый  процесс  будет

     иметь такие же привилегии, как и текущий процесс. Ес-

     ли указан квалификатор /PRIVILEGES=NOSAME, то  созда-

     ваемый процесс не будет иметь никаких привилегий. Ес-

     ли при задании спецификации файла в команде RUN  явно

     указан номер версии или спецификация  файла  содержит

     точку с запятой (;), а номер версии явно  не  указан,

     то используются привилегии текущего процесса, незави-

     симо от того, какие привилегии указаны в квалификато-

     ре /PRIVILEGES.

/PROCESS_NAME=имя_процесса

     - квалификатор /PROCESS_NAME определяет имя для  соз-

     даваемого процесса. Имя процесса может содержать от 1

     до 15 алфавитно-цифровых символов. Имя процесса неяв-

     но определяется по номеру группы  кода  идентификации

     пользователя (UIC), т. е. имя  процесса  должно  быть

     единственным только в пределах группы.

     В том случае, если имя процесса не указано, создавае-

     мый процесс будет иметь пустое имя.

/QUEUE_LIMIT=квота

     - квалификатор /QUEUE_LIMIT  определяет  максимальное

     число элементов очереди к таймеру, которые  создавае-


                          - 28 -

                     00152-01 97 14-2


     мый процесс может иметь  отложенными    одновременно.

     сюда включаются таймерные запросы и планируемые  зап-

     росы на пробуждение процесса.

     Если квота не задана, система использует значение  по

     умолчанию,  установленное во время генерации системы.

     При  выполнении  процесс  расходует   эту квоту.  Эта

     квота является разделяемой.

/RESOURCE_WAIT

/NORESOURCE_WAIT

     - квалификатор /RESOURCE_WAIT разрешает режим  ожида-

     ния ресурсов для создаваемого процесса. По  умолчанию

     (/RESOURCE_WAIT), если для выполнения процесса требу-

     ется системный ресурс, который в настоящее  время  не

     доступен, система помещает процесс в состояние ожида-

     ния.   Если    пользователь    указал    квалификатор

     /NORESOURCE_WAIT, процессу возвращается код ошибочно-

     го завершения, когда ресурс недоступен.

/SCHEDULE=абсолютное_время

     - квалификатор /SCHEDULE запрашивает помещение созда-

     ваемого процесса в состояние спячки и его активизацию

     в указанное время дня. Абсолютное время указывается в

     соответствии с правилами, приведенными в [1].

/SERVICE_FAILURE

/NOSERVICE_FAILURE

     - квалификатор /SERVICE_FAILURE разрешает для  созда-

     ваемого процесса  режим  исключительной  ситуации  по

     ошибке   системного   обслуживания.   По    умолчанию

     (/NOSERVICE_FAILURE), если при вызове процессом  сис-

     темного обслуживания произошла  ошибка,  возвращается


                          - 29 -

                     00152-01 97 14-2


     код состояния, указывающий  на  ошибку.  Если  указан

     квалификатор /SERVICE_FAILURE и произошла  ошибка  во

     время вызова системного обслуживания, возникнет усло-

     вие исключительной ситуации.

/SUBPROCESS_LIMIT=квота

     - квалификатор  /SUBPROCESS_LIMIT  определяет  макси-

     мальное число подпроцессов, которые разрешается иметь

     создаваемому  процессу.   Если   максимальное   число

     подпроцессов  не  задано,  используется  значение  по

     умолчанию, установленное во время генерации  системы.

     При выполнении  процесс   не  расходует  эту   квоту.

     Обычно указывается значение  8.  Эта  квота  является

     разделяемой.

/SWAPPING

/NOSWAPPING

     - квалификатор /SWAPPING разрешает режим  обмена  для

     создаваемого процесса. По умолчанию (/SWAPPING), про-

     цесс, находящийся в состоянии  ожидания,  выгружается

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

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

     зать квалификатор /NOSWAPPING для  создаваемого  про-

     цесса и тем самым запретить его выгрузку,  необходимо

     иметь привилегию  PSWAPM.  Если  указан  квалификатор

     /NOSWAPPING, процесс не выгружается из балансного на-

     бора, когда находится в состоянии ожидания.

/TIME_LIMIT=предел

     - квалификатор /TIME_LIMIT  задает  для  создаваемого

     процесса максимальное количество времени центрального

     процессора, необходимое для выполнения. Время задает-

     ся в единицах дельта-времени и обычно  указывается  в


                          - 30 -

                     00152-01 97 14-2


     пределах  10  мс.  Когда  указанное  время  истекает,

     процесс удаляется. Значение по умолчанию устанавлива-

     ется во время генерации системы.  Обычно  указывается

     значение 0, при этом  значение  времени  центрального

     процессора не ограничено. Если для процесса  задается

     ограничение времени центрального процессора,  следует

     воспользоваться  правилами  указания  дельта-времени,

     изложенными в [1]. Эта квота является уменьшаемой.

/UIC=[G,M]

     - квалификатор /UIC указывает, что  создаваемый  про-

     цесс будет отсоединенным процессом с указанным  кодом

     идентификации пользователя (UIC). UIC  указывается  в

     соответствии с правилами, приведенными в [1].

/WORKING_SET=значение_по_умолчанию

     - квалификатор /WORKING_SET определяет для  создавае-

     мого процесса размер рабочего  набора  по  умолчанию,

     т. е. Число страниц в рабочем наборе для образа,  ко-

     торый должен быть выполнен в  процессе.  Если  размер

     рабочего набора по умолчанию не  задан,  используется

     значение по умолчанию, установленное во время генера-

     ции системы. Минимальное число страниц, требуемое для

     выполнения процесса, составляет 10 страниц. Указанное

     с квалификатором /WORKING_SET значение не может  быть

     больше размера рабочего набора, указанного с  помощью

     квалификатора /MAXIMUM_WORKING_SET. Обычно указывает-

     ся значение 200. Эта квота является неуменьшаемой.

     Примеры:

1. > RUN RSXIMAGE.TSK

     Команда RUN в этом примере активизирует выполнение  в

текущем процессе образа с именем RSXIMAGE системы  ОС  РВ.


                          - 31 -

                     00152-01 97 14-2


подпроцесс или отсоединенный процесс при этом не  создает-

ся. Система не выдает подсказку до тех пор, пока  выполне-

ние образа RSXIMAGE.TSK не завершится.

2. > RUN VAXIMAGE /UIC=[122,20]

     По команде RUN, указанной в этом примере, для  выпол-

нения образа VAXIMAGE создается отсоединенный процесс, ко-

торый будет иметь код идентификации пользователя  [122,20]

и такие же привилегии и ресурсы, что и текущий процесс.

3. > RUN/PROCESS_NAME=SUBA SCANLINE

     RUN-S-PROC-ID, IDENTIFICATION OF CREATED PROCESS IS

     00010044.

     По этой команде RUN  создается  подпроцесс  с  именем

SUBA для выполнения образа SCANLINE.EXE.  Система  МОС  ВП

присваивает подпроцессу идентификационный номер 00010044.

     Примечания:

     1. Указания имени процесса недостаточно для  разреше-

ния эмуляции функций операциионной системы ОС  РВ,  напри-

мер, кластеров общих флагов событий и директив посылки/по-

лучения данных,  для которых требуется наличие имени зада-

чи в блоке метки образа.

     2. Если выполняется образ задачи операционной системы

ОС РВ, который имеет в блоке метки имя задачи, начинающее-

ся   с   буквенного   символа,   и   задан    квалификатор

/PROCESS_NAME, имя задачи   становится   именем  процесса,

т. Е. Игнорируется   имя,   указанное   с   квалификатором

/PROCESS_NAME.

     3. Почтовые ящики являются виртуальными устройствами,

которые  могут  быть  использованы  как  образами  системы

ОС РВ, так и образами основного режима системы МОС  ВП.  В

операционной системе МОС ВП  почтовые  ящики  используются


                          - 32 -

                     00152-01 97 14-2


для  эмуляции  директив  посылки/получения  данных системы

ОС РВ.

     4. Для образов задач системы ОС РВ,  выполняющих  ди-

рективы  посылки/получения  данных,  почтовые  ящики,  ис-

пользуемые для эмуляции этих директив, не создаются до тех

пор, пока не начнется фактическое выполнение образа.  Если

для запуска такого образа использована команда RUN с  ква-

лификатором /INTERVAL или /DELAY,  то  выполнение  команды

RUN не приводит к созданию почтовых ящиков. Почтовые ящики

будут созданы, когда начнется фактическое выполнение обра-

за.

     5. Для образа  задачи  системы  ОС  РВ   квалификатор

/INTERVAL имеет такое  же  действие,  что  и  квалификатор

/DELAY, т. е. выполнение процесса происходит  в  указанное

время. Когда образ завершается, процесс  удаляется.  Образ

выполняется только один раз.

     6. Для образа основного режима  МОС  ВП  квалификатор

/INTERVAL приводит к помещению этого  образа  в  состояние

спячки и к его  периодической  активизациии  по  истечении

указанного  интервала  времени,   если   образ   выполняет

инструкцию RET. Образ завершается, его периодической акти-

визации не происходит, если образ выполняет вызов програм-

мы системного обслуживания $EXIT.

     7.  Для  присвоения  логическим   именам   SYS$INPUT,

SYS$OUTPUT и SYS$ERROR  эквивалентных имен  в команде RUN

используются командные  квалификаторы  /INPUT,  /OUTPUT  и

/ERROR.

     8. Чтобы игнорировать значения по умолчанию, установ-

ленные для процесса, следут использовать следующие  квали-


                          - 33 -

                     00152-01 97 14-2


фикаторы команды RUN:

     - /ACCOUNTING

     - /PRIORITY

     - /PRIVILEGES

     - /PROCESS_NAME

     - /SWAPPING

     9. Когда команда RUN используется для создания отсое-

диненного процесса, устанавливаются разделяемые квоты, ог-

раничивающие  количество  различных  системных   ресурсов,

предназначенных для этого процесса и всех  его  подпроцес-

сов.  Квоты,  задаваемые  квалификаторами   /BUFFER_LIMIT,

/FILE_LIMIT, /PAGE_FILE и /QUEUE_LIMIT являются  разделяе-

мыми, т. е. значения, заданные этими квалификаторами,  вы-

читаются из соответствующих квот  текущего  процесса.  При

удалении отсоединенного процесса разделяемые квоты возвра-

щаются тому процессу, который  создал  этот  отсоединенный

процесс.

     10. Система МОС ВП  определяет  минимальные  значения

для каждой квоты. Если указано значение квоты меньше мини-

мума или указана уменьшаемая  квота,  понижающая  значение

квоты процесса родителя  ниже минимума, процесс по команде

RUN   не   может   быть  создан.  Текущие   значения  квот

можно  узнать,   используя  команду   интерпретатора   MCR

SHOW PROCESS/QUOTAS (подраздел 1. 9.).

     11. При создании процесса можно указать неуменьшаемые

квоты, которые влияют на выполнение процесса, но не  вычи-

таются из квот текущего. Неуменьшаемые квоты  определяются

квалификаторами:

     - /AST_LIMIT

     - /MAXIMUM_WORKING_SET


                          - 34 -

                     00152-01 97 14-2


     - /IO_BUFFERED

     - /IO_DIRECT

     - /WORKING_SET

     12. Состояние спячки, введенное для процесса в систе-

ме МОС ВП, соответствует состоянию приостановленной задачи

в системе ОС РВ.



     1.6. Команда RUNOFF



     Команда RUNOFF выполняет следующие функции:

     1) вызывает текстовый форматер для форматирования од-

ного или нескольких файлов в кодах KOИ-8 (п.1.6.1);

     2) вызывает текстовый форматер для получения оглавле-

ния одного или нескольких файлов в кодах KOИ-8 (п.1.6.2);

     3) вызывает текстовый форматер для получения предмет-

ного указателя для одного или  нескольких  файлов в  кодах

KOИ-8 (п.1.6.3).

     Данный подраздел содержит  краткое  описание  команды

RUNOFF. Подробно эта команда описана в [5].



     1.6.1. Форматирование файлов



     Команда RUNOFF  позволяет  произвести  форматирование

одного или нескольких файлов в кодах KOИ-8.

     Формат

RUNOFF спец_файла[,...]

где спец_файла - спецификация файла,  содержимое  которого

должно быть сформатировано. Выводной файл будет иметь  та-

кое же имя, что и вводной файл. Тип выводного файла  зави-

сит от типа вводного файла. По умолчанию вводной файл име-


                          - 35 -

                     00152-01 97 14-2


ет тип RNO, а выводной файл - MEM.

     Командные квалификаторы

     /FORM_SIZE=N

     /[NO]LOG

     /[NO]PAUSE

     /[NO]SIMULATE

     Позиционные квалификаторы

     /BACKSPACE

     /[NO]BOLD

     /[NO]CHANGE_BARS

     /[NO]DEBUG

     /DEVICE

     /[NO]DOWN

     /[NO]INTERMEDIATE

     /MESSAGES

     /[NO]OUTPUT

     /PAGES

     /[NO]RIGHT

     /SEPARATE_UNDERLINE

     /[NO]SEQUENCE

     /[NO]UNDERLINE_CHARACTER

     /VARIANT

     Квалификаторы команды RUNOFF подробно описаны в [5].



     1.6.2. Получение оглавления



     Команда RUNOFF позволяет получить оглавления для  од-

ного или нескольких файлов в кодах KOИ-8.

     Формат

RUNOFF/CONTENTS спец_файла[,...]        или


                          - 36 -

                     00152-01 97 14-2


RUNOFF/CONTENTS спец_файла[+...]

где /CONTENTS - обязательный  командный  квалификатор  для

получения оглавления файла;

    спец_файла -  спецификация   промежуточного  двоичного

файла, имеющего тип файла BRN, который содержит  необходи-

мую информацию (названия разделов,  подразделов,  пунктов,

подпунктов) для получения  оглавления  файла.  Такой  файл

создается по команде  RUNOFF  с  командным  квалификатором

/INTERMEDIATE. Если в командной строке указан один вводной

файл, то выводной файл, содержащий оглавление, будет иметь

такое же имя файла, что и вводной файл. Тип выводного фай-

ла будет RNT.

     Если в командой строке указано несколько вводных фай-

лов, спецификации которых разделены запятой, то для каждо-

го вводного файла будет создан свой выводной файл,  содер-

жащий оглавление. Если  в  командной  строке  спецификации

вводных файлов отделены друг от друга знаком (+), то будет

создан один выводной файл, содержащий оглавление для  всех

вводных файлов.

     Командные квалификаторы

     /[NO]BOLD

     /DEEPEST_HEADER

     /[NO]IDENTIFICATION

     /[NO]INDENT

     /[NO]LOG

     /[NO]OUTPUT

     /PAGE_NUMBERS

     /[NO]REQUIRE

     /[NO]SECTION_NUMBERS

     /[NO]UNDERLINE


                          - 37 -

                     00152-01 97 14-2


     Описание командных квалификаторов приведено в [5].



     1.6.3. Получение предметного указателя



     Команда RUNOFF позволяет получить  предметный  указа-

тель для одного или нескольких файлов в кодах KOИ-8.

     Формат

RUNOFF/INDEX спец_файла[,...]        или

RUNOFF/INDEX спец_файла[+...]

где /INDEX - обязательный командный квалификатор для полу-

чения предметного указателя для файла;

    спец_файла -  спецификация   промежуточного  двоичного

файла, имеющего тип файла BRN, который содержит  необходи-

мую информацию для получения предметного указателя.  Такой

файл создается по команде RUNOFF с командным  квалификато-

ром /INTERMEDIATE. Если в  командной  строке  указан  один

вводной файл, то выводной файл, содержащий предметный ука-

затель, будет иметь такое же  имя  файла,  что  и  вводной

файл. Тип выводного файла  будет  RNX.  Если  в  командной

строке указано несколько вводных файлов, спецификации  ко-

торых разделены запятой, то для каждого вводного файла бу-

дет создан свой выводной файл, содержащий предметный  ука-

затель. Если в командной строке спецификации вводных  фай-

лов  отделены  друг от друга знаком (+), то  будет  создан

один выводной файл, содержащий  предметный  указатель  для

всех вводных файлов.

     В спецификации  файла  недопустимо  указывать  символ

обобщения.

     Командные квалификаторы

     /[NO]IDENTIFICATION


                          - 38 -

                     00152-01 97 14-2


     /LINES_PER_PAGE

     /[NO]LOG

     /[NO]OUTPUT

     /PAGE_NUMBERS

     /[NO]REQUIRE

     /[NO]RESERVE

     Командные квалификаторы описаны в [5].



     1.7. Команда SEARCH



     Команда SEARCH осуществляет  поиск  указанной  строки

(или строк) в одном или  нескольких  файлах  и  распечатку

найденных строк.

     Формат

SEARCH спец_файла[,...]  строка[,...]

где спец_файла - спецификация файла, в котором должен про-

изводится  поиск. Необходимо указать, по крайней мере, од-

ну спецификацию файла.  В  спецификации  файла  можно  ис-

пользовать символы обобщения;

    строка - задает  искомую строку, поиск которой  должен

производиться в указанных  файлах.  Если  строка  содержит

строчные буквы или не буквенно-цифровые  символы  (включая

пробелы), ее необходимо заключить в кавычки (").

     Командные квалификаторы

/EXACT

/NOEXACT

     - квалификатор /EXACT указывает,  что  при  сравнении

     строк нужно различать прописные и строчные буквы.  По

     умолчанию (/NOEXACT) эти различия игнорируются.


                          - 39 -

                     00152-01 97 14-2


/EXCLUDE=(спец_файла[,...])

     - квалификатор /EXCLUDE позволяет  указать  файлы,  в

     которых не должен производиться поиск указанной стро-

     ки. Спецификация  файла  не  должна  содержать  имени

     устройства и каталогA , однако в  ней  допустимо  ис-

     пользование символа обобщения.

/FORMAT=выбор

     - квалификатор /FORMAT позволяет преобразовать  стро-

     ки, совпавшие с искомой строкой, до того, как они бу-

     дут распечатаны. В  качестве  выборов  можно  указать

     TEXT, PASSALL, DUMP, NONULLS. Более подробная  инфор-

     мация приведена в [4].

/HEADING

/NOHEADING

     - квалификатор /HEADING  управляет  распечаткой  имен

     файлов, в  которых  производился  поиск,  и  раздели-

     тельных строк. По умолчанию имена файлов распечатыва-

     ются только в том случае,  если  в  командной  строке

     указано несколько спецификаций файлов или использован

     символ обобщения. Между группами  строк,  содержащими

     искомую строку и принадлежащим  к  различным  файлам,

     выводится строка, состоящая из 30 символов  звездочка

     (*). Если указан квалификатор /WINDOW, то  строкA  из

     15 символов звездочка  используется  при  выводе  для

     разделения групп строк,  содержащих  искомую  строку,

     внутри каждого файла.

/LOG

/NOLOG

     - квалификатор /LOG управляет распечаткой  информаци-

     онной строки для каждого из просмотренных файлов. Вы-


                          - 40 -

                     00152-01 97 14-2


     вод осуществляется на текущее устройство SYS$OUTPUT.

/MATCH=выбор

     - квалификатор MATCH указывает,  как  команда  SEARCH

     осуществляет сравнение, когда необходимо  осуществить

     поиск нескольких строк. В качестве выборов можно ука-

     зать OR, AND, NAND и NOR. Более подробная  информация

     приведена в [4].

/NUMBERS

/NONUMBERS

     - квалификатор /NUMBERS указывает, что при распечатке

     строк файла, совпавших с искомой, должны быть указаны

     номера этих строк.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT указывает, что результаты  вы-

     полнения команды SEARCH должны быть сохранены в  ука-

     занном файле. Если квалификатор  /OUTPUT  не  указан,

     вывод  будет  осуществляться  на  текущее  устройство

     SYS$OUTPUT.

/REMAINING

/NOREMAINING

     -  квалификатор  /REMAINING  указывает,  что  команда

     SEARCH будет распечатывать все строки, начиная с пер-

     вой строки в файле, совпавшей с  искомой  строкой,  и

     кончая  последней  строкой  в   файле.   Квалификатор

     /REMAINING    отвергает    действие     квалификатора

     /WINDOW=N2,   однако   можно   задать    квалификатор

     /WINDOW=N1 для того, чтобы указать число строк, кото-

     рые должны быть распечатаны до строки, содержащей ис-


                          - 41 -

                     00152-01 97 14-2


     комую строку. По умолчанию используется  квалификатор

     /NOREMAINING.

/WINDOW[=(N1,N2)]

/NOWINDOW

     - квалификатор /WINDOW позволяет указать число  строк

     файла, которые должны быть  распечатаны  со  строкой,

     совпавшей с искомой строкой. Если указан квалификатор

     /WINDOW=N1, то  N-1  строк  файла  будет  распечатано

     вместе со строкой, совпавшей с искомой строкой,  при-

     чем половина из этих дополнительных строк будет  рас-

     печатана до найденной строки, вторая половина - после

     нее. Если квалификатор /WINDOW указан без задания  N1

     и N2, то по умолчанию будет распечатываться 2 строки,

     предшествующие каждой строке, совпавшей с искомой,  и

     2 следующие за ней строки.  Если  задан  квалификатор

     /WINDOW=(N1,N2), то N1  строк  будет  распечатано  до

     строки, совпавшей с искомой, и N2 строк будет  распе-

     чатано после нее. Если указан квалификатор /WINDOW=0,

     то по команде SEARCH будет распечатываться только имя

     файла, в котором  найдена  искомая  строка,  но  сами

     строки распечатываться не  будут.  Если  квалификатор

     /WINDOW не задан,  то  будет  распечатываться  только

     строка, совпавшая с искомой.

     Примеры:

1. > SEARCH CABLE.MEM, JOYNER.MEM "MANUAL TITLE"

     В этом  примере  команда  SEARCH  осуществляет  поиск

строки MANUAL TITLE в файлах CABLE.MEM и JOYNER.MEM.  Рас-

печатываться будут только строки из этих файлов,  содержа-

щие строку MANUAL TITLE. Строка MANUAL TITLE  заключена  в

кавычки, т. К. Она содержит символ пробела.


                          - 42 -

                     00152-01 97 14-2


2. > SEARCH/OUTPUT=RESULTS.DAT/WINDOW=9  DISLIST.MEM  NAME

     В этом  примере  команда  SEARCH  осуществляет  поиск

строки NAME в файле DISLIST.MEM и результаты будут  сохра-

нены в файле RESULTS.DAT. Файл RESULTS.DAT вместе с каждой

строкой из файла DISLIST.MEM, совпавшей со  строкой  NAME,

будет содержать 4 предшествующие ей строки и  4  следующие

за ней строки.



     1.8. Команда SET



     Команда SET устанавливает или изменяет на время инте-

рактивного сеанса работы с терминалом  или  для  пакетного

задания характеристики файлов и устройств, которыми владе-

ет процесс.

     Формат

SET выбор

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



     1.8.1. Описание выборов команды SET



     В данном пункте приведено  краткое  описание  выборов

команды SET и связанных с ними  квалификаторов.  Подробное

их описание дано в [4].

     Выбор ACCOUNTING

     Выбор ACCOUNTING разрешает или запрещает запись опре-

деленных типов информации в файл регистрации  учетной  ин-

формации    SYS$MANAGER:ACCOUNTING.DAT.    Команду     SET

ACCOUNTING можно также использовать для закрытия  текущего

файла регистрации учетной информации и для создания  новой

версии этого файла.


                          - 43 -

                     00152-01 97 14-2


     Формат

SET ACCOUNTING

     Командные квалификаторы

/DISABLE=(ключевое_слово[,...])

     - квалификатор /DISABLE  запрещает  регистрацию  всех

     или заданных ключевыми словами типов учетной информа-

     ции.

/ENABLE=(ключевое_слово[,...])

     - квалификатор /ENABLE разрешает регистрацию всех или

     указанных ключевыми словами типов учетной информации.

/NEW_FILE

     - квалификатор /NEW_FILE закрывает текущий  файл  ре-

     гистрации учетной информации и создает  новую  версию

     этого файла.

     Выбор ACL

     Выбор ACL  позволяет  модифицировать  для  указанного

об'екта список доступа (ACL).

     Формат

SET ACL имя_об'екта

где имя_об'екта - указывает  об'ект,  чей  список  доступа

(ACL) модифицируется.

     Командные квалификаторы

/ACL[=(ACE[,...])]

     - квалификатор /ACL указывает один или несколько эле-

     ментов списка доступа (ACE), которые должны быть  мо-

     дифицированы.

/AFTER=ACE

     - по квалификатору /AFTER все элементы списка  досту-

     па, указанные в квалификаторе  /ACL,  будут  помещены

     после  элемента  ACE,  указанного   в   квалификаторе


                          - 44 -

                     00152-01 97 14-2


     /AFTER.

/BEFORE[=время]

     - квалификатор /BEFORE  выбирает  файл,  датированный

     ранее указанного в квалификаторе /BEFORE времени.

/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER выбирает  файл,  у  которого

     UIC владельца совпадает с указанным UIC.

/CONFIRM

/NOCONFIRM

     - по квалификатору /CONFIRM команда SET ACL  запраши-

     вает подтверждениE  пользователя,  что  операция  над

     данным об'ектом должна быть выполнена.

/CREATED

     - квалификатор /CREATED выбирает файл по дате  созда-

     ния.

/DEFAULT

     - квалификатор /DEFAULT создает список доступA  (ACL)

     для указанного файла, как если бы этот файл был  соз-

     дан заново.

/DELETE

     - квалификатор /DELETE удаляет элементы списка досту-

     па (ACE), указанные квалификатором /ACL. Если в  ква-

     лификаторе /ACL элементы списка доступа ACE не указа-

     ны, удаляется весь список доступа.

/EDIT

     - квалификатор /EDIT вызывает редактор ACL,  разрешая

     тем  самым  использование  квалификаторов   /JOURNAL,

     /KEEP, /MODE или /RECOVER.

/EXCLUDE=(спец_файла[,...])

     - квалификатор /EXCLUDE исключает из операции, выпол-


                          - 45 -

                     00152-01 97 14-2


     няемой по команде SET ACL, файлы с указанными в  ква-

     лификаторе /EXCLUDE спецификациями.

/JOURNAL[=спец_файла]

/NOJOURNAL

     - по квалификатору /JOURNAL при работе  с  редактором

     создается журнальный файл. По умолчанию  (/NOJOURNAL)

     журнальный файл создается, если сеанс  редактирования

     завершился ненормально.

/KEEP=(выбор[,...])

     - квалификатор /KEEP определяет, будет ли  удален  по

     окончании сеанса редактирования журнальный файл, соз-

     данный для текущего сеанса редактирования  (JOURNAL),

     и файл для восстановления ACL (RECOVER).

/LIKE=(OBJECT_TYPE=тип, OBJECT_NAME=имя)

     - по квалификатору /LIKE список доступа  для  об'екта

     (или об'ектов), указанного в команде SET ACL,  должен

     быть заменен списком доступа для Oб'EKTA, имя которо-

     го указано в квалификаторе /LIKE.

/LOG

/NOLOG

     - квалификатор /LOG  управляет  выводом  на  терминал

     имени об'екта, на который воздействует данная команда

     SET ACL.

/MODE=[NO]PROMPT

     - квалификатор /MODE определяет, выводить ли редакто-

     ру ACL подсказки для значений полей.

/NEW

     - квалификатор /NEW указывает, что  для  заданного  в

     команде SET ACL об'екта, все элементы списка  доступа

     (за исключением тех, которые защищены),  должны  быть


                          - 46 -

                     00152-01 97 14-2


     удалены.

/OBJECT_TYPE=тип

     - квалификатор /OBJECT_TYPE определяет  тип  об'екта,

     на который должна воздействовать команда SET ACL.

/RECOVER[=спец_файла]

/NORECOVER

     - квалификатор  /RECOVER  указывает  имя  журнального

     файла, который должен  быть  использован  в  операции

     восстановления ACL.

/REPLACE=(ACE[,...])

     - квалификатор /REPLACE удаляет элементы списка  дос-

     тупа (ACE), указанные квалификатором /ACL, и заменяет

     их элементами списка доступа, которые указаны  квали-

     фикатором /REPLACE.

/SINCE[=время]

     - квалификатор  /SINCE  выбирает  файл,  датированный

     позже указанного времени.

     выбор AUDIT

     выбор  AUDIT  разрешает  или  запрещает  осуществлять

контроль за безопасностью системы МОС ВП.

     Формат

SET AUDIT

     Командные квалификаторы

/ALARM

     - квалификатор /ALARM  управляет  посылкой  аварийных

     сигналов защиты на  все  терминалы,  об'явленные  как

     терминалы операторов, следящих за безопасностью  сис-

     темы.

/DISABLE=(ключевое_слово[,...])

     - квалификатор /DISABLE указывает, что при  возникно-


                          - 47 -

                     00152-01 97 14-2


     вении событий, заданных с помощью ключевых  слов,  не

     должны посылаться аварийные сигналы защиты.

/ENABLE=(ключевое_слово[,...])

     - квалификатор /ENABLE указывает, что при возникнове-

     нии событий, заданных с помощью ключевых слов, должны

     посылаться аварийные сигналы защиты.

     Выбор BROADCAST

     Выбор BROADCAST позволяет осуществить выборочный  вы-

вод сообщений, посылаемых на терминал.

     Формат

SET BROADCAST=(имя_класса[,...])

где имя_класса - указывает класс сообщений, на  который  в

текущий   момент   можно   воздействовать   командой   SET

BROADCAST. Классы сообщений подробно описаны в [4].

     Выбор CARD_READER

     Выбор CARD_READER устанавливает режим трансляции, ис-

пользуемый по умолчанию для устройства чтения с перфокарт.

     Формат

SET CARD_READER имя_устр[:]

где имя_устр- указывает имя устройства чтения с перфокарт,

для которого должен быть установлен режим трансляции.

     Командные квалификаторы

/026

     -  квалификатор  /026   устанавливает   для   данного

     устройства чтения с перфокарт режим трансляции  кодов

     026.

/029

     -  квалификатор  /029   устанавливает   для   данного

     устройства чтения с перфокарт режим трансляции  кодов

     029.


                          - 48 -

                     00152-01 97 14-2


/LOG

/NOLOG

     - квалификатор /LOG управляет выводом на терминал ин-

     формации об установленном  для  устройства  чтения  с

     перфокарт режиме трансляции.

     Выбор COMMAND

     Выбор COMMAND используется для  вызова  обслуживающей

программы определения команд,  чтобы  добавить  команды  в

таблицу команд процесса или в указанный  файл,  содержащий

таблицу команд. Более  подробная  информация  приведена  в

[6].

     Формат

SET COMMAND [спец_файла[,...]]

где спец_файла - указывает имя одного или нескольких  фай-

лов определения команд.

     Командные квалификаторы

/DELETE=(имя_команды[,...])

     - квалификатор /DELETE используется для удаления  оп-

     ределений указанных имен  команд  из  таблицы  команд

     процесса или из файла,  содержащего  таблицу  команд,

     указанного с квалификатором /TABLE.

/LISTING[=спец_файла]

/NOLISTING

     - квалификатор /LISTING создает выводной  листинг  и,

     необязательно, указывает спецификацию файла для файла

     листинга.

/OBJECT[=спец_файла]

     -  квалификатор  /OBJECT  используется  для  создания

     об'ектного модуля из файла определения команд. С ква-

     лификатором  /OBJECT   можно   указать   спецификацию


                          - 49 -

                     00152-01 97 14-2


     Об'ектного файла.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT указывает,  куда  должна  быть

     помещена модифицированная таблица команд. Если задана

     спецификация файла, то модифицированная таблица поме-

     щается в указанный файл. Если спецификация не задана,

     то в качестве таблицы команд данного  процесса  будет

     использоваться эта модифицированная таблица команд.

/REPLACE

     - квалификатор /REPLACE используется  для  добавления

     или замены определений имен команд в  таблице  команд

     процесса или  в  файле,  указанном  с  квалификатором

     /TABLE.

/TABLE[=спец_файла]

     - квалификатор /TABLE указывает таблицу команд, кото-

     рая должна модифицироваться.

     Выбор CONTROL

     Выбор CONTROL определяет, будет ли управление переда-

ваться интерпретатору команд при нажатии CTRL/Y и будет ли

выводиться статистика процесса при нажатии CTRL/T.

     Формат

SET [NO]CONTROL[=(T,Y)]

где  (т,Y)  -  указывают  управляющие  функции  (CTRL/T  и

CTRL/Y), которые могут быть разрешены или запрещены по ко-

манде SET CONTROL.

     Выбор DAY

     Выбор DAY позволяет изменить умолчание, указанное для

текущего дня в файле авторизации пользователя (UAF).


                          - 50 -

                     00152-01 97 14-2


     Формат

SET DAY

     Командные квалификаторы

/DEFAULT

     - квалификатор /DEFAULT отменяет для текущего дня все

     предыдущие установки по команде SET DAY и  указывает,

     что для него используется умолчание из UAF.

/LOG

/NOLOG

     - квалификатор /LOG управляет выводом на терминал ин-

     формации, подтверждающей, что  установка  по  команде

     SET DAY выполнена.

/PRIMARY

     -  квалификатор  /PRIMARY  устанавливает  сегодняшний

     День до полуночи как основной день регистрации.

/SECONDARY

     - квалификатор /SECONDARY  устанавливает  сегодняшний

     день до полуночи как дополнительный день регистрации.

     Выбор DEFAULT

     Выбор DEFAULT изменяет для текущего процесса  умолча-

ния для имени устройства и/или каталога. Это умолчание ис-

пользуется в тех случаях, когда в спецификации файла  опу-

щено имя устройства и/или каталога.

     Формат

SET DEFAULT имя_устр[:]

где имя_устр - указывает имя устройства и/или каталог, ко-

торые будут использоваться по умолчанию.

     Выбор DEVICE

     Выбор DEVICE определяет  устройство  как  устройство,

обслуживаемое через спул, либо как устройство, для которо-


                          - 51 -

                     00152-01 97 14-2


го разрешена регистрация ошибок.

     Формат

SET DEVICE имя_устр[:]

где имя_устр - указывает имя  устройства,  которое  должно

обслуживаться через спул, или  для  которого  должна  быть

разрешена регистрация ошибок. Через  спул  могут  обслужи-

ваться построчно - печатающие устройства и терминалы.  Ре-

гистрация ошибок может быть разрешена для дисков и магнит-

ных лент.

     Командные квалификаторы

/ACL[=(ACE[,...])] имя_устр

     - квалификатор /ACL позволяет  модифицировать  список

     Ддступа (ACL) для указанного устройства. Описание ко-

     манды SET DEVICE/ACL приведено в [4].

/AVAILABLE

/NOAVAILABLE

     - квалификатор  /AVAILABLE  указывает,  что  дисковый

     том, заданный в команде SET DEVICE, доступен для  ис-

     пользования. Эта команда  может  быть  издана  только

     после демонтирования указанного устройства.

/ERROR_LOGGING

/NOERROR_LOGGING

     - квалификатор /ERROR_LOGGING указывает, что для  за-

     данного в команде SET DEVICE устройства разрешена ре-

     гистрация ошибок в файле регистрации ошибок.

/LOG

/NOLOG

     - квалификатор /LOG управляет выводом на терминал ин-

     формации о состоянии устройства в системе.


                          - 52 -

                     00152-01 97 14-2


/SPOOLED[=(имя_очереди[:],имя_промежуточного_диска[:])]

/NOSPOOLED

     - квалификатор /SPOOLED указывает, что устройство,за-

     данное в команде SET DEVICE, будет обслуживаться  че-

     рез спул и определяет для него имя очереди и промежу-

     точного дискового тома.

     Выбор DIRECTORY

     Выбор DIRECTORY позволяет изменить характеристики од-

ного или нескольких каталогов.

     Формат

SET DIRECTORY спец_каталога[,...]

где спец_каталога - указывает каталог,  в  котором  должны

быть выполнены изменения.

     Командные квалификаторы

/ACL[=(ACE[,...])] спец_каталога[,...]

     - квалификатор /ACL позволяет  модифицировать  список

     доступа (ACL) для одного или более каталогов.  Описа-

     ние команды SET DIRECTORY/ACL дано в [4].

/BACKUP

     - квалификатор /BACKUP выбирает каталоги по датам  их

     последнего сохранения.

/BEFORE[=время]

     - квалификатор /BEFORE выбирает только  те  каталоги,

     которые датированы ранее указанного  в  квалификаторе

     /BEFORE времени.

/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER указывает, что изменения бу-

     дут осуществляться только в тех каталогах,  UIC  вла-

     дельца которых совпадает с указанным UIC.


                          - 53 -

                     00152-01 97 14-2


/CONFIRM

/NOCONFIRM

     - квалификатор  /CONFIRM  распечатывает  спецификацию

     каждого каталога, прежде чем  его  модифицировать,  и

     запрашивает  подтверждение  пользователя, что  опера-

     ция над этим каталогом должна быть выполнена.

/CREATED

     - квалификатор /CREATED выбирает каталоги по дате  их

     создания.

/EXCLUDE=(спец_каталога[,...])

     - по квалификатору /EXCLUDE все каталоги,  специфика-

     ции которых указаны, исключаются из операции,  выпол-

     няемой по команде SET DIRECTORY.

/EXPIRED

     - квалификатор /EXPIRED выбирает каталоги по дате  их

     истечения.

/LOG

/NOLOG

     - квалификатор /LOG  управляEт  выводом  на  терминал

     спецификаций каталогов, в которых  выполнены  измене-

     ния.

/MODIFIED

     - квалификатор /MODIFIED выбирает каталоги по дате их

     последней модификации.

/OWNER_UIC[=UIC]

     - квалификатор /OWNER_UIC изменяет UIC владельца  для

     указанного в команде SET DIRECTORY каталога.

/SINCE[=время]

     - квалификатор /SINCE выбирает  только  те  каталоги,

     которые датированы позже указанного времени.


                          - 54 -

                     00152-01 97 14-2


/VERSION_LIMIT[=N]

     - квалификатор /VERSION_LIMIT указывает  общее  число

     версий, которое может иметь каждый файл из указанного

     в команде SET DIRECTORY каталога.

     Выбор FILE

     Выбор FILE изменяет характеристики  одного  или  нес-

кольких файлов.

     Формат

SET FILE спец_файла[,...]

где спец_файла- указывает модифицируемый файл.

     Командные квалификаторы

/ACL

     - квалификатор /ACL модифицирует список доступA (ACL)

     для одного или нескольких файлов. Подробное  описание

     команды SET FILE/ACL приведено в [4].

/BACKUP

/NOBACKUP

     - квалификатор /BACKUP управляет сохранением содержи-

     мого указанных в команде SET FILE файлов  по  команде

     BACKUP.

/BEFORE[=время]

     - квалификатор /BEFORE выбирает только те файлы,  ко-

     торые датированы  ранее  указанного  в  квалификаторе

     /BEFORE времени.

/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER указывает, что изменения бу-

     дут осуществляться только для тех  файлов,  UIC  вла-

     дельца которых совпадает с указанным UIC.


                          - 55 -

                     00152-01 97 14-2


/CONFIRM

/NOCONFIRM

          - квалификатор /CONFIRM перед каждой  операцией,

     выполняемой  по   команде   SET   FILE,   запрашивает

     подтверждение пользователя, что операция над  указан-

     ным файлом должна быть выполнена.

/CREATED

     - квалификатор /CREATED выбирает  файлы  по  дате  их

     создания.

/DATA_CHECK[=([NO]READ, [NO]WRITE)]

     - квалификатор /DATA_CHECK указывает, выполняется  ли

     проверка чтения данных, проверка  записи  данных  или

     обе эти проверки во время выполнения функций передачи

     Данных.

/END_OF_FILE

     - квалификатор /END_OF_FILE  переустанавливает  марку

     конца файла на старший распределенный блок.

/ENTER = новая_спец_файла

     - квалификатор /ENTER позволяет назначить  файлу  до-

     полнительное имя.

/ERASE_ON_DELETE

     - квалификатор /ERASE_ON_DELETE позволяет при  удале-

     нии файлов, указанных в команде SET FILE,  произвести

     затирание данных, которые в них хранились.

/EXCLUDE=(спец_файла [,...])

     - по квалификатору /EXCLUDE файлы, указанные в квали-

     фикаторе /EXCLUDE, исключаются из операции, выполняе-

     мой по команде SET FILE.


                          - 56 -

                     00152-01 97 14-2


/EXPIRATION_DATE=дата

/NOEXPIRATION_DATE

     - квалификатор  /EXPIRATION_DATE  позволяет  изменить

     дату истечения указанным в команде SET FILE файлам.

/EXTENSION[=N]

     - квалификатор /EXTENSION устанавливает число блоков,

     используемое в качестве размера расширения по умолча-

     нию  для указанных в команде SET FILE файлов.

/GLOBAL_BUFFER=N

     - квалификатор /GLOBAL_BUFFER задает число глобальных

     буферов СУД-32 для указанных в команде SET FILE  фай-

     лов.

/LOG

/NOLOG

     - квалификатор /LOG  управляет  выводом  на  терминал

     спецификации каждого файла, который был модифицирован

     по команде SET FILE.

/NODIRECTORY

     - квалификатор /NODIRECTORY указывает, что  операция,

     выполняемая по команде SET FILE, не  должна  произво-

     диться над файлом каталога.

/OWNER_UIC[=UIC]

     - квалификатор /OWNER_UIC позволяет изменить UIC вла-

     дельца для указанных в команде SET FILE файлов.

/PROTECTION[=(код)]

     - квалификатор /PROTECTION позволяет изменять  защиту

     для указанных в команде SET FILE файлов.

/REMOVE

     - квалификатор /REMOVE позволяет удалить одно из  до-

     полнительных имен файла, имеющего более одного имени;


                          - 57 -

                     00152-01 97 14-2


     сам файл при этом не удаляется.

/SINCE[=время]

     - квалификатор /SINCE выбирает только те файлы, кото-

     рые датированы позже указанного времени.

/UNLOCK

     - квалификатор /UNLOCK запрашивает, чтобы файлы, ука-

     занные в команде SET FILE, были разблокированы.  Заб-

     локированный файл - это файл, который стал недоступен

     в результате некорректного закрытия файла.

/TRUNCATE

     - квалификатор  /TRUNCATE  запрашивает,  чтобы  файл,

     указанный в команде SET FILE,  был  усечен  до  конца

     блока, содержащего марку конца файла (EOF).

/VERSION_LIMIT[=N]

     - квалификатор /VERSION_LIMIT указывает  максимальное

     число версий, которое может иметь каждый  из  файлов,

     указанных в команде SET FILE.

     Выбор HOST

     Выбор HOST  связывает  терминал  пользователя  (через

главный процессор) с другим процессором,  называемым  уда-

ленным.

     Формат

SET HOST имя_узла

где имя_узла - указывает имя узла удаленного процессора.

     Командные квалификаторы

/DTE имя_терминала

     - квалификатор /DTE  позволяет  осуществить  напрямую

     или через  модем  связь  с  удаленной  системой  пос-

     редством терминальной линии, имя  которой  указано  в

     квалификаторе.


                          - 58 -

                     00152-01 97 14-2


/LOG[=спец_файла]

/NOLOG

     - квалификатор /LOG управляет сохранением  файла  ре-

     гистрации для всего сеанса работы.

/X29

     - квалификатор  /X29  разрешает  связь  с  программой

     сборки/разборки пакетов  в  главном  узле,  используя

     протокол X29.

     Выбор KEY

     Выбор KEY изменяет для терминала  текущее  состояние,

определяющее значения клавиш. Клавиши определяются по  ко-

манде DEFINE/KEY.

     Формат

SET KEY

     Командные квалификаторы

/LOG

/NOLOG

     - квалификатор /LOG управляет выводом сообщения о те-

     кущем состоянии терминала, определяющем значения кла-

     ваш. Значением по умолчанию для  этого  квалификатора

     является /LOG.

/STATE = имя_состояния

/NOSTATE

     - квалификатор /STATE определяет состояние терминала,

     которое должно быть установлено для определения  кла-

     виш.  Имена  состояний  представляют  собой  алфавит-

     но-цифровые строки, определенные командой DEFINE/KEY.

     квалификатор /NOSTATE не изменяет текущего  состояния

     терминала.


                          - 59 -

                     00152-01 97 14-2


     Выбор LOGINS

     Выбор LOGINS определяет число пользователей,  которые

могут получить доступ к операционной системе.  По  команде

SET LOGINS можно также узнать число пользователей, которые

в текущий момент зарегистрированы в системе.

     Формат

SET LOGINS

     Командные квалификаторы

/INTERACTIVE[=N]

     - квалификатор /INTERACTIVE устанавливает число инте-

     рактивных пользователей, которым разрешается получить

     доступ к системе.

     Выбор MAGTAPE

     Выбор MAGTAPE определяет характеристики для указанно-

го устройства магнитной  ленты,  которые  будут  использо-

ваться по умолчанию в последующих файловых операциях.

     Формат

SET MAGTAPE имя_устр[:]

где имя_устр - указывает имя устройства  магнитной  ленты,

для которого должны быть установлены характеристики.

     Командные квалификаторы

/DENSITY = плотность

     - квалификатор /DENSITY указывает плотность (в  битах

     на миллиметр) для всех  операций  записи,  когда  том

     монтирован как чужой том или как том без  стандартных

     меток. Для плотности могут быть указаны значения 32 и

     64 бит/мм.

/END_OF_FILE

     - квалификатор /END_OF_FILE  записывает  марку  конца

     файла в текущую позицию на магнитной ленте.


                          - 60 -

                     00152-01 97 14-2


/LOG

/NOLOG

     - по квалификатору /LOG выводится информация об  опе-

     рациях,  выполненных  на  указанном  в  команде   SET

     MAGTAPE устройстве.

/LOGSOFT

/NOLOGSOFT

     - квалификатор /LOGSOFT управляет регистрацией  таких

     ошибок на указанном в команде SET MAGTAPE устройстве,

     которые корректируются на уровне аппаратуры без прог-

     раммного вмешательства. Регистрация  ошибок  произво-

     дится в файле регистрации ошибок.

/REWIND

     - квалификатор /REWIND запрашивает, чтобы на  указан-

     ном устройстве была  выполнена  перемотка  на  начало

     магнитной ленты.

/SKIP = выбор

     -  квалификатор  /SKIP  запрашивает  позиционирование

     ленты в соответствии с указанным  выбором.  Подробное

     описание выборов дано в [4].

/UNLOAD

     - квалификатор /UNLOAD запрашивает, чтобы том на ука-

     занном устройстве был перемотан и разгружен.

     выбор MESSAGE

     выбор MESSAGE позволяет:

     1) указать формат печати сообщений;

     2) отменить системные сообщения;

     3) дополнить системные сообщения.


                          - 61 -

                     00152-01 97 14-2


     Формат

SET MESSAGE [спец_файла]

где спец_файла - указывает файл сообщений.

     Командные квалификаторы

/DELETE

     - квалификатор /DELETE удаляет выбранный для процесса

     в текущий момент файл сообщений.

/FACILITY

/NOFACILITY

     - квалификатор /FACILITY управляет  выводом  названия

     системной компоненты во всех  сообщениях,  посылаемых

     процессу.

/IDENTIFICATION

/NOIDENTIFICATION

     - квалификатор /IDENTIFICATION  управляет  включением

     во все сообщения, посылаемые процессу,  идентификации

     сообщения (сокращения, характеризующего  текст  сооб-

     щения).

/SEVERITY

/NOSEVERITY

     - квалификатор /SEVERITY управляет выводом  указателя

     уровня серьезности в сообщениях, посылаемых процессу.

/TEXT

/NOTEXT

     - квалификатор /TEXT управляет выводом текста сообще-

     ния во всех сообщениях, посылаемых процессу.
     
     Выбор ON

     Выбор ON управляет выполнением интерпретатором команд

проверки ошибок после  выполнения  каждой  команды  в  ко-

мандной процедуре.


                          - 62 -

                     00152-01 97 14-2


     Формат

SET [NO]ON

     Выбор OUTPUT_RATE

     Выбор OUTPUT_RATE определяет, как часто выводные дан-

ные будут записываться в файл регистрации пакетного  зада-

ния.

     Формат

SET OUTPUT_RATE[=дельта_время]

где дельта_время - указывает, как  часто  выводные  данные

будут переписываться из выводного буфера в файл  регистра-

ции пакетного задания.

     Выбор PASSWORD

     Выбор PASSWORD позволяет  изменять  пользователям  их

собственные пароли, а администраторам системы -  системный

пароль.

     Формат

SET PASSWORD

     Командные квалификаторы

/GENERATE[=значение]

     - по квалификатору /GENERATE  создаются  произвольные

     пароли. Если квалификатор /GENERATE  указан,  система

     выводит 5 произвольных паролей, один из которых  дол-

     жен  быть  выбран  пользователем   в   качестве   его

     собственного пароля. Если ни один из выведенных паро-

     лей  пользователя  не  устраивает,  нажатие   клавиши

     <CR> вызовет распечатку 5 новых паролей. Указанное  в

     квалификаторе значение определяет, какой длины должны

     создаваться пароли.

/SECONDARY

     - квалификатор /SECONDARY позволяет создать или изме-


                          - 63 -

                     00152-01 97 14-2


     нить вторичный пароль, который  указывается  при  ре-

     гистрации вслед за основным паролем.

/SYSTEM

     - квалификатор /SYSTEM позволяет  изменить  системный

     пароль. Для использования этого квалификатора  требу-

     Ются привилегии SECURITY и CMKRNL.

     Выбор PRINTER

     Выбор PRINTER устанавливает  характеристики  построч-

но - печатающего устройства.

     Формат

SET PRINTER имя_устр[:]

где  имя_устр  -   указывает   имя   построчно-печатающего

устройства, характеристики которого должны быть устанавле-

ны или изменены.

     Командные квалификаторы

/CR

/NOCR

     -  квалификатор  /CR  управляет  возможностью  вывода

     драйвером построчно - печатающего устройства  символа

     возврата каретки.

/FALLBACK

/NOFALLBACK

     - квалификатор /FALLBACK указывает, что построчно-пе-

     чатающее устройство будет  распечатывать  символы  из

     Набора кои-8 в 7-битном представлении.

/FF

/NOFF

     - квалификатор /FF указывает, что  построчно-печатаю-

     щее устройство выполняет перевод формата механически.


                          - 64 -

                     00152-01 97 14-2


/LA11

     -  квалификатор  /LA11   позволяет   установить   для

     построчно-печатающего устройства тип PR11.

/LA180

     -  квалификатор  /LA180  позволяет   установить   для

     построчно-печатающего устройства тип PR180.

/LOWERCASE

/NOLOWERCASE

     - квалификатор  /LOWERCASE  указывает,  что  построч-

     но-печатающее устройство выводит строчные и прописные

     буквы.  Если  указан  квалификатор  /NOLOWERCASE,  то

     построчно-печатающее устройство будет выводить только

     прописные буквы.

/LOG

/NOLOG

     - квалификатор /LOG указываEт, что  на  терминале,  с

     которого издана команда SET PRINTER, будут распечата-

     ны установленные для построчно-печатающего устройства

     характеристики.

/LP11

     -  квалификатор  /LP11   позволяет   установить   для

     построчно-печатающего устройства тип LP11.

/PAGE=N

     - квалификатор /PAGE задает для построчно-печатающего

     устройства число строк, которое будет распечатываться

     в странице. N может принимать значения от 1 до 255.

/PASSALL

/NOPASSALL

     - квалификатор /PASSALL указывает, что система МОС ВП

     не интерпретирует специальные символы, они будут рас-


                          - 65 -

                     00152-01 97 14-2


     печатываться на построчно-печатающем  устройстве  как

     8-битные двоичные данные.

/PRINTALL

/NOPRINTALL

     -  квалификатор  /PRINTALL  указывает,  что   драйвер

     построчно-печатающего  устройства  распечатывает  все

     8-битные символы из набора кои-8 за исключением  спе-

     Циальных.

/TAB

/NOTAB

     - квалификатор /TAB указываEт, что  драйвер  построч-

     но-печатающего устройства интерпретирует символы  та-

     буляции.  Если  указан  квалификатор  /NOTAB,  то  на

     построчно-печатающем  устройстве   будет   распечатан

     8-битный код символа табуляции.

/TRUNCATE

/NOTRUNCATE

     - квалификатор /TRUNCATE указывает, что построчно-пе-

     чатающее устройство производит усечение  тех  данных,

     Выводная строка для которых превышает значение,  ука-

     занное в квалификаторе /WIDTH.

/UNKNOWN

     -  квалификатор  /UNKNOWN  позволяет  установить  для

     построчно-печатающего устройства тип,  который  неиз-

     вестен системе МОС ВП.

/UPPERCASE

/NOUPPERCASE

     - квалификатор  /UPPERCASE  указывает,  что  построч-

     но-печатающее устройство будет  распечатывать  только

     прописные    буквы.    Если    указан    квалификатор


                          - 66 -

                     00152-01 97 14-2


     /NOUPPERCASE, TO будут выводиться как прописные,  так

     и строчные буквы.

/WIDTH=N

     - квалификатор /WIDTH задает число символов в вывод-

     ной строке. Значение N зависит ОТ ТИпа  построчно-пе-

     чатающего устройства.

/WRAP

/NOWRAP

     - квалификатор /WRAP указывает, что построчно-печата-

     ющее устройство выводит символы  возврата  каретки  и

     перевода строки по достижении конца строки.

     Выбор PROCESS

     Выбор PROCESS изменяет характеристики процесса,  свя-

занные с выполнением, на время текущего сеанса  работы  на

терминале или на время выполнения пакетного задания.

     Формат

SET PROCESS [имя_процесса]

где имя_процесса - указывает имя процесса,  характеристики

которого должны быть изменены. Имя процесса  может  содер-

жать от 1 до 15 буквенно-цифровых символов. Если имя  про-

цесса не указано, изменяются характеристики текущего  про-

цесса.

     Командные квалификаторы

/DUMP

/NODUMP

     - квалификатор /DUMP указывает, что содержимое адрес-

     ного пространства должно быть сохранено в файле в те-

     кущем каталоге по умолчанию,  если  образ  завершился

     вследствии возникновения условия, обработка  которого

     не предусмотрена. Этот файл будет иметь  то  же  имя,


                          - 67 -

                     00152-01 97 14-2


     что и образ, выполнение которого прекращено, тип фай-

     ла будет DMP.

/IDENTIFICATION=PID

     - квалификатор /IDENTIFICATION указывает  идентифика-

     тор процесса (PID),  характеристики  которого  должны

     быть изменены. Идентификатор назначается процессу при

     его создании.

/NAME=строка

     - квалификатор /NAME изменяет имя  текущего  процесса

     на указанное имя.

/PRIORITY=N

     - квалификатор /PRIORITY изменяет приоритет  текущего

     процесса.

/PRIVILEGES=(привилегия[,...])

     - квалификатор /PRIVILEGES позволяет указать  пользо-

     вательские привилегии, которые должны быть  разрешены

     или запрещены для текущего процесса.

/RESOURCE_WAIT

/NORESOURCE_WAIT

     - квалификатор /RESOURCE_WAIT разрешает режим  ожида-

     ния ресурсов для текущего процесса.

/RESUME

     - квалификатор /RESUME указывает, что  приостановлен-

     ный процесс должен быть возобновлен.

/SUSPEND

/NOSUSPEND

     - квалификатор /SUSPEND указывает, что  текущий  про-

     цесс должен быть приостановлен. Если указан  квалифи-

     катор /NOSUSPEND, то приостановленный  процесс  будет

     активизирован.


                          - 68 -

                     00152-01 97 14-2


/SWAPPING

/NOSWAPPING

     - квалификатор /SWAPPING разрешает режим  обмена  для

     текущего процесса.

     Выбор PROTECTION

     Выбор PROTECTION устанавливает защиту для  отдельного

файла или группы фAйлов.

     Формат

SET PROTECTION[=(код)] спец_файла[,...]

где код - определяет защиту для указанного файла;

    спец_файла - спецификация  файла, для  которого должна

быть изменена защита.

     Командные квалификаторы

/CONFIRM

/NOCONFIRM

     - по квалификатору /CONFIRM  команда  SET  PROTECTION

     распечатывает спецификацию каждого файла  перед  тем,

     как изменить его защиту и  запрашивает  подтверждение

     пользователя,  что изменение защиты для  этого  файла

     должно быть произведено.

/LOG

/NOLOG

     - квалификатор /LOG указывает, что должны распечаты-

     ваться спецификации тех файлов, защита которых  изме-

     Нена.

     Позиционные квалификаторы

/PROTECTION=(код)

     - квалификатор /PROTECTION определяет код защиты  для

     файла, со спецификацией которого он указан. Этот ква-

     лификатор позволяет в одной  команде  SET  PROTECTION


                          - 69 -

                     00152-01 97 14-2


     указать для различных файлов различные коды защиты.

/DEFAULT

     - квалификатор /DEFAULT указывает защиту, которая бу-

     дет устанавливаться по  умолчанию  для  всех  файлов,

     созданных впоследствии во время интерактивной  работы

     с терминалом или выполнения пакетного задания.

     формат  команды   SET  PROTECTION  с   квалификатором

     /DEFAULT

SET PROTECTION[=(код)]/DEFAULT

/DEVICE

     - квалификатор /DEVICE устанавливает защиту  для  ус-

     тройства, не имеющего файловой структуры.

     Формат команды SET PROTECTION с квалификатором DEVICE

SET PROTECTION[=код]/DEVICE имя_устр[:]

     Если в команде SET PROTECTION наряду с квалификатором

     /DEVICE указан квалификатор /OWNER_UIC, то  для  ука-

     занного устройства будет установлена защита и опреде-

     лен UIC владельца устройства.

     Выбор PROMPT

     Выбор PROMPT позволяет изменить строку подсказки  для

интерпретатора команд MCR.

     Формат

SET PROMPT[=строка]

где строка - строкA, которая будет  использоваться  интер-

претатором MCR вместо строки подсказки по  умолчанию  (>).

строка может содержать более 1 символа. В строке допустимо

использование любых символов в коде кои-8.


                          - 70 -

                     00152-01 97 14-2


     Командный квалификатор

/CARRIAGE_CONTROL

/NOCARRIAGE_CONTROL

     - квалификатор /CARRIAGE_CONTROL указывает, что перед

     строкой подсказки должны выводиться символы  возврата

     каретки и перевода строки.

     Выбор QUEUE

     Выбор QUEUE изменяет текущее состояние  или  атрибуты

очереди.

     Формат

SET QUEUE имя_очереди[:]

где имя_очереди - имя очереди на выполнение или общей оче-

реди, состояние или атрибуты которой должны быть изменены.

     Командные квалификаторы

/BASE_PRIORITY=N

     - квалификатор /BASE_PRIORITY указывает базовый прио-

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

     тичное число в диапазоне от 0 до 15.

/BLOCK_LIMIT=([нижний_предел,]верхний предел)

/NOBLOCK_LIMIT

     - квалификатор /BLOCK_LIMIT определяет, задания како-

     го размера (в блоках) из очереди к построчно-печатаю-

     щему устройству или терминалу, могут быть  выполнены.

     этот квалификатор позволяет зарезервировать некоторые

     печатающие устройства для выполнения заданий  опреде-

     ленного размера.

     Квалификатор /NOBLOCK_LIMIT отменяет  ограничения  на

     размеры заданий,  установленные  для данной очереди.




                          - 71 -

                     00152-01 97 14-2


/CHARACTERISTICS=(характеристика[,...])

/NOCHARACTERISTICS

     - квалификатор /CHARACTERISTICS  указывает  одну  или

     несколько характеристик обработки заданий в  очереди.

     квалификатор /NOCHARACTERISTICS отменяет  установлен-

     ные для данной очереди характеристики.

/CPUDEFAULT=время

     - квалификатор /CPUDEFAULT определяет количество вре-

     мени центрального процессора, используемое по умолча-

     нию для выполнения пакетных заданий.

/CPUMAXIMUM=время

     - квалификатор  /CPUMAXIMUM  определяет  максимальное

     время центрального процессора для выполнения пакетных

     заданий.

/DEFAULT=(выбор[,...])

/NODEFAULT

     - квалификатор /DEFAULT устанавливает  умолчания  для

     некоторых выборов команды PRINT. Подробная информация

     приведена в [4].

/DISABLE_SWAPPING

/NODISABLE_SWAPPING

     - квалификатор /DISABLE_SWAPPING указывает, что зада-

     ния, выбранные на выполнение из очереди пакетных  за-

     даний, могут загружаться и выгружаться из памяти.

/ENABLE_GENERIC

/NOENABLE_GENERIC

     - квалификатор /ENABLE_GENERIC указывает, что  файлы,

     которые поставлены в общую очередь, должны быть поме-

     щены на обработку в указанную  в  команде  SET  QUEUE

     очередь.


                          - 72 -

                     00152-01 97 14-2


/FORM=тип

     - квалификатор /FORM задает тип формата для очереди к

     построчно-печатающему устройству или терминалу.

/JOB_LIMIT=N

     - квалификатор /JOB_LIMIT  указывает  число  пакетных

     заданий из указанной в команде SET QUEUE очереди, ко-

     торые могут выполняться одновременно.

/OWNER_UIC=UIC

     - квалификатор /OWNER_UIC позволяет изменить UIC вла-

     дельца очереди.

/PROTECTION=(код)

     - квалификатор /PROTECTION задает код защиты для ука-

     занной в команде SET QUEUE очереди.

/RETAIN[=выбор]

/NORETAIN

     - квалификатор /RETAIN указывает, что после  выполне-

     ния задания останутся в очереди.  В  качестве  выбора

     можно указать ключевые слова ALL и ERROR. Если указан

     выбор ALL, то все задания после выполнения  останутся

     в очереди, если ERR - то только те  задания,  которые

     завершились с ошибкой.

/SCHEDULE=[NO]SIZE

     - квалификатор /SCHEDULE указывает,  что  задания  из

     очереди к построчно-печатающему устройству или к тер-

     миналу будут выбираться для вывода на печать в поряд-

     ке возрастания  размеров  заданий.  По  квалификатору

     /SCHEDULE=NOSIZE задания выбираются из очереди в  по-

     рядке постановки их в очередь, независимо  от  разме-

     ров.


                          - 73 -

                     00152-01 97 14-2


/SEPARATE=(выбор[,...])

/NOSEPARATE

     - квалификатор /SEPARATE указывает, какие разделители

     должны использоваться по умолчанию при распечатке за-

     даний. В  качестве  разделителей  можно  использовать

     флаговую страницу, концевую страницу,  страницу  раз-

     бивки на части  и  содержимое  библиотеки  управления

     устройством.

/WSDEFAULT=N

     - квалификатор /WSDEFAULT  определяет  для  пакетного

     задания размер рабочего набора по умолчанию.

/WSEXTENT=N

     - квалификатор /WSEXTENT определяет, насколько  может

     быть увеличен рабочий набор пакетного задания.

/ENTRY

     - квалификатор /ENTRY изменяет текущее состояние  или

     атрибуты задания, которое в данный момент находится в

     очереди. Подробное об'яснение привEдено в [4].

     Выбор RESTART_VALUE

     Выбор RESTART_VALUE устанавливает величину, проверяе-

мую при перезапуске пакетных заданий. Эта команда  исполь-

зуется в командных процедурах.

     Формат

SET RESTART_VALUE = строка

где строка - указывает строку,  которая  должна  быть  ис-

пользована в пакетном задании. Строка может  содержать  до

255 символов.

     Выбор RMS_DEFAULT

     Выбор RMS_DEFAULT задает значения  по  умолчанию  для

счетчиков блоков и буферов, для уровня пролога и для вели-


                          - 74 -

                     00152-01 97 14-2


чины расширения, используемых при выполнении файловых опе-

раций системой  управления  записями  (СУД-32).

     Формат

SET RMS_DEFAULT

     Командные квалификаторы

/BLOCK_COUNT=счетчик

     - квалификатор /BLOCK_COUNT  задает число блоков, ис-

     пользуемое по  умолчанию  в  операциях  с  последова-

     тельными файлами. Счетчик  представляет  собой  число

     блоков, выделяемых для буфера ввода-вывода; он  может

     принимать значения от 0 до 127.

/BUFFER_COUNT=счетчик

     - квалификатор /BUFFER_COUNT  задает  число  буферов,

     используемое по умолчанию  при  выполнении   файловых

     операций. Счетчик может принимать значения от -128 до

     127.

/DISK

     - квалификатор /DISK  указывает, что умолчания должны

     использоваться при выполнении файловых  операций  над

     дисковыми томами.

/EXTEND_QUANTITY=N

     - квалификатор /EXTEND_QUANTITY указывает число  бло-

     ков, на которое может быть расширен  последовательный

     файл.

/INDEXED

     - квалификатор /INDEXED указывает,  что  значение  по

     умолчанию для счетчика буферов  будет  использоваться

     при выполнении файловых операций над индексными  фай-

     лами.


                          - 75 -

                     00152-01 97 14-2


/MAGTAPE

     - квалификатор /MAGTAPE указывает, что  для  счетчика

     буферов должно использоваться при выполнении операций

     над томами на магнитных лентах значение по умолчанию.

/NETWORK_BLOCK_COUNT=счетчик

     - квалификатор  /NETWORK_BLOCK_COUNT  задает  счетчик

     блоков, используемый по умолчанию для сетевого досту-

     па к удаленным последовательным,  индексно-последова-

     тельным и относительным файлам.

/PROLOG=N

     - квалификатор /PROLOG задает выбираемый по умолчанию

     уровень пролога для индексно-последовательных файлов.

     N может принимать значения 0, 2 и 3.

/RELATIVE

     - квалификатор /RELATIVE указывает, что  значение  по

     умолчанию для счетчика буферов должно  использоваться

     при выполнении файловых операций  над  относительными

     файлами.

/SEQUENTIAL

     - квалификатор /SEQUENTIAL указывает, что значение по

     умолчанию для счетчика буферов должно  использоваться

     при выполнении файловых операций над последовательны-

     ми  файлами, включая  операции  на  дисках, магнитных

     лентах и устройствах, ориентированных на записи.

/SYSTEM

     - квалификатор /SYSTEM  указывает,  что  значения  по

     умолчанию должны использоваться всеми процессами  при

     выполнении файловых операций.


                          - 76 -

                     00152-01 97 14-2


/UNIT_RECORD

     - квалификатор /UNIT_RECORD  указывает, что  значение

     по умолчанию для счетчика  буферов  должно  использо-

     ваться   при   выполнении   файловых   операций    на

     устройствах, ориентированных на записи.

     Выбор TERMINAL

     Выбор TERMINAL позволяет изменить характеристики тер-

минала.

     Формат

SET TERMINAL [имя_устр[:]]

где имя_устр  -  имя  терминала,  характеристики  которого

должны    быть    изменены.

     Командные квалификаторы

/ADVANCED_VIDEO

/NOADVANCED_VIDEO

     - квалификатор  /ADVANCED_VIDEO  позволяет  увеличить

     число строк, выводимых на экран, для терминалов,  ши-

     рина экрана которых установлена равной 132  позициям.

     Если  для  таких   терминалов   указан   квалификатор

     /ADVANCED_VIDEO, то размер страницы для терминала ус-

     танавливается равным 24 строкам. Если указан квалифи-

     катор /NOADVANCED_VIDEO, то размер страницы для  тер-

     минала, ширина экрана которого  равна  132  позициям,

     будет установлен равным 12 строкам.

/ALTYPEAHD

/NOALTYPEAHD

     - квалификатор /ALTYPEAHD используется вместе с  ква-

     лификатором /PERMANENT для управления размером буфера

     предварительного ввода.


                          - 77 -

                     00152-01 97 14-2


/ANSI_CRT

/NOANSI_CRT

     - квалификатор /ANSI_CRT устанавливает для  терминала

     Статус CRT_терминала.

/APPLICATION_KEYPAD

     - квалификатор /APPLICATION_KEYPAD указывает, что для

     функциональной клавиатуры должен быть установлен  ре-

     жим APPLICATION_KEYPAD,  чтобы  использовать  возмож-

     ность команды DEFINE/KEY.

/AUTOBAUD

/NOAUTOBAUD

     - совместно с квалификатором /PERMANENT, квалификатор

     /AUTOBAUD определяет, должно ли быть разрешено  авто-

     матическое определение скорости (в бодах) для  терми-

     нальной линии.  Этот  квалификатор  устанавливает  по

     умолчанию скорость терминала  равной 9600 бод.

/BLOCK_MODE

/NOBLOCK_MODE

     - квалификатор /BLOCK_MODE указывает, что данный тер-

     минал может выполнять передачу данных в блочном режи-

     ме, локальное редактирование и защиту полей.

/BRDCSTMBX

/NOBRDCSTMBX

     - квалификатор /BRDCSTMBX управляет пересылкой  сооб-

     щений в соответствующий  данному  терминалу  почтовый

     ящик, если он существует.

/BROADCAST

/NOBROADCAST

     - квалификатор /BROADCAST указывает, что данный  тер-

     минал может получать сообщения,  такие  как  почтовые


                          - 78 -

                     00152-01 97 14-2


     извещения и ответные сообщения. По умолчанию терминал

     получает все сообщения, посылаемые системным операто-

     ром или другим привилегированным пользователем.

/CRFILL[=формула]

     - квалификатор CRFILL указывает, что  система  должна

     генерировать символы наполнения после нажатия на тер-

     минале клавиши RETURN.

/DEVICE_TYPE=тип_терминала

     - квалификатор /DEVICE_TYPE информирует систему о ти-

     пе терминала. Для терминала устанавливаются  выбирае-

     мые по умолчанию характеристики.

/DIALUP

/NODIALUP

     - квалификатор /DIALUP указывает, что данный терминал

     является коммутируемым терминалом.

/DISCONNECT

/NODISCONNECT

     - квалификатор /DISCONNECT  указывает,  что  процесс,

     связанный с данным терминалом, не должен  быть  прер-

     ван, если на линии будет обнаружено зависание.

/DISMISS

/NODISMISS

     - квалификатор /DISMISS определяет, что драйвер  тер-

     минала будет игнорировать те данные, которые  привели

     к ошибке паритета.

/DMA

/NODMA

     - квалификатор /DMA управляет  использованием  режима

     прямого  доступа  контроллера  к памяти,  допускающем

     этот режим.


                          - 79 -

                     00152-01 97 14-2


/ECHO

/NOECHO

     - квалификатор /ECHO указывает,  что  терминал  будет

     осуществлять эхо-сопровождение (т. е. вывод на  экран

     терминала строк, вводимых с терминала).

/EDIT_MODE

/NOEDIT_MODE

     - квалификатор /EDIT_MODE указывает, что терминал мо-

     жет выполнять определенные в  рамках  стандарта  ANSI

     функции предварительного редактирования.

/EIGHT_BIT

/NOEIGHT_BIT

     - квалификатор /EIGHT_BIT указывает, что терминал ис-

     пользует 8-битный символьный код кои-8.

/ESCAPE

/NOESCAPE

     - квалификатор /ESCAPE указывает, что  ESC-последова-

     тельности в стандартах ANSI, передаваемые с  термина-

     ла, обрабатываются как единый многосимвольный признак

     конца строки.

/FALLBACK

/NOFALLBACK

     - квалификатор /FALLBACK указывает, что 8-битные сим-

     волы из набора символов кода кои-8 должны  выводиться

     на терминал в 7-битном представлении.

/FRAME=N

     - квалификатор /FRAME указывает, что драйвер термина-

     ла рассматривает каждый вводимый или выводимый символ

     как N-битные данные, где N может  принимать  значения

     От 5 до 8.


                          - 80 -

                     00152-01 97 14-2


/FORM

/NOFORM

     - квалификатор /FORM указывает, что драйвер терминала

     должен интерпретировать символ перевода  формата  как

     один или несколько  символов  перевода  строки.  Если

     указан квалификатор /NOFORM, то интерпретация символа

     перевода формата не выполняется.

/FULLDUP

/NOFULLDUP

     - квалификатор /FULLDUP определяет режим работы  тер-

     минала как полнодуплексный.

/HALFDUP

/NOHALFDUP

     - квалификаторы /HALFDUP и  /NOHALFDUP  указывают,  в

     каком режиме работает терминал - в полудуплексном или

     полнодуплексном. Задание квалификатора /HALFDUP экви-

     валентно заданию квалификатора /NOFULLDUP.

/HANGUP

/NOHANGUP

     - квалификатор /HANGUP определяет возможность зависа-

     ния для модема  терминала,  когда  пользователь  осу-

     ществляет выход из системы.

/HARDCOPY

/NOHARDCOPY

     - квалификатор /HARDCOPY указываEт, что терминал  яв-

     ляется терминалом с печатной копией. Если указан ква-

     лификатор /NOHARDCOPY, Tо терминал является видеотер-

     миналом.


                          - 81 -

                     00152-01 97 14-2


/HOSTSYNC

/NOHOSTSYNC

     - квалификатор /HOSTSYNC указывает, что система  осу-

     ществляет синхронизацию данных, вводимых с терминала,

     используя буфер предварительного ввода.

/INQUIRE

     - квалификатор /INQUIRE  запрашивает  у  пользователя

     тип терминала и, в зависимости от ответа,  устанавли-

     вает тип терминала.

/INSERT

     - квалификатор /INSERT  устанавливает  для  терминала

     режим INSERT, который позволяет вставлять символы при

     редактировании командных строк.

/INTERACTIVE

/NOINTERACTIVE

     - квалификатор  /INTERACTIVE  указывает,  что  данный

     терминал  используется  как  интерактивный  терминал.

     Квалификатор /INTERACTIVE эквивалентен  квалификатору

     /NOPASSALL.

/LFFILL[=N]

     - квалификатор /LFFILL указывает, что система  должна

     генерировать символы наполнения после символа перево-

     да строки, посылаемого на терминал.

/LINE_EDITING

/NOLINE_EDITING

     - квалификатор /LINE_EDITING  предоставляет  дополни-

     тельные  возможности  для  редактирования   командных

     строк.


                          - 82 -

                     00152-01 97 14-2


/LOCAL_ECHO

/NOLOCAL_ECHO

     - квалификатор  /LOCAL_ECHO,  используемый  вместе  с

     квалификатором /ECHO, указывает, что терминал  должен

     осуществлять эхо-сопровождение символов локально,  не

     под управлением системы.

/LOWERCASE

/NOLOWERCASE

     - квалификатор  /LOWERCASE  указывает,  что  терминал

     имеет строчные и прописные буквы.

/MODEM

/NOMODEM

     - квалификатор /MODEM указывает, что терминал подклю-

     чен через  модем  или  кабель,  который  обеспечивает

     стандартные  управляющие  сигналы   модема.   Система

     МОС ВП автоматически интерпретирует сигналы модема.

/NUMERIC_KEYPAD

     - квалификатор /NUMERIC_KEYPAD указывает, что функци-

     ональная клавиатура должна быть установлена  в  режим

     NUMERIC_KEYPAD, чтобы ее можно было использовать  для

     ввода чисел и знаков препинания.

/OVERSTRIKE

     - квалификатор /OVERSTRIKE устанавливает  терминал  в

     режим, который позволяет при редактировании командной

     строки заменить текущий символ.

/PAGE[=N]

     - квалификатор /PAGE указывает для  терминала  размер

     страницы.


                          - 83 -

                     00152-01 97 14-2


/PARITY[=выбор]

/NOPARITY

     - квалификатор /PARITY определяет режим контроля  па-

     Ритета для терминала. В качестве выборов  можно  ука-

     зать  EVEN  или  ODD.   Если    указан   квалификатор

     /NOPARITY, то режим контроля паритета  для  терминала

     не будет установлен.

/PASSALL

/NOPASSALL

     - квалификатор /PASSALL указывает, что вводные и  вы-

     водные данные для терминала не интерпретируются и пе-

     редаются в 7-битном или 8-битном двоичном формате.

/PASTHRU

/NOPASTHRU

     - квалификатор /PASTHRU  указывает,  что  специальные

     символы не должны интерпретироваться и будут  переда-

     ваться в прикладную программу как двоичные данные.

/PERMANENT

     - квалификатор /PERMANENT указывает, должны ли харак-

     теристики устанавливаться для терминала постоянно или

     только на время текущего сеанса работы на терминале.

/PRINTER_PORT

/NOPRINTER_PORT

     - квалификатор /PRINTER_PORT указывает, что  терминал

     имеет порт печати.

/PROTOCOL=DDCMP

/PROTOCOL=NONE

     - квалификатор /PROTOCOL=DDCMP указывает, что  терми-

     нальный порт заменяется на асинхронную линию с прото-

     колом DDCMP. Квалификатор /PROTOCOL=NONE осуществляет


                          - 84 -

                     00152-01 97 14-2


     обратную замену асинхронной  линии  DDCMP  на  терми-

     нальную линию.

/READSYNC

/NOREADSYNC

     - квалификатор /READSYNC указывает, что система  раз-

     решает  чтение  данных с терминала с помощью управля-

     ющего символа  CTRL/Q, а запрещает чтение - с помощью

     управляющего символа CTRL/S.

/REGIS

/NOREGIS

     - квалификатор /REGIS указывает, что терминал распоз-

     нает графические команды.

/SCOPE

/NOSCOPE

     - квалификатор /SCOPE указывает, что терминал являет-

     ся видеотерминалом и для  него  при  нажатии  клавиши

     <DEL> разрешено удаление символа  на  позиции,  пред-

     ществующей текущей.

/SET_SPEED

/NOSET_SPEED

     - квалификатор /SET_SPEED указывает, что для  измене-

     ния скорости терминала можно использовать  квалифика-

     тор /SPEED.

/SECURE_SERVER

/NOSECURE_SERVER

     - квалификатор /SECURE_SERVER определяEт, что при на-

     жатии клавиши BREAK будет  завершен  текущий процесс.

/SIXEL_GRAPHICS

/NOSIXEL_GRAPHICS

     - квалификатор /SIXEL_GRAPHICS указывает, что  терми-


                          - 85 -

                     00152-01 97 14-2


     нал может выводить графическую информацию,  используя

     графический протокол SIXEL, определенный в REGIS.

/SOFT_CHARACTERS

/NOSOFT_CHARACTERS

     - квалификатор /SOFT_CHARACTERS указывает, что терми-

     нал имеет возможность работать  с  набором  символов,

     определенным пользователем.

/SPEED=скорость

     - квалификатор /SPEED задает скорость, с которой тер-

     минал посылает и получает данные.

/SYSPASSWORD

/NOSYSPASSWORD

     - квалификатор /SYSPASSWORD указывает,  что  при  ре-

     гистрации, прежде чем указать имя пользователя, необ-

     ходимо ввести системный пароль.

/TAB

/NOTAB

     - квалификатор /TAB управляет обработкой символа  та-

     буляции.

/TTSYNC

/NOTTSYNC

     - квалификатор /TTSYNC определяет возможность синхро-

     низации вывода с помощью управляющих символов  CTRL/S

     и CTRL/Q.

/TYPE_AHEAD

/NOTYPE_AHEAD

     - квалификатор /TYPE_AHEAD  указываEт,  что  терминал

     должен принимать незапланированный ввод.

/UNKNOWN

     - квалификатор /UNKNOWN указывает, что данный  терми-


                          - 86 -

                     00152-01 97 14-2


     нал относится к неизвестному системе МОС ВП типу тер-

     миналов. Для терминала будут установлены  характерис-

     тики, выбираемые по умолчанию  для  терминалов  неиз-

     вестного типа.

/UPPERCASE

/NOUPPERCASE

     - квалификатор  /UPPERCASE  указывает,  что  терминал

     осуществляет преобразование строчных букв  в  пропис-

     ные.

/WIDTH=N

     - квалификатор /WIDTH задает число символов в  каждой

     строке, вводимой или выводимой на терминал.  N  может

     принимать значения в диапазоне от 0 до 255.

/WRAP

/NOWRAP

     - квалификатор /WRAP указывает,  что  при  достижении

     конца строки  терминал  должен  генерировать  символы

     возврата каретки или перевода строки.

     Выбор TIME

     Выбор  TIME  позволяет  установить  время  в  системе

мос вп.

     Формат

SET TIME[=время]

где время - значение времени, задаваемое в формате

[DD_MMM_YYYY[:]] [HH:MM:SS.CC]

     Более подробная информация приведена в [4].

     Выбор UIC

     Выбор UIC устанавливает в качестве кода,  выбираемого

по умолчанию, новый код идентификации пользователя  (UIC).

команду SET UIC рекомендуется использовать  для  получения


                          - 87 -

                     00152-01 97 14-2


доступа к файлу, находящемуся в каталоге, защита  которого

разрешает доступ только владельцу этого каталога.

     Формат

SET UIC [G,M]

где [G,M] - задает номер группы и номер члена в этой груп-

пе.

     Выбор VERIFY

     Выбор VERIFY указывает, будут ли командные  строки  и

строки данных, содержащиеся в командной процедуре,  распе-

чатываться на терминале или выводиться в файл  регистрации

пакетного задания.

     Формат

SET [NO]VERIFY[=([NO]PROCEDURE,[NO]IMAGE)]

где PROCEDURE - указывает, что все команды  интерпретатора

MCR, выполняемые в командной процедуре, должны  распечаты-

ваться на выводном устройстве;

    IMAGE - указывает, что  на выводном  устройстве  будут

распечатываться только строки данных.

     Выбор VOLUME

     Выбор VOLUME позволяет модифицировать  характеристики

одного  или  нескольких  монтированных  томов  с  файловой

структурой.

     Формат

SET VOLUME имя_устр[:][,...]

где имя_устр - имя монтированного тома с файловой структу-

рой.

     Командные квалификаторы

/ACCESSED [=N]

     - квалификатор /ACCESSED задает число каталогов,  ко-

     торые должны находиться в системном пространстве  для


                          - 88 -

                     00152-01 97 14-2


     быстрого доступа к ним.

/DATA_CHECK[=(выбор[,...])]

     - квалификатор /DATA_CHECK определяет  умолчание  для

     операций контроля данных, которые следуют за операци-

     ями чтения и/или записи на указанном томе. В качестве

     выборов можно указать [NO]READ, [NO]WRITE.

/ERASE_ON_DELETE

/NOERASE_ON_DELETE

     - квалификатор /ERASE_ON_DELETE указывает, что  когда

     файл на томе  уничтожается,  данные,  содержащиеся  в

     этом файле, будут потеряны.

/EXTENSION[=N]

     - квалификатор /EXTENSION указывает число блоков, ис-

     пользуемое по умолчанию в качестве размера расширения

     для всех файлов на данном томе.

/FILE_PROTECTION=(код)

     - квалификатор /FILE_PROTECTION  задает  код  защиты,

     назначаемый по умолчанию всем файлам на указанном то-

     ме.

/HIGHWATER_MARKING

/NOHIGHWATER_MARKING

     - квалификатор /HIGHWATER_MARKING  позволяет  устано-

     вить для указанного тома атрибут, гарантирующий,  что

     пользователь не сможет считать данные, которые он  не

     записывал.

/LABEL=метка_тома

     - квалификатор /LABEL задает метку тома, которая  мо-

     жет содержать от 1 до 12 буквенно-цифровых  символов.

     все строчные буквы автоматически преобразуются в про-

     писные.


                          - 89 -

                     00152-01 97 14-2


/LOG

/NOLOG

     - квалификатор /LOG указывает, что команда SET VOLUME

     выводит спецификацию каждого тома, характеристики ко-

     торого были изменены.

/MOUNT_VERIFICATION

/NOMOUNT_VERIFICATION

     - квалификатор /MOUNT_VERIFICATION указывает, что при

     монтировании тома должна выполняться проверка.

/OWNER_UIC[=UIC]

     - квалификатор /OWNER_UIC устанавливает UIC владельца

     тома.

/PROTECTION=(код)

     - квалификатор /PROTECTION указывает код  защиты  для

     данного тома.

/REBUILD

     - квалификатор /REBUILD восстанавливает пределы  кэша

     для тома, который был неправильно демонтирован.

/RETENTION=(MIN[,MAX])

     - квалификатор /RETENTION задает минимальное (MIN)  и

     максимальное (MAX) время сохранения  файлов,  которое

     используется файловой системой для  определения  даты

     истечения для файлов на указанном томе.

/UNLOAD

/NOUNLOAD

     - квалификатор /UNLOAD указывает, что том будет  раз-

     гружен после выполнения команды DISMOUNT  интерпрета-

     тора MCR.

/USER_NAME[=имя_пользователя]

     - квалификатор /USER_NAME указывает имя владельца то-


                          - 90 -

                     00152-01 97 14-2


     ма, которое должно быть записано на том. Имя  пользо-

     вателя может содержать до 12 буквенно-цифровых симво-

     лов.

/WINDOWS[=N]

     - квалификатор /WINDOWS задает число указателей отоб-

     ражения, выделяемых для окон файла.

     Выбор WORKING_SET

     Выбор WORKING_SET изменяет  размер  рабочего  набора,

используемый по умолчанию для данного процесса, или  уста-

навливает максимальный размер рабочего набора.

     Формат

SET WORKING_SET

     Командные квалификаторы

/ADJUST

/NOADJUST

     - квалификатор /ADJUST разрешает  изменение  рабочего

     набора процесса.

/EXTENT=N

     - квалификатор /EXTENT указывает  максимальное  число

     страниц, которое может постоянно находиться в рабочем

     наборе во время выполнения образа.

/LIMIT=N

     - квалификатор /LIMIT указывает размер рабочего набо-

     ра, который должен быть установлен по завершению  об-

     раза.

/LOG

/NOLOG

     - квалификатор  /LOG  управляет  выводом  информации,

     подтверждающей выполнение команды SET WORKING_SET.


                          - 91 -

                     00152-01 97 14-2


/QUOTA=N

     - квалификатор /QUOTA  указывает  максимальное  число

     страниц для рабочего набора, которое может  запросить

     образ, выполняющийся в контексте данного процесса.



     1.9. Команда SHOW



     Команда SHOW выводит информацию о  текущем  состоянии

процесса, системы, устройств в системе.

     Формат

SHOW выбор

где выбор - мнемоника функции, выполняемой командой.



     1.9.1. Описание выборов команды SHOW



     Выбор ACCOUNTING

     Команда SHOW ACCOUNTING выводит те типы  учетной  ин-

формации, по которым учет разрешен. Описание типов учетной

информации приведено в [4].

     Формат

SHOW ACCOUNTING

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     ACCOUNTING направляет свой вывод.  Если  квалификатор

     опущен или указан без спецификации файла,  информация

     выводится в выводной поток, выбираемый  для  текущего

     процесса по умолчанию, или  на устройство,  идентифи-

     цируемое логическим именем SYS$OUTPUT. Если в  квали-


                          - 92 -

                     00152-01 97 14-2


     фикаторе /OUTPUT указана неполная спецификация  файла

     (например, задан только каталог), то пO  умолчанию  в

     Качестве имени файла выбирается имя SHOW, в  качестве

     Типа файла - LIS. В спецификации файла  не  допустимы

     Символы обобщения. Квалификатор  /NOOUTPUT  подавляет

     Вывод.

     Выбор ACL

     Команда SHOW ACL выводит список  управления  доступом

(ACL) для таких об'ектов, как файл или устройство.

     Формат

SHOW ACL имя_об'екта

где имя_об'екта - имя об'екта, для которого команда  выво-

дит ACL. В спецификации имени об'екта символы обобщения не

допустимы.

     Командные квалификаторы

/OBJECT_TYPE=тип_об'екта

     - квалификатор /OBJECT_TYPE определяет  тип  об'екта,

     для которого выводится ACL. Возможны следующие ключе-

     вые слова, задающие тип об'екта:

     1) FILE - об'ект является файлом на диске с файловой

     структурой;

     2) DEVICE - об'ект является устройством.

     Если в команде SHOW ACL имя об'екта  не  указано,  то

     выводится список ACL для файла.

     Пример.

> SHOW ACL/OBJECT_TYPE=DEVICE TTA1

  OBJECT TYPE: DEVICE, OBJECT NAME: VTA1

  (IDENTIFIER=[SALES,FRANK],ACCESS=READ)

  (IDENTIFIER=[123,321]+NETWORK,ACCESS=NONE)

     В  этом  примере  команда  SHOW   выводит   ACL   для


                          - 93 -

                     00152-01 97 14-2


устройства TTA1.

     Выбор AUDIT

     Команда SHOW AUDIT выводит сообщения, указывающие ка-

кие возможности контроля за безопасностью системы разреше-

ны и по каким событиям, связанным с  этими  возможностями,

будут выдаваться извещения.

     Формат

SHOW AUDIT

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     AUDIT направляет свой вывод. Если квалификатор опущен

     или указан без спецификации файла, то информация  по-

     сылается в выводной поток,  выбираемый  для  текущего

     процесса по умолчанию, либо на устройство,  идентифи-

     цируемое логическим именем SYS$OUTPUT. Если в  квали-

     фикаторе /OUTPUT указана неполная спецификация  файла

     (например, задан только каталог), то по  умолчанию  в

     качестве имени файла выбирается имя SHOW, в  качестве

     типа файла - LIS. В спецификации файла  не  допустимы

     символы обобщения. Квалификатор  /NOOUTPUT  подавляет

     Вывод.

     Примеры:

1. > SHOW AUDIT

     SECURITY ALARMS CURRENTLY DISABLED

     Сообщение, выведенное по команде SHOW AUDIT, указыва-

ет, что аварийные сигналы защиты запрещены.


                          - 94 -

                     00152-01 97 14-2


2. > SHOW AUDIT

     SECURITY ALARMS CURRENTLY ENABLED FOR:

     ACL

     BREAKIN: (DIALUP,LOCAL,REMOTE,NETWORK,DETACHED)

     FILE_ACCESS:

     FAILURE: (READ,WRITE,EXECUTE,DELETE,CONTROL)

     BYPASS:  (READ,WRITE,EXECUTE,DELETE,CONTROL)

     Данная команда SHOW AUDIT сообщает, что все  термина-

лы, об'явленные как терминалы операторов, следящих за  бе-

зопасностью системы, будут получать аварийные сигналы  за-

щиты в случаях, когда:

     1) происходят события, связанные с доступом к ACL;

     2) система обнаруживает попытку незаконного доступа;

     3) доступ к файлу на чтение, запись, выполнение, уда-

        ление или управление дает ошибку;

     4) доступ к файлу на чтение, запись,  выполнение  или

        управление получен за счет привилегии BYPASS.

3. > SHOW AUDIT

     SECURITY ALARMS CURRENTLY ENABLED FOR:

     BREAKIN: (DIALUP,LOCAL,REMOTE,NETWORK,DETACHED)

     LOGIN:   (DIALUP)

     LOGOUT:  (DIALUP)

     Данная команда SHOW AUDIT сообщает, что все  термина-

лы, об'явленные как терминалы операторов, следящих за  бе-

зопасностью системы, будут получать аварийные сигналы  за-

щиты в случаях, когда система обнаружит попытку незаконно-

го доступа, регистрацию в системе с  коммутируемой  линии,

регистрацию выхода из системы с коммутируемой линии.

     Выбор BROADCAST

     Команда SHOW BROADCAST выводит классы  сообщений,  на


                          - 95 -

                     00152-01 97 14-2


которые в текущий момент можно  воздействовать  с  помощью

команды SET BROADCAST.

     Формат

SHOW BROADCAST

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     BROADCAST направляет свой  вывод.  Если  квалификатор

     опущен или указан без спецификации файла, то информа-

     ция посылается в выводной поток, выбираемый для теку-

     щего процесса по умолчанию, или на устройство,  иден-

     тифицируемое логическим  именем  SYS$OUTPUT.  Если  в

     квалификаторе /OUTPUT указана  неполная  спецификация

     файла (например, задан только каталог), то по умолча-

     нию в качестве имени файла выбирается имя SHOW, в ка-

     честве типа файла - LIS. В спецификации файла не  до-

     пустимо использование символов обобщения.  Квалифика-

     тор /NOOUTPUT подавляет вывод.

     Выбор DEFAULT

     Команда SHOW DEFAULT распечатывает текущее  умолчание

для имен устройства и каталога. Это умолчание используется

в  случаях,  когда  в  спецификации  файла   опущено   имя

устройства и/или каталога.

     Формат

SHOW DEFAULT

     Примеры:

1. > SHOW DEFAULT

     DISK1:[ALPHA]

   > SET DEFAULT DISK5:[IVANOV.SOURCES]


                          - 96 -

                     00152-01 97 14-2


   > SHOW DEFAULT

     DISK5:[IVANOV.SOURCES]

     В данном примере первая команда SHOW DEFAULT распеча-

тывает текущее умолчание для имен устройства  и  каталога.

команда SET DEFAULT изменяет это умолчание. Следующая  ко-

манда SHOW DEFAULT распечатывает новое текущее умолчание.

2. > SHOW DEFAULT

     DISK0:[IVANOV]

   > DEFINE SYS$DISK DISK3:

           .

           .

           .

   > SHOW DEFAULT

     DISK3:[IVANOV2]

     Первая команда  SHOW  DEFAULT  распечатывает  текущее

умолчание для имен устройства и каталога.  Команда  DEFINE

изменяет эквивалентное имя для логического имени  SYS$DISK

и, таким образом, изменяет устройство по умолчанию с DISK0

на DISK3. Следующее использование команды SHOW DEFAULT по-

казывает, что теперь по умолчанию будет использоваться имя

каталога [IVANOV2].

     Выбор DEVICES

     Команда   SHOW   DEVICES   распечатывает    состояние

устройства в системе.

     Формат

SHOW DEVIсES [имя_устройства[:]]

где имя_устройства [:] - имя устройства, о котором  запра-

шивается информация.

     Можно указать полное имя устройства, либо часть  име-

ни. Команда SHOW  DEVICES  предусматривает  умолчание  для


                          - 97 -

                     00152-01 97 14-2


опущенных частей имени устройства, а именно:

     1) если задано усеченное  имя  устройства,  например,

указана только буква D, то выдается  информация  обо  всех

устройствах, имена которых начинаются с  этого  усеченного

имени (в данном случае с буквы D);

     2) если опущено обозначение контроллера,  то  команда

SHOW DEVICES выдает информацию обо всех устройствах с ука-

занным номером на всех контроллерах;

     3) если опущен номер устройства, выдается  информация

обо всех устройствах на указанном контроллере.

     Если  в  команде  SHOW  DEVICES  не  указаны  ни  имя

устройства, ни любой из допустимых квалификаторов, то  вы-

дается краткая информация обо всех устройствах в  системе.

чтобы получить информацию об определенном  устройстве  или

обо всех устройствах данного типа, необходимо  задать  имя

устройства.

     Для получения списка устройств, закрепленных в  теку-

щий  момент  за   процессом,   используется   квалификатор

/ALLOCATED. Для получения списка  монтированных  устройств

используется квалификатор /MOUNTED.

     Командные квалификаторы

/ALLOCATED

     - квалификатор /ALLOCATED распечатывает  список  всех

     устройств, закрепленных в текущий момент  за  процес-

     сом.  Если  в  команде  SHOW  DEVICES   указано   имя

     устройства, то распечатываются характеристики  только

     этого устройства. Если устройство в текущий момент не

     закреплено за процессом, выдается сообщение, что  та-

     кого устройства нет. Если в команде SHOW DEVICES ука-

     зан только тип устройства, то выводится информация  о


                          - 98 -

                     00152-01 97 14-2


     всех устройствах данного типа.

/BRIEF

     - квалификатор /BRIEF распечатывает краткую  информа-

     цию об указанных в команде SHOW DEVICES устройствах.

/FILES

     - квалификатор /FILES распечатывает список имен  всех

     файлов, открытых на томе, а также имена и идентифика-

     торы связанных с ними процессов. Указанное в  команде

     SHOW DEVICES устройство должно быть монтированным то-

     мом  с  файловой  структурой.  Если   указанный   том

     представляет собой многотомный набор, то команда SHOW

     DEVICES распечатывает список открытых файлов на  каж-

     дом томе набора. Если с квалификатором  /FILES  задан

     также квалификатор /SYSTEM, то распечатываются только

     имена установленных файлов и файлов, открытых  систе-

     мой (т. е. файлов открытых без использования  вспомо-

     гательного управляющего процесса аср, таких как файлы

     INDEXF.SYS  и  QUOTA.SYS,  а  также  JBсSYSQUE.EXE  и

     SYSMSG.EXE). Если указан квалификатор  /NOSYSTEM,  то

     распечатываются только  файлы,  открытые  процессами.

     Чтобы получить список файлов, открытых любым  процес-

     сом, находящимся в той же группе, что и текущий  про-

     цесс, необходимо иметь привилегию GROUP. Если процесс

     принадлежит к другой  группе,  необходима  привилегия

     WORLD.  Если  не  указан  квалификатор  /SYSTEM   или

     /NOSYSTEM, распечатываются имена всех файлов,  откры-

     тых в текущий момент в системе. Если файл защищен  от

     чтения для текущего UIC, то вместо имени файла  выво-

     дится сообщение "NO PRIVILEGE". Чтобы распечатать имя

     такого файла необходима привилегия SYSPRV или BYPASS.


                          - 99 -

                     00152-01 97 14-2


     Пробел на месте имени файла указывает на рабочий файл

     (например, временный файл редактора), не внесенный ни

     в один каталог. Чтобы имена временных файлов распеча-

     тывались, необходимо кроме привилегии GROUP или WORLD

     иметь еще привилегию BYPASS. Квалификатор  /FILES  не

     должен  использоваться  совместно  с  квалификаторами

     /ALLOCATED, /BRIEF, /FULL или /MOUNTED, T. K. Функции

     квалификатора /FILES и  перечисленных  квалификаторов

     взаимно исключают друг друга.

/FULL

     - квалификатор /FULL рапечатывает  полную  информацию

     об устройстве, указанном в команде SHOW DEVICES.

/MOUNTED

     - квалификатор  /MOUNTED  распечатывает  список  всех

     устройств, на которых в текущий момент имеются монти-

     рованные тома. Если имя устройства указано, то распе-

     чатываются характеристики  только  этого  устройства.

     Если же указанное устройство в текущий момент не мон-

     тировано, то выдается сообщение  о  том,  что  такого

     устройства нет. Если в команде SHOW DEVICES задан тип

     устройства,  то  распечатываются  характеристики  тех

     устройств данного типа, на которых есть монтированные

     тома.

/OUTPUT[=спец.файла]

     - квалификатор /OUTPUT указывает файл, в который  ко-

     манда SHOW DEVICES направляет свой вывод. По  умолча-

     нию вывод осуществляется на устройство  с  логическим

     именем SYS$OUTPUT. Если в спецификации  файла  опущен

     тип файла, то по  умолчанию  используется  тип  файла


                          - 100 -

                     00152-01 97 14-2


     LIS. Если опущено имя файла, то по умолчанию файл бу-

     дет иметь имя SHOW. В спецификации файла не допустимы

     символы обобщения.

/SYSTEM

/NOSYSTEM

     - квалификаторы /SYSTEM и /NOSYSTEM управляют  распе-

     чаткой имен установленных файлов и  файлов,  открытых

     системой (т. е. Файлов,  открытых  без  использования

     АСР, таких как INDEXF.SYS и QUOTA.SYS). Если вместе с

     квалификатором /FILES указан квалификатор  /NOSYSTEM,

     то команда SHOW DEVICES  распечатывает  только  имена

     файлов, открытых процессами.  Если  с  квалификатором

     /FILES не указан квалификатор /SYSTEM или  /NOSYSTEM,

     то распечатываются имена всех файлов, открытых в сис-

     теме  в  текущий  момент.  Квалификаторы  /SYSTEM   и

     /NOSYSTEM могут быть использованы только с квалифика-

     тором /FILES.

/WINDOWS

     - квалификатор /WINDOWS распечатывает счетчик окон  и

     общий размер всех окон для файлов, открытых на  томе.

     Кроме того распечатывается имя файла, имя и PID  про-

     цесса, связанного с файлом. Буква с в распечатке  оз-

     начает, что файл открыт с  сегментированными  (кафед-

     ральными) окнами.

     Выбор ERROR

     Команда SHOW ERROR распечатывает счетчик  ошибок  для

тех устройств, у которых значение  этого  счетчика  больше

нуля.

     Формат

SHOW ERROR


                          - 101 -

                     00152-01 97 14-2


     Командные квалификаторы

/FULL

     - квалификатор /FULL  распечатывает  счетчики  ошибок

     для всех устройств (счетчик ошибок может  быть  равен

     или больше нуля).

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT указывает, куда  команда  SHOW

     DEVICES  направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация посылается в  выводной  поток,  выбираемый

     для  текущего  процесса   по   умолчанию,   либо   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если указана неполная спецификация  файла

     (например, задан только каталог), то по умолчанию вы-

     бирается имя файла SHOW, тип файла LIS. В  специфика-

     ции файла не допустимы символы обобщения.  Квалифика-

     тор /NOOUTPUT подавляет вывод.

     Пример.

> SHOW ERROR

  DEVICE     ERROR COUNT

  CPU             2

  MEMORY          1

  DQA1            9

     В данном примере  команда  SHOW  ERROR  распечатывает

счетчики ошибок всех устройств, для которых значение этого

счетчика больше нуля.

     Выбор KEY

     Команда SHOW  KEY  распечатывает  определения  клавиш

клавиатуры терминала, введенные по команде DEFINE/KEY.


                          - 102 -

                     00152-01 97 14-2


     Формат

SHOW KEY [имя_клавиши]

где имя_клавиши - имя клавиши,  определение  которой  надо

распечатать.

     Командные квалификаторы

/ALL

     - квалификатор /ALL позволяет распечатать определение

     всех клавиш в текущем состоянии терминала. Чтобы рас-

     печатать определение клавиш в других состояниях  тер-

     минала, необходимо также указать квалификатор /STATE.

     Квалификатор /ALL не требует  указания  имен  клавиш.

     Если квалификатор /STATE  не  задан,  распечатываются

     определения всех клавиш в текущем состоянии.

/BRIEF

/NOBRIEF

     - квалификатор /BRIEF  позволяет  распечатать  только

     определение указанной в команде SHOW  KEY  клавиши  и

     состояние терминала в котором оно выполнено. Квалифи-

     каторы /BRIEF и /NOFULL эквивалентны.

/DIRECTORY

     - квалификатор /DIRECTORY  распечатывает  имена  всех

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

     виши. Если определение клавиши не задавалось, то  ко-

     манда SHOW KEY/DIRECTORY ничего не распечатывает. Ес-

     ли при определении клавиши состояние не  было  указа-

     но, то команда SHOW KEY/DIRECTORY печатает  состояние

     DEFAULT. Квалификатор /DIRECTORY не  совместим  ни  с

     какими другими квалификаторами команды SHOW KEY.


                          - 103 -

                     00152-01 97 14-2


/FULL

/NOFULL

     - квалификатор /FULL распечатывает все квалификаторы,

     связанные с определением клавиши, указанной в команде

     SHOW KEY . По умолчанию распечатывается только  опре-

     деление клавиши и состояние терминала,  для  которого

     это определение имеет  силу.  Квалификаторы  /FULL  и

     /NOBRIEF эквивалентны.

/STATE=(имя_состояния[,...])

/NOSTATE

     - квалификатор /STATE задает состояния,  для  которых

     будут распечатаны определения  клавиши,  указанной  в

     команде SHOW KEY.  Если задано только одно состояние,

     то  скобки  могут  быть  опущены.   Имена   состояний

     представляют собой алфавитно-цифровые строки, опреде-

     ленные командой DEFINE /KEY. Если квалификатор /STATE

     опущен или указан квалификатор /NOSTATE, то  распеча-

     тывается определение клавиши для  текущего  состояния

     терминала.

     Выбор LOGICAL

     Команда SHOW LOGICAL позволяет распечатать все  логи-

ческие имена из одной или более  таблиц  логических  имен,

текущую эквивалентную строку, эквивалентные  строки,  свя-

занные с указанным логическим именем. Команда SHOW LOGICAL

выполняет трансляцию итеративно.

     Формат

SHOW LOGICAL [лог_имя[:]]

где лог_имя[:] - логическое имя, для которого будет распе-

чатана эквивалентная строка. Логическое имя  может  содер-

жать от 1 до 255 символов, если это имя не является именем


                          - 104 -

                     00152-01 97 14-2


таблицы логических имен. Имена таблиц логических имен  мо-

гут содержать до 31 символа. Число итераций при трансляции

логического имени не превышает 10. Итерационная трансляция

означает, что если в результате одной  трансляции  эквива-

лентная строка сама является логическим именем,  то  будет

выполнен такой же шаг трансляции для найденного логическо-

го имени.

     Если логическое имя не задано, команда  SHOW  LOGICAL

распечатывает все логические имена из указанных с  помощью

командных квалификаторов таблиц логических имен.  Если  не

заданы ни логическое имя, ни таблица логических  имен,  то

команда SHOW LOGICAL распечатывает все логические имена из

таблиц, определенных  логическим  именем  LNM$DCL_LOGICAL.

если имя LNM$DCL_LOGICAL не было переопределено для  Tеку-

щего процесса, то оно определяет таблицы  логических  имен

процесса, задания, группы и системы в перечисленном поряд-

ке. Ссылки к таблицам выполняются  по  логическим  именам.

LNM$GROUP - логическое имя  для  таблицы  логических  имен

процесса, LNM$JOB - для таблицы логических  имен  задания,

LNM$GROUP - для   таблицы    логических    имен    группы,

LNM$SYSTEM - для таблицы системных логических имен.

     При задании логического имени допустимо использование

символа обобщения. Однако, если используется символ  обоб-

щения , то итеративность трансляции не поддерживается.

     Командные квалификаторы

/ACCESS_MODE=режим

     - квалификатор /ACCESS_MODE распечатывает  логические

     имена, определенные в указанном и во всех более  при-

     вилегированных режимах. Режим может быть задан  одним

     из    следующих     ключевых     слов:     USER_MODE,


                          - 105 -

                     00152-01 97 14-2


     SUPERVISOR_MODE,  EXECUTIVE_MODE,   KERNEL_MODE.   По

     умолчанию предполагается  режим  USER_MODE,  т. к. по

     умолчанию распечатываются все логические имена, опре-

     деленные для всех четырех режимов доступа.

/ALL

     - квалификатор /ALL распечатывает все логические име-

     на из указанных таблиц логических имен. Если не  ука-

     зан ни один из квалификаторов /PROCESS, /JOB, /GROUP,

     /SYSTEM или /TABLE, то распечатываются все логические

     имена из таблиц, входящих в список поиска, определяе-

     мый    системным    умолчанием    (логическое     имя

     LNM$DCL_LOGICAL задает умолчание для списка поиска по

     таблицам логических имен).

/DESCENDANTS

/NODESCENDANTS

     - квалификатор /DESCENDANTS  распечатывает  имена  из

     указанной таблицы логических имен и из любых ее  таб-

     лиц-потомков. (таблица-потомок  задается  по  команде

     CREATE /NAME_TABLE  с  квалификатором  /PARENT_TABLE,

     задающим    имя    таблицы-родителя).    Квалификатор

     /DESCENDANTS требует  задания  квалификатора  /TABLE.

     Если квалификатор /DESCENDANTS опущен, то по  умолча-

     нию предполагается квалификатор  /NODESCENDANTS.  Это

     означает, что просматривается только таблица, указан-

     Ная  квалификатором  /TABLE,  ее  таблицы-потомки  не

     Просматриваются.

/GROUP

     - если в команде SHOW LOGICAL задано логическое  имя,

     то квалификатор /GROUP означает, что поиск указанного

     логического имени выполняется только по таблице логи-


                          - 106 -

                     00152-01 97 14-2


     ческих имен группы.  Квалификатор  /GROUP  равносилен

     квалификатору /TABLE=LNM$GROUP. Если логическое имя в

     команде SHOW LOGICAL опущено, то квалификатор  /GROUP

     вызывает распечатку всех логических имен  из  таблицы

     логических имен группы.

/JOB

     - если в команде SHOW LOGICAL задано логическое  имя,

     то квалификатор /JOB указывает, что поиск логического

     имени будет выполняться только по таблице  логических

     имен задания. Квалификатор /JOB равносилен квалифика-

     тору /TABLE=LNM$JOB. Если логическое  имя  в  команде

     SHOW LOGICAL опущено, то квалификатор /JOB распечаты-

     вает все логические имена из таблицы логических  имен

     задания.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор   /OUTPUT  определяет,  куда   команда

     SHOW LOGICAL направляет свой вывод. Если квалификатор

     /OUTPUT опущен или указан без спецификации файла,  то

     информация посылается в  выводной  поток,  выбираемый

     для  текущего  процесса   по   умолчанию,   либо   на

     устройство,    определяемое     логическим     именем

     SYS$OUTPUT. Если указана неполная спецификация  файла

     (например, задан только каталог), то по умолчанию вы-

     бирается файл с именем SHOW и типом файла LIS. В спе-

     цификации  файла  недопустимо  использование  символа

     обобщения. Квалификатор /NOOUTPUT подавляет вывод.

/PROCESS

     - если в команде SHOW LOGICAL задано логическое  имя,

     то квалификатор /PROCESS указывает, что поиск указан-


                          - 107 -

                     00152-01 97 14-2


     ного логического имени будет  выполняться  только  по

     таблице  логических   имен   процесса.   Квалификатор

     /PROCESS равносилен квалификатору /TABLE=LNM$PROCESS.

     Если логическое имя в квалификаторе SHOW LOGICAL опу-

     щено, то квалификатор  /PROCESS  вызывает  распечатку

     всех логических имен из таблицы логических имен  про-

     цесса.

/STRUCTURE

/NOSTRUCTURE

     - квалификаторы /STRUCTURE и  /NOSTRUCTURE  управляют

     распечаткой дерева всех таблиц логических имен,  дос-

     тупных  данному  процессу.  Распечатка  включает  две

     справочные таблицы логических имен (процесса и систе-

     мы) и все таблицы  логических  имен,  содержащиеся  в

     этих справочных таблицах; таблицы-потомки  перечисля-

     ются  за  соответствующими  таблицами-родителями.  По

     умолчанию выбирается квалификатор  /NOSTRUCTURE,  это

     означает, что команда SHOW LOGICAL распечатывает  ин-

     формацию об одном или более логических имен, информа-

     ция же о таблицах логических имен и  их  взаимосвязях

     не выводится. Квалификатор /STRUCTURE  допускает  ис-

     пользование только квалификаторов /ACCESS_MODE, /FULL

     и /OUTPUT.

/SYSTEM

     - если в команде SHOW LOGICAL задано логическое  имя,

     то квалификатор /SYSTEM указывает, что поиск  указан-

     ного логического имени будет  выполняться  только  по

     таблице  логических  имен  системы.      Квалификатор

     /SYSTEM равносилен  квалификатору  /TABLE=LNM$SYSTEM.

     Если логическое имя в команде SHOW  LOGICAL  опущено,


                          - 108 -

                     00152-01 97 14-2


     то квалификатор /SYSTEM вызывает распечатку всех  ло-

     Гических имен из таблицы логических имен системы.

/TABLE=имя

     - квалификатор /TABLE задает имя  таблицы  логических

     имен, в которой выполняется поиск, указанного  в  ко-

     манде SHOW LOGICAL логического имени. В качестве име-

     ни может быть задано имя таблицы, созданной пользова-

     телем  (по команде CREATE/NAME_TABLE),  имя   таблицы

     логических  имен  процесса, группы  или  системы, имя

     справочной таблицы процесса или  системы.  Имя  может

     быть также задано символом обобщения. Если в качестве

     имени в квалификаторе /TABLE задано  логическое  имя,

     которое привEдет к  просмотру  нескольких таблиц,  то

     просматривается каждая из этих таблиц в указанном по-

     рядке. Например,  по  команде  SHOW  LOGICAL/TABLE  =

     =LNM$FILE_DEV выполняется просмотр таблиц  логических

     имен процесса, задания, группы и системы  в  перечис-

     ленном порядке, т. К. Логическое имя LMN$FILE_DEV оп-

     ределяет список поиска, содержащий  логические  имена

     LNM$PROCESS, LNM$JOB, LNM$GROUP  и  LNM$SYSTEM.  Если

     квалификатор /TABLE опущен, то по умолчанию предпола-

     гается квалификатор /TABLE=LNM$DCL_LOGICAL.

     Примеры:

1. > SHOW LOGICAL/TABLE=LNM$PROCESS

     CONTENTS OF PRIVATE TABLE (LNM$PROCESS_TABLE)

     "SYS$COMMAND" = "_TTB4:"

     "SYS$DISK" = "WORK6:"

     "SYS$DISK" = "WORK6:"

     "SYS$ERROR" = "_TTB4:"

     "SYS$INPUT" = "_TTB4:"


                          - 109 -

                     00152-01 97 14-2


     "SYS$LOGIN" = "WORK6:[IVANOV]"

     "SYS$LOGIN_DEVICE" = "WORK6:"

     "SYS$OUTPUT" = "_TTB4:"

     "SYS$OUTPUT" = "DBA2:"

     "SYS$SCRATCH" = "WORK6:[IVANOV]"

     В данном примере команда SHOW  LOGICAL  распечатывает

текущие логические имена процесса.

2. > SHOW LOGICAL INFILE

    "INFILE"="WORK6:[LOGAN]PAYROLL.EXE"(LNM$PROCESS_TABLE)

     В данном примере команда SHOW  LOGICAL  распечатывает

текущее эквивалентное имя для логического имени  INFILE  и

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

3. > SHOW LOGICAL/TABLE=LNM$GROUP

     Данная  команда SHOW LOGICAL  будет  распечатывать

все логические имена из  таблицы логических имен группы.

     Выбор MAGTAPE

     Команда SHOW MAGTAPE распечатывает  текущие  характе-

ристики и состояние устройства магнитной ленты.

     Формат

SHOW  MAGTAPE  имя_устр[:]

где имя_устр - имя устройства магнитной ленты, характерис-

тики и состояние которого нужно распечатать.

     Командные     квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT указывает, куда  команда  SHOW

     MAGTAPE  направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен, то команда SHOW MAGTAPE посылает  ин-

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


                          - 110 -

                     00152-01 97 14-2


     руемое логическим именем SYS$OUTPUT. Если в  квалифи-

     каторе спецификация файла опущена или в  спецификации

     не заданы имя или тип файла, то команда SHOW  MAGTAPE

     осуществляет ввод в файл с именем SHOW и типом LIS. В

     спецификации файла не  допустимы  символы  обобщения.

     Квалификатор /NOOUTPUT подавляет  вывод,  выполняемый

     по команде SHOW MAGTAPE.

Пример.

> SHOW MAGTAPE MTA0:

  MTA0: UNKNOWN, DENSITY=800, FORMAT=NORMAL-11

      ODD PARITY

     В этом примере команда SHOW MAGTAPE распечатывает ха-

рактеристики устройства MTA0:. Распечатка содержит  инфор-

мацию о типе устройства, плотности записи и формате.

     Выбор MEMORY

     Команда SHOW MEMORY распечAтывает информацию  о  дос-

тупности и использовании тех системных  ресурсов,  которые

связаны с памятью.

     Формат

SHOW MEMORY

     Командные квалификаторы

/ALL

     - квалификатор /ALL распечатывает всю  доступную  ин-

     формацию, т. е. информацию, распечатываемую по квали-

     фикаторам /FILES, /PHYSICAL_PAGE, /POOL,  /SLOTS.  По

     умолчанию предпOлагается квалификатор /ALL.

/FILES

     - квалификатор /FILES распечатывает информацию об ис-

     пользовании каждого из установленных в текущий момент

     файла обмена страниц и файле обмена рабочих наборов.


                          - 111 -

                     00152-01 97 14-2


/FULL

     - если квалификатор /FULL используется с квалификато-

     рами /POOL или /FILES, то выполняется распечатка  до-

     полнительной информации об использовании  каждой  об-

     ласти пула или об установленных в текущий момент фай-

     ле обмена страниц и файле обмена рабочих наборов. Ес-

     ли квалификатор /POOL или /FILES явно не указаны,  то

     Квалификатор /FULL игнорируется.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     MEMORY  направляет  свой  вывод.  Если   квалификатор

     /OUTPUT опущен или спецификация файла не указана,  то

     информация выводится в выводной  поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если в квалификаторе /OUTPUT спецификация

     файла задана не полностью (например, задан только ка-

     талог), то команда SHOW MEMORY использует по  умолча-

     нию имя файла SHOW, тип  файла  LIS.  В  спецификации

     файла не допустимы  символы  обобщения.  Квалификатор

     /NOOUTPUT подавляет  вывод,  выполняемый  по  команде

     SHOW MEMORY.

/PHYSICAL_PAGES

     - квалификатор /PHYSICAL_PAGES распечатывает информа-

     цию о количестве физической памяти и о числе  свобод-

     ных и модифицированных страниц.

/POOL

     - квалификатор /POOL распечатывает информацию об  ис-

     пользовании каждой области динамической  памяти  (пу-


                          - 112 -

                     00152-01 97 14-2


     ла), в том числе количество свободного пространства и

     размер наибольшего непрерывного блока в каждой облас-

     ти.

/SLOTS

     - квалификатор /SLOTS распечатывает информацию о дос-

     тупности слотов вектора блоков управления  процессами

     (PCB) и балансных слотов.

     Пример.

> SHOW MEMORY

     В данном примере команда  SHOW  MEMORY  распечатывает

информацию о ресурсах памяти -  информацию,  выводимую  по

квалификаторам /FILES, /PHYSICAL_MEMORY, /POOL и /SLOTS.

     Выбор NETWORK

     Команда SHOW NETWORK распечатывает информацию о  дос-

тупности локального узла как члена сети,  адреса  и  имена

всех узлов, доступных в  текущий  момент  из  данного  ло-

кального узла, логические связи  и  стоимостные  отношения

между данным локальным узлом и другими узлами сети.

     Формат

SHOW NETWORK

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     NETWORK  направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация помещается в выводной поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  в  квалификаторе


                          - 113 -

                     00152-01 97 14-2


     /OUTPUT задана не полностью (например,  задан  только

     каталог), то команда SHOW NETWORK использует по умол-

     чанию имя файла SHOW, тип файла - LIS. В спецификации

     файла не допустимы  символы  обобщения.  Квалификатор

     /NOOUTPUT подавляет  вывод,  выполняемый  по  команде

     SHOW NETWORK.

     Пример.

> SHOW NETWORK

  M32/VOS NETWORK STATUS FOR LOCAL NODE 2.161 ARAKIS

  ON 15-DEC-1986



THE NEXT HOP THE NEAREST AREA ROUTER IS NODE 2.62 ZEUS



NODE            LINKS COST HOPS NEXT    HOP  TO    NODE

2.161 ARAKIS      0    0    0   LOCAL   -->  2.161 ARAKIS

2.6   REAL        0    3    3   UNA-0   -->  2.1   REAL

2.2   PANGEA      0    9    5   UNA-0   -->  2.2   PANGEA

2.3   TWDEE       0    5    4   UNA-0   -->  2.63  AURORA

2.4   TWDUM       0    4    4   UNA-0   -->  2.4   TWDUM

2.11  NEONV       0    5    5   UNA-0   -->  2.11  NEONV

2.63  AURORA      0    4    4   UNA-0   -->  2.63  AURORA

                TOTAL OF 7 NODES.

     В этом примере приведена информация, выводимая по ко-

манде SHOW NETWORK.

     Выбор PRINTER

     По команде SHOW PRINTER распечатываются характеристи-

ки, определенные  в текущий момент для указанного построч-

но-печатающего устройства.


                          - 114 -

                     00152-01 97 14-2


     Формат

SHOW PRINтER имя_устр[:]

где имя_устр[:] -  имя  построчно-печатающего  устройства,

характеристики которого должны быть распечатаны.

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда SHOW

     PRINTER  направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация помещается в выводной  поток, определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,    определяемое     логическим     именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW PRINTER использует по умолчанию имя файла SHOW и

     тип файла LIS. В спецификации файла не допустимы сим-

     волы обобщения. Квалификатор /NOOUTPUT подавляет  вы-

     вод, выполняемый по команде SHOW PRINTER.

     Выбор PROCESS

     Команда SHOW PROCESS распечатывает информацию о  про-

цессе и любых подпроцессах из дерева этого процесса.

     Формат

SHOW PROCESS [имя_процесса]

где имя_процесса - имя процесса, информацию о котором  не-

обходимо распечатать.  Имя процесса может содержать  от  1

до 15 буквенно-цифровых символов. Имена  процессов  одноз-

начно  определяются  номером  группы  кода   идентификации

пользователя.

     Для того, чтобы получить информацию о любом процессе,


                          - 115 -

                     00152-01 97 14-2


находящемся в той же группе, что и текущий процесс,  необ-

ходима привилегия GROUP. Информацию  о  любом  процессе  в

системе    можно    получить,    используя    квалификатор

/IDENTIFICATION, если  текущий  процесс  имеет  привилегию

WORLD.

     Командные квалификаторы

/ACCOUNTING

     - квалификатор /ACCOUNTING распечатывает учетную  ин-

     формацию для текущего сеанса работы на терминале.

/ALL

     - квалификатор /ALL распечатывает всю  доступную  ин-

     формацию, т. е. информацию, выводимую по умолчанию, а

     также информацию, которая распечатывается по квалифи-

     каторам /ACCOUNTING, /PRIVILEGES и  /QUOTAS.  Если  в

     команде SHOW PROCESS указано имя  текущего  процесса,

     то распечатывается  также  информация,  выводимая  по

     квалификаторам /MEMORY и /SUBPROCESSES.

/CONTINUOUS

     - квалификатор  /CONTINUOUS  распечатывает  постоянно

     обновляемую информацию о процессе. Для получения кар-

     ты  распределения страниц в виртуальном адресном про-

     странстве  процесса, можно  нажать клавишу V. В карте

     таспределения страниц тип страницы обозначается  сим-

     волом. Если страница содержит текущий счетчик  команд

     (РС), то тип страницы обозначается символом @ . Стра-

     ницы, блокированные в рабочем наборе процесса , обоз-

     начаются буквой L, глобальные страницы  -  буквой  G.

     Другие страницы из рабочего набора обозначаются  сим-

     Волом звездочка (*).

     Для завершения распечатки, выводимой по квалификатору


                          - 116 -

                     00152-01 97 14-2


     /CONTINUOUS, необходимо ввести символ Е. Квалификатор

     /CONTINUOUS не используется вместе  с  квалификатором

     /OUTPUT.

/IDENTIFICATION=PID

     - квалификатор /IDENTIFICATION  задает  идентификатор

     (PID) процесса, о котором необходимо получить  инфор-

     мацию. Процессу назначается PID во время  его  созда-

     ния. При задании PID можно  опустить  ведущие   нули.

     Для получения информации о любом процессе, который не

     является текущим, необходимо иметь  привилегию  GROUP

     или WORLD.

     С квалификатором /IDENTIFICATION нельзя  указать  имя

     процесса. Если с квалификатором /IDENTIFICATION зада-

     ются также квалификаторы /MEMORY  или  /SUBPROCESSES,

     то можно указать только PID текущего процесса.

/MEMORY

     - квалификатор /MEMORY показывает использование теку-

     щим процессом областей динамической памяти, состоящей

     из блоков переменной длины. Квалификатор /MEMORY  за-

     дается только для текущего процесса. Если  квалифика-

     тор    /MEMORY    используется    с    квалификатором

     /IDENTIFICATION, то в  квалификаторе  /IDENTIFICATION

     можно указать только PID текущего процесса.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /оUTPUT определяет, куда команда  SHOW

     PROCESS  направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация помещается в выводной поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на


                          - 117 -

                     00152-01 97 14-2


     устройство,    определяемое     логическим     именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW PROCESS использует по умолчанию имя файла SHOW и

     тип файла LIS. В спецификации файла не допустимы сим-

     волы обобщения. Квалификатор /NOOUTPUT подавляет  вы-

     вод, выполняемый по команде SHOW PROCESS.  Квалифика-

     тор  /OUTPUT   не   используется   с   квалификатором

     /CONTINUOUS.

/PRIVILEGES

     - квалификатор /PRIVILEGES распечатывает  привилегии,

     предоставленные текущему процессу.

/QUOTAS

     - квалификатор /QUOTAS  распечатывает  текущие  квоты

     процесса. Выводимые значения отражают любые  уменьше-

     ния квот, имевшие место в результате создания подпро-

     цесса.

/SUBPROCESSES

     - квалификатор /SUBPROCESSES распечатывает имена всех

     подпроцессов, принадлежащих текущему  процессу.  Если

     существует иерархия подпроцессов, то имена подпроцес-

     сов распечатываются в иерархическом порядке. Квалифи-

     катор /SUBPROCESSES используется только для  текущего

     процесса. Если вместе с этим квалификатором использу-

     ется квалификатор /IDENTIFICATION, то в квалификаторе

     /IDENTIFICATION можно  указать  только  PID  текущего

     процесса.


                          - 118 -

                     00152-01 97 14-2


     Пример.

> SHOW PROCESS/SUBPROCESSES

  21-NOV-1986 15:44:59.39               USER:MALIK

     PROCESSES IN THIS TREE

     MALIK

        MALIK_1 (*)

                MALIK_2

     Kоманда SHOW PROCESS в этом примере распечатывает де-

рево текущего процесса. Текущий процесс обозначен символом

звездочка (*).

     Выбор PROTECTION

     Команда SHOW PROTECTION распечатывает код защиты, ко-

торый назначается всем новым файлам, создаваемым во  время

сеанса работы за терминалом или во время выполнения пакет-

ного задания. Код защиты, назначаемый по умолчанию,  можно

изменить с помощью команды SET  PROTECTION  интерпретатора

MCR.

     Формат

SHOW PROTECTION

     Пример.

> SHOW PROTECTION

  SYSTEM=RWED, OWNER=RWED, GROUP=RE, WORLD=NO ACCESS

> SET PROTECTION=(GROUP:RWED,WORLD:RE)/DEFAULT

> SHOW PROTECTION

  SYSTEM=RWED, OWNER=RWED, GROUP=RWED,WORLD=RE

     Первая команда SHOW PROTECTION в этом примере  распе-

чатывает код защиты, назначаемый файлам по умолчанию.  Ко-

манда SET PROTECTION/DEFAULT изменяет код защиты, назнача-

емый  файлам  при  их  создании.  Следующая  команда  SHOW

PROTECTION распечатывает измененный код защиты,  назначае-


                          - 119 -

                     00152-01 97 14-2


мый файлам по умолчанию.

     Выбор QUEUE

     Команда SHOW QUEUE распечатывает информацию об очере-

дях и находящихся в них заданиях.

     Формат

SHOW QUEUE [имя_очереди]

где имя_очереди - имя очереди, информацию о которой  необ-

ходимо получить. Если имя очереди не указано,  то  команда

SHOW QUEUE распечатывает  информацию  обо  всех  очередях,

имеющихся в системе. В  параметре  имя_очереди  можно  ис-

пользовать символы обобщения. Правила использования симво-

лов  обобщения  для  спецификации  файла  распространяются

и на параметр имя_очереди.

     Командные квалификаторы

/ALL

     - квалификатор /ALL распечатывает имена всех  заданий

     в очереди, имя которой указано в команде SHOW  QUEUE,

     или во всех очередях, если имя очереди не указано. По

     умолчанию распечатываются только имена заданий, кото-

     рые принадлежат текущему процессу.

/BATCH

     - квалификатор /BATCH распечатывает  список  очередей

     пакетных заданий и имена заданий в этих очередях, ко-

     торыми владеет  текущий  процесс.  Если  в  параметре

     имя_очереди используются символы обобщения , то  рас-

     печатывается информация обо  всех  очередях  пакетных

     заданий.

/BRIEF

     - квалификатор /BRIEF распечатывает краткую  информа-

     цию о заданиях в  очереди.  По  квалификатору  /BRIEF


                          - 120 -

                     00152-01 97 14-2


     распечатывается только имя очереди, номер и имя зада-

     ния. В команде SHOW QUEUE по  умолчанию  используется

     квалификатор /BRIEF.

/DEVICE

     - квалификатор /DEVICE распечатываET имена всех зада-

     ний в  указанной  в  команде  SHOW  QUEUE  очереди  к

     построчно-печатающему устройству или терминалу, кото-

     рым  владеет  текущий  процесс.  Если   в   параметре

     имя_очереди используются символы обобщения, то распе-

     чатывается информация обо всех  очередях  к  построч-

     но-печатающему устройству и терминалу.

/FULL

     - квалификатор /FULL распечатывает полную  информацию

     об очереди, имя которой указано в команде SHOW QUEUE,

     и всех заданиях в этой очереди, которыми владеет  те-

     кущий процесс. Об очереди выводится  информация,  со-

     держащая имя очереди, ее тип и те установки,  которые

     были для нее выполнены. Информация о задании включает

     в себя полную спецификацию файла, дату и время поста-

     новки задания в очередь и те установки, которые  были

     выполнены для задания. Если в  параметре  имя_очереди

     используются символы обобщения , распечатывается  ин-

     формация обо всех очередях и всех находящихся  в  них

     заданиях.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     QUEUE  направляет  свой  вывод.   Если   квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация помещается в выводной  поток, определяемый


                          - 121 -

                     00152-01 97 14-2


     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW QUEUE использует по умолчанию имя файла  SHOW  и

     тип файла LIS. В спецификации файла не допустимы сим-

     волы обобщения. Квалификатор /NOOUTPUT подавляет  вы-

     вод, выполняемый по команде SHOW QUEUE.

/CHARACTERISTICS [имя_харак]

     - квалификатор  /CHARACTERISTICS   распечатывает име-

     на  и  номера  характеристик, установленных  для ука-

     занной  очереди или  всех  очередей в  системе. Опре-

     деление   характеристик   осуществляется  по  команде

     DEFINE/CHARACTERISTICS интерпретатора MCR. При  зада-

     нии имени  характеристики  допускается  использование

     символов обобщения.

/FORM [имя_формата]

     - квалификатор /FORM распечатывает имя и номер форма-

     та, установленный для указанной очереди или для  всех

     очередей в системе. Формат, выбираемый  для  очереди,

     определяется по команде SET QUEUE/FORM.  При  задании

     имени формата допустимо использование символов  обоб-

     щения. Правила  использования  символов  обобщения  в

     спецификации файла распространяются и на  использова-

     ние символов обобщения при задании имени формата. Ес-

     ли в команде SHOW QUEUE/FORM имя формата не  указано,

     то распечатываются имена и номера форматов,  установ-

     ленные для всех очередей.

     Выбор QUOTA

     Команда SHOW QUOTA распечатывает дисковую квоту,  вы-


                          - 122 -

                     00152-01 97 14-2


деленную пользователю на указанном диске,  количество  ис-

пользованного и доступного для данного пользователя диско-

вого пространства и количество дискового пространства, ко-

торое может быть выделено дополнительно сверх квоты.

     Формат

SHOW QUOTA

     Командные квалификаторы

/DISK[=имя_устр[:]]

     -  квалификатор   /DISK   указыавет   имя   дискового

     устройства, для которого необходимо получить информа-

     цию  о  квотах.  Если  квалификатор  /DISK  или   имя

     устройства в нем не указаны, то по умолчанию распеча-

     тываются квоты, определенные для устройства  с  логи-

     ческим именем SYS$DISK.

/USER=UIC

     - квалификатор /USER указывает имя пользователя,  для

     которого должны быть распечатаны дисковые квоты.

     Примеры:

1. > SHOW QUOTA

    USER [360,100] HAS 2780 BLOCKS USED,  7220 AVAILABLE,

    OF 10000 AUTHORIZED AND PERMITTED OVERDRAFT OF  500

    BLOCKS ON DISK$.

     По команде SHOW QUOTA для пользователя, издавшего ко-

манду SHOW QUOTA, распечатывается количество  использован-

ного и доступного для использования пространства, дисковая

квота и величина, на которую она может быть превышена,  на

устройстве с логическим именем SYS$DISK.

2. > SHOW QUOTA /USER=[360,007]/DISK=XXX1:

    SYSTEM-F-NODISKQUOTA, NO DISK QUOTA ENTRY FOR THIS UIC

     Сообщение, полученное после выполнения команды  SHOW


                          - 123 -

                     00152-01 97 14-2


QUOTA, указывает, что пользователь с  кодом  идентификации

[360,007] не имеет дисковых квот на устройствE с  логичес-

ким именем хXX1.

3. > SHOW QUOTA /USER=[360,111]

   USER  [360,111] HAS 27305 BLOCKS USED, 2305  OVERDRAWN,

   OF  25000  AUTHORIZED  AND  PERMITTED OVERDRAFT OF 4000

   BLOSKS ON DISK.

     Команда SHOW QUOTA в этом примере распечатывает коли-

чество использованного пользователем с кодом идентификации

[360,111] дискового пространства на устройстве с  логичес-

ким именем SYS$DISK, дисковая квота, выделенная для  этого

пользователя, величина, на которую дисковая квота превыше-

на в текущий момент,  и  величина,  задающая  максимальное

превышение дисковой квоты этим пользователем.

     Выбор RMS_DEFAULT

     Команда SHOW RMS_DEFAULT  распечатывает  значения  по

умолчанию для счетчиков блоков и буферов  в  сети,  уровня

пролога и величины расширения, используемые при выполнении

файловых операций системой управления записями (СУД-32).

     Формат

SHOW RMS_DEFAULт

     Командные квалификаторы

/OUTPUT[=спец.файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     RMS_DEFAULT направляет свой вывод. Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация выводится в выводной  поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем


                          - 124 -

                     00152-01 97 14-2


     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW RMS_DEFAULT использует по  умолчанию  имя  файла

     SHOW и тип файла LIS. В спецификации файла не  допус-

     тимы символы обобщения. Квалификатор /NOOUTPUT подав-

     ляет вывод, выполняемый по команде SHOW RMS_DEFAULT.

     Выбор STATUS

     Команда SHOW STATUS распечатывает состояние  текущего

процесса.

     Формат

SHOW STATUS

     Выбор SYMBOL

     Команда SHOW SYMBOL  распечатывает  текущее  значение

локального или глобального символа.

     Формат

SHOW SYMBOL [имя_символа]

где имя_символа - имя символа, значение которого необходи-

мо распечатать. Имя символа может содержать  от  1  до 255

символов, включая алфавитно-цифровые символы, символ  под-

черкивания (_) или знак ($).

если в команде SHOW SYMBOL указан  квалификатор  /ALL,  то

имя символа не задается.

     Командные квалификаторы

/ALL

     - квалификатор /ALL  распечатывает  текущие  значения

     всех символов из таблицы символов, задаваемой  квали-

     фикаторами /LOCAL или /GLOBAL. Если квалификатор /ALL

     задан без квалификатора /GLOBAL или /LOCAL, то распе-

     чатывается содержимое таблицы локальных символов  для

     еекущего командного уровня.


                          - 125 -

                     00152-01 97 14-2


/GLOBAL

     - квалификатор /GLOBAL указывает, что поиск  значения

     символа, указанного в команде SHOW SYMBOL, будет осу-

     шествляться в таблице глобальных символов. Если в ко-

     манде SHOW SYMBOL с квалификатором /GLOBAL задается и

     квалификатор /ALL, то распечатываются  значения  всех

     символов из таблицы глобальных символов.

 /LOCAL

     - квалификатор /LOCAL указывает, что  поиск  значения

     символа, указанного в команде SHOW SYMBOL, будет осу-

     ществляться в таблице локальных символов текущего ко-

     мандного уровня. Если в команде SHOW SYMBOL с  квали-

     фикатором /LOCAL задается квалификатор /ALL, то  рас-

     печатываются значения всех символов  из  таблицы  ло-

     кальных символов текущего командного уровня.

/LOG

/NOLOG

     - квалификатор /LOG управляет выводом информационного

     сообщения,  которое  распечатывается,  если  значение

     символа было усечено.  Усечение  производится  в  том

     случае, если значение символа превышает  255  знаков.

     По умолчанию используются квалификатор /LOG.

     Примеры:

1. > SHOW SYMBOL PURGE

     PURGE = "PURGE/KEEP=2"

     В этом примере по команде SHOW SYMBOL распечатывается

текущее значение символа PURGE. Интерпретатор команд  сна-

чала осуществляет поиск символа PURGE по таблице локальных

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

локальных символов предшествующих командных уровней и, на-


                          - 126 -

                     00152-01 97 14-2


конец, по таблице глобальных символов.

2. > SHOW SYMBOL/GLOBAL/ALL

     TIME = SHOW TIME

     LOG = @LOG

     $RESTART = "FALSE"

     $SEVERITY = 1

     $STATUS = % 00000001

     По команде SHOW SYMBOL распечатываются значения  всех

символов из таблицы глобальных символов. Кроме того,  рас-

печатываются символы $RESTART,  $SEVERITY  и  $STATUS.

3. > SHOW SYMBOL/LOCAL TIME

     DCL-W-UNDSYM, UNDEFINED SYMBOL

     По команде SHOW SYMBOL осуществляется  поиск  символа

TIME по таблице локальных символов. В сообщении, следующим

за командой, указано, что значение символа TIME в  текущий

момент не определено.

     Выбор SYSTEM

     Kоманда SHOW SYSTEM распечатывает  список  процессов,

имеющихся в системе, и информацию о состоянии каждого про-

цесса.

     Формат

SHOW SYSTEM

     Командные квалификаторы

/BATCH

     - квалификатор /BATCH распечатывает  список  пакетных

     заданий. Если квалификатор /BATCH не  указан,  то  по

     умолчанию распечатывается список всех процессов, име-

     ющихся в системе.

/FULL

     - квалификатор /FULL указывает,что в дополнении к ин-


                          - 127 -

                     00152-01 97 14-2


     формации, выводимой по умолчанию, распечатывается код

     идентификации пользователя (UIC). UIC распечатывается
       
     на второй строке под именем процесса.

/NETWORK

     - квалификатор /NETWORK распечатывает список  сетевых

     процессов, имеющихся в системе.

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     SYSTEM  направляет  свой  вывод.  Если   квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация выводится в выводной  поток,  определенный

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW SYSTEM использует по умолчанию имя файла SHOW  и

     тип файла LIS. В спецификации файла не допустимо  ис-

     пользовать символы обобщения. Квалификатор  /NOOUTPUT

     подавляет вывод, выполняемый по команде SHOW SYSTEM.

/PROCESS

     - квалификатор /PROCESS распечатывает имена всех про-

     цессов, имеющихся в  системе.  Квалификатор  /PROCESS

     используется в команде SHOW SYSTEM по умолчанию.

/SUBPROCESS

     - квалификатор /SUBPROCESS распечатываET  имена  всех

     подпроцессов в системе.

     Выбор TERMINAL

     Команда SHOW TERMINAL распечатывает текущие  характе-

ристики указанного терминала. Каждая характеристика  соот-


                          - 128 -

                     00152-01 97 14-2


ветствует выбору, указанному в команде SET TERMINAL.

     Формат

SHOW TERMINAL [имя_устр[:]]

где имя_устр - имя терминала, характеристики которого  не-

обходимо распечатать. Если имя устройства не указано, рас-

печатываются характеристики терминала, определяемого логи-

ческим именем SYS$COMMAND.

     Командные квалификаторы

/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     TERMINAL направляет  свой  вывод.  Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация выводится в выводной  поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW TERMINAL использует по умолчанию имя файла  SHOW

     и тип файла LIS. В спецификации  файла  не  допустимо

     использовать    символы    обобщения.    Квалификатор

     /NOOUTPUT подавляет  вывод,  выполняемый  по  команде

     SHOW TERMINAL.

/PERMANENT

     - квалификатор /PERMANENT  распечатывает  постоянные,

     т. е. определенные на время текущего  сеанса   работы

     характеристики указанного терминала. Для  использова-

     ния квалификатора /PERMANENT необходимо иметь  приви-

     легию LOG_IO или PHY_IO.


                          - 129 -

                     00152-01 97 14-2


     Выбор TIME

     Команда SHOW TIME распечатывает текущую дату и время.

     Формат

SHOW [DAY]TIME

     Пример.

> SHOW TIME

15-DEC-1986 00:03:45

     По команде SHOW TIME на  терминал  выводится  текущAя

дата и время дня.

     Выбор TRANSLATION

     Команда SHOW TRANSLATION осуществляет поиск указанно-

го логического имени в одной или нескольких таблицах логи-

ческих имен и распечатывает соответствующее указанному ло-

гическому имени имя эквивалентности.

     Формат

SHOW TRANSLAтION лог_имя

где лог_имя - логическое имя длиной от 1 до  255  алфавит-

но-цифровых символов, которое необходимо странслировать.

     Командный квалификатор

/TABLE=имя

     - квалификатор /TABLE задает имя таблицы,  в  которой

     необходимо осуществить поиск логического имени.  Если

     имя таблицы указывается с помощью логического  имени,

     которое приведет к просмотру  нескольких  таблиц,  то

     поиск осуществляется в том порядке, который определен

     данным логическим именем.  Если  квалификатор  /TABLE

     опущен, то по умолчанию выбирается таблица с логичес-

     Ким именем LNM$DCL_LOGICAL.

     Примеры:

1. > DEFINE DISK DмA1:


                          - 130 -

                     00152-01 97 14-2


   > DEFINE/GROUP DISK DмA2:

   > SHOW TRANSLATION DISK

     DISK = DмA1:(LNM$PROCESS_TABLE)

     В этом примере по командам DEFINE эквивалентные имена

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

логических имен и в таблицу логических  имен  процесса.  В

таблице логических имен процесса  логическому  имени  DISC

соответствует эквивалентное имя DMA1:, а в  таблице  логи-

ческих  имен  группы  -  DMA2:.  Затем,  по  команде  SHOW

TRANSLATION распечатывается имя, эквивалентное логическому

имени DISK. По умолчанию по этой  команде  просматриваются

таблицы логических имен процесса, задания, группы и систе-

мы в указанном порядке и распечатывается первое  найденное

имя. В данном примере  распечатывается  имя,  найденное  в

таблице логических имен процесса, так как она просматрива-

ется до просмотра таблицы логических имен группы.

2. > RUN ORION

   ^ Y

   > SHOW TRANSLATION TERMINAL

     TERMINAL = _TTT3: (LNM$PROCESS_TABLE)

   > CONTINUE

     В примере 2 команда RUN производит запуск на выполне-

ние образа ORION.EXE. После того,  как  выполнение  образа

было прервано с помощью управляющего символа  CTRL/Y,  ко-

манда SHOW TRANSLATION распечатывает назначение, выполнен-

ное для логического имени TERMINAL.  По  команде  CONTINUE

выполнение образа ORION.EXE продолжается.

3. > SHOW TRANSLATION /TABLE=LNM$SYSTEM USER

     USER = "DQA2:" (LNM$SYSTEM_TABLE)

     В примере 3 по команде SHOW TRANSLATION  распечатыва-


                          - 131 -

                     00152-01 97 14-2


ется эквивалентная строка для логического имени USER,  ко-

торая находится в таблице LNM$SYSTEM. LNM$SYSTEM  -  логи-

ческое имя, которое транслируется в имя  LNM$SYSTEM_TABLE.

LNM$SYSTEM_TABLE - имя таблицы  логических  имен  системы.

поскольку в команде SHOW TRANSLATION задается имя таблицы,

то команда SHOW  TRANSLATION  осуществляет  поиск  эквива-

лентного имени для логического имени USER только в указан-

ной таблице.

4. > DEFINE/TABLE=LNM$PROCESS_DIRECTORY MYPROC -

   >_TEST_TABLE, LNM$PROCESS

   > SHOW TRANSLATION/TABLE=MYPROC FILER

     FILER = "[SMITH.FILER]" (TEST_TABLE)

     В примере  4  по  команде  DEFINE  логическому  имени

MYPROC ставится в соответствие два имени  -  TEST_TABLE  и

LNM$PROCESS. Поскольку эти имена являются названиями  таб-

лиц логических имен, то логическое имя MYPROC помещается в

справочную таблицу. Когда в командE SHOW TRANSLATION  ука-

зывается логическое имя MYPROC, поиск осуществляEтся  сна-

чала в таблице TEST_TABLE, а затем - в LNM$PROCESS, распе-

чатывается первое найденное совпадение.

     Выбор USERS

     Команда SHOW USERS распечатывает имя  терминала,  имя

пользователя, идентификатор процесса (PID)  для  указанных

интерактивных пользователей или всех интерактивных пользо-

вателей в системе.

     Формат

SHOW USERS [имя_польз]

где имя_польз - имя пользователя, о котором необходимо по-

лучить информацию. Если этот параметр указан, система рас-

печатывает список всех интерактивных пользователей,  имена


                          - 132 -

                     00152-01 97 14-2


которых начинаются с указанной символьной  строки.  Напри-

мер, если в качестве имени пользователя указано  имя  MAR,

то распечатывается список всех  интерактивных  пользовате-

лей, имена которых начинаются с MAR. Если пользователей  с

указанным именем не существует в системе, выдается сообще-

ние об ошибке. Если имя пользователя не указано,  распеча-

тывается список всех интерактивных пользователей в  систе-

ме.

     Командные квалификаторы

/OUTPUT[=спец.файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     USERS  направляет  свой  вывод.   Если   квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация выводится в выводной  поток,  определяемый

     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW USERS использует по умолчанию имя файла  SHOW  и

     тип файла LIS. В спецификации файла не допустимы сим-

     волы обобщения. Квалификатор /NOOUTPUT подавляет  вы-

     вод, выполняемый по команде SHOW USERS.

     Примеры:

1. > SHOW USERS

     М32/VOS INTERACTIVE USERS

     15-DEC-1986 12:48:51.14

     TOTAL NUMBER OF INTERACTIVE USERS=3

     PID       USERNAME   PROCESS NAME   TERMINAL

     202000B3  <LOGIN>    _VTA9            VTA9:    TTA7:


                          - 133 -

                     00152-01 97 14-2


     204000C4  AHD        AHD              VTA21:   TTA3:

     204000C2  OPERATOR   OPERATOR         VTA20:   OPA0:

     По команде SHOW USERS  распечатывается  идентификаTOP

процесса (PID), имя  пользователя,  имя  процесса,  вирту-

альное и физическое имя терминала для  всех  интерактивных

пользователей, в текущий момент зарегистрированных в  сис-

теме. Имя пользователя <LOGIN> означает, что  с  терминала

ТТА7: в текущий момент осуществляется регистрация.

2. > SHOW USERS J

     М32/VOS INTERACTIVE USERS

     29-JUL-1986 16:45:11:66

     TOTAL NUMBER OF INTERACTIVE USERS = 32

     PID       USERNAME   PROCESS NAME   TERMINAL

     202000DB  JACK       JACK             VTA19:    TTC1:

     2020011D  JEFFREYS   JEFFREYS         VTA20:    TTA6:

     В примере 2 по  команде  SHOW  USERS  распечатывается

идентификатор процесса (PID), имя пользователя,  имя  про-

цесса и названия терминалов для всех интерактивных пользо-

вателей, имена которых начинаются с буквы J.

     Выбор WORKING_SET

     Команда SHOW WORKING_SET распечатывает предел,  квоту

и величину расширения для рабочего набора текущего процес-

са.

     Командный квалификатор

/OUTPUT

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  SHOW

     WORKING_SET направляет свой вывод. Если  квалификатор

     /OUTPUT опущен или задан без спецификации  файла,  то

     информация выводится в выводной  поток,  определяемый


                          - 134 -

                     00152-01 97 14-2


     для  текущего   процесса   по   умолчанию,   или   на

     устройство,   идентифицируемое   логическим    именем

     SYS$OUTPUT. Если спецификация файла  задана  не  пол-

     ностью (например, задан только каталог),  то  команда

     SHOW WORKING_SET использует по  умолчанию  имя  файла

     SHOW и тип файла LIS. В спецификации файла не  допус-

     тимы символы обобщения. Квалификатор /NOOUTPUT подав-

     ляет вывод, выполняемый по команде SHOW WORKING_SET.



     1.10. Команда SORT



     Команда SORT вызывает программу сортировки  SORT  для

переупорядочивания записей в файле в определенной последо-

вательности и для создания либо нового файла упорядоченных

записей, либо файла адресов,  посредством  которого  можно

получить доступ к переупорядоченным записям.

     Формат

SORT спец_вв_файла[,...] спец_выв_файла

где спец_вв_файла - спецификация вводного файла, в котором

необходимо отсортировать записи. В команде SORT можно ука-

зать до 10 вводных файлов. Спецификации  файлов  в  списке

отделяются друг от друга запятой. Если в спецификации фай-

ла тип файла не указан, по  умолчанию  предполагается  тип

файла DAT. Символы обобщения в спецификации файла  не  до-

пустимы;

    спец_выв_файла - спецификация  выводного файла, в  ко-

торый записываются отсортированные записи. Если выбран тип

сортировки /ADDRESS или /INDEX, задается спецификация фай-

ла адресов. Если в спецификации файла тип файла не указан,

команда SORT использует тип первого вводного файла. Симво-


                          - 135 -

                     00152-01 97 14-2


лы обобщения в спецификации файла не допустимы.

     Командные квалификаторы

/COLLATING_SEQUENCE=последовательность

     - квалификатор /COLLATING_SEQUENCE  задает используе-

     мый при  сортировке  тип  кодирования  символов  (код

     КОИ-8 или код дкои). По умолчанию сортировка произво-

     дится, используя тип кодирования КОИ-8.  Если  сорти-

     ровка выполнянется, используя тип  кодирования  дкои,

     записи остаются в том же виде, то есть в кодах  дкои,

     а сортировка выполняется, используя  тип  кодирования

     КОИ-8.

/DUPLICATES

/NODUPLICATES

     - квалификатор /DUPLICATE  сохраняет  при  сортировке

     записей по ключевым полям записи с одинаковыми ключе-

     выми полями. Квалификатор /NODUPLICATES  удаляет  все

     записи с одинаковыми ключевыми полями,  кроме  одной.

     при этом не известно какая запись сохранена. Для сох-

     ранения необходимой записи SORT вызывается  на  прог-

     раммном уровне с соответствующими аргументами. Квали-

     фикаторы /STABLE и  /NODUPLICATES  взаимно  исключают

     друг друга. По  умолчанию  используется  квалификатор

     /DUPLICATE.

/KEY=(поле[,...])

     - квалификатор /KEY задает ключевое поле, по которому

     выполняется сортировка. При определении ключевого по-

     ля задается позиция, размер поля, порядок  сортировки

     и тип данных. Если ключевое поле  начинается с первой

     позиции, включает в себя всю  запись,  содержит  сим-

     вольные данные  и сортировка будет выполняться в  ал-


                          - 136 -

                     00152-01 97 14-2


     фавитном порядке, то квалификатор /KEY можно не  ука-

     зывать. Ключевое поле задается ключевыми словами, ко-

     торые разделяются запятой  и  заключаются  в  круглые

     скобки.

     Обязательные ключевые слова:

     - POSITION:N - задает  позицию, с которой  начинается

     ключевое поле внутри записи. Первый символ каждой за-

     писи начинается с первой позиции;

     - SIZE:N - задает  размер ключевого поля. Размер клю-

     чевого поля не должен превышать 32767 байтов.  Размер

     ключевого поля, в зависимости ОТ ТИпа  данных,  может

     принимать следующие значения:

     1) для символьных данных -  от 1 до 32767 байтов;

     2) для двоичных данных   -  1,2,4,8,16 байтов;

     3) для числовых данных   -  от 1 до 31 цифры.

     Необязательные ключевые слова:

     - NUMBER:N - задает порядок  использования  ключевого

     поля, если сортировка выполняется по нескольким  клю-

     чевым полям. Если это ключевое слово  не  указано,  в

     первом  квалификаторе  /KEY  предполагается NUMBER:1,

     т. е. сортировка начнется с ключевого слова,  указан-

     ного  в   этом  квалификаторе.  Если  ключевое  слово

     NUMBER:N не указано и во всех последующих  квалифика-

     торах /KEY, значением по  умолчанию  для  N  является

     увеличенное на 1 значение N, использованное в  преды-

     дущем квалификаторе /KEY. N может принимать значение

     от 1 до 255;

     - BINARY - указывает,  что  данные  в  ключевом  поле

     представлены в двоичном виде. Если тип данных не ука-

     зывается, предполагается, что  ключевое поле содержит


                          - 137 -

                     00152-01 97 14-2


     символьные данные;

     - CHARACTER - указывает, что ключевое  поле  содержит

     символьные данные. Если тип данных не указан, команда

     SORT  предполагает,что  данные  представлены  в  сим-

     вольном виде;

     - DECIMAL - указывает, что  данные  в  ключевом  поле

     представлены в десятичном виде. По умолчанию  предпо-

     лагается, что ключевое поле содержит символьные  дан-

     ные;

     - D_FLOATING - указывает, что данные в ключевом  поле

     представлены в виде чисел с плавающей запятой  D_фор-

     мате.  По  умолчанию   предполагается,   что   данные

     представлены в символьном виде;

     - F_FLOATING - указывает, что данные в ключевом  поле

     представлены в  виде  чисел  с  плавающей  запятой  в

     F_формате. По умолчанию  предполагается,  что  данные

     представлены в символьном виде;

     - G_FLOATING - указывает, что данные в ключевом  поле

     представлены в  виде  чисел  с  плавающей  запятой  в

     G_формате. По умолчанию  предполагается,  что  данные

     представлены в символьном виде;

     - PACKED_DECIMAL - указывает, что ключевое  поле  со-

     держит упакованные десятичные данные;

     - ZONED -  указывает,  что  данные  в  ключевом  поле

     представлены в зонном формате;

     - SIGNED - указывает,  что  данные  в  ключевом  поле

     представлены в двоичном формате со знаком;

     - UNSIGNED - указывает, что  ключевое  поле  содержит

     двоичные данные без знака;

     - LEADING_SIGN - указывает, что для десятичного  типа


                          - 138 -

                     00152-01 97 14-2


     данных знак указывается в начале ключевого поля. Если

     ключевое поле содержит десятичные данные и  при  этом

     не указаны ключевые слова LEADING_SIGN или  TRAILING_

     SIGN, то по умолчанию данные  являются  данными  типа

     TRAILING_SIGN;

     - TRAILING_SIGN - указывает, что для десятичного типа

     данных знак указывается в конце ключевого поля.  Если

     ключевое поле содержит десятичные данные и  при  этом

     не указаны ключевые слова LEADING_SIGN или  TRAILING_

     SIGN, то по умолчанию данные  являются  данными  типа

     TRAILING_ SIGN;

     - OVERPUNCHED_SIGN - указывает, накладывается ли знак

     на содержащиеся в ключевом  поле  десятичные  данные.

     Если ключевое поле содержит десятичные  данные  и  не

     указаны   ключевые   слова    OVERPUNCHED_SIGN    или

     SEPARATE_SIGN, то по умолчанию данные являются данны-

     ми типа OVERPUNCHED_SIGN;

     - SEPARATE_SIGN - указывает для ключевого  поля,  со-

     держащего десятичные данные, что знак не накладывает-

     ся на данные. По умолчанию десятичные данные являются

     данными типа OVERPUNCHED_SIGN;

     - ASCENDING - указывает, что сортировка будет  выпол-

     няться с учетом алфавитного  порядка  или  в  порядке

     возрастания числовых значений, в зависимости ОТ  ТИпа

     данных, содержащихся в ключевом  поле.  По  умолчанию

     квалификатор  /KEY  используется  с  ключевым  словом

     ASCENDING;

     - DESCENDING - указывает, что сортировка будет выпол-

     няться в порядке, обратном алфавитному, либо в поряд-

     ке уменьшения числовых значений, в зависимости ОТ ТИ-


                          - 139 -

                     00152-01 97 14-2


     па данных, содержащихся в ключевом поле. По умолчанию

     квалификатор  /KEY  используется  с  ключевым  словом

     ASCENDING.

/PROCESS=тип

     - квалификатор  /PROCESS указывает тип сортировки. По

     умолчанию выполняется сортировка записей. Можно  ука-

     зать следующие типы сортировки:

     1) ADDRESS - указывает, что в  результате  сортировки

     записей по ключевым полям будет создан выводной файл,

     являющийся файлом адресов. Выводной файл будет содер-

     жать указатели на записи во вводном  файле  с  учетом

     выполненной сортировки;

     2) INDEX - указывает, что в результате сортировки за-

     писей по ключевым полям будет создан  выводной  файл,

     содержащий ключевые поля  отсортированных  записей  и

     указатели на размещение соответствующих этим ключевым

     полям записей во вводном файле;

     3) RECORD - указывает, что при сортировке запись рас-

     сматривается целиком. Выводной файл  будет  содержать

     переупорядоченные записи;

     4) TAG - указывает, что сортировка должна выполняться

     только по ключевым полям записей. Выводной файл будет

     содержать переупорядоченные записи с учетом выполнен-

     ной сортировки.

/SPECIFICATION=спец_файла

     - квалификатор /SPECIFICATION указывает файл специфи-

     каций, который содержит командные квалификаторы прог-

     раммы SORT, включая определения ключевых полей.  Если

     квалификатор /SPECIFICATION не указан,  то  командные

     квалификаторы должны быть указаны в команде SORT. При


                          - 140 -

                     00152-01 97 14-2


     задании спецификации файла не допустимы символы обоб-

     щения.

/STABLE

/NOSTABLE

     - квалификатор /STABLE указывает, что программа  SORT

     должна сохранить исходный порядок расположения  запи-

     сей с одинаковыми ключевыми полями. Если квалификатор

     /STABLE не указан, порядок  расположения  в  выводном

     файле записей с  одинаковыми  ключевыми   полями  не-

     предсказуем.

/STATISTICS

/NOSTATISTICS

     - квалификатор /STATISTICS указывает, что  после  за-

     вершения операции сортировки должна быть  распечатана

     суммарная статистика. По умолчанию суммарная  статис-

     тика не распечатывается.

/WORK_FILES=N

     - квалификатор /WORK_FILES задает число временных ра-

     бочих файлов, которые используются во время сортиров-

     ки. N может принимать любое значение в диапазоне от 2

     до 10. Если для N указано значение 0, то рабочие фай-

     лы не будут использоваться, и все данные будут  поме-

     щаться в физическую память.

     квалификаторы, указываемые со спецификацией  вводного

файла

/FORMAT=(атрибут_файла[,...])

     - квалификатор /FORMAT задает атрибуты вводного файла

     для изменения существующих атрибутов  файла,  которые

     программа SORT получает, используя систему управления

     данными (СУД-32). В качестве  атрибутов  файла  можно


                          - 141 -

                     00152-01 97 14-2


     указать следующие ключевые слова:

     1) RECORD_SIZE:N - указывает размер (в байтах)  самой

     большой записи в файле, при этом игнорируется  размер

     записи, указанный в заголовке файла или в метке  фай-

     ла. Это ключевое слово не укызывается,  если  вводной

     файл не является дисковым файлом  или  если  известен

     размер самой большой записи в  файле.  Для  файлов  с

     последовательной организацией N может принимать  зна-

     чение 32767 байтов, для файлов с относительной  орга-

     низацией - 16383 байта и для файлов с индексно-после-

     довательной организацией - 16362 байта;

     2) FILE_SIZE:N- указывает размер  файла  (в  блоках).

     это ключевое слово следует задавать для файла,  кото-

     рый не находится на диске. Если  для  вводного  файла

     размер не задан, программа SORT  использует  значение

     по умолчанию, равное 1000 блоков. Максимальный размер

     файла,  который  может  быть   задан,      составляет

     4294967295 блоков.

     Если в квалификаторе /FORMAT  задаются  оба  ключевых

     слова, они должны быть разделены запятой и  заключены

     в круглые скобки.

     Квалификаторы, указываемые со спецификацией выводного

файла

/ALLOCATION=N

     - квалификатор /ALLOCATION задает  число  512-байтных

     блоков, которые должны быть  выделены  для  выводного

     файла. По умолчанию число блоков, выделяемых програм-

     мой SORT, зависит от числа отсортированных записей. N

     может принимать значение от 1 до 4294967295.


                          - 142 -

                     00152-01 97 14-2


/BUCKET_SIZE=N

     - квалификатор /BUCKET_SIZE задает для выводного фай-

     ла число 512-байтных блоков  в  бакете.  Максимальнще

     значение, которое может принимать N, равно  32.  Если

     размер бакета для выводного файла не задан, он  уста-

     навливается как у вводного файла (если выводной  файл

     имеет такую же файловую организацию,  что  и  вводной

     файл) или равным 1 (если  вводной  и  выводной  файлы

     имеют различные файловые организации).

/CONTIGUOUS

     - квалификатор /CONTIGUOUS указывает, что для  вывод-

     ного файла должно быть выделено на диске  непрерывное

     адресное  пространство.  Если   указан   квалификатор

     /CONTIGUOUS, необходимо  также  указать  квалификатор

     /ALLOCATION для задания числа блоков, выделяемых  для

     выводного  файла.  По  умолчанию  создается  выводной

     Файл, не являющийся непрерывным.

/FORMAT=(формат_записи[,...])

     - квалификатор /FORMAT определяет формат  записи  для

     выводного файла. Для указания  формата  записи  можно

     использовать следующие ключевые слова:

     1) CONTROLLED[:N] - указывает, что выводной файл  бу-

     дет содержать  записи  переменной  длины с контролем.

     N - размер самой большой записи в выводном файле. Ес-

     ли N не указано, по умолчанию N равно  размеру  самой

     большой записи во вводном файле;

     2) FIXED[:N] - указывает, что выводной файл будет со-

     держать записи фиксированной длины. N - размер  самой

     большой записи в выводном файле. Если N  не  указано,

     по умолчанию N равно размеру самой большой записи  во


                          - 143 -

                     00152-01 97 14-2


     Вводном файле;

     3) VARIABLE[:N] - указывает, что выводной файл  будет

     содержать записи переменной длины. N -  размер  самой

     большой записи в выводном файле. Если N  не  указано,

     по умолчанию N равно размеру самой большой записи  во

     вводном файле;

     4) BLOCK_SIZE:N - указывает размер блока в байтах для

     выводного файла, который будет  создан  на  магнитной

     ленте. По умолчанию используется размер блока,  опре-

     деленный для вводного файла, если вводной файл разме-

     щен на магнитной ленте. Если вводной файл не находит-

     ся на магнитной ленте, то по  умолчанию  используется

     размер блока, указанный во время монтирования магнит-

     ной ленты,  на  которой  будет  размещаться  выводной

     файл. В качестве размера блока можно указать значение

     в диапазоне от 20 до 65535 байтов, однако  рекоменду-

     ется указывать значение N меньшим 2048  байтов.  Если

     квалификатор /FORMAT не указан, программа SORT  опре-

     деляет формат записи для выводного файла в зависимос-

     ти от выполняемой сортировки:

     - если указан тип сортировки RECORD или TAG, то  фор-

     мат и длина записи для выводного файла выбираются та-

     кими же, как у первого вводного файла;

     - если указан тип сортировки ADDRESS  или  INDEX,  то

     выводной файл будет  содержать  записи  фиксированной

     длины.

/INDEXED_SEQUENTIAL

     - квалификатор /INDEXED_SEQUENTIAL указывает, что вы-

     водной файл будет иметь индексно-последовательную ор-

     ганизацию.     Если        задается      квалификатор


                          - 144 -

                     00152-01 97 14-2


     /INDEXED_SEQUENTIAL, выводной  файл  должен  уже  су-

     ществовать, его организация должна быть  индексной  и

     файл должен быть пустым. Чтобы осуществить  запись  в

     уже существующий файл путем наложения новой  информа-

     ции на уже имеющуюся в этом файле, необходимо  наряду

     с квалификатором /INDEX_SEQUENTIAL указать квалифика-

     тор /OVERLAY. По умолчанию, если  выполняется  сорти-

     ровка типа RECORD или TAG, выводной файл будет  иметь

     такую же организацию, что и первый вводной файл. Ква-

     лификатор /INDEX_SEQUENTIAL указывается для  создания

     файла  с  индексно-последовательной  организацией  из

     файла с последовательной или относительной  организа-

     цией.

/OVERLAY

     - квалификатор /OVERLAY  указывает,  что  информация,

     содержащаяся в файле, будет затерта  отсортированными

     записями вводного файла. По умолчанию программа  SORT

     записывает отсортированные записи  в  новый  выводной

     файл.

/RELATIVE

     - квалификатор /RELATIVE указывает, что выводной файл

     будет иметь относительную  организацию.  Квалификатор

     /RELATIVE используется для создания файла  с  относи-

     тельной организацией из файла с последовательной  или

     индексно-последовательной организацией.

/SEQUENTIAL

     - квалификатор /SEQUENTIAL  указывает,  что  выводной

     файл будет иметь последовательную  организацию.  Если

     выполняется сортировка типа ADDRESS или INDEX, вывод-

     ной файл будет иметь последовательную организацию.


                          - 145 -

                     00152-01 97 14-2


     Пример.

 > SORT/KEY=(POSITION:1,SIZE:70) BOATS.LST BOATS.TMP

     Команда SORT в этом примере выполняет сортировку  за-

писей в файле BOATS.LST и создает выводной файл BOATS.TMP.

все записи в выводном файле упорядочены в  алфавитном  по-

рядке по первым семидесяти символам.



     1.11. Команда SUBMIT



     КомандA SUBMIT помещает одну или несколько  командных

процедур в очередь пакетных заданий.

     Формат

SUBMIT спец_файла[,...]

где спец_файла - спецификация файла, содержащего командную

процедуру, предназначенную для выполнения в рамках  пакет-

ного задания. В спецификации  файла  необходимо  указывать

имя файла. Если в спецификации файла тип файла не  указан,

команда SUBMIT использует по умолчанию тип файла COM. Если

в команде SUBMIT указывается несколько файлов, их специфи-

кации разделяются запятой (,) или  знаком  плюс  (+),  при

этом файлы об'единяются и рассматриваются как  одно  зада-

ние. Если в спецификации файла указано имя узла, в команде

SUBMIT необходимо указать квалификатор /REMOTE. В специфи-

кации файла не допустимы символы обобщения.

     Командные квалификаторы

/AFTER=время

     - квалификатор /AFTER указывает, что пакетное задание

     будет обрабатываться после заданного в  квалификаторе

     /AFTER времени.


                          - 146 -

                     00152-01 97 14-2


/BACKUP

/NOBACKUP

     - квалификатор /BACKUP позволяет выбирать файлы в со-

     ответствии с датой их самого  последнего  сохранения.

     Этот квалификатор используется только с  квалификато-

     Ром /BEFORE или /SINCE.

/BEFORE[=время]

/NOBEFORE

     - квалификатор /BEFORE позволяет выбирать только фай-

     лы, которые датируются до указанного в  квалификаторе

     /BEFORE времени.

/BY_OWNER[=UIC]

/NOBY_OWNER

     - квалификатор /BY_OWNER позволяет выбирать один  или

     несколько файлов, UIC владельца которых  совпадает  с

     указанным UIC. Если  в  квалификаторе  /BY_OWNER  код

     идентификации пользователя не  указан,  по  умолчанию

     используется UIC текущего процесса.

/CHARACTERISTICS=(характеристика1[,характеристика2,...])

     - квалификатор /CHARACTERISTICS определяет для  зада-

     ния одну или несколько  характеристик.  Если  указана

     только одна характеристика,  скобки  можно  опустить.

     информацию об определенных в системе  характеристиках

     можно получить по команде  SHOW QUEUE/CHARACTERISTICS

     интерпретатора MCR. Если в команде SUBMIT указан ква-

     лификатор /CHARACTERISTICS, то все указанные характе-

     ристики должны быть определены и для очереди, в кото-

     рой это задание будет  выполняться.  Если  в  команде

     SUBMIT указана характеристика, которая не была  опре-

     делена для очереди, задание, созданное по этой коман-


                          - 147 -

                     00152-01 97 14-2


     де, будет помещено в отложенное состояние до тех пор,

     пока характеристики очереди не будут изменены. Пакет-

     ное задание  может  быть  запущено,  если  в  команде

     SUBMIT не указаны характеристики, которые были заданы

     для очереди, в которой будет выполняться это задание.

/CLI=имя_файла

     - квалификатор /CLI позволяет  указать  интерпретатор

     команд, используемый при обработке данного  пакетного

     задания. Предполагается, что файл с указанным в  ква-

     лификаторе  /CLI  именем, находится   на   устройстве

     с логическим именем SYS$SYSTEM и имеет тип EXE.  Если

     квалификатор /CLI не указан, по умолчанию  при  обра-

     ботке данного задания будет использоваться  интерпре-

     татор команд, указанный в файле авторизации пользова-

     теля.

/CONFIRM

/NOCONFIRM

     - квалификатор /CONFIRM указывает, что  перед  каждой

     операцией, выполняемой по команде SUBMIT,  необходимо

     подтверждение пользователя,  что  операция  над  этим

     файлом должна быть выполнена. Утвердительными ответа-

     ми являются YES, TRUE, 1. Отрицательными ответами яв-

     ляются NO, FALSE, 0 и <CR>. Ответы QUIT и CTRL/Z  оз-

     начают, что выполнение команды SUBMIT необходимо при-

     остановить. Ответ аLL означает, что выполнение коман-

     ды SUBMIT необходимо продолжить,  не  запрашивая  при

     дальнейших операциях подтверждения у пользователя.

/CPUTIME=выбор

     - квалификатор  /CPUTIME  задает  время  центрального

     процессора, необходимое для обработки пакетного зада-


                          - 148 -

                     00152-01 97 14-2


     ния. Квалификатор /CPUTIME позволяет уменьшить значе-

     ние времени центрального процессора, которое было ус-

     тановлено администратором системы или указано в файле

     авторизации пользователя для очереди  пакетных  зада-

     ний. Для снятия  ограничений  на  время  центрального

     процессора при выполнении пакетного задания необходи-

     мо в квалификаторе /CPUTIME указать в качестве выбора

     о или INFINITE. Если для выполнения пакетного задания

     нужно установить значение времени, указанное в  файле

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

     администратором системы, в квалификаторе  /CPUTIME  в

     качестве выбора указывается NONE.

/CREATED

/NOCREATED

     - квалификатор /CREATED позволяет выбирать файлы, ос-

     новываясь на дате их создания. Квалификатор  /CREATED

     используется только  с  квалификаторами  /BEFORE  или

     /SINCE. Не допустимо использование этого квалификато-

     ра с квалификаторами /BACKUP , /EXPIRED и  /MODIFIED.

     по умолчанию используется квалификатор /CREATED.

/EXCLUDE=(спец_файла[,...])

/NOEXCLUDE

     - квалификатор /EXCLUDE позволяет указать файлы,  ко-

     торые исключаются из  обработки  командой  SUBMIT.  В

     спецификации файла можно использовать символы обобще-

     ния.

/EXPIRED

/NOEXPIRED

     - квалификатор /EXPIRED позволяет выбирать  файлы  по

     дате истечения  времени  существования.  Квалификатор


                          - 149 -

                     00152-01 97 14-2


     /EXPIRED  используется   только   с   квалификаторами

     /BEFORE или /SINCE. Не допустимо использование  этого

     квалификатора с квалификаторами /BACKUP,  /CREATED  и

     /MODIFIED.  По  умолчанию  используется  квалификатор

     /CREATED.

/HOLD

/NOHOLD

     - квалификаторы /HOLD и /NOHOLD  указывают,  доступно

     ли задание для немедленной обработки. Если в  команде

     SUBMIT указан квалификатор /NOHOLD, задание будет  не

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

     SUBMIT с квалификатором /NOHOLD или /RELEASE, или ко-

     манда SET QUEUE/ENTRY. По умолчанию используется ква-

     лификатор /NOHOLD.

/IDENTIFY

/NOIDENTIFY

     - квалификатор /IDENTIFY управляет выводом сообщения,

     в котором указывается номер задания и имя очереди,  в

     которой находится это задание. По  умолчанию  команда

     SUBMIT выводит эту информацию всякий раз, когда зада-

     ние успешно поставлено в очередь.

/KEEP

/NOKEEP

     - квалификатор /KEEP удаляет файл  регистрации  после

     того, как он был распечатан. Если не указан  квалифи-

     катор /NOPRINTER, по умолчанию используется  квалифи-

     катор /NOKEEP.

/LOG_FILE=спец_файла

/NOLOG_FILE

     - квалификатор /LOG_FILE  задает  спецификацию  файла


                          - 150 -

                     00152-01 97 14-2


     для файла регистрации пакетного задания, которое  бу-

     дет создано по команде SUBMIT. В  спецификации  файла

     не допустимы символы обобщения. Если указан  квалифи-

     катор /NOLOG_FILE, файл регистрации не создается.  По

     умолчанию файл регистрации создается в каталоге,  оп-

     ределяемом по умолчанию, имеет такое же  имя,  что  и

     первый файл в команде SUBMIT, и тип файла LOG. Если в

     команде SUBMIT квалификатор /LOG_FILE не  указан,  но

     указан квалификатор  /NAME,  файл  регистрации  будет

     иметь имя, указанное в  квалификаторе  /NAME,  и  тип

     файла LOG.

/MODIFIED

/NOMODIFIED

     - квалификатор /MODIFIED позволяет  выбрать  файлы  в

     соответствии с датой их последней  модификации.  Этот

     свалификатор используется  только  с  квалификаторами

     /BEFORE или /SINCE. Не допустимо использование  этого

     квалификатора с квалификаторами /BACKUP,  /CREATED  и

     /EXPIRED.  По  умолчанию  используется   квалификатор

     /CREATED.

/NAME=имя_задания

     - квалификатор /NAME задает  строку,  которая  должна

     использоваться как имя задания. Если в команде SUBMIT

     не указан квалификатор /LOG_FILE, то имя, указанное в

     квалификаторе /NAME, будет именем  файла  регистрации

     пакетного задания. Строка, указанная в  квалификаторе

     /NAME, может содержать от 1 до 39 символов. Если ква-

     лификатор /NAME не указан, задание будет иметь  такое

     же имя,  что  и  первый  файл,  указанный  в  команде

     SUBMIT.


                          - 151 -

                     00152-01 97 14-2


/NOTIFY

/NONOTIFY

     - квалификатор /NOTIFY управляет посылкой на термина-

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

     сообщения об успешном завершении задания  или  о  его

     преждевременном завершении.

/PARAMETERS=(параметр[,...])

     - квалификатор /PARAMETERS позволяет указать от 1  до

     8 необязательных параметров,  которые должны быть пе-

     реданы заданию. Параметры, указанные в этом  квалифи-

     каторе, определяют значения  символам  P1,  P2,...P8,

     используемым командными процедурами в задании. Симво-

     лы P1, P2,...P8 являются локальными. Каждый  параметр

     может содержать до 255 символов.

/PRINTER[=имя_очереди]

/NOPRINTER

     - квалификатор /PRINTER указывает, что по  завершению

     выполнения задания файл регистрации пакетного задания

     должен быть помещен в указанную очередь для вывода на

     печать. Если имя очереди не указано, файл регистрации

     помещается в очередь с логическим  именем  SYS$PRINT.

     по умолчанию используется квалификатор /PRINTER. Если

     указан квалификатор /NOPRINTER,  предполагается,  что

     задан и квалификатор /KEEP.

/PRIORITY=N

     - квалификатор /PRIORITY указывает приоритет для  за-

     дания. N может принимать значение от 0 до 255. Значе-

     нием по умолчанию для квалификатора /PRIORITY являет-

     ся значение параметра DEFQUEPRI  программы  генерации

     системы (SYSGEN). Приоритет, указанный в квалификато-


                          - 152 -

                     00152-01 97 14-2


     ре /PRIORITY, не влияет на приоритет процесса.

/QUEUE=имя_очереди[:]

     - квалификатор /QUEUE указывает имя очереди  пакетных

     заданий, в которую должно быть помещено задание. Если

     квалификатор /QUEUE не указан, задание  помещается  в

     очередь пакетных заданий с именем SYS$BATCH.

/REMOTE

     - квалификатор /REMOTE указывает, что командная  про-

     цедура будет выполняться на удаленном узле.  Специфи-

     кация файла, указанная в команде SUBMIT,  должна  со-

     держать имя узла, на котором находится задание.

/RESTART

/NORESTART

     - квалификатор /RESTART  указывает,  что  после  сбоя

     системы или после команды STOP/QUEUE/REQUEUE  задание

     будет перезапущенO. По умолчанию используется  квали-

     фикатор /NORESTART.

/SINCE[=время]

/NOSINCE

     - квалификатор /SINCE  позволяет  выбрать  только  те

     файлы, которые датируются после указанного времени. С

     этим квалификатором могут быть указаны ключевые слова

     TODAY, TOMORROW и YESTERDAY. Если время  не  указано,

     предполагается TODAY.

/USER=имя_пользователя

     - квалификатор /USER позволяет выполнять пакетное за-

     дание от  имени  указанного  пользователя, т. Е.  Вся

     учетная информация будет записываться на счет пользо-

     вателя, имя которого указано в  квалификаторе  /USER.

     Для  использования  квалификатора  /USER   необходимо


                          - 153 -

                     00152-01 97 14-2


     иметь привилегию CMKRNL и доступ на чтение файла  ав-

     торизации пользователя (UAF).

/WSDEFAULT=N

     - квалификатор /WSDEFAULT  определяет  умолчание  для

     размера рабочего набора пакетного  задания.  N  может

     принимать значение от 1 до 65535. Если в квалификато-

     ре /WSDEFAULT указано значение 0 или  ключевое  слово

     NONE, то  размер  рабочего  набора,  используемый  по

     умолчанию, будет установлен равным либо размеру рабо-

     чего набора, указанному в файле авторизации пользова-

     теля, либо размеру, определенному  по  умолчанию  для

     данной очереди пакетных заданий.

/WSEXTENT=N

     - квалификатор /WSEXTENT определяет величину, на  ко-

     торую может быть увеличен размер рабочего набора  для

     пакетного задания. N может принимать значения  в диа-

     пазоне от 1 до 65535. Если в квалификаторе  /WSEXTENT

     указано значение 0 или ключевое слово  NONE,  то  ис-

     пользуется значение для расширения  рабочего  набора,

     указанное в файле авторизации пользователя, или  зна-

     чение, определенное для данной очереди пакетных зада-

     ний.

/WSQUOTA=N

     - квалификатор /WSQUOTA рекомендуется использовать  в

     тех случаях, когда необходимо уменьшить квоту рабоче-

     го набора, установленную для пакетных  заданий  адми-

     нистратором системы, или указанную в файле  авториза-

     ции пользователя.  Если  необходимо,  чтобы  величина

     квоты рабочего набора  по  умолчанию  устанавливалась

     равной величине, указанной для квоты рабочего  набора


                          - 154 -

                     00152-01 97 14-2


     в файле авторизации пользователя, или величине  квоты

     рабочего набора, установленной для данной очереди па-

     кетных заданий, в квалификаторе /WSQUOTA в качестве N

     необходимо указать 0 или ключевое слово NONE.

     Позиционный квалификатор

/DELETE

/NODELETE

     - квалификатор /DELETE указывает, что после обработки

     файлы должны быть удалены из очереди заданий.

     Примеры:

1.> SUBMIT AVERAGE

    JOB AVERAGE (QUEUE SYS$BATCH, ENTRY 112) PENDING

     В этом примере команда SUBMIT помещает командную про-

цедуру AVERAGE.COM в очередь пакетных  заданий  SYS$BATCH.

после завершения задания файл регистрации AVERAGE.LOG  по-

мещается в очередь для вывода на печать и после распечатки

будет удален.

2. > SUBMIT/PARAMETERS=(TXT,DOC,MEM) BACKUP,-

   >_AVERAGE, RUNMASTER

     JOB AVERAGE (QUEUE SYS$BATCH, ENTRY 416) PENDING

     В этом примере по команде SUBMIT командные  процедуры

BACKUP, AVERAGE, RUNMASTER будут обрабатываться  как  одно

пакетное задание. Заданию передаются три параметра.  Пара-

Mетр P1 получает значение TXT, параметр P2 - DOC, параметр

P3 - MEM.

3. > SUBMIT/NAME=BATCH24/HOLD TESTALL

     JOB BATCH24 (QUEUE SYS$BATCH, ENTRY 467) HOLDING

     В этом примере команда SUBMIT помещает командную про-

цедуру TESTALL.COM в очередь пакетных  заданий  SYS$BATCH.

квалификатор /HOLD указывает на то, что задание будет  об-


                          - 155 -

                     00152-01 97 14-2


рабатываться только после того, как будет  издана  команда

SET/QUEUE/ENTRY/RELEASE. С помощью квалификатора /NAME за-

дание получает имя BATCH24.



     1.12. Команда TIME



     Команда TIME распечатывает текущую дату и время. Эта

команда эквивалентна команде SHOW [DAY]TIME.

     Формат

TIME

     Пример.

> TIME

  12-DEC-1986  12:43:12

     В этом примере по команде TIME распечатывается  теку-

щее время и дата.



     1.13. Команда TKB



     Команда TKB вызывает построитель задач (TKB), который

выполняет функции, аналогичные функциям  компоновщика  мос

вп. TKB строит  образ  задачи  из  одного  или  нескольких

об'ектных модулей. Образом задачи может  быть  задача  или

разделяемая область. Разделяемая область  -  это  совокуп-

ность данных или кодов, которые резидентны в памяти и  ко-

торыми могут пользоваться несколько задач.  В  отличии  от

задачи, разделяемая область не имеет заголовка. TKB  может

создать три вида файлов: файл образа задачи (.TSK), содер-

жащий выполняемую часть задачи, файл распределения  памяти

(.MAP), который содержит размеры и адреса компонентов  за-

дачи, и файл определения символов (.STB).


                          - 156 -

                     00152-01 97 14-2


     Командная строка TKB может быть задана следующим  об-

разом:

> TKB FILE.TSK[/SW],FILE.MAP[/SW],FILE.STB=FILE.OBJ[/SW],-

>_ FILE.OBJ[/SW],...

или

> TKB

TKB> FILE.TSK[/SW],FILE.MAP[/SW],FILE.STB=FILE.OBJ[/SW]

TKB> FILE.OBJ[/SW]

TKB> /

ENTER OPTIONS:

TKB> выбор

TKB> выбор

   .

   .

   .

TKB> //

где FILE.TSK - спецификация файла образа задачи;

    FILE.MAP - спецификация файла распределения памяти;

    FILE.STB - спецификация файла определения символов;

    FILE.OBJ - спецификация вводного файла;

    /SW - ключи команды TKB.

     Ключи

/AC

TKB> FILE.TSK/AC[:N],FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /AC указывает, что задача  является  вспомога-

     тельным управляющим процессором (ACP) и является при-

     вилегированной задачей. N указывает  базовый  регистр

     смещения и может принимать значения 0, 4, 5.  Если  N

     не указано,  предполагается  N=5.  По  умолчанию  ис-

     пользуется ключ /-AC.


                          - 157 -

                     00152-01 97 14-2


/AL

TKB> FILE.TSK/AL,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /AL об'являет задачу выгружаемой.  Построитель

     задач резервирует в образе задачи  область  выгрузки.

     прежде чем использовать эту выделенную область,  сис-

     тема МОС ВП пытается выгрузить задачу в  динамическую

     область выгрузки. В случае неудачной попытки, система

     МОС ВП выгружает задачу в область выгрузки,  выделен-

     ную в файле образа задачи. В одной  командной  строке

     недопустимо одновременное использование ключей /CP  и

     /AL. По умолчанию используется ключ /-AL.

/CC

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ/CC

     - ключ /CC указывает, что вводной файл содержит  нес-

     колько об'ектных модулей. TKB включает в образ задачи

     все модули файла. Если указан ключ /-CC, то TKB вклю-

     чает в образ задачи только первый  об'екTный  модуль.

     по умолчанию используется ключ /CC.

/CM

TKB> FILE.TSK/CM,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /CM указывает, что резидентные в  памяти  сег-

     менты перекрытий выравниваются на границу 256-словно-

     го блока. По  умолчанию используется ключ /-CM.

/CO

TKB> FILE.TSK/CO,FILE.MAP,FILE.STB=FILE.OBJ

или

TKB> ,,FILE.STB/CO=FILE.OBJ

     - ключ /CO указывает, что TKB должен построить разде-

     ляемую область. Ключ /CO используется с ключом  /-HD.

     Если /CO  используется  с ключом /PI, то  разделяемая


                          - 158 -

                     00152-01 97 14-2


     область будет позиционно-независимой. Если  вместе  с

     /CO указан ключ /-PI, то  разделяемая  область  будет

     абсолютной. Ключи /CO и /PI влияют на содержимое фай-

     ла определения символов.

/CP

TKB> FILE.TSK/CP,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /CP указывает, что задача будет выгружаться  в

     системный файл выгрузки. Ключи /AL и /CP  нельзя  ис-

     пользовать в одной командной строке. По умолчанию ис-

     пользуется ключ /-CP.

/CR

TKB> FILE.TSK,FILE.MAP/CR,FILE.STB=FILE.OBJ

     - ключ /CR указывает, что TKB должен добавить к файлу

     распределения  памяти  распечатку  глобальных  перек-

     рестных ссылок. Задача перекрестных ссылок CRF должна

     быть установлена в системе. По умолчанию используется

     ключ /-CR.

/DA

TKB> FILE.TSK/DA,FILE.MAP,FILE.STB=FILE.OBJ

или

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OBJ/DA

     - если ключ /DA указан со спецификацией образа  зада-

     чи, TKB автоматически включает в образ задачи  отлад-

     чик LB0:[1,1]ODT.OBJ. Если ключ /DA указан со  специ-

     фикацией вводного файла, то это означает, что вводной

     файл является отладочным средством,  и  TKB  передает

     управление этому отладчику. По умолчанию используется

     ключ /-DA.


                          - 159 -

                     00152-01 97 14-2


/DL

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OLB/DL

     - ключ /DL указывает, что файл, с которым указан дан-

     ный ключ, является библиотекой по умолчанию.  Указан-

     ная  библиотека  заменяет  библиотеку  по   умолчанию

     LB:[1,1]SYSLIB.OLB, которая используется построителем

     задач для разрешения неопределенных  глобальных  ссы-

     лок. По умолчанию используется ключ /-DL.

/EA

TKB> FILE.TSK/EA,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /EA указывает, что задача использует  расшири-

     тель арифметики. По умолчанию используется ключ /-EA.

/EL

TKB> FILE.TSK/LI/-HD/EL,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /EL  указывает  максимально  возможный  размер

     библиотеки в соответствии со значением,  указанным  в

     выборе PAR. По умолчанию используется ключ /-EL.

/FP

TKB> FILE.TSK/FP,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /FP указывает, что задача использует процессор

     плавающей запятой.  По  умолчанию  используется  ключ

     /-FP.

/FU

TKB> FILE.TSK/FU,FILE.MAP,FILE.STB=FILE.ODL/MP

     - по ключу /FU во время обработки модулей из  библио-

     теки по умолчанию просматриваются сегменты перекрытий

     всех поддеревьев с целью  нахождения  соответствующих

     определений и ссылок. По умолчанию используется  ключ

     /-FU.


                          - 160 -

                     00152-01 97 14-2


/HD

TKB> FILE.TSK/-HD,FILE.MAP,FILE.STB=FILE.OBJ

или

TKB> FILE.TSK,FILE.MAP,FILE.STB/-HD=FILE.OBJ

     - если указан ключ /-HD, TKB строит задачу без  заго-

     ловка. Ключ /-HD используется для построения разделя-

     емых областей или драйверов. По умолчанию использует-

     ся ключ /HD.

/IP

TKB> FILE.TSK/PR/-IP,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /-IP указывает, что задача занимает свыше  12к

     слов памяти и не требует отображения внешней страницы

     памяти. По умолчанию используется ключ /IP.

/LB

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OLB/LB

или

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OLB -

TKB>_ /LB[:MOD1:...MOD8]

     - ключ /LB указывает, что файл, с которым  он  задан,

     является файлом библиотеки  об'ектных  модулей.  Если

     ключ /LB задан без  аргументов,  предполагается,  что

     вводной файл является библиотечным файлом  перемещае-

     мых об'ектных модулей, который должен быть просмотрен

     для разрешения неопределенных глобальных ссылок.  TKB

     включает в образ задачи те модули,  которые  содержат

     определения для таких ссылок. Если ключ /LB  задан  с

     аргументами, предполагается, что вводной файл являет-

     ся библиотечным файлом перемещаемых  об'ектных  моду-

     лей, из которого  нужно  взять  модули,  указанные  в

     списке аргументов, и  включить  их  в  образ  задачи.


                          - 161 -

                     00152-01 97 14-2


     По умолчанию используется ключ /-LB.

/LI

TKB> FILE.TSK/LI/-HD,FILE.MAP,FILE.STB=FILE.OBJ

или

TKB> ,,FILE.STB/LI=FILE.OBJ

     - ключ /LI используется  для  построения  разделяемых

     библиотек. Вместе с ключом /LI нужно  указывать  ключ

     /-HD. Ключ /LI не имеет формы  /-LI.  Если  вместе  с

     ключом /LI указан ключ /-PI, то  строится  абсолютная

     библиотека. Если же с ключом /LI указан ключ /PI,  то

     строится позиционно-независимая библиотека. По  умол-

     чанию используется ключ /-LI.

/MA

TKB> FILE.TSK,FILE.MAP/MA=FILE.OBJ

или

TKB> FILE.TSK,FILE.MAP=FILE.OBJ/-MA

     - ключ /MA указывает, что в файл распределения памяти

     включаются имена программ, которые были  подтянуты  к

     задаче из системной библиотеки SYSLIB,  информация  о

     разделяемых областях, к которым обращается задача,  а

     также список глобальных символов из об'ектного файла.

     Если с вводным файлом  указан  ключ  /-MA,  все  гло-

     бальные символы из об'ектного  файла  исключаются  из

     файла распределения памяти и из  списка  перекрестных

     ссылок. Кроме того, TKB  исключает  файл  из  области

     "содержимое файла" файла распределения памяти.  Умол-

     чанием для вводного файла  является  /MA,  для  файла

     распределения памяти - /-MA.

/MM

TKB> FILE.TSK/-MM[:N],FILE.MAP,FILE.STB=FILE.OBJ


                          - 162 -

                     00152-01 97 14-2


или

TKB> FILE.TSK/MM[:N],FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /-MM указывает, что задача будет выполняться в

     системе без диспетчера памяти.  Ключ  /MM  указывает,

     что задача будет выполняться в системе с  диспетчером

     памяти. N может принимать значения 28 или 30 и  озна-

     чает, что для задачи выделяется максимально 28  кслов

     или 30 кслов физической  памяти.  По  умолчанию  N=28

     кслов. Если значение N указано с ключом /MM,  то  оно

     игнорируется, поскольку максимальный размер задачи  в

     системе  с диспетчером памяти равен 32 кслов. Умолча-

     нием для системы с диспетчером памяти  является  /MM,

     без диспетчера памяти - /-MM.

/MP

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.ODL/MP

     - ключ /MP указывает, что вводной файл является  фай-

     лом описания перекрытий.  TKB  получает  спецификации

     всех вводных файлов  из  файла  описания  перекрытий.

     По умолчанию используется ключ /-MP.

/MU

TKB> FILE.TSK/MU,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /MU  указывает,  что  задача  является  много-

     пользовательской.  По  умолчанию  используется   ключ

     /-MU.

/NM

TKB> FILE.TSK/NM,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /NM подавляет вывод двух диагностических сооб-

     щений:

     MODULE имя_модуля MULTIPLY DEFINES P-SECTION имя


                          - 163 -

                     00152-01 97 14-2


     и

     N UNDEFINED SYMBOLS имя_сегмента

     по умолчанию используется ключ /-NM.

/PI

TKB> FILE.TSK/PI,FILE.MAP,FILE.STB=FILE.OBJ

или

TKB> FILE.TSK,,FILE.STB/PI=FILE.OBJ

     - ключ /PI указывает, что строящаяся разделяемая  об-

     ласть содержит только позиционно-независимые програм-

     мы или данные. По умолчанию используется ключ /-PI.

/PM

TKB> FILE.TSK/PM,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /PM указывает, что в случае аварийного завер-

     Шения задачи, система МОС ВП автоматически распечаты-

     вает содержимое памяти задачи. По умолчанию использу-

     уеся ключ /-PM.

/PR

TKB> FILE.TSK/PR[:N],FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /PR об'являет задачу привилегированной. N ука-

     зывает базовый регистр смещения, который используется

     для отображения образа задачи. Допустимыми значениями
     
     для N являются 0, 4 и 5. Если N не указано, то  пред-

     полагается N=5. По умолчанию используется ключ /-PR.

/RO

TKB> FILE.TSK/RO,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /RO разрешает TKB распознAваTь оператор  рези-

     дентных в памяти перекрытий (!) в файле описания  пе-

     рекрытий. Если указан ключ /RO,  задача  будет  иметь

     резидентные в памяти перекрытия. Ключ /-RO  использу-

     ется для построения перекрытий, резидентных на диске.


                          - 164 -

                     00152-01 97 14-2


     По  умолчанию используется ключ /RO.

/SE

ткB> FILE.TSK/SE,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /SE указывает, что задача будет получать сооб-

     щения с помощью директивы SEND. Ключ  /-SE  запрещает

     постановку сообщений в очередь к задаче. По умолчанию

     используется ключ /SE.

/SG

TKB> FILE.TSK/SG,FILE.MAP,FILE.STB=FILE.OBJ

     - по ключу  /SG  TKB  выделяет  виртуальное  адресное

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

     доступных для чтения и записи, а потом уже для  прог-

     раммных секций, доступных только для чтения. TKB упо-

     рядочивает программные секции, имеющие одинаковый тип

     доступа, в алфавитном порядке. Если указан ключ /-SG,

     программные секции упорядочиваются в  алфавитном  по-

     рядке независимо ОТ ТИпа доступа.  По  умолчанию  ис-

     пользуется ключ /-SG.

/SH

TKB> FILE.TSK,FILE.MAP/SH,FILE.STB=FILE.OBJ

     - ключ /SH указывает, что файл  распределения  памяти

     будет иметь краткую форму, т. е. он не  будет  содер-

     жать секцию  "содержимое  файла".  По  умолчанию  ис-

     пользуется ключ /SH.

/SL

TKB> FILE.TSK/SL,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /SL указывает, что строящаяся задача  является

     подчиненной по отношению к инициирующей задаче.  Ключ

     /SL используется только тогда,  когда  система  имеет

     многопользовательскую защиту. По умолчанию  использу-


                          - 165 -

                     00152-01 97 14-2


     Ется ключ /-SL.

/SP

TKB> FILE.TSK,FILE.MAP/SP,FILE.STB=FILE.OBJ

     - ключ /SP указывает, что распечатка файла  распреде-

     ления памяти на печатающем устройстве выполняется че-

     рез спул. Задача PRT...  Должна  быть  предварительно

     установлена в системе. По ключу /-SP файл распределе-

     ния памяти создается на SY0:, но вывода через спул не

     происходит. По умолчанию используется ключ /SP.

/SQ

TKB> FILE.TSK/SQ,FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /SQ указывает, что TKB группирует  программные

     секции в соответствии с кодами доступа  (сначала  RW,

     затем RO), размещая их в каждой группе в порядке вво-

     да. Если указан ключ /-SQ, задача строится  из  прог-

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

     По умолчанию используется ключ /SQ.

/SS

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OBJ/SS

или

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.STB/SS

или

TKB> FILE.TSK,FILE.MAP,FILE.STB=FILE.OBJ,FILE.OLB/LB/SS

     - ключ /SS предназначен для выборочного  поиска  гло-

     бальных символов. TKB включает в свою внутреннюю таб-

     лицу символов только те глобальные символы, на  кото-

     рые имелись неопределенные ссылки. По  умолчанию  ис-

     пользуется ключ /-SS.


                          - 166 -

                     00152-01 97 14-2


/TR

TKB> FILE.TSK/TR,FILE.MAP,FILE.STB=FILE.OBJ

     - по ключу /TR TKB устанавливает бит  T  для  задачи,

     что вызывает прерывание по слежению по завершению вы-

     полнения каждой инструкции задачи. По  умолчанию  ис-

     пользуется ключ /-TR.

/WI

TKB> FILE.TSK,FILE.MAP/WI,FILE.STB=FILE.OBJ

     - ключ /WI указывает, что файл  распределения  памяти

     будет распечатываться в формате с шириной строки лис-

     тинга, равной 132 символам. Если  указан  ключ  /-WI,

     ширина строки листинга равна 80 символам. По  умолча-

     нию используется ключ /WI.

/XT

TKB> FILE.TSK/XT[:N],FILE.MAP,FILE.STB=FILE.OBJ

     - ключ /XT указывает, что TKB завершит свое  выполне-

     ние после обнаружения  N  ошибок.  N  можно  задавать

     восьмеричным или десятичным значением. Если N не ука-

     зано, предполагается N=1. По  умолчанию  используется

     ключ /-XT.

     Подробное описание ключей команды TKB, а также языка

описания перекрытий дано в [7].



     1.14. Команда TYPE



     По команде TYPE на текущем выводном устройстве распе-

чатывается содержимое файла или группы файлов.

     Формат

TYPE спец_файла[,...]

где спец_файла - спецификация файлA, предназначенного  для


                          - 167 -

                     00152-01 97 14-2


распечатки. Если в спецификации файла указано  только  имя

файла, а тип не указан,  по  умолчанию  команда  TYPE  ис-

пользует тип файла LIS. Если  указывается  два  или  более

файла, их спецификации разделяются  запятыми  или  знаками

плюс(+).  Файлы распечатываются в том порядке, в каком они

указаны. В спецификации файла можно  использовать  символы

обобщения.

     Командные квалификаторы

/BACKUP

     - квалификатор /BACKUP позволяет выбирать для  распе-

     чатки файлы в соответствии с датой их последнего сох-

     ранения. Квалификатор /BACKUP используется  только  с

     квалификаторами /BEFORE или /SINCE.

/BEFORE[=время]

     - квалификатор /BEFORE выбирает для распечатки только

     те файлы, которые датируются до указанного в квалифи-

     каторе времени. Можно указать либо абсолютное  время,

     либо комбинацию абсолютного и  дельта-времени.  Можно

     также использовать ключевые слова TODAY,  TOMORROW  и

     YESTERDAY.  Если  время  не  указано,  предполагается

     TODAY.

/BY_OWNER[=UIC]

     - квалификатор /BY_OWNER позволяет выбрать для распе-

     чатки только те файлы, UIC владельца которых совпада-

     ет с указанным в квалификаторе UIC. Если UIC не  ука-

     зан, используется UIC текущего процесса.

/CONFIRM

/NOCONFIRM

     - квалификатор /CONFIRM указывает, что  перед  распе-

     чаткой  каждого  файла,  команда   TYPE   запрашивает


                          - 168 -

                     00152-01 97 14-2


     подтверждения у пользователя, необходимо ли выполнять

     операцию над этим файлом. Возможны следующие ответы:

     1) YES, TRUE, 1 (утвердительные ответы);

     2) NO, FALSE, 0, <RET> (отрицательные ответы);

     3) QUTT, <CTRL/Z> (завершают обработку команды);

     4) ALL (обработка  команды продолжится, но подсказка

        выводиться не будет).

/CREATED

     - квалификатор /CREATED позволяет выбирать файлы  для

     распечатки, основываясь на дате их создания. Квалифи-

     катор /CREATED используется только с  квалификаторами

     /SINCE и /BEFORE. По умолчанию используется  квалифи-

     катор /CREATED.

/EXCLUDE=(спец_файла[,...])

     - квалификатор /EXCLUDE позволяет указать файлы,  ко-

     торые не должны распечатываться. В спецификации файла

     разрешается использовать символы обобщения.  Специфи-

     кация файла может  содержать  спецификацию  каталога.

     Имя устройства не включается в спецификацию файла.

/EXPIRED

     - квалификатор /EXPIRED позволяет выбирать файлы  для

     распечатки в соответствии с их датой истечения.  Ква-

     лификатор /EXPIRED используется только с квалификато-

     рами /BEFORE или /SINCE.

/MODIFIED

     - квалификатор /MODIFIED позволяет выбирать файлы для

     вывода на печать в соответствии с датой их  последней

     модификации.  Квалификатор   /MODIFIED   используется

     только с квалификаторами /BEFORE или /SINCE.


                          - 169 -

                     00152-01 97 14-2


/OUTPUT[=спец_файла]

/NOOUTPUT

     - квалификатор /OUTPUT определяет, куда команда  TYPE

     направляет свой вывод. Если квалификатор /OUTPUT опу-

     щен или задан без спецификации файла,  то  информация

     выводится в выводной поток, определяемый для текущего

     процесса по умолчанию или на  устройство  SYS$OUTPUT.

     Если спецификация файла задана не  полностью,  напри-

     мер, задан только каталог, то команда  использует  по

     умолчанию имя файла TYPE и тип файла LIS. В  специфи-

     кации файла не допустимы символы обобщения.  Квалифи-

     катор /NOOUTPUT подавляет вывод.

/PAGE

/NOPAGE

     - квалификатор /PAGE указывает, что по  команде  TYPE

     необходимо распечатать столько строк, сколько помеща-

     ется на экране. Если в командной строке указано  нес-

     колько файлов, то для того, чтобы отменить распечатку

     текущего файла и начать распечатку  следующего  файла

     используется управляющий символ   CTRL/Z.  В  команде

     TYPE нельзя одновременно указать квалификатор /PAGE и

     квалификатор /OUTPUT.

/SINCE[=время]

     - квалификатор /SINCE  позволяет  выбрать  только  те

     файлы, которые датированы до указанного времени. Мож-

     но указать либо абсолютное время, либо комбинацию аб-

     солютного времени и дельта-времени. Можно  также  ис-

     пользовать   ключевые   слова   TODAY,   TOMORROW   и

     YESTERDAY.  Если  время  не  указано,  предполагается

     TODAY.


                          - 170 -

                     00152-01 97 14-2


     Пример.

   > TYPE COMMON.DAT

     В этом примере по команде TYPE на терминале  распеча-

тывается файл COMMON.DAT.



     1.15. Команда UFD



     КомандA UFD создает  каталог  или  подкаталог  файлов

пользователя для томов с файловой структурой уровня 1  или

уровня 2 и помещает имя созданного каталога файлов пользо-

вателя (UFD) в главный каталог файлов тома (MFD). Том,  на

котором необходимо создать каталог, должен быть  иницииро-

ван и монтирован.

     Формат

UFD DDCU:[каталог]

где DD - имя  устройства;

    C  - номер контроллера;

    U  - номер устройства, на котором находится том;

    [каталог] - имя каталога или  подкаталога. Если созда-

ется подкаталог на томе с файловой  структурой  уровня  1,

система ОС РВ не сможет прочитать этот подкаталог.

     Командные квалификаторы

/PROTECTION=код

     - квалификатор /PROTECTION указывает защиту каталога.

     Если значение кода защиты указывается не  для  каждой

     категории   доступа    или  квалификатор  /PROTECTION

     опущен, то команда  использует  код  защиты  каталога

     предыдущего уровня, но без права доступа на  удаление

     для каждой неуказанной категории  пользователя.  Если

     создается каталог первого уровня, то код защиты ката-


                          - 171 -

                     00152-01 97 14-2


     лога соответствует коду зашиты каталога  MFD.  Защита

     для каталога MFD устанавливается командой INITIALIZE.

/UIC=[гр, чл]

     - квалификатор /UIC указывает UIC владельца  каталога

     или подкаталога. Если квалификатор /UIC не указан, то

     команда UFD  использует  UIC  владельца  каталога  по

     умолчанию, в котором будет создавать каталог.

      Пример.

> MOU DQB2:MYVOL

> UFD DQB2:[230,222]/PROTECTION=(SYSTEM:RWED,OWNER:RWED,-

>_ GROUP, WORLD)

     В этом примере команда MOU  монтирует  том  с  меткой

MYVOL. По команде UFD создается каталог с кодом  идентифи-

кации пользователя [230,222] и устанавливается защита  ка-

талога для всех категорий пользователей.

     Примечание. Команда PIP интерпретатора MCR  не  имеет

квалификатора /UF для создания каталогов.


                          - 172 -

                     00152-01 97 14-2


                2. Kосвенные командные файлы



     Мос вп допускает  использование  косвенных  командных

файлов, которые выполняют те же функции, что и в ОС РВ,  и

подразделяются на:

     - косвенные командные файлы для  обслуживающих  прог-

рамм, например для  построителя  задач  (ткв)  и  макроас-

семблера (мас);

     - косвенные командные файлы MCR.

     Косвенные командные файлы, которые должны быть выпол-

нены обслуживающими программами ОС РВ, идентичны в  систе-

мах МОС ВП и ОС РВ [8]. Косвенные командные файлы MCR, вы-

полняемые в системе МОС ВП могут содержать:

     - любые директивы процессора косвенных командных фай-

лов (подраздел 2.1);

     - любые команды MCR системы МОС ВП [8], (раздел 1).

     Косвенные командные файлы могут быть вложенными (под-

раздел 2.15.).

     Для того, чтобы выполнять косвенные командные  файлы,

необходимо установить  в  качестве  интерпретатора  команд

MCR.

     В процедуре регистрации в качестве интерпретатора ко-

манд должна быть установлена программа связи с  оператором

MCR [8].

     В систему МОС  ВП  введена  поддержка  косвенных  ко-

мандных файлов для того, чтобы выполнять  под  управлением

мос вп косвенные   командные   файлы, имевшиеся в  системе

ОС РВ.


                          - 173 -

                     00152-01 97 14-2


     2.1. Директивы процессора косвенных командных  файлов

системы МОС ВП



     В этом подразделе все директивы процессора  косвенных

командных файлов системы МОС ВП описаны в следующем поряд-

ке:

     - формат директивы;

     - функция, выполняемая директивой;

     - различие,  существующее    между   директивой  про-

цессора    косвенных   командных   файлов  в системах  мос

вп и ОС РВ.

     Директивы процессора косвенных командных файлов

/

     - закрыть все файлы данных и командные файлы  и  осу-

     ществить выход.

     Различий нет.

.метка:

     - определить метку.

     Различий нет.

!текст или ;текст

     - рассматривать введенный текст  KAK комментарий.

     Различий нет.

.ASK SSSSSS строка_текста

     - задать вопрос и ждать ответ.

     Различий нет.

.ASKN SSSSSS строка_текста

     - запросить ввод числового значения.

     В системе МОС ВП можно задать шестнадцатеричные  зна-

     чения (подраздел 2.8).




                          - 174 -

                     00152-01 97 14-2


.ASKN [нижн:верхн] SSSSSS строка_текста

     - запросить ввод числового значения, указав  допусти-

     мые пределы для вводимого значения.

     в системе МОС ВП можно задать шестнадцатеричные  зна-

     чения (см. Подраздел 2.8).

.ASKN [::умолчание] SSSSSS строка_текста

     - запросить ввод числового значения, указав  значение

     По умолчанию.

     В системе МОС ВП можно задать шестнадцатеричные  зна-

     чения (см. Подраздел 2.8).

.ASKN [нижн:верхн:умолчание] SSSSSS строка_текста

     - запросить ввод числового значения, указав для  вво-

     димого значения  допустимые  пределы  и  значение  по

     умолчанию.

     В системе МОС ВП можно задать шестнадцатеричные  зна-

     чения (см. Подраздел 2.8).

.ASKS SSSSSS строка_текста

     - запросить ввод строковой переменной.

     Различий нет.

.ASKS [нижн:верх] SSSSSS строка_текста

     - запросить ввод строковой переменной, указав  допус-

     тимое число символов для этой переменной.

     Различий нет.

     Примечание. В директивах ASKN квадратные скобки явля-

ются требованием синтаксиса. В других директивах  квадрат-

ные скобки указывают необязательные параметры.

.BEGIN

     - отметить начало блока BEGIN-END.

     Различий нет.




                          - 175 -

                     00152-01 97 14-2


.CHAIN спецификация_файла

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

     жить работу, используя косвенный командный файл, спе-

     цификация которого указана в директиве.

     Различий нет.

.CLOSE [#N]

     - закрыть вторичный файл.

     Различий нет.

.DATA [#N] строка_данных

     - записать строку данных во вторичный файл.

     Различий нет.

.DEC SSSSSS

     - уменьшить значение числовой переменной на 1.

     Различий нет.

.DELAY NNU

     - задержать выполнение косвенного командного файла на

     указанный период времени.

.DISABLE DATA [#N]

     - запретить передачу данных во вторичный фAйл.

     Различий нет.

.DISABLE DOLLARS

     - запретить возможность распознавания знака ($) (под-

     Раздел 2.12).

     В системе ОС РВ такой директивы нет.

.DISABLE ESCAPE

     - запретить использование символа CTRL/[ (ESC) в  от-

     вет на директивы .ASK, .ASKN, .ASKS.

     Различий нет.

.DISABLE GLOBAL

     - запретить определение глобальных символов.


                          - 176 -

                     00152-01 97 14-2


     Различий нет.

.DISABLE LOWERCASE

     - разрешить   режим  преобразования  малых   букв   в

     большие.

     Различий нет.

.DISABLE QUIET

     - подавить   эхо-сопровождение  командных  строк  ин-

     терпретатора команд.

     В системе МОС ВП игнорируется (подраздел 2.6).

.DISABLE SUBSTITUTION

     - запретить режим замены переменной.

     Различий нет.

.ENABLE DATA [#N]

     - разрешить режим передачи данных во вторичный файл.

     Различий нет.

.ENABLE DOLLARS

     - разрешить распознавание знака ($).

     В системе ОС РВ  нет  такой директивы  (см. Подраздел

     2.12).

.ENABLE ESCAPE

     - разрешить использование символа CTRL/[ (ESC) в  от-

     вет на директивы .ASK, .ASKN, .ASKS.

     Различий нет.

.еNABLE GLOBAL

     - разрешить определение глобальных символов ($SSSSS).

     Различий нет.

.ENABLE LOWERCASE

     - разрешить использование малых букв.

     Многократные символы табуляции и пробелы не  подавля-

     ются.


                          - 177 -

                     00152-01 97 14-2


.ENABLE QUIET

     - разрешает  эхо-сопровождение  командных  строк  ин-

     терпретатора команд.

     В системе МОС ВП игнорируется (см. Подраздел 2.6).

.ENABLE SUBSTITUTION

     - разрешить режим замены символа.

     Различий нет.

.еND

     - отметить конец блока BEGIN-END.

     Различий нет.

.еRASE GLOBAL

     - уничтожить определения глобальных символов.

     Система МОС ВП не уничтожает  постоянно  определенные

     глобальные символы.

.ERASE LOCAL

     - уничтожить определение локальных символов.

     Различий нет.

.EXIT [N]

     - завершить обработку блока  BEGIN-END  или  текущего

     командного файла и, необязательно, установить  значе-

     ние специальной переменной  <EXSTAT>.

     Различий нет.

.GOSUB метка

     - вызов подпрограммы.

     Различий нет.

.GOTO метка

     - переход на метку.

     Различий нет.

.IF SSSSSS выбор выражение

     - определить, удовлетворяет ли переменная одному из


                          - 178 -

                     00152-01 97 14-2


     нескольких возможных условий.

     Различий нет.

.IF[N]ACT TTTTTT

     - определить, является ли задача активной или нет.

     В системе МОС ВП в ответе всегда указывается, что за-

     дача не является активной (подраздел 2.3).

.IF[N]DF SSSSSS

     - установить, определена переменная или нет.

     Различий нет.

.IFF SSSSSS

     - определить, является ли значение  логической  пере-

     менной ложным.

     Различий нет.

.IF[N]INS TTTTTT

     - определить, задача установлена или нет.

     В системе МОС ВП в ответе всегда указывается, что за-

     дача уже установлена (см. Подраздел 2.3).

.IF[N]LOA DD:

     - определить, загружаемый драйвер загружен или нет.

     В системе МОС ВП в  ответе  всегда  указывается,  что

     драйвер загружен (подраздел 2.2).

.IFT SSSSSS

     - определить, является ли значение  логической  пере-

     менной истиным.

     Различий нет.

.INC SSSSSS

     - увеличить значение числовой переменной на 1.

     Различий нет.

.ONERR метка

     - при обнаружении ошибки перейти на метку.


                          - 179 -

                     00152-01 97 14-2


     В системе МОС ВП эта директива  эквивалентна  команде

     ON WARNING THEN .GOTO метка (подраздел 2.4).

.OPEN [#N] спецификация_файла

     - OTкрыть вторичный файл для вывода.

     Различий нет.

.OPENA [#N] спецификация_файла

     - открыть существующий фAйл и добавить в него данные.

     Различий нет.

.OPENR [#N] спецификация_файла

     - открыть файл для чтения по директиве .READ.

     Различий нет.

.PARSE строка управл_строка перем1...перемN

     - разбить строки на подстроки.

     Различий нет.

.PAUSE

     - предоставить паузу для действий пользователя.

     Различий нет.

.READ [#N] строковая_переменная

     - считать следующую запись и  присвоить  ее  значение

     указанной строковой переменной.

     Максимальная  длина   записи  в  ОС РВ - 132 байта, в

     Мос вп - 255 байтов.

.RETURN

     - осуществить возврат из подпрограммы.

     Различий нет.

.SETF SSSSSS

     - присвоить логической переменной ложное значение.

     Различий нет.

.SETN SSSSSS числ_выражение

     - присвоить переменной числовое значение.


                          - 180 -

                     00152-01 97 14-2


     В системе МОС ВП можно указать шестнадцатеричное зна-

     чение (см. Подраздел 2.8).

.SETS SSSSSS строковое выражение.

     - присвоить переменной значение строкового выражения.

     Различий нет.

.SETT SSSSSS

     - присвоить логической переменной истиное значение.

     Различий нет.

.STOP [N]

     - завершить обработку косвенного командного файла  и,

     необязательно, установить значение специальной  пере-

     менной <EXSTAT>.

     Различий нет.

.ТЕST SSSSSS

     - тестировать длину строковой переменной.

     Различий нет.

.TESTFILE спецификация_файла

     - Oпределить, существует ли указанный файл.

     Мос вп устанавливает специальные переменные  <FILSPC>

     И <FILERR>, но не <FILATR>.



     2.2. Запуск косвенного командного файла



     Запуск косвенного командного файла в системе  МОС  ВП

осуществляется также, как и в ОС РВ, T. Е. Вводом знака @,

за которым следует спецификация косвенного командного фай-

ла.

     Система МОС ВП предоставляет следующую дополнительную

возможность:

     - можно передать в косвенный командный файл  значения


                          - 181 -

                     00152-01 97 14-2


параметров (с P1 по P8).



     2.3. Директивы .IFINS, .IFACT и .IFLOA



     Директивы .IFINS и IFNINS, IFACT и .IFNACT, .IFLOA  и

.IFNLOA не определены в системе МОС ВП.

     Однако, система МОС ВП допускает  использование  этих

директив, полагая всегда, что:

     - задача установлена, т. е. условие директивы  .IFINS

всегда истинно, а .IFNINS - ложно;

     - задача не активна, т. е. условие  директивы  .IFACT

всегда ложно, а .IFNACT - истинно;

     - драйвер загружен,  т. е. условие  директивы  .IFLOA

всегда истинно, а .IFNLOA - ложно.

     В системе МОС ВП  не  требуется  загрузка  драйверов,

обычно они загружаются во время  инициации  системы.  Если

драйвер оказался незагруженным,  необходимо  обратиться  к

администратору системы.



     2.4. Директива .ONERR



     Директива       .ONERR       эквивалентна     команде

ON WARNING THEN .GOTO [8].



     2.5. Недопустимые директивы



     В системе МОС ВП  не  допустимы  следующие  директивы

процессора косвенных командных файлов системы ОС РВ:

     - .XQT и .WAIT;


                          - 182 -

                     00152-01 97 14-2


     - .ОNERR.



     2.5.1. Альтернатива директив .XQT и .WAIT



     Вместо директив .XQT и .WAIT в МОС ВП можно использо-

вать команду RUN.

     Вследствие того,  что  образы  выполняются  процессом

пользователя последовательно, в директиве .WAIT нет  необ-

ходимости; один образ должен завершиться до того, как нач-

нется выполнение другого образа.

     Если команда RUN используется для создания подпроцес-

са или отсоединенного процесса, то синхронизация  выполне-

ния образа из косвенного командного файла не имеет смысла.



     2.5.2. Альтернатива директивы .ONERR



     Оператор ON, описанный в [8], может  быть использован

вместо директивы .ONERR. Однако, оператор ON  обеспечивает

больше возможностей при обработке  ошибок,  чем  директива

.ONERR.

     Процессор косвенного командного файла не  накладывает

ограничений на обработку ошибок,  связанных  с  директивой

.ONERR.



     2.6. Ключи



     В системе ОС РВ существует три ключа, используемых со

спецификацией косвенного командного файла:

     - /TR и /NOTR;

     - /DE и /NODE;


                          - 183 -

                     00152-01 97 14-2


     - /MC и /NOMC.

     В ОС РВ значениями по умолчанию для этих ключей явля-

ются /NOTR, /NODE и /MC, т. е. косвенные  командные  файлы

не отслеживаются во время выполнения, не  удаляются  после

обработки и все  команды,  содержащиеся  в  косвенном  ко-

мандном файле, обрабатывает интерпретатор   команд  MCR.

     В системе МОС ВП используются значения  этих  ключей,

принятые по умолчанию в системе ОС  РВ.  Однако,  допустим

такж  клю  /DE.  По  умолчанию  используется  ключ  /-DE

(/NODE), т. е. командные файлы не удаляются после обработ-

ки.



     2.7. Специальные переменные



     В системе МОС ВП допустимы все  специальные  перемен-

ные, определенные в ОС РВ. Использование режима замены пе-

ременных для специальных переменных и переменных,  опреде-

ленных пользователем, одинаково в обеих системах.

     В этом подразделе приводится описание специальных пе-

ременных в следующем порядке:

     - специальная переменная;

     - значение специальной переменной;

     - дополнительная информация,  относящаяся  к  системе

МОС ВП.

     Специальные переменные

<ALPHAN>

     - принимает истинное значение, если последняя строка,

     введенная в ответ на директиву .ASKS или  проверяемая

     директивой .TEST, содержит только  алфавитно-цифровые

     символы.


                          - 184 -

                     00152-01 97 14-2

      
<CLI>

     - возвращает имя  текущего  интерпретатора  команд  в

     символьном коде.

     В системе МОС ВП значением символа <CLI> всегда явля-

     ется MCR.

<DATA>

     - содержит текущую дату в формате DD-MMM-YYYY.

<DEFAUL>

     - принимает истинное значение, если в качестве ответа

     на последнюю директиву .ASKN было использовано значе-

     ние по умолчанию.

<ESCAPE>

     - принимает истинное значение, если ответом  на  пос-

     ледний вопрос  является  управляющий   символ  CTRL/[

     (ESC).

     <еXSTAT>

     - эквивалентна $SEVERITY.

<LIBUIC>

     - библиотечный UIC непривилегированной задачи. В сис-

     теме МОС ВП значением символа <LIBUIC> всегда являет-

     ся [1,54].

<MAPPED>

     - имеет истинное значение, если  система,  в  которой

     выполняется образ, имеет диспетчер памяти,  и  ложное

     значение, если система без диспетчера памяти.

     В системе МОС ВП - всегда истинное значение.

<MEMSIZ>

     - содержит размер памяти в ксловах.

     В системе МОС ВП значением  символа  <MEMSIZ>  всегда

     является 32 кслов.


                          - 185 -

                     00152-01 97 14-2


<RAD50>

     - принимает истинное значение, если последняя строка,

     введенная в ответ на директиву .ASKS или  проверяемая

     директивой .TEST, содержит только символы в RAD50.

<STRLEN>

     - указывает значение длины строки, введенной в  ответ

     на последнюю директиву .ASKS, или проверяемой  дирек-

     тивой .TEST.

<SYDISK>

     - содержит мнемонику сисTEMного устройства.

     В системе МОС ВП значением символа  <SYSDISK>  всегда

     является SY.

<SYSTEM>

     - содержит восьмеричное число, представляющее  опера-

     ционную систему.

     В системе МОС ВП символ <SYSTEM> всегда имеет  значе-

     ние 5, в системе ОС РВ <SYSTEM> имеет значение,  рав-

     ное 1. Символ <SYSTEM> используется, чтобы  разрешить

     выполнение одного и того же командного файла в разных

     операционных системах.

<SYSUIC>

     - принимает значение системного UIC.

     В системе МОС ВП символ <SYSUIC> всегда имеет  значе-

     ние [1,54].

<SYUNIT>

     - содержит номер системного устройства.

     В системе МОС ВП символ <SYUNIT> всегда имеет  значе-

     ние 0.

<тIME>

     - содержит TEKущее время в формате HH:MM:SS.


                          - 186 -

                     00152-01 97 14-2


<UIC>

     - указывает текущий каталог.

     В системе МОС ВП символ <UIC> содержит текущий  ката-

     лог в формате, допустимом в этой системе.



     2.8. Числовые переменные



     В системе МОС ВП числовые переменные определяются ди-

рективами .SETN и .ASKN. Значением числовой переменной мо-

жет  быть  восьмеричное  (по  умолчанию),   десятичное   и

шестнадцатеричное число.

     Тип переменной можно указать одним из следующих  спо-

собов:

     - используя соглашения, принятые в системе ОС  РВ,  а

именно: для задания восьмеричного числа используется  знак

#, стоящий впереди числа.  Десятичное  число  определяется

точкой, стоящей после числа. Если ни знак #, ни  точка  не

указаны с числом, TO предполагается, что значение  восьме-

ричное;

     - используя обозначения для указания основания числа,

принятые в МОС ВП. Основание числа задается в формате %RN.

знак % является требованием синтаксиса; R указывает  осно-

вание числа  (о  -  восьмеричное,  D  -  десятичное,  х  -

шестнадцатеричное) и N - само число.

     Независимо от того, какой метод используется при  за-

дании основания числа, система сохраняет  и  распечатывает

значения как числовые строки с заданным основанием.

     Примеры:

1. > .SETN A 22

2. > .SETN B %X22


                          - 187 -

                     00152-01 97 14-2


3. > .SETN C 22.

4. > .SETN D %007

5. > SHOW SYMBOLS/ALL

    A=22

    B=22

    C=22

    D=7

     Нельзя определять основание числовой переменной,  ис-

пользуя команду SHOW SYMBOL.



     2.9. Таблица меток



     В системе МОС ВП, как и в ОС РВ, любая метка, опреде-

ленная как метка прямого  доступа  (в  этом  случае  метка

должна быть одна в строке), заносится в таблицу меток, тем

самым позволяя интерпретатору команд, в  случае  ссылки  к

этой метке, быстро найти ее.

     Метки, определенные в командной строке, которая также

содержит команду  или любой другой текст, не помещаются  в

таблицу меток. Однако  такие метки могут быть указаны  как

место, куда должно быть передано управление  в  директивах

.GOTO и .GOSUB.

     Интерпретатор команд MCR устанавливает новую  таблицу

меток для каждого уровня косвенных командных файлов. Когда

вложенный косвенный командный файл завершается, его табли-

ца меток обнуляется для следующего  косвенного  командного

файла, находящегося на более высоком уровне вложения. Сле-

довательно, метки, определенные в косвенном командном фай-

ле, должны быть единственными в этом файле. Метки, к кото-

рым обращаются по директиве .GOTO и .GOSUB не помещаются в


                          - 188 -

                     00152-01 97 14-2


таблицу меток. Таблица меток содержит только метки, встре-

чающиеся в потоке выполнения косвенного  командного  файла

(метки прямого доступа).



     2.10. Логические имена SYS$INPUT и SYS$COMMAND



     Для двух постоянных файлов каждого  процесса  система

мос вп назначает логические имена SYS$INPUT и SYS$COMMAND.

     SYS$INPUT   определяет основной источник ввода команд

для процесса. Если пользователь работает  в  интерактивном

режиме, то логическое имя SYS$INPUT назначается  терминалу

пользователя, при выполнении косвенного  командного  файлA

логическое имя SYS$INPUT назначается этому файлу.

     SYS$COMMAND   определяет вторичный источник ввода для

процесса, используемый во время выполнения косвенного  ко-

мандного файла. Логическое имя SYS$COMMAND всегда остается

назначенным терминалу. Таким образом,  пользователь  может

прервать выполнение косвенного  командного  файла,  издать

ряд команд, используя логическое имя SYS$COMMAND и продол-

жить выполнение командного файла, не изменяя SYS$INPUT.

     Все команды MCR имеют различные потоки для  SYS$INPUT

и SYS$OUTPUT. Однако, для совместимости с ОС РВ,  обслужи-

вающие программы ОС РВ, такие как PIP, EDI,  TKB  и  любые

другие программы, при вызове которых указывается имя файла

образа, имеют SYS$INPUT, назначенный к  SYS$COMMAND, т. е.

попытка чтения с  устройства  TI  (SYS$INPUT)  в  действи-

тельности приводит к чтению  с  устройства,  определяемому

логическим именем SYS$COMMAND.  Это  назначение  позволяет

косвенному командному файлу получить информацию (например,

при редактировании) с терминала, как это осуществляется  в


                          - 189 -

                     00152-01 97 14-2


ос рв.

     В случае, когда выполняющийся образ должен  читать  с

устройства, определяемого  логическим   именем   SYS$INPUT

(т. е. когда он предполагает чтение записей из  косвенного

командного файла), можно использовать команду RUN для  вы-

зова образа в косвенном командном файле.

     Пример.

> RUN SYS$SYSTEM:PIP



     2.11. Директива .ASKN



     При выполнении директивы .ASKN система МОС ВП печата-

ет за строкой текста, запрашивающей ввод значения, основа-

ние значения по умолчанию. Основание, принятое по  умолча-

нию, распечатывается в виде: [O] -  означает  восьмеричное

основание, [D] - означает десятичное основание, [H] -  оз-

начает шестнадцатеричное основание. Ответ, соответственно,

может быть восьмеричным, десятичным или  шестнадцатеричным

числом. Чтобы отвергнуть основание по умолчанию, можно за-

дать число в формате, принятом в ОС РВ, т. е. восьмеричное

число  указывается  знаком #, стоящим впереди числа, деся-

тичное число указывается точкой, стоящей после числа, либо

можно задать основание числа, как это принято в МОС ВП - в

виде %RN.

     В качестве ответа на запрос может быть  введено   как

символьное имя переменной, так и выражение. Если основание

по умолчанию  шестнадцатеричное, и  пользователь указывает

шестнадцатеричное значение, начинающееся с букв  A - F, то

чтобы отличить число от символьного имени  переменной  не-

обходимо указать ведущий нуль, или задать основание числа


                          - 190 -

                     00152-01 97 14-2


- %Х.



     2.12. Директива .ENABLE DOLLARS



     В системе ОС РВ косвенные командные файлы  могут  со-

держать любые команды и директивы. В системе МОС  ВП  кос-

венные командные файлы могут содержать команды,  директивы

и данные. Например, косвенный командный файл может  содер-

жать команду запуска программы, за которой следуют данные,

которые должны быть  переданы  этой  программе.

     Директива .ENABLE DOLLARS означает, что косвенный ко-

мандный файл, в котором она указана, не пользуется возмож-

ностью интерпретатора команд MCR в системе МОС ВП отличать

команды и директивы от данных.

     ИнтерпрEтатор команд отличаET команды и директивы  от

данных по знаку $.

     Если разрешено распознавание символа $, то каждой ко-

манде и директиве в косвенном командном файле должен пред-

шествовать знак $, например,  $RUN.  ИнтерпрEтатор  команд

использует знак $, чтобы  препятствовать  пользовательским

программам считывать области, не  содержащие  данные,  или

препятствовать передаче данных, которые остались  не  счи-

танными   после   завершения   пользовательской программы.

если пользовательская программа не считала все  свои  дан-

ные, то интерпретатор команд отбрасывает оставшиеся данные

и начинает обработку следующей команды или директивы.

     Пример.

.ENABLE DOLLARS

$TIM

$RUN MYPROG


                          - 191 -

                     00152-01 97 14-2


данные, которые должны быть переданы программе MYPROG

.

.

.

$TIM

.DISABLE DOLLARS

     При выполнении косвенного командного файла  предпола-

гается, по умолчанию, что распознавание знака $ запрещено.



     2.13. Директива .PAUSE



     Функции директивы .PAUSE в системах МОС ВП  и  ОС  РВ

идентичны. Эта директива позволяет пользователю приостано-

вить обработку косвенного командного файла и  выполнить  в

процессе пользователя другие образы и обслуживающие  прог-

раммы. Во время паузы логическое имя SYS$INPUT,  назначен-

ное процессу, эквивалентно логическому имени  SYS$COMMAND,

так что образы, выполняемые во  время  паузы,  могут  осу-

ществлять ввод с терминала. Чтобы продолжить  после  паузы

выполнение косвенного командного  файла,  необходимо  дать

команду CONTINUE.

     Eсли во время паузы выполнение образа  было  прервано

вводом управляющего символа CTRL/Y или CTRL/C и затем была

издана команда CONTINUE, то пауза отменяется.

     Когда выполнение образа  завершается,  возобновляется

работа косвенного командного файла.

     Если для завершения образа была издана команда  STOP,

то интерпретатор команд закрывает косвенный командный файл

и переходит в интерактивный режим ввода команд.




                          - 192 -

                     00152-01 97 14-2


     2.14. Директива .DELAY



     В системе МОС ВП можно приостановить  обработку  кос-

венного командного файла на указанное время, причем  время

может быть задано в тиках, секундах или минутах, но  не  в

часах. Чтобы приостановить выполнение косвенного командно-

го файла на час или больше, следует указать требуемое вре-

мя в минутах.

     Пример.

.DELAY 90M

     Эта директива приостанавливает выполнение косвенного

командного файла на 1 час 30 мин.

     Ввод управляющего символа СTRL/Y в  то  время,  когда

была приостановлена работа  косвенного  командного  файла,

позволяет либо возобновлять работу  косвенного  командного

файла по команде CONTINUE, либо завершить его  по  команде

STOP.



     2.15. Вложенные KOсвенные командные файлы



     Интерпретатор команд MCR системы МОС ВП допускает че-

тыре уровня вложения косвенных  командных  файлов,  причем

каждый из командных файлов может иметь до восьми  подпрог-

рамм, (т. е. Может содержать до 8 директив  .GOSUB).  Если

число подпрограмм в косвенных командных файлах  меньше  8,

то уровень вложения косвенных командных файлов может  быть

увеличен, и наоборот.

     Число вложенных косвенных командных файлов для обслу-

живающих  программ  ОС РВ  (например, TKB), выполняемых  в

мос вп  зависит  от  конкретной  программы,  но  такое же,


                          - 193 -

                     00152-01 97 14-2


как в ОС РВ.



     2.16. Лексические функции



     В системе МОС ВП имеется набор  лексических  функций,

позволяющих получить информацию о символьных строках и ат-

рибутах текущего процесса. Лексические функции  можно  ис-

пользовать в директивах MCR, в которых в качестве парамет-

ров допустимы выражения, например, в  директивах  .SETN  и

.SETS.

     Более подробная информация о лексических функциях со-

держится в [1].

     Общий формат лексической функции

'F$имя_функции([арг,...])

где 'F - означает, что далее следует имя лексическOй функ-

ции. Знак апостраф (') - требование синтаксиса;

    имя_функции - указывает саму функцию. Все имена  функ-

ций являются ключевыми словами.  Имя  функции  может  быть

сокращено, при условии, чтобы  оно  оставалось  однозначно

определенным;

    ( ) - означает, что аргументы  функции  должны  заклю-

чаться в круглые скобки. Круглые скобки необходимо  указы-

вать всегда, даже если функция не имеет аргументов;

    арг,.... - указывает аргументы  для  лексической функ-

ции. Можно указывать аргументы, используя выражения,  име-

на переменных, числовые или строковые значения,  заключен-

ные в кавычки. Лексическая функция не может быть указана в

качестве аргумента для  другой  лексической  функции.  Ин-

терпретатор команд предполагает, что строки,  начинающиеся

с алфавитно-цифровых символов, не заключенных  в  кавычки,


                          - 194 -

                     00152-01 97 14-2


представляют собой имена переменных.

     В языке команд MCR лексические функции  предназначены

для использования в директивах .SETX. Использование лекси-

ческих функций в  директивах  .IF  может  привести  к  не-

предсказуемым результатам. DCL обеспечивает  более  полное

использование лексических функций, чем в MCR.

     Лексические функции

'F$DIRECTORY()

     - имя текущего каталога по умолчанию

'F$EXTRACT(позиция,длина,строка)

     - подстрока указанной строки заданной длины,  начиная

     с указанной позиции в строке

'F$LENGTH(строка)

     - длина указанной строки

'F$LOCATE(подстрока,строка)

     - начальная позиция указанной подстроки в строке  или

     длина строки, если подстрока не найдена

'F$LOGICAL(логическое имя)
                                        
     - эквивалентное имя для указанного логического  имени

     (первое соответствие, найденное  во  время  просмотра

     таблицы логических имен процесса,  группы  или  общих

     логических имен (поиск производится в  указанном  по-

     рядке) или логическое имя, если соответствие не  най-

     дено

'F$MESSAGE(код_сообщения)

     - строка сообщения, соответствующая данному коду  со-

     общения

'F$MODE()

     - интерактивный или пакетный режим




                          - 195 -

                     00152-01 97 14-2


'F$PROCESS()

     - имя текущего процесса

'F$TIME()

     - текущая дата и время дня

'F$USER()

     - текущий код идентификации пользователя (UIC)

'F$VERIFY()

     - истинное значение TRUE (т.е. числовое значение  1),

     если имела  место  проверка;  ложное  значение  FALSE

     (т.е. числовое значение 0), если проверки не было.



     2.17. Особенности  выполнения   косвенных   командных

файлов в МОС ВП



     В этом подразделе приводятся  некоторые  замечания  о

работе косвенных командных файлов в системе МОС ВП:

     - подобно системе ОС РВ, при   завершении   обработки

косвенного командного файла закрываются все файлы данных и

устанавливается  интерактивный  режим  ввода команд  т. е.

MCR печатает свою подсказку для ввода следующей команды;

     - при завершении обработки косвенного командного фай-

ла и переходе в интерактивный режим работы,  интерпретатор

команд очищает таблицу глобальных символов;

     - если разрешено использование малых букв, то  ответы

на директиву .ASKS обрабатываются как  символьные  строки,

при этом производится преобразование введенных строк.  Та-

ким образом, знаки табуляции или пробелы,  содержащиеся  в

строке, не подавляются;

     - в системе МОС ВП  нельзя  завершить  косвенный  ко-

мандный файл, используя в качестве  ответа  для  директив,


                          - 196 -

                     00152-01 97 14-2


запрашивающих  ввод  управляющий  символ  CTRL/Z.  Однако,

обработка косвенного командного файла может быть прекраще-

на в любоE время вводом управляющих  символов  CTRL/Y  или

CTRL/C.


                          - 197 -

                     00152-01 97 14-2


                3. Сообщения об ошибках



     Если  пользователь  вводит  команду,  предназначенную

программе связи с оператором, некорректно, то  MCR  издает

сообщение об ошибке в стандартном  формате,  принятом  для

всех сообщений в системе МОС ВП. Формат этих  сообщений  в

мос вп не совпадает с форматом сообщений об ошибках  в  ос

рв.

     В системе МОС ВП все сообщения выводятся в  следующем

общем формате:

     %XXX-L-код, текст

где XXX - мнемоника программы операционной системы, издав-

шей сообщение;

    L - индикатор сообщения: S - успешное завершение; I  -

информационное сообщение; W - предупреждающее   сообщение;

Е - ошибка; F - фатальная ошибка;

    код - сокращенный  код, используемый для текста  сооб-

щения, за которым следует сам текст сообщения;

    текст - текст сообщения.

     Пример.

%MCR-W-MAXPARM, MAXIMUM_PARAMETER COUNT EXCEEDED

     Все системные сообщения об ошибках и действия,  кото-

рые должны быть предприняты для  устранения  этих  ошибок,

описаны в [9].

     Обслуживающие программы системы ОС РВ (например,  PIP

и TKB), работающие под управлением МОС ВП,  издают  те  же

сообщения, что и в ОС РВ.


                          - 198 -

                     00152-01 97 14-2


                                       Приложение 1

                        Привилегии



     В данном приложении приводится список привилегий, оп-

ределяемых системой МОС ВП.

[NO]ACNT        - разрешает/запрещает  процессу  создавать

                файл счетов сообщений для создаваемых про-

                цессов.

[NO]ALLSPOOL    - разрешает/запрещает  процессу  распреде-

                лять устройства спула.

[NO]ALTPRI      - разрешает/запрещает процессу  устанавли-

                вать значения приоритета.

[NO]BUGCHK      - разрешает/запрещает процессу   выполнять

                регистрацию ошибок  внутренней  диагности-

                ческой проверки.

[NO]BYPASS      - разрешает/запрещает  процессу  игнориро-

                вать код защиты UIC для доступа к файлам.

[NO]CMEXEC      - разрешает/запрещает  процессу   изменить

                режим на режим управления.

[NO]CMKRNL      - разрешает/запрещает  процессу   изменить

                режим ядра и изменить UIC.

[NO]DETACH      - разрешает/запрещает процессу создать от-

                соединенные процессы.

[NO]DIAGNOSE    - разрешает/запрещает  процессу   издавать

                диагностические запросы ввода-вывода.

[NO]EXQUOTA     - разрешает/запрещает  процессу  превысить

                квоту ресурсов .

[NO]GROUP       - разрешает/запрещает  процессу  управлять

                другими процессами в той же самой группе.

[NO]GRPNAM      - разрешает/запрещает  процессу  поместить


                          - 199 -

                     00152-01 97 14-2


                имена в таблицу групповых логических имен.

[NO]LOG_IO      -  разрешает/запрещает  процессу  издавать

                логические    запросы    ввода-вывода    к

                устройству.

[NO]MOUNT       - разрешает/запрешает  процессу  выполнить

                программу системного  обслуживания   MOUNT

                (монтировать том).

[NO]NETMBX      - разрешает/запрещает процессу создать ус-

                тройство сети.

[NO]OPER        - разрешает/запрещает процессу иметь  при-

                велегии оператора.

[NO]PFNMP       - разрешает/запрещает   процессу   отобра-

                жаться в указанные физические страницы.

[NO]PHY_IO      - разрешает/запрещает  процессу   издавать

                запрос   физического    ввода-вывода    на

                устройство.

[NO]PRMCEB      - разрешает/запрещает  процессу  создавать

                постоянные кластеры общих флагов событий.

[NO]PRMGBL      - разрешает/запрещает  процессу  создавать

                постоянные глобальные секции.

[NO]PRMMBX      - разрешает/запрещает  процессу  создавать

                постоянные почтовые ящики.

[NO]PSWAPM      - разрешает/запрещает  процессу   изменять

                свой режим обмена.

[NO]SETPRV      - разрешает/запрещает процессу  устанавли-

                вать другие привилегии процесса.

[NO]SYSGBL      - разрешает/запрещает  процессу  создавать

                системные глобальные секции.

[NO]SYSLCK      - разрешает/запрещает  запрашивать  блоки-

                ровку общесистемных ресурсов.


                          - 200 -

                     00152-01 97 14-2


[NO]SYSNAM      - разрешает/запрещает  процессу   помещать

                имена в таблицу системных логических имен.

[NO]SYSPRV      - разрешает/запрещает  процессу  применять

                системный статус для доступа к файлу.

[NO]TMPMBX      - разрешает/запрещает  процессу  создавать

                временные почтовые ящики.

[NO]VOLPRO      - разрешает/запрещает  процессу  отвергать

                защиту тома.

[NO]WORLD       - разрешает/запрещает  процессу  управлять

                всеми другими процессами в системе.




                          - 201 -

                     00152-01 97 14-2


                                     Приложение 2

                  Квоты ресурсов и лимиты



     В этом приложении приводится список квот  ресурсов  и

лимитов, определенных системой MOC ВП.

ASTLM      - общее число отложенных операций AST плюс пла-

           нируемые запросы пробуждения.

BIOLM      - общее число незавершенных буферизованных опе-

           раций ввода-вывода.

BYTLM      - квота общего буферного пространства для неза-

           вершенных операций.

CPUTIME    - лимит времени процесса по умолчанию в  милли-

           секундах (0 означает бесконечно много).

DIOLM      - общий лимит  незавершенного прямого ввода-вы-

           вода.

ENQLM      - лимит постановки в очередь.

FILLM      - квота  общего  числа  незавершенных  открытых

           файлов.

PGFLQVOTA  - общее число страниц, находящихся в  использо-

           вании в системном файле обмена страниц.

PRCLM      - общее число незавершенных подпроцессов.

TQELM      - общее число незавершенных записей в очереди к

           таймеру плюс временные  кластеры  общих  флагов

           событий.

WSDEFAULT  - размер рабочего поля по умолчанию.

WSEXTENT   - квота расширения рабочего набора.

WSQUOTA    - максимальный размер рабочего набора.


                          - 202 -

                     00152-01 97 14-2


             Перечень ссылочных документов



     1. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

00152-01 92 19-1

     2. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

00152-01 92 19-2

     3. Операционная система МОС ВП.  Подсистема  управле-

ния.  Диалоговый командный язык. Руководство пользователя.

00152-01 92 19-3

     4. Операционная система МОС ВП.  Подсистема  управле-

ния.  Диалоговый командный язык. Руководство пользователя.

00152-01 92 19-4

     5. Операционная система МОС ВП. Подсистема редактиро-

вания и форматирования.  Текстовый  форматер.  Руководство

программиста. 00152-01 33 08

     6. Операционная система МОС ВП.  Подсистема  управле-

ния. Программа определения команд.  Руководство  пользова-

теля. 00152-01 92 09

     7. Операционная система ОС РВ 2.1.  Том  4.  Создание

задач. Книга 1. Программа  построения  задач.  Руководство

программиста.  072.209 33 14

     8. Операционная система  МОС  ВП.  Подсистема  режима

совместимости с ОС РВ. Справочный материал.

00152-01 97 14-1

     9. Операционная система МОС ВП.  Подсистема  управле-

ния. Сообщения системы и действия по восстановлению. Спра-

вочный материал. 00152-01 97 02-1


                          - 202К -

                   2б.00152-01 97 14-2


                Перечень ссылочных документов



     1. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

2б.00152-01 92 19-1

     2. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

2б.00152-01 92 19-2

     3. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

2б.00152-01 92 19-3

     4. Операционная система МОС ВП.  Подсистема  управле-

ния. Диалоговый командный язык.  Руководство пользователя.

2б.00152-01 92 19-4

     5. Операционная система  МОС  ВП.  Подсистема  редак-

тирования  и  форматирования.  Текстовый  форматер.  Руко-

водство программиста. 2б.00152-01 33 08

     6. Операционная система МОС ВП.  Подсистема  управле-

ния. Программа определения команд. Руководство пользовате-

ля. 2б.00152-01 92 09

     7. Операционная система  ОС РВ 2.1.  Том 4.  Создание

задач. Книга 1. Программа  построения  задач.  Руководство

программиста. 2б4.072.209 33 14

     8. Операционная система   МОС ВП.  Подсистема  режима

совместимости с ОС РВ. Справочный материал.

2б.00152-01 97 14-1

     9. Операционная система МОС ВП.  Подсистема  управле-

ния. Сообщения системы и действия по восстановлению. Спра-

вочный материал. 2б.00152-01 97 02-1



   
                       - 203K -  
  
                    00152-01 97 14-2
                                                      
   ------------------------------------------------------------
   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
  
                                
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!