60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88 60459420J VSOS Version 2 Reference Manual Vol Nov88

60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88 manual pdf -FilePursuit

60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88 60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88

User Manual: 60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88

Open the PDF directly: View PDF PDF.
Page Count: 456

Download60459420J_VSOS_Version_2_Reference_Manual_Vol_2_Nov88 60459420J VSOS Version 2 Reference Manual Vol Nov88
Open PDF In BrowserView PDF
CD C® VSOS VERSION 2 .

/

FOR USE WITH
CYBER 200 SERIES
COMPUTER SYSTEM·

Volume 2 of 2

REFERENCE MANUAL

~~

CONT~OL

DATA

60459420

CD C® VSOS VERSION 2

FOR USE WITH
CYBER 200 SERIES
COMPUTER SYSTEM

Volume 2 of 2

REFERENCE MANUAL

€:~

CONT~OL

DATA

60459420

REVISION RECORD

DESCRIPTION

REVISION
A

Manual released.

(04-16-82)
B

Manual revised to reflect VSOS 2.0 corrective code release at PSR level 575.

(10-15-82)
C

(07-29-83)

D

(03-30-84)
E

(10-31-85)

F

(04-18-86)
G

(12-05-86)
H

Manual revised to reflect VSOS 2.1 at PSR level 592. New features documented include support of
on-line magnetic tapes, IQM performance improvements, and channel utilization statistics. This
edition obsoletes all previous editions. Due to extensive reorganization, change bars and dots are
not being used at this revision and all pages reflect the current revision level.
Manual revised to reflect VSOS 2.1.5 at PSR level 607. Changes include documentation of adding the
job name to the account record and various other technical and editing changes.
Manual revised to reflect VSOS 2.2 at PSR level 644. Changes include documentation of dynamic file
allocation, project tracking, multiple batch jobs per user and various other technical and editing
changes. Due to extensive changes, change bars and dots are not used and all pages reflect the
latest revision level. This edition obsoletes all previous editions.
Manual revised to reflect VSOS 2.2.5 at PSR level 654. Changes have been made to descriptions of
I/O connectors for explicit and implicit I/O and the explicit I/O system message has been updated.
Various other technical and editing changes have also been made.
Manual revised to reflect VSOS 2.3 at PSR level 670.
been made.

Various technical and editing changes have

Manual revised to reflect VSOS 2.3.5 at PSR level 690.

( 10-23-87)

Publication No.
60459420

REVISION LETTERS I, 0, Q, S, X AND Z ARE NOT USED.
Address comments concerning this
manual to:

1982, 1983, 1984, 1985, 1986, 1987
by Control Data Corporation
All rights reserved
Printed in the United States of America
©

2

Control Data Corporation
Technology and Publications Division
4201 North Lexington Avenue
St. Paul, Minnesota
55126-6198
or use Comment Sheet in the back of
this manual.

LIST OF EFFECTIVE PAGES

New features, as well as changes, deletions, and additions to information in this manual, are indicated by bars in the margins or by a dot
near the page number if the entire page is affected. A bar by the page number indicates pagination rather than content has changed.

PAGE

REV

Front Cover
Title Page

-

2
3
4
5
6
7
8
9
10
11
12
1-1
1-2
1-3
1-4
1-5
1-6
1-7
2-1
2-2
2-3
2-4
2-5
2-6
2-7
2-8
2-8.1/2-8.2
2-9
2-10
2-11
2-12
2-13
2-14
2-15
2-16
2-17
2-18
2-19
2-20
2-20.1/2-20.2
2-21
2-22
2-23
2-24
2-25
2-26
2-27
2-28
2-29
2-30
2-31
2-32
2-33
2-34
3-1
3-2
3-3

H
H
H
F

60459420 H

E
H
H
G
H
H

E
F
F
F
G
H
H
F
F
H
H
H
H
H
H
H
H

E
F

E
E
E
E
H

E
E
H
G
F
G
G
G

E
E
G
G

E
G
E
F

E
E
E
F
F
H
F

PAGE
3-4
3-5
4-1
4-2
4-3
4-4
4-5
4-6
4-7
4-8
4-9
4-10
4-11
4-12
4-13
4-14
4-15
4-16
5-1
5-2
5-3
5-4
5-5
5-6
5-7
5-8
5-9
5-10
5-11
5-12
5-13
5-14
5-15
5-16
5-17
5-18
5-19
5-20
5-21
5-22
5-23
5-24
5-25
5-26
5-27
5-28
5-29
5-30
5-31
5-32
5-33
5-34
5-35
5-36
5-37
5-38
5-39
5-40
5-41

REV
F
F

E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
E
G
F
F
F
F
F
F

E
G
H
F
F

E
G
G
G
F
F
F
E
F
H

E
E
E
F

E
E

E
F
G
G
H
H
H
G

E
F
F

E
E

PAGE
5-42
5-43
5-44
5-45
5-46
5-47
5-48
5-49
5-50
5-51
5-52
5-53
5-54
5-55
5-56
5-57
5-58
5-59
5-60
5-61
5-62
5-63
5-64
5-65
5-66
5-67
5-68
5-69
5-70
5-71
5-72
5-73
5-74
5-75
5-76
5-77
5-78
5-79
5-80
5-81
5-82
5-83
5-84
5-85
5-86
5-87
5-88
5-89
5-90
5-91
5-92
5-93
5-94
5-95
5-96
5-97
5-98
5-99
5-100

REV
E
H
H
H
H
F
F

E
F
H
E
H
H

E
H

E
H

E
E
E
E
E
E
F
F

E
E
H

E
E
F

E
E
E
E
E
E
F

E
E
E

E
E
E
E

E
E
E
E
H
E

E
E
H
H

E
E
H
H

PAGE
5-101
5-102
5-102.1/
5-102.2
5-103
5-104
5-105
5-106
5-107
5-108
5-109
5-110
5-111
5-112
5-113
5-114
5-115
5-116
5-117
5-118
5-119
5-120
5-121
5-122
5-123
5-124
5-124.1
5-124.2
5-125
5-126
5-126.1/
5-126.2
5-127
5-128
5-129
5-130
5-131
5-132
5-133
5-134
5-135
5-136
5-137
5-138
5-139
5-140
5-141
5-142
5-143
5-144
5-145
5-146
5-147
5-148
5-149
5-150
5-151
5-152
5-153

REV
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
F

E
H
H
H

E
F
H
F
H
F
H
F
G

E
F

E
F

E
E
F

E
E
E
F
H

PAGE
5-154
5-155
5-156
5-157
5-158
5-159
5-160
5-160.1
5-160.2
5-161
5-162
5-163
5-164
5-165
5-166
5-167
5-168
5-169
5-170
5-171
5-172
5-173
5-174
5-175
5-176
5-177
5-178
5-179
5-180
5-181
5-182
5-183
5-184
5-185
5-186
5-187
5-188
5-189
5-190
5-191
5-192
5-193
5-194
5-195
5-196
5-197
5-198
5-199
5-200
5-201
5-202
5-203
5-204
5-205
5-206
5-207
5-208
5-209
5-210

REV
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
H
F

E
F
E

E
E
E
E
F
E
E
E
E
E
E
G

E
E
E
E
E
F
H
H
E
H
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F

3

PAGE

REV

5-211
5-212
5-213
5-214
5-215
6-1
6-2
6-3
6-4
6-5
6-6
7-1
7-2
7-3
8-1
8-2
8-3
8-4
8-5
8-6
8-7
8-8
8-9
8-10
8-11
8-12
8-13
8-14
8-15
8-16
8-17
8-18
8-19
8-20
8-20.1/8-20.2
8-21
8-22
8-23
8-24
8-25
8-26
8-27
8-28
8-29
8-30
8-31
8-32
8-33
8-34
8-35
8-36
8-37
8-38
8-39
9-1
9-2
9-3
9-4
9-5
9-6
9-6.1/9-6.2
9-7
9-8
9-9
9-10
9-11
9-12
9-13
9-14
9-15
9-16

F
F
F
F
F
E
E
E
E
E
E
G
G
G
E
E

4

H

E
E
F
H

E
H
H

E
F
E
E
F
E
E
H
H
H

F
E
F
F
E
F
E
F
F
E
E
E
E
F
E
F
E
H

E
F
H

E
E
E
H
H
H

E
E
E
E
E
E
G
E
G
F

PAGE
9-17
9-18
9-19
9-20
9-21
9-22
9-23
9-24
9-25
9-26
10-1
10-2
10-3
10-4
10-5
10-6
10-7
10-8
10-9
10-10
10-11
10-12
10-13
10-14
10-15
10-16
10-17
10-18
10-19
A-I
A-2
A-3
A-4
B-1
B-2
B-3
B-4
B-5
B-6
C-1
C-2
C-3
C-4
C-5
C-6
C-7
C-8
D-1
D-2
D-3
D-4
D-5
D-6
D-7
D-8
D-9
E-l
E-2
E-3
E-4
F-1
F-2
G-1
G-2
G-3
G-4
G-5
G-6
Index-1
Index-2
Index-3

REV
G
E
E
E
E
E
G
E
E
E
F
F
E
E
E
E
E
G
F
G
F
F
F
E
G
E
G
G
E
E
E
E
E
F
F
F
F
E
E
F
G
F
F
F
F
F
F
E
E
E
E
G
E
G
F
F

PAGE
Index-4
Index-5
Index-6
Comment Sheet
Back Cover

REV

PAGE

REV

PAGE

REV

H

F
F
H

-

H

E
E
E
E
E
E
E
E
E
E
E
F
H
H

60459420 H

PREFACE

This manual describes the CDC®Virtual Storage Operating System (VSOS) for the CONTROL
. DATA®CYBER 200 Series Computer System. This manual is published in two volumes:
•

Volume 1 describes system utilities and system interface language (SIL)
subroutines. It also contains a general description of CYBER 200 hardware and
operating system software, file concepts, and task execution. It is written
primarily for applications programmers.

•

Volume 2 describes system messages and job management tables. It also describes
system accounting file formats, common execute line routines, and loader
conventions. It is written primarily for systems programmers.

RELATED PUBLICATIONS
Related information can be found in the following publications.
Control Data Publication

Publication
Number

CYBER 200 Maintenance Software System Reference Manual

60457200

CYBER 200 Model 205 Computer System Hardware Reference Manual

60256020

CYBER 200 Model 205 Troubleshooting Guide

60430060

RHF Usage

60460620

VSOS User's Guide for Fortran 200 Programmers

60455390

VSOS Site Manager's Handbook

60461490

VSOS Version 2 Reference Manual, Volume 1

60459410

VSOS Version 2 Operator's Guide

60459430

VSOS Version 2 Installation Handbook

60459440

FORTRAN 200 Reference Manual

60485000

CYBER 200 Assembler Version 2 Reference Manual

604B5010

RHF Application-to-Application Interface Specification

ARH 1/4260

I

Control Data manuals can be ordered from:
Literature and Distribution Services
STP005
308 North Dale Street
St. Paul, Minnesota
55103

60459420 F

5

DISCLAIMER
This product is intended for use only as described in this document. Control Data cannot be
responsible for the proper functioning of undescribed features or parameters.
Control Data does not support the station communication software described in this manual.
It supports only the LCN/RHF communication software.
Control Data does not support the FORTRAN 66 compiler.

6

60459420 E

CONTENTS

1.

INTRODUCTION TO VSOS

Central Operating System
Resident System
Virtual System
Queuing of Virtual System
Tasks
Scheduler Interaction with
PAGER
Privileged System Tasks
Obtaining Privileged Status
Privileged Resident System
Calls
Virtual System Calls

2.

I

JOB MANAGEMENT TABLES

1-1

4.

TAPE MANAGEMENT

4-1

1-1
1-1
1-2

Tape Assignment
Recovery
PRU Recovery
User Error Recovery
System Label Processing
Nonstandard Labels
ANSI Labels
Required Labels
Optional Labels

4-1
4-1
4-1
4-1
4-2
4-2
4-2
4-2
4-15

5.

5-1

1-2
1-3
1-4
1-5
1-5
1-7

2-1

File Index Table (FILEI)
Minus Page
I/O Connectors
Map Directories
Minus Page File Maps
Bound Explicit Maps
Bound Implicit Maps
Drop File Map
Tapes Table

2-1
2-16
2-19
2-25
2-26
2-26
2-27
2-28
2-30

3.

3-1

FILE CONCEPTS

File Names
File Ownership
File Access
Production Files
File Management Categories
Mass Storage Files
Scratch Files
Output Files
Drop Files
MODDROP (Write-Temporary) Files
Files Connected to a Terminal
Tape Files
File I/O
Physical Files
Virtual Files

60459420 H

3-1
3-1
3-2
3-2
3-3
3-3
3-3
3-4
3-4
3-4
3-4
3-4
3-5
3-5
3-5

SYSTEM MESSAGES

System Message Execution
Alpha and Beta Word Conventions
Overview
Messages
CREATE FILE (f=#0001)
DESTROY FILE (f=#0002)
OPEN FILE (f=#0003)
Mass Storage Files
Magnetic Tape Files
Files Connected to a Terminal
MAP (f=#0004)
CLOSE FILE (f=#0005)
Mass Storage Files
Magnetic Tape Files
Files Connected to a Terminal
TERMINATE (f=#0006)
LIST FILE INDEX TABLE (f=#0007)
GIVE FILE (f=#0008)
LIST SYSTEM TABLE (f=#0009)
CHANGE FILE ATTRIBUTES (f=#OOOB)
FILE DISPOSITION (f=#OOOD)
USER/ACCOUNTING COMMUNICATION
(f=tIOOOE)
ATTACH PERMANENT FILE (f=#0010)
GET PACK LABEL AND PFI (f=#0011)
LIST CONTROLLEE CHAIN (f=#0013)
SEND A MESSAGE TO CONTROLLER
(f=IIOO 14)
SEND A MESSAGE TO CONTROLLEE
(f=110015)

5-1
5-2
5-3
5-5
5-8
5-14
5-17
5-26
5-27
5-27
5-28
5-32
5-38
5-38
5-38
5-39
5-40
5-43
5-47
5-53
5-61
5-64
5-68
5-70
5-74
5-76
5-78

7

GET MESSAGE FROM CONTROLLER OR
OPERATOR (f=#0016)
GET MESSAGE FROM CONTROLLEE
(f=110017 )

REMOVE CONTROLLEE FROM MAIN
MEMORY (f=110019)
SEND A MESSAGE TO OPERATOR
( f=IIOOIA)

INITIALIZE OR DISCONNECT
CONTROLLEE (f=#OOIB)
PROGRAM INTERRUPT CONTROL
(f=IIOOIC)

8.
5-83
5-86
5-88
5-90
5-92

INITIALIZE CONTROLLEE CHAIN
( f=IIOOID)

ENABLE/DISABLE ATC (f=#0020)
EXECUTE OPERATOR COMMAND
(f=110021 )

5-94
5-97
5-99

EXECUTE PROGRAM FOR USER NUMBER

I

( f=110022)

UPDATE USER DIRECTORY (f=#0023)
MISCELLANEOUS (f=#0024)
RECALL (f=110025)
POOL FILE MANAGER (f=#0026)
LINK (f=110027)
VARIABLE RATE ACCOUNTING
( f=110028)

SEND MESSAGE TO DAYFILE (f=#0029)
RHF CALL (f=#002A)
ACCESS CONTROL (f=#002B)
TAPE MANAGEMENT (f=#002C)
TAPE SWITCH VOLUME (f=#002D)
LABEL (f=11002E)
USER REPRIEVE (f=#002F)
EXECUTE IQM REQUEST (f=#0030)
SEND MESSAGE TO JOB SESSION
(f=110033)

RETURN FROM INTERRUPT (f=#0051)
SHRLIB ALTER OR RESTORE (f=#0053)
TAPE FUNCTION (f=#F406)
EXPLICIT I/O (f=#F500)
ADVISE (f=IIFFOO)
PROCESS SYSTEM PARAMETER
(f=IIFFOI )

GIVE UP CPU ON OUTSTANDING
RESIDENT I/O OR TIME (f=#FF02)
6.

VIRTUAL SYSTEM DEBUG TOOL

5-126.1
5-128
5-134
5-142
5-143
5-147
5-149
5-151
5-153
5-165
5-168
5-178
5-182
5-187
5-189
5-192
5-194
5-196
5-198
5-204
5-208
5-212
5-214
6-1

Resident System
Virtual System
User and System Interfaces
Shared Table
Commands
Command Format
Debug Commands
Control Commands
Error Messages

6-1
6-1
6-2
6-2
6-4
6-4
6-5
6-6
6-6

7.

7-1

8

ANALYZER

ACCOUNTING

8-1

5-80
Calculation of STUs
Statistics Accumulation
Cumulative Accounting Buffer
Accounting File
Active Accounting File Blocks
Task Records
Terminal Records
Disk File Management Records
Tape Records
System Records
Job Records
Network Usage Records
Channel Usage Statistics
Records
Periodic System Records
Periodic Job Records
Standardized Accounting Enhancements
Calculation of SBUs
Variable Rate Accounting
Variable Rate/Service Level
Tables
Variable Rate File
Virtual System Table
Definition
File Maintenance
System Dayfile
General Format of System Dayfile
Entry
User Entries
System Entries
Label Entries
Diagnostic Entries

9.

COMMON EXECUTE LINE SUPPORTING
ROUTINES

8-1
8-1
8-2
8-3
8-5
8-8
8-15
8-16
8-17
8-18
8-18
8-20.1
8-22
8-27
8-29
8-30
8-30
8-32
8-32
8-32
8-34
8-34
8-35
8-36
8-37
8-38
8-39
8-39

9-1
9-1
9-5
9-5
9-6
9-6.1
9-7

Conventions
Supporting Routines
Q7ENVIRN
Q7MODE
Q7PROMPT
Q7KEYWRD
Ihs Table
rhs Table
Return Buffer
Special Characters

9-14
9-19
9-26

10.

10-1

LOADER CONVENTIONS

General Table Structure
Module Tables
Module Header Table
Code Block Table
Code Relocation Table
External/Entry Table

9-11

10-2
10-3
10-3
10-4
10-5
10-6
60459420 H

I

Interpretive Data Initialization
Table
10-9
Interpretive Relocation Initialization
Table
10-15
Transfer Symbol Table
10-15

Debug Symbol Table
Symbol Definition Table
Pseudoaddress Vector Table

10-15
10-17
10-19

APPENDIXES
A.

CHARACTER SET

A-I

B.

DIAGNOSTICS

B-1

Register Save Area
External Procedure Call Sequence
Prologue Sequence
Epilogue Sequence

D-6
D-7
D-7
D-9

System Error Codes
Tape Error Codes

B-1
B-3

E.

CYBER 205 INVISIBLE PACKAGE

E-1

C.

GLOSSARY

C-1

F.

PROGRAM STATES

F-1

D.

REGISTER FILE CONVENTIONS

D-1
G.

TAPE FORMATS

G-1

Registers
Machine Registers
Temporary Registers
Global Registers
Environment Registers

D-1
D-1
D-1
D-2
D-5

I (Internal) Format
SI (System Internal) Format
LB (Large Block) Format
V and NV (Variable) Format

G-1
G-3
G-5
G-6

INDEX
FIGURES
2-1
2-2
2-3
2-4
2-5
2-6
2-6.1
2-7
2-8

2-9
2-10
4-1
4-2

File Index Table Format for
Nontape Files
File Index Table Format for
Tape Files
Format of I/O Connector for a
Mass Storage File Opened for
Explicit I/O
Format of I/O Connector for a
Mass Storage File Opened for
Implicit I/O
Format of I/O Connector for a
Tape File
Map Directory Format
Bound Explicit Map Entry
Format
Bound Implicit Map Entry
Format
Drop File Map Full-Word Entry
Format
Drop File Map Half-Word Entry
Format
Tapes Table Format
VOL1 Format
HDR1 Format

60459420 G

2-2
2-9
2-19

4-3
4-4
5-1
5-2
5-3
5-4
5-5
5-6
5-7

2-21
2-23
2-25

5-8
5-9
5-10

2-26
5-11

2-27
5-12
2-28

5-13
2-29
2-30
4-5
4-7

5-14

EOF1 Format
EOV1 Format
CREATE FILE Message Format
DESTROY FILE Message Format
OPEN FILE Message Format
MAP Message Format
CLOSE FILE Message Format
TERMINATE Message Format
LIST FILE INDEX TABLE Message
Format
GIVE FILE Message Format
LIST SYSTEM TABLE Message
Format
CHANGE FILE ATTRIBUTES Message
Format
FILE DISPOSITION Message
Format
USER/ACCOUNTING COMMUNICATION
Message Format
ATTACH PERMANENT FILE Message
Format
GET PACK LABEL AND PFI Message
Format

4-10
4-13
5-9
5-14
5-17
5-29
5-32
5-39
5-40
5-43
5-47
5-53
5-61
5-64
5-68
5-70
9

5-15
5-16
5-17
5-18
5-19
5-20
5-21
5-22
5-23
5-24
5-25
5-26
5-27

I

5-28
5-29
5-30
5-31
5-32
5-33
5-34
5-35
5-36
5-37
5-38
5-39
5-40
5-41
5-42
5-43
5-44
5-45
5-46
5-47
5-48

10

LIST CONTROLLEE CHAIN Message
Format
SEND A MESSAGE TO CONTROLLER
Message Format
SEND A MESSAGE TO CONTROLLEE
Message Format
GET MESSAGE FROM CONTROLLER OR
OPERATOR Message Format
GET MESSAGE FROM CONTROLLEE
Message Format
REMOVE CONTROLLEE FROM MAIN
MEMORY Message Format
SEND A MESSAGE TO OPERATOR
Message Format
INITIALIZE OR DISCONNECT
CONTROLLEE Message Format
PROGRAM INTERRUPT CONTROL
Message Format
INITIALIZE CONTROLLEE CHAIN
Message Format
ENABLE/DISABLE ATC Message
Format
EXECUTE OPERATOR COMMAND
(Alpha) Message Format
EXECUTE OPERATOR COMMAND
(Beta) Message Format
T_JCAT System Table Format
EXECUTE PROGRAM FOR USER
NUMBER Message Format
UPDATE USER DIRECTORY (Alpha)
Message Format
UPDATE USER DIRECTORY (Beta)
Message Format
MISCELLANEOUS Message Format
RECALL Message Format
POOL FILE MANAGER Message
Format
LINK (Alpha) Message Format
LINK (Beta) Message Format
VARIABLE RATE ACCOUNTING
Message Format
SEND MESSAGE TO DAYFILE
Message Format
RHF CALL (Alpha) Message
Format
RHF CALL (Beta) Message Format
ACCESS CONTROL Message Format
TAPE MANAGEMENT Message Format
TAPE SWITCH VOLUME Message
Format
LABEL Message Format
USER REPRIEVE Message Format
EXECUTE IQM REQUEST Message
Format
SEND MESSAGE TO JOB SESSION
Message Format
RETURN FROM INTERRUPT Message
Format

5-49

5-74
5-76
5-78
5-80
5-83
5-86
5-88
5-90
5-92
5-94
5-97
5-99
5-101
5-125
5-126.1
5-128
5-129
5-134
5-142
5-143
5-147
5-148
5-149
5-151
5-153
5-154
5-165
5-169
5-179
5-182
5-187
5-189
5-192
5-194

SHRLIB ALTER OR RESTORE
Message Format
5-50
TAPE FUNCTION Message Format
5-51
EXPLICIT I/O (Alpha) Message
Format
5-52
EXPLICIT I/O (Beta) Message
Format
5-53
ADVISE Message Format
5-54
PROCESS SYSTEM PARAMETER
Message Format
5-55
GIVE UP CPU ON OUTSTANDING
RESIDENT I/O OR TIME Message
Format
7-1
ANALYZER Execute Line Format
8-1
Master Clock Format
8-2
Master Clock Example
Accounting Record Format
8-3
(First Word)
8-4
Task Record Header Format
8-5
Task Record Format, Subtype 0
Task Record Format, Subtype 2
8-6
8-7
Task Record Format, Subtype 4
Interactive Job
8-8
Task Record Format, Subtype 4
Batch Job with First CHARGE
Statement
8-9
Task Record Format, Subtype 4
Batch Job with Second
through Last CHARGE
Statement
8-10
Terminal Record Format,
Subtype 0
8-11
Terminal Record Format,
Subtypes 1 and 3
Tape Record Format, Subtype 0
8-12
8-13
Tape Record Format, Subtype 1
8-14
Job Record Format, Subtype 0
8-15
Job Record Format, Subtype 1
8-15.1 Job Record Format, Subtype 2
8-16
Network Usage Record Format
8-17
Channel Usage Statistics
Record Format, Subtype
8-18
Channel Usage Statistics
Record Format, Subtype 2
8-19
Periodic System Record Format
8-20
Periodic Job Record Format
8-21
Algorithm for SBU Calculation
8-22
Q5VRF File Format
9-1
Key-Dependent Parameter Format
9-1.1 Q7ENVIRN Call Statement Format
9-2
Q7MODE Call Statement Format
9-3
Q7PROMPT Call Statement Format
9-4
Q7KEYWRD Call Statement Format
9-5
Ihs Table Pointer
Configuration
9-6
Ihs Table Format
9-7
Ihs Table Header Format
9-8
Ihs Table Entry Format

5-196
5-199
5-205
5-206
5-209
5-212
5-214
7-2
8-6
8-6
8-7
8-9
8-10
8-11

8-13
8-13

8-14
8-15
8-15
8-17
8-17
8-19
8-20
8-20
8-20.1
8-22
8-25
8-27
8-29
8-30
8-33
9-3
9-5
9-6
9-6.1
9-9
9-10
9-11

9-12
9-13

60459420 H

I

I

9-9
9-10
9-11
9-12
9-13

9-14
9-15
9-16
9-17
9-18
9-19
9-20
9-21
9-22
9-23

rhs Table Format
rhs Table Entry Format (First
Word)
rhs Table Entry Format, Type 2
rhs Table Entry Format, Type 3
rhs Table Entry Format,
Type 4/6
Return Buffer Format
Return Buffer Entry Format
(First Word)
Return Buffer Entry Format,
Types 1 and 2
Return Buffer Entry Format,
Type 3
Return Buffer Entry Format,
Type 4
Return Buffer Entry Format,
Type 5
Return Buffer Entry Format,
Type 6
Return Buffer Entry Format,
Type 7 with Zeroed Flags
Return Buffer Entry Format,
Type 7 with Set Flags
Return Buffer Entry Format,
Type 8 with One Set Flag

9-14

9-24

9-15
9-16
9-16

10-1
10-2
10-3
10-4
10-5

9-17
9-19

9-20

10-6
10-7
10-8
10-9
10-10
10-11

9-21

10-12

9-22

D-1
D-2
D-3
E-1
G-l
G-2
G-3

9-19
9-20

9-22
9-23
9-23

G-4

Return Buffer Entry Format,
9-25
Type 8 with Two Set Flags
10-2
Loader Table Header Format
10-3
Module Header Table Format
10-5
Code Relocation Table Format
10-7
External/Entry Table Format
Descriptor Format for Externals
and Entry Points
10-8
Data Item Format 1
10-9
Data Item Format 2
10-11
Data Item Format 3
10-12
Data Item Format D
10-13
Debug Symbol Table Format
10-16
Symbol Definition Table Entry
10-17
Format
Pseudoaddress Vector Table
10-19
Entry Formats
D-3
Register File
D-4
List of Parameter Addresses
D-6
Stack Frame
E-1
Invisible Package Contents
G-l
I Tape Format
G-3
SI Tape Format
G-5
LB Tape Format
G-6
V and NV Tape Formats

9-24

TABLES
1-1
1-2
1-3
2-1
2-2
2-3
3-1
4-1
5-1
6-1
6-2
6-3

Resident System Calls for
Privileged Users
1-5
Virtual System Calls Available
to Privileged User Tasks
Only
1-7
Virtual System Calls with
Options Available to
Privileged User Tasks Only
1-7
File Disposition Specifications
in the File Index Table
2-14
File Characteristic
Specifications in the File
Index Table
2-15
Minus Page Format
2-17
File Index Table Fields that
Affect File Ownership
3-2
Tape Label Format
4-3
Message Function Codes
5-5
Structure of the T VSD Table
6-2
VSDT Command Summary
6-4
VSDT Commands for Setting and
Resetting Breakpoints
6-5

60459420 H

6-4
6-5
8-1
8-2
8-3
8-4
9-1
10-1

A-I
A-2
A-3
B-1
B-2
F-1

VSDT Command for Accessing
Paged-Out Addresses
6-6
VSDT Error Messages
6-6
Accounting Record Type and
Subtype Codes
8-3
Active Accounting File Block
Format
8-5
Active Accounting File Format
(First Block)
8-7
8-31
System Resources
Execute Line Special
Characters
9-26
10-4
Module Header Table Types
ASCII Character Set with
Punched Card Codes and
A-2
EBCDIC Translation
Hexadecimal-to-Octal Conversion
Aids
A-3
Hexadecimal-to-Decimal
A-4
Conversion Aids
B-1
System Error Codes
B-3
Tape Error Codes
Program State Codes
F-1

11

I

NOTATIONS USED IN THIS MANUAL

UPPERCASE

UNDERLINED
UPPERCASE

Lowercase

[ ]

Brackets

12

Words or character strings
that must be entered as
shown. They must be spelled
correctly including any = or /
shown.
Words or character strings
that can be abbreviated to the
number of underlined
characters.
Generic terms which represent
the words parameters or
character strings supplied by
the programmer. When generic
terms are repeated in a
format, a number or letter
might be appended.
Optional portion of a format.
All parameters enclosed within
the brackets can be omitted at
programmer option. The
brackets are editorial
conventions only; they are not
part of the format.

{ }

Braces

Ellipses

Portion of a format in which
only one of the vertically
stacked items can be used.
The braces are editorial
conventions only; they are not
part of the format.
Repetition indicator. The
portion of the format
immediately preceding can be
repeated at programmer option.
Blank indicator. In a format,
this character indicates that
a blank or space should appear.
Numbers used in this manual
are decimal unless noted as
hexadecimal. Hexadecimal
numbers are prefixed by the #
character.

Punctuation characters shown within the
formats are required unless the text
indicates another punctuation character can
be substituted.

60459420 E

1

INTRODUCTION TO VSOS

The Virtual
runs in the
the network
nonresident

Storage Operating System (VSOS) consists of a central operating system, which
central processing unit (CPU), and a peripheral operating system, which runs in
access devices (NADs). The operating system consists of a resident system and a
set of callable tasks.

CENTRAL OPERATING SYSTEM
The central operating system can be divided into three parts:
•

The resident system runs in a hardware mode called monitor mode. It is always
resident in memory and references memory by absolute address rather than through the
virtual paging mechanisms. When the resident system is running, interrupts are
inhibited and some extra instructions are enabled.

•

The virtual system runs in a hardware mode called job mode. It consists of a
pageable set of subroutines that perform such functions as controlling entry of
users into the system, file management, and terminal message handling. Virtual
system tasks communicate with the resident system by using resident system calls.
The virtual system can modify system tables directly.

•

I

Privileged system tasks run in the hardware mode called job mode and perform many of
the same functions as virtual system tasks. Privileged system tasks can issue
privileged resident system calls to communicate with the resident system. However,
the only privileged system tasks that can modify system tables directly are Input
Queue Manager (IQM) and Interactive Transfer Facility Servicer (ITFS).

CYBER 200 hardware modes are described in the CYBER 200 Hardware Reference Manual.

RESIDENT SYSTEM
The resident portion of the central operating system contains:
•

KERNEL, which handles time-slicing and message communication.

•

PAGER, which is responsible for main memory allocation and page swapping.

All communications between the various portions of the system are by means of system
messages. These messages either pass through KERNEL, which in this case acts as a message
switcher, or are processed directly by KERNEL. User jobs, privileged tasks, and virtual
system tasks communicate messages to KERNEL through the exit force instruction (a machine
language instruction). PAGER communicates messages to KERNEL by direct subroutine calls.
The peripheral system communicates with KERNEL by setting pointers in the station queuing
structure; KERNEL communicates with the peripheral system by setting pointers and station
channel flags.

60459420 F

1-1

I

The time-slice management portion of KERNEL is controlled by a loop ovpr the a'tprn~tor
table that acts as a circular table with various indicators in each table entry. These
indicators include a pointer to a minus page table entry, a descriptor block table entry,
and three sets of flag bits that define the status of each alternator entry.
A unique entry in the alternator is shared by all virtual system tasks; to prevent two
routines from modifying the same system table simultaneously, only one virtual system task
is allowed to run at a time. This system alternator slot has the highest priority; it is
always run unless blocked for I/O or PAGER action.
All memory access interrupts, as well as certain messages dealing with physical memory
allocation, are conveyed by KERNEL to PAGER for processing. PAGER dynamically allocates
both large and small pages, and performs all implicit I/O necessary to free m~mory pages and
obtain the pages caused by memory access interrupts.
That portion of memory that is not permanently occupied by the resident system and its
tables is available for allocation to executing system and user tasks, including the virtual
system. This allocatable memory is either allocated space (space reserved for use by a
specific task) or free space (space not allocated to any task).

VIRTUAL SYSTEM

The virtual system contains routines for system functions such as file management, explicit
I/O, message handling, and CPU scheduling. Only that part of the virtual system that is
needed at anyone time is in physical memory. The virtual system is assigned tasks by
KERNEL and is initiated by KERNEL to do one type of task only. It must finish one task
before it begins another.

I

Queuing of Virtual System Tasks

For virtual system demand tasks, which are critical to the efficient working of the
operating system, queuing occurs if:
•

Bits are set in one or more alternator slots to indicate that virtual system action
is required.

•

PAGER requests KERNEL to queue a virtual system demand task.

For periodic virtual system tasks, which are not considered critical, queuing occurs if:

1-2

•

A communication from a peripheral processor requires activity.

•

A user job issues a message that requests a system service not provided by the
resident system.

•

An entry in the periodic table indicates it is time to run a virtual system task.

60459420 F

Scheduler Interaction with PAGER

The CPU paging processor (PAGER) interacts with the CPU scheduler and the input queue
scheduler to regulate the processing load on the CPU. The process is:
•

When PAGER determines that the load on the system is excessive, it notifies the
virtual system routine LOAD to suspend certain tasks (refer to the following) and/or
disconnect tasks from the CPU scheduling queue (CPUQ) and places them into the wait
queue.

•

When PAGER determines that the system is not being fully utilized, it notifies LOAD
to reconnect tasks in the wait queue to the CPUQ, resume system-suspended tasks,
and/or submit new batch jobs to the CPU scheduler.

Estimates of the memory requirements of any task in the system are based on the size of the
task's working set, which is a function of the number of blocks of memory referenced or
altered by the task in a given period of time. Before a task begins execution, it is
assigned an initial and a maximum working set. The maximum working set is determined by the
RESOURCE statement as explained in volume 1 of this reference manual. The CPU scheduler
sets the initial working set based on the task's drop file size. PAGER then monitors the
memory usage of the task and adjusts its working set accordingly. PAGER will not evaluate a
task's working set to be higher than the maximum working set for the task. It will,
however, keep track of the frequency with which a task is attempting to exceed its maximum
working set. When the frequency becomes too high, PAGER flags the task as a candidate for
suspension. When the number of candidates for suspension exceeds an installation-defined
limit, PAGER notifies LOAD to suspend candidates for suspension in reverse priority order
until the limit is no longer exceeded. (Observe that tasks which have a maximum working set
equal to all of allocatable memory will not be considered candidates for suspension.) In
addition to monitoring each task's working set, PAGER keeps track of the sum of the working
sets of all tasks in the CPUQ and wait queue (WQ). This variable is used to calculate a
running average sum of working sets (known to the system as IQM_RWS).
IQM RWS represents the load on the system after factoring out temporary dips in memory
committed to tasks. For each job in the input queue, the input queue scheduler estimates
the maximum working set that the job will require while in execution. One of the scheduling
constraints on a job in the input queue is maximum memory overcommitment.
When a job fails this constraint, it is given a status of MXMO. IQ~1 RWS must be less than
the lowest estimated working set among all jobs with a status of MXMO in order for any job
with that status to be submitted without overcommitting memory. When IQM RWS is evaluated
by PAGER as being below this value, PAGER notifies LOAD to cause the input queue scheduler
to reevaluate jobs in the input queue for submission. The input queue scheduler will
attempt to resume system-suspended tasks before submitting new jobs to the CPU.
When the sum of the working sets of tasks in the CPUQ is low enough, PAGER notifies LOAD to
remove tasks from the wait queue and reconnect them to the CPUQ within the limits of
committable memory. A task qualifies for reconnection when it is the highest priority task
in the wait queue whose working set plus memory for working set growth fits into uncommitted
memory. When a task is evaluated as having a working set which will no longer fit into
co~ittable memory, it is disconnected from the CPUQ and placed into the wait queue.

60459420 F

1-3

PRIVILEGED SYSTEM TASKS

Any task can be run as a privileged task if it is running under a privileged user number or
has the privilege flag set in the file index table entry of its source file. A privileged
system task is any privileged task that is part of the central operating system. A
privileged user task is any other privileged task, such as one that a system or
installation-defined utility might use.

I

Privileged and virtual system tasks have similar characteristics in that they run in job
mode, make resident calls, are pageable, and can access the files of other users. Unlike
the virtual system tasks, privileged tasks (with the exception of IQM and ITFS) do not have
direct access to system tables; through privileged calls to the virtual system, they are
able to obtain indirect access to the tables.
Because they can make most resident system calls, privileged system tasks are able to
perform some functions for the virtual system. This reduces virtual system overhead and
frees the virtual system to process other functions. Tasks such as handling I/O files and
operator communications are currently done by privileged system tasks.
IQM, OPERATOR, QTF, QTFS,PTFS, and ITFS are privileged system tasks that run under
privileged user numbers. The system user number (for installation management), 999998, is
also a privileged user number; EDITUD is run under this number.
System Task

1-4

Description

IQM

Input Queue Manager. Creates and routes error dayfiles to the user for
batch jobs which could not be submitted to the CPU scheduler (user
number 000003).

OPERATOR

Enables the operator to communicate with the system by issuing the
EXECUTE OPERATOR COMMAND message (f=#0021), enabling the operator to
display memory and task information. The operator is able to control
the flow of jobs to be submitted to the CPU scheduler, the jobs which
are running in the system, and the access to peripheral equipment and
linked mainframes available to the system (user number 000098).

QTF

Queue File Transfer Facility. Queues input and output files from CYBER
200 to a Remote Host Facility (RHF) front end (user number 000006).

QTFS

Queue File Transfer Facility Servicer. Queues job files from an RHF
front end to CYBER 200 (user number 000008).

PTFS

Permanent File Transfer Facility Servicer. Services the remote host
connection for permanent file transfer (user number 000010). (Does not
imply the direction of the transfer.)

ITFS

Interactive Transfer Facility Servicer.
200 (user number 000013).

Allows interactive use of CYBER

60459420 G

Obtaining Privileged Status

A user is a privileged user if the privilege flag (udtrust field) in the user directory
entry is set. The flag can be set by using EDITUD.
Privileged status for a running task is indicated in the descriptor block.
An executable file can run as a privileged task under a nonprivileged user number if the
privilege flag in the source file's file index table entry is set.
If the task is not running under a privileged user number, but the privilege flag is set in
its source file, control lees or a controllee chain started by the task must also have the
privilege flag in their source files set to have privileged status.
The privilege flag in the user directory entry associated with each user is passed on to
each task that the user executes.

Privileged Resident System Calls

Privileged resident system calls made to KERNEL are processed by KERNEL or by a peripheral
device. Resident system calls available to privileged tasks are listed in table 1-1.
Before a C501, C502, or C503 calIon a file can be issued by a privileged task, the file
must be opened for explicit I/O, using the OPEN FILE (f=#0003) message. The file segment
table (FST) ordinal (returned in the fsto Beta word field for a CREATE or OPEN message) must
be supplied with the call; otherwise, the task aborts.
Privileged tasks can read and write segmented files with C500 and C501 calls, but files
cannot be extended by tasks using these calls. Extensions are permitted, however, in other
situations, such as when the privileged tasks perform implicit I/O or use the EXPLICIT I/O
(f=#F500) message.

Table 1-1.

Resident System Calls for Privileged Users (Sheet 1 of 2)

Call Number

Description

F002

Delete pages from the page table.

F003

Delete a virtual range with a given key from the page table.

F004

List a virtual range with a given key from the page table.

F005

Delete all pages in the page table under a given key.

F007

List the page table entry for the keyword and the virtual block
identifier.

F008

Terminate the task.

F009

Complete outstanding boats.

FOOC

Change key.

FOOD

Get an input buffer.

60459420 H

I
1-5

Table 1-1.

Resident System Calls for Privileged Users (Sheet 2 of 2)

Call Number

I

1-6

Description

FOOE

Queue system/demand task.

FOOF

Change system keys.

F010

Unlock a virtual range with a given key.

F015

Performance measurement call.

F016

Process checkpoint.

F017

Return to KERNEL from Virtual System Debug Tool (VSDT).

F018

List page table entry for large page.
memory.

F019

Checkpoint preprocessing.

C304

Teletype output message.

C305

Teletype input message.

C313

Full screen output message.

C320

Reserved for installation use.

C500

Read physical blocks.

C501

Write physical blocks.

C502

Read physical disk.

C503

Write physical disk.

C504

Write a disk pattern.

C510

Read logical blocks.

C511

Write logical blocks.

C512

Read logical disk.

C513

Write logical disk.

C514

Write logical pattern.

C700

Read Remote Host Facility (RHF)/loosely coupled network (LCN).

C701

Write RHF/LCN network.

C702

RHF NAD function.

C703

Receive RHF remote connection.

C704

Abort timed-out boat.

Fault for large page if not in

60459420 H

Virtual System Calls
Privileged tasks can make all nonprivileged calls to the virtual system. They can also make
special virtual system calls and use options of nonprivileged calls that are restricted to
privileged tasks. (All messages described in chapter 5 except EXPLICIT I/O, TAPE FUNCTION,
ADVISE, PROCESS SYSTEM PARAMETER, and GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME are
virtual system calls.)

I

Special virtual system calls available to privileged tasks are listed in table 1-2. The
restricted capabilities of nonprivileged calls available to privileged tasks are listed in
table 1-3.
Table 1-2$

Virtual System Calls Available to Privileged User Tasks Only

Function Code

Message

Function

0021

EXECUTE OPERATOR COMMAND

Acts as the interface between the
privileged task OPERATOR and the virtual
system.

0022

EXECUTE PROGRAM FOR
USER NUMBER

Starts the file transfer process for a user.

0023

UPDATE USER DIRECTORY

Modifies the user directory of an existing
user or to create a new user.

002A

RHF CALL

Reserved for RHF virtual system calls.

0030

EXECUTE IQM REQUEST

Deletes or inserts a job into the IQM.

Table 1-3.

I

Virtual System Calls with Options Available to Privileged User Tasks Only

Function Code

Message

Function

0001

CREATE

Creates a public, pool, or private file for
another user.

0002

DESTROY

Destroys a public, pool, or another user's
private file.

0003

OPEN

Opens any file (private, public, or pool).

0005

CLOSE

Closes any public, private, or pool file.
Destroys the file being closed.

0008

GIVE

Makes a file public; that is, gives to user
000000. Gives file to IQM (user 000003).
Gives file specified by sector address and
unit number. Gives file with trust bit set.

OOOB

CHANGE FILE ATTRIBUTES

Changes the account number of an input file.

OOOE

USER/ACCOUNTING
COMMUNICATION

Makes accounting entry or dumps accounting
temporary storage to permanent storage and
terminates the accounting file.

60459420 F

1-7

JOB MANAGEMENT TABLES

2

Tables used by VSOS to control job processing within the system can be affected or altered
indirectly by user programs. In all cases, access to the tables must be through system
messages.

FILE INDEX TABLE (FILEI)
The file index table is a catalog of files connected to a terminal, mass storage files
(public, private, and attached pool), and tape files for all active users in the system.
The catalog entries of mass storage files for inactive users are maintained on a mass
storage unit (in the inactive file index table). When a user becomes active, the catalog
entries describing the user's mass storage files are brought into the file index table in
main memory.
Each entry in the file index table consists of at least one three-word top chapter and one
or more 14-word bottom chapters. A top chapter exists for every attachment (or privileged
open) of the file to a user. Every file has a bottom chapter containing basic file
attributes. If individual user access permissions have been specified for the file, an
additional bottom entry is present for the file access directory entries (FADE).
When the file index is returned, a 16-word format is returned to the caller. The third word
of the top is not returned; relevant information is placed at the bottom as previously
described. The format is shown in figure 2-1 and figure 2-2. All fields in an entry
contain binary values, unless otherwise indicated.
The fidc, fiic, and fiec fields in the file index table entry contain specifications for the
file's disposition, internal characteristics, and external characteristics. The fidc field
values are listed in table 2-1; the values of the fiec and fiic fields are listed in
table 2-2.
RHF file disposition is controlled by the submitting host system and/or the user via the
MFQUEUE statement. The ic field is the only field used by RHF. In the protocol exchange,
the submitting RHF host includes disposition and routing information, which is saved as the
last group of an input file. The batch processor copies the last group to a file Q5JRTHRF
during job execution. If a file is MFQUEUEd during job execution, a copy of the Q5JRTHRF
file is saved in a file named Q5Lxxxxx which is associated with the MFQUEUEd file which will
be named Q50xxxxx, where xxx xx is a unique five-character string generated by the system
microsecond clock. At the end of job execution, the Q5JRTHRF file is renamed PYYxxxxx and
is given to QTF as the last member of the xxxxx family. The information in the PYYxxxxx
file and the Q5Lxxxxx file are used in the RHF protocol exchange returning the output
files. The front-end host examines the received protocol and disposes the file accordingly.

60459420 F

2-1

o
o

63
poolname

---~--~--~--------------------

00

8

atjdn

12

auser

44

name
64

2

reserved

mpn
24
un- aql
used Vfp
42 1 1
16

dorg

5

dola

6

et
16

4

16

meat
4

dolm

4

16

16

16

3

t

rep

ref

ptrpfil

figs ostat osver
5
3
4

lodlen
32

8

type
4

f
ouser
i 9
unused., 20 1 1
, xd x f
pme .
slev
p I I
11
8
2
8

act

11

ekjdn

tt

att
12

18
tlr
18

t ~
t r

tolm

9

18

3 11
'-Inaet
dup

8

fact

7

torg

64

8

fide

A

fizip

fitid

42
fiie fiee fiem fio1
-fistid- 12'I--:~~d ~----fisid----2~
4 2
4
4
8

8

tt

slen
16

C
D

E

fidi
DI Jobname in Display Code

finae
8

8

32

16

8

8
9

hba

Ibe

gaes

oaes

flen
seglen 1

24

seglen2

16 tt2
unused
16

18
16 tt4

extsize

16

tt~

segadr2
24

fLjdn
segadr3

hbw

F
seglen4

16 t t i

pkno

18
unused 8 bilb4
segadr 1

16 tt2

dfso

seglen3

saddr

2

18
36

segadr4

18

48
0

p ~ g¥

fsto

8 1 1 1 '1

16

t t

tt

sfo

24

4
mnr

bt

18
12

oe i

4

24
mxr

rt
4

24
vri

rmk
12

pc
8

8

tPurge only (1 bit)
tt Reserved.

Figure 2-1.

•

2-2

File Index Table Format for Nontape Files (Sheet 1 of 8)

60459420 H

Word

Field

o

poolname

Pool name in ASCII, left-justified with blank fill.

atjdn

Job descriptor number to which this file is attached; it is assigned
to a job for the life of the job in the system.

auser

Owning user number in binary notation.

name

File name in ASCII, left-justified with blank fill. The information
in this table refers to the file of this name. File names must be in
the format described in chapter 3.

ptrpfil

Pointer into the proper block of the permanent file index (PFI) for
this entry relative to the first block of the PFI. PFI = #FFFF for
local files.

2

Description

Number of times this file has been opened.
rep

Retention

flgs

1 (DFRSTRT)

Drop file restartability flag. If 0, this drop file is
restartable. If 1, this drop file is not restartable
if IP DFRSTRT is 1.

2 (PRODTN)

Production file flag. If 0, this file is not a
production file. If 1, it is a production file.

3 (PURGONLY)

Purge-only flag. Indicates whether the file can be
used or not because of PFI or directory of file
segmentation (DFS) errors. Set by permanent file
verification at autoload time.

pe~iod

in days.

o
1
ostat

Output file status (integer):

o
1
2
3
4
5
6
7
8-31
osver

Normal status.
Destination LID disabled.
Destination not responding.
Destination rejecting file.
System interface language (SIL) error occurred during file
transfer.
Diverted.
Hardware path to the logical identifier (LID) not available.
System error occurred during file transfer.
Reserved by CDC.

Version number of the operating system that created the file.
value defined as:

o
1
2
Figure 2-1.
60459420 H

File has not been flagged as purge-only.
File has been flagged as purge-only.

Binary

Release 2.0 or earlier.
Release 2.1, 2.1.5, or 2.1.6.
Release 2.2 or later.

File Index Table Format for Nontape Files (Sheet 2 of 8)
2-3

Field

Word
3

4

Description

mpn

Master project in ASCII, left-justified with blank fill.

reserved

Reserved for installation.

lodlen

Drop file length,
file is a virtual
privileged system
the user who gave

dorg

Date this file was originated, in the format:

in blocks, for the execute file; only valid if the
code file (type = 2). For a file given to a
task, this field contains the binary user number of
this file to the privileged system task.

Description

Subfield

Last two digits of the year.
Number of days since the beginning of the year (1
through 366).

yy
ddd
apf

I

Access permission flags:

Queue flag:

qf

o
1

o
1

I

Permanent file.
Local file.

ouser

Originating user number.

i

Duplicate files flag:

o
1

No duplicate found.
Duplicate found at login.

File acquisition method:

fg

o
1

5

IQM has read the file.
IQM has not read the file.

Local/permanent flag:

lp

User created this file.
File was given to user.

torg

System clock time, in seconds after midnight, at which this file was
originated.

dola

Date of last access to this file, in the same format as the dorg field.
(To access a file means to open it.)

ct

Communication type:

o
1
2
Figure 2-1.

2-4

1 if this entry is a file extension entry.
1 if this file has an extension entry.

Bit 1
Bit 2

Non-RHF file.
Non-RHF file.
RHF file.

File Index Table Format for Nontape Files (Sheet 3 of 8)

60459420 H

Word
5

Field
type

Description
File type:

o
1
act

Number of active I/O connectors for this file.

slev

Security classification level of this file (1 through 8).

xpr

If set, indicates that this file is currently being accessed by a
privileged utility.

dmp

Dump flag:

o
1

xcI

1

fi

The file is a candidate for dumping by a privileged utility.
Indicates the file has been dumped by a privileged utility
since creation or modification.

Exclusive access flag:

o

File can be shared.
File cannot be shared.

Task privilege designator:

o
1

6

Physical file.
Virtual code file.

Not a privileged task.
Privileged task.

tlr

System clock time, in seconds since midnight, at which the file was
last opened.

dolm

Date the file was last opened with write access, in the same format as
the dorg field.

mcat

Present file management category:

o
1
2
3
4
6
7
9
#A
#F

Mass storage file.
Scratch file.
Output file.
MODDROP file.
Magnetic tape file.
System-generated drop file.
Batch file.
Connected file.
Checkpointed output file.
Checkpointed input file.

ckjdn

Checkpoint job descriptor number.
belongs to a checkpointed job.

att

Count of the attaches and privileged opens for private files; the
number of opens for public and pool files.

Figure 2-1.

60459420 H

This field is set when the file

File Index Table Format for Nontape Files (Sheet 4 of 8)

2-5

I

Word

Field

Description

inactdup

Inactive duplicate file.

rern

Rerun indicator; valid for batch input files only (mcat

tolm

Time, in seconds since midnight, when this file was last opened with
write access.

7

fact

Account number of the file, in ASCII, left-justified with blank fill.

8

oacs

Owner's access permission for private files and pool boss' access
permission for pool files. For public files, oacs is set equal to
gacs:

I

Bit
1-3
4
5
6
7
8

9

7).

Access Permitted
Reserved (ignored by the system).
Execute.
Modify.
Append.
Read.
Write.

gacs

General access permissions.
oacs.

lbc

Last used bit count in the last block to which something was written
in the file. Used only for files with osver less than 2.

hba

Bit address plus 1 of the highest page accessed.
with osver less than 2.

fidc

Numeric value indicating disposition of this file (refer to table 2-1).

fiic

Numeric value indicating the internal format characteristics of the
file (refer to table 2-2).

fiec

Numeric value indicating the external punch representation
characteristics of the file (refer to table 2-2).

ficm

Numeric value indicating the conversion mode of the file.
are:

o
1
2
fiot

The format of this field is the same as

Used only for files

1
2
Figure 2-1.

The values

Display code (64-character set).
Extended display code (128-character set).
Binary.

Numeric value indicating the origin type of the file.

o

2-6

=

Values are:

Local batch.
Remote batch.
Interactive.

File Index Table Format for Nontape Files (Sheet 5 of 8)
60459420 H

Word

9

A

B

Description

Field
fitid

A seven-character terminal identifier stored as seven 6-bit display
code characters.

fistid

A two-character terminal identifier stored as two 6-bit display code
characters.

fisid

A three-character (ASCII) mainframe identifier indicating the source
or destination mainframe.

fizip

Numeric value indicating the destination processor zip number for this
file. The mainframe table associates this zip with a three-character
mainframe identifier.

finac

Access station area code.

fidi

Job name (eight 6-bit display code characters).

slen

Length of the file, in blocks.
cont = O.

saddr

Starting sector address on disk for the first segment of the file.
Not valid for files with osver = 2 and cont = 1. (For these files,
saddr is set to #3FFFF.)

pkno

Pack number of the disk device on which the first segment of the file
is allocated.

cont

File contiguity flag:

o
1
ext

1

1

File is extendable.
File is not extendable.

File does not span a downed device.
File spans a downed device.

File overflow flag:

o
1

C

Segmented file or more than #FFFF blocks.
Unsegmented file and less than #10000 blocks.

File completeness flag (set when file is attached and promoted to
FILEI):

o
ovfl

2 and

File extendability flag (set when file is created or opened):

o
inc

Not used for files with osver

File is contained on one device.
File spans more than one device.

fsto

File segment table ordinal; when file is attached and promoted to
FILEI, this field contains the ordinal of the first FST entry for the
file.

flen

For files created on VSOS 2.2 or later systems, this field contains
the total allocated space for the file in 512-word blocks.

Figure 2-1.
60459420 H

File Index Table Format for Nontape Files (Sheet 6 of 8)
2-7

I

Word

Field
bilb

Description
Bits used in last byte:

o
1-7
C

For files created on a system before VSOS 2.2, this field contains the
length in blocks of the first segment.

segadrl

For files created on a system before VSOS 2.2, this field contains the
starting sector disk address for the first segment.

sfo

File organization:
1

For files created on a VSOS 2.2 or later systems, this field contains
the ordinal of the first DFS entry associated with this file.

extsize

Extension size, in 512-word blocks. This is the last extension size
used when the file was extended; or, the user-specified allocation
unit value adjusted to the next multiple of DAUs. This value is used
to compute the next extension size.

seglen2

For files created on a system before VSOS 2.2, this field contains the
length, in blocks, of the second segment.

segadr2

For files created on a system before VSOS 2.2, this field contains the
starting sector disk address for the second segment.

bt

Blocking type:

1

I
I

SIL assumes the file was created before SIL was added to the
system. Therefore, it enters default values in the SIL
fields of the file index entry.
C-type blocking.

mnr

Minimum blocking length; 24-bit length, in number of bytes.

seglen3

For files created on a system before VSOS 2.2, this field contains the
length, in blocks, of the third segment.

segadr3

For files created on a system before VSOS 2.2, this field contains the
starting sector disk address for the third segment.

fiidn

FILEI inn.

rt

Record type:

o
1
2
7
Figure 2-1.
2-8

Sequential.
Direct.

dfso

o

E

Last byte

seglen1

o
D

All of last byte is used.
Only from 1 to 7 bits of the last byte are used.
is the NBWth byte.

Control word (W).
ANSI fixed length (F).
Record mark (R).
Undefined (U).

File Index Table Format for Nontape Files (Sheet 7 of 8)
60459420 H

Field

Word

F

Description

mxr

Maximum record length; 24-bit maximum length, in number of bytes.

hbw

For files created on a VSOS 2.2 or later systems, this field contains
a count of the total number of 8-bit bytes written to the file.

seglen4

For files created on a system before VSOS 2.2, this field contains the
length, in blocks, of the fourth segment.

segadr4

For files created on a system before VSOS 2.2, this field contains the
starting sector disk address for the fourth segment.

vri

Variable rate index (VRI) transferred to the descriptor block to be
used for variable rate accounting (VRA). Valid for virtual code files
only.
Record mark; 8-bit ASCII character (any character is valid).

pc

Padding character; 8-bit ASCII character (any character is valid).
Figure 2-1.

60459420 H

File Index Table Format for Nontape Files (Sheet 8 of 8)

2-8.1/2-8.2

I

o
o

63
00

auser

atjdn

12

8

44
name

2

64

ref

ptrpfil

rep

16

unused

16

16

16
unused

3

4

unused I

dorg

dola

type

t

16
6

dolm

ouser

4

4

meat

16

torg

t

7 P

16
5

64
18

20 2
act

tlr

unused

18

14

8
unused

tolm

4

18

26

7

fact

64
8

ofa

oacs

8

reel

opo

exp

16

8

ova

8

16

8

mfn

9

64
A

plb

vsn

48

16
B

rpb

nvsn

16

c

tun

8

mpru

4

D

fmtp

E

16
unused

F

t

16

Figure 2-2.

60459420 E

16
mnr

24
mxr

rt

4

24

4
vri

t

32 211
tUnused.

fsn

8

4

4

rpo

pcvsn

ctfp

4
bt

t

32

16

8

sfo

t

32

pvsn

unused

16

I

pc

rmk

12

8

8

L.::conv
tproc

File Index Table Format for Tape Files (Sheet 1 of 6)

2-9

Word

o

Description

Field
atjdn

Job descriptor number to which this file is attached, assigned to the
job for the life of the job in the system.

auser

Owning user number, in binary notation.

1

name

File name used to assign the tapes.

2

ptrpfil

Pointer into the proper block of the PFI for this entry relative to
the first block of the PFI. PFI=#FFFF for local files.

ref

Number of times this file has been opened.

rep

Retention period, in days.

dorg

Date this file was organized, in the format:

4

ddd

lp

Subfield

Description

yy
ddd

Last two digits of the year.
Number of days since the beginning of the year (1
through 366).

Local/permanent flag:

o
1

I

5

Permanent.
Local.

ouser

Originating user number.

torg

System clock time, in seconds since midnight, at which this file was
originated.

dola

Date of the last access to this file, in the same format as the dorg
field. (To access a file means to open it.)

type

File type:

o
2

Physical file.
Virtual code file.

act

Number of active I/O connectors for this file.

1-1 ....

s~,...::t~= ~!::;~!~

.... .: _ . -

of _

_ _ _ _ _ ...l _

_

................. ' - ,

""'-.L.A.

O'-'-Vl.1.UO

O~l.I.'-~

~

_

_ _

___

~

..1 __ ,

_1

__

lll..LU11..L5l1 .... ,

•

aL

Wll.L\,;.11

1..11t::

.L.L.Lt::

Wd.1:;

last opened.

6

dolm

Date the file was last opened with write access, in the same format as
the dorg field.
Figure 2-2.

2-10

File Index Table Format for Tape Files (Sheet 2 of 6)

60459420 F

Word
6

Field
mcat

Description
Present file management category:

o
1
2
3
4
S
6
7
S
9
#A
#F

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
Magnetic tape file.
User-generated drop file.
System-generated drop file.
Batch file.
Link file.
Connected file.
Checkpointed output file.
Checkpointed input file.

tolm

Time, in seconds since midnight, when this file was opened with write
access.

7

fact

Account number of the file in ASCII, left-justified with blank fill.

S

oacs

Owner's access permission for private files and pool boss' access
permission for pool files. For public files, oacs is set equal to
gacs:

I

Bl B21 B31 B41 B51 B61 B71 B8
Access Permitted

1-3
4
5
6
7
S

Reserved (ignored by the system).
Execute.
Modify.
Append.
Read.
Write.

ofa

Original file accessibility character.

reel

Reel number of the current volume.

exp

Julian expiration date obtained from the first header (HDR1) label.

Figure 2-2.

60459420 'E

Bit

File Index Table Format for Tape Files (Sheet 3 of 6)

2-11

Word
8

Description

Field
opo

Open processing options:

Bit
1
2
3

4-8

Processing Option
End-of-processing option. If 0, the system automatically
switches volumes. If set, control is returned to the
user at end of tape.
Unused.
User error processing. If 0, tape I/O errors are
returned to the operator. If set, control is returned to
the user if a tape I/O error occurs.
Unused.

ova

Original volume accessibility character.

9

mfn

Multifile set name.

A

plb

Index to the label buffer in a system table.

vsn

Volume serial number (VSN) for the currently assigned volume.

nvsn

Number of VSNs assigned to this tape file.

rpb

Records per block.

lun

Logical unit number; the ordinal in the tapes table, or
is not assigned.

pvsn

Index to the VSN list in a system table.

mpru

Maximum length of the physical record unit (PRU).

sfo

File organization:

B

C

°
D

Current file position.

fsn

File sequence number.

fmtp

Format parameter.

°
2
Figure 2-2.

2-12

Sequential.

ctfp

Dl.u\,;~iu~

° if the unit

Refer to the tapes table.

cype:
SIL assumes the file was created before SIL was added to the
system; therefore, it enters default values in the SIL fields
of the file index entry.
Character type blocking (C) •.

File Index Table Format for Tape Files (Sheet 4 of 6)

60459420 E

Word

Description

Field

D

mnr

Minimum record length; 24-bit length in number of bytes.

E

pcvsn

Index to the current place in the VSN list in MFPP.

rpo

Request processing options:

Bit

Processing Option

1-10
11

Unused.
Error retry parameter.
reading the tape:

o
1
12
13

1

14

1

15-16

not allowed to read past the end of
or the end of tape.
allowed to read past the end of
or the end of tape. This could cause
go off the reel.

When the
the load
When the
the load
drive.

tape is released, the tape is rewound to
point and unloaded from the drive.
tape is released, the tape is rewound to
point, but it is not unloaded from the

Unused.

Record type:

o
1
2
7

Control word (W).
ANSI fixed length (F).
Record mark (R).
Undefined (U).

Maximum record length; 24-bit maximum length in number of bytes.
Figure 2-2.

60459420 E

The user is
information
The user is
information
the tape to

Tape unload processing option (inhibit unload):

o

mxr

Standard error recovery processing takes place
when a hardware read/write error occurs.
Error inhibit; all hardware read/write errors are
ignored and processing continues.

Unused.
Read unconditional processing option:
0

rt

This field only applies when

File Index Table Format for Tape Files (Sheet 5 of 6)

2-13

F

Description

Field

Word

lproc

Label processing option:

o
1

Read labels.
Write labels.

Data conversion option:

conv

o

There is no data conversion.
Convert data.

1

vri

Variable rate index transferred to the descriptor block to be used for
variable rate accounting. Valid for virtual files only.

rmk

Record mark; 8-bit ASCII character (any character is valid).

pc

Padding character; 8-bit ASCII character (any character is valid).
Figure 2-2.

Table 2-1.
Destination
Any

2-14

File Index Table Format for Tape Files (Sheet 6 of 6)

File Disposition Specifications in the File Index Table
Value

Disposition

Mnemonic

0

None

No disposition.

1

SC

Scratch.

1110

PU

Punch.

1120

PR

Any available line printer.

60459420 E

Table 2-2.

File Characteristic Specifications in the File Index Table
Format

Type

Value

Mnemonic

Internal characteristics
(fiic field in word 9)

0

None

Use internal characteristics default
(currently PA).

1

PA

Eight-bit ASCII. If the fidc field
indicates a print file, the file has
free-form carriage control.

2

BI

Binary.

3

AS

Eight-bit ASCII. If the fidc field
indicates a print file, the file has
ANSI-defined carriage control.

0

None

Default 29.

1

29

029 keypunch.

2

26

026 keypunch.

3

80

80-column binary.

External characteristics
for punch files
(fiec field in word 9)

60459420 H

I

2-15

MINUS PAGE
VSOS recognizes two types of files: virtual files, usually containing executable code, and
physical files, always containing nonexecutable data only. A virtual file is prefaced by at
least one 512-word block containing program execution and data access information to be used
by the operating system. This preface is known as the minus page and is created by the
operating system at load time. Physical files do not have minus pages.
The minus page of a virtual code file is created at load time to pass information such as
the entry point address, the length of the drop file, the code origin, data base locations,
and so forth. The operating system needs this information for starting program execution.
Once execution begins, the operating system uses the minus page to store the invisible
package, time-slicing data, I/O connection blocks to high-speed devices, maps of defined
virtual space, time-sharing data, and statistics relating to resource usage. If the program
execution terminates abnormally, the minus page is stored on the drop file and can be used
for debugging purposes. The original minus page remains on the virtual code file as
initialized at load time. In addition, drop files may contain a second minus page
(immediately following the first), which is a logical extension of the first minus page.
An executing controllee cannot access its minus page except via system messages. A
control lee can execute the SIL call Q5GETMPG to copy it's minus page. Otherwise, the minus
page is like any other part of a file, and can be accessed explicitly or implicitly.
The minus page has the format shown in table 2-3. Individual words are described in the
table, with the contents of the invisible package shown in appendix E.
The working set pager information buffer in the minus page is used by PAGER to store
information about a task's working set. The buffer occupies words #29 through #31.
The leftmost 16 bits of word #88 or #136 of the first minus page contains the second minus
page pointer. If this field contains a 0 or #FFFF, there is no second minus page.
Otherwise, this field contains the physical page address of the second minus page.

2-16

60459420 E

Table 2-3.

Minus Page Format (Sheet 1 of 2)

Words
Decimal

o-

Hexadecimal t

o-

39

27

Contents
Executing program invisible package.

40

28

Unused.

41 - 49

29 - 31

Working set pager information buffer.

50 - 52

32 - 34

Program restart temporary buffers.

53, 54

35, 36

Time information required by the operating system
for alternator and message management.

55, 56

37, 38

Same as words #32 to #34.

57, 58

39, 3A

Used by application accounting.

3B

Error code saved during abnormal termination control
processing.

59 (bits 16 - 23)

3B

Device number of the device causing the fatal PAGER
I/O error.

59 (bits 24 - 31)

3B

Pack number of the device causing fatal PAGER I/O
error.

59 (bits 32 - 63)

3B

Unused.

60

3C

Buffer flushing, ATC process, drop file and reload
status information.

61

3D

Database address for buffer flushing.

64 - 123

40 - 7B
(2 - D9)

I/O connectors for user disk or tape files.

124 - 127

7C - 7F

If controllee is dynamic, this is the I/O connector
for the SHRLIB (#F).

128 - 131

80 - 83

I/O connector for the source file (#10).

132 - 135

84 - 87

I/O connector for the drop file (#11).

59 (bits

o-

15)

tWords shown in parentheses are second minus page values.

60459420 E

2-17

Table 2-3.

Minus Page Format (Sheet 2 of 2)

Words

o-

88

Second minus page pointer.

136 (bits 16 - 23)

88

Reserved.

136 (bits 24 -31)

88

Unused.

136 (bits 32 - 63)

88

Directory for bound explicit map entries.

89

Unused.

89

Directory for bound implicit map entries.

8A

Third minus page pointer.tt

138 (bits 16 - 27)

8A

Unused.

138 (bits 28 - 63)

8A

Directory for drop file map entries.

139

8B

System error code.

140 - 150

8C - 96

Time usage and accounting entries.

151 - 152

97 - 98

Q5TERM information for buffer flushing.

153

99

Drop file size.

154 - 156

9A - 9C

Unused.

157 - 159

9D - 9F

Reserved for installation.

160 - 175

AO - AF
(DA - 10F)

I/O).

BO - FF
(110 - IFF)

I/O).

100 - IFF

Drop file map.

136 (bits

137 (bits

o-

15)

31)

137 (bits 32 - 63)
138 (bits

I

Contents

Hexadecimalt

Decimal

176 - 255
256 - 511

o-

15)

Bound explicit maps (of file opened for explicit
Bound implicit maps (of file opened for implicit

tWords shown in parentheses are second minus page values.
ttThe format of the third minus page is:
Word 0 to 340 contains drop file map full-word entries.
Word 341 to 511 contains drop file map half-word entriP~a

2-18

60459420 H

I/O CONNECTORS
Words #40 through #87 of the first minus page contain the first 18 I/O connectors. Words #2
through #D9 of the second minus page contain the remaining 54 I/O connectors. An I/O
connector (laC) is a four-word block used to establish a link between the program and an I/O
device. The operating system also uses I/O connectors to keep track of the activity of a
specific file and a program's use of that file. Each time a program issues an OPEN FILE
request, an I/O connector is created and initialized by the system with information provided
in the request and in the file index table.
Each program can have up to 70 connectors for user files, numbered 0 through #F and IH2
through #47. The I/O connector for the program's source file is numbered #10, and the I/O
connector for the program's drop file is #11. The I/O connector for the system shared
library file, if used, is #OF. I/O connectors numbered 0 through #F and #12 through #47 can
be allocated by the user or automatically allocated by the system.
Formats of the I/O connectors are illustrated in figures 2-3, 2-4, and 2-5. The connector
for a mass storage file opened for explicit input and output is shown in figure 2-3; the
connector for a mass storage file opened for implicit input and output is shown in
figure 2-4. The connector for a tape file is shown in figure 2-5.
In figure 2-4, when the name field contains a drop file name, the fourth word of the I/O
connector serves the same purpose as the second word of a bound implicit map entry for a
source file.

o

63

o

name
64

en

m 1m
e
a ~ t
t 4e 2

hpa

2
mfs

fsto

2

16

24

errno

3

pbe

t g~

t AS C:O Et

20 2tf
11
wda

24

8

aes

3 1111 11

unused

r wn
0

I

5 v

2

I

1
15

bien
48

16

tUnused.
A pattrn
B gap
C fault
o Igpg
E extf

Word

Field

Description

o

name

Name of the file in ASCII. File names must be in the format described
in chapter 3, File Concepts.

1

mcat

File management category:

°1
2
3
4
5
6
7
Figure 2-3.
60459420 G

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
Magnetic tape file.
User-generated drop file.
System-generated drop file.
Batch file.
Format of I/O Connector for a Mass Storage File
Opened for Explicit I/O (Sheet 1 of 3)
2-19

Word

Field
mode

Description
Mode of input/output:

o

Open for explicit I/O.
Open for implicit I/O.

1
hpa

Page address of the highest page accessed.

pbc

Page byte count; number of bytes written to user's dayfile.

cont

Contiguous flag.

noext

No extension flag.

acs

File access permissions. This 5-bit field is treated as five I-bit
fields with each bit specifying the associated permission:
Bit
x
m
a
r
w

priv

8
4
2

1

Execute access permitted.
Modify access permitted.
Append access permitted.
Read access permitted.
Write access permitted.

Regular open.
Privileg~d open.

File ownership (refer to File Concepts, chapter 3).

o

The values are:

Private.
Public.
Pool.

1
2
fsto

File segment table ordinal.

mfs

Minimum file size to which this file needs to be extended.
XIOCALL when the extf flag is set.

pattrn

Set if need to faul t in the unused portion of the I/O buffer for
patterning.

gap

Set if GAP patterning needs to be done.

fault

Flag bit.
complete.

19p9

Large page flag bit.
I arge pages.
Figure 2-3.

2-20

Description

Privileged open designator:
1

2

Set if file is not extendable.

Hex. Value
10

o
own

Set if file is contiguous.

Set by

Set if Fc=lIf500 call will be reissued after PAGER I/O is
Set only if the file is to be extended with

Format of I/O Connector for a Mass Storage File
Opened for Explicit I/O (Sheet 2 of 3)

60459420 F

Word
2

3

Description

Field
extf

Extend flag bit.

ptr

For a privileged open file, the owner's user table (UT) entry or the
pool list table (PLIST) entry number.

errno

Error number returned from EXTENDF call.

blen

Length of I/O buffer.
Figure 2-3.

60459420 G

Set if the file needs to be extended.

Format of I/O Connector for a Mass Storage File
Opened for Explicit I/O (Sheet 3 of 3)

2-20.1/2-20.2

I

o

63

o

name
m m
c 0
a d t
t4 e2 2

2

hpa

64
c n
p 0
0
r w
t
e acs i n
5 v1 2
20 2 t1 f1

g

pbc
24

fsto

t

mfs
16

24

1

e

69

l

gx t

15

11

3

unused
13

31

con
3

len

DROP

Ifa
24

24

unused

I

ptr

1

vba

FILES

NONDROP
FILES

tUnused.

Word

Field

Description

0

name

Name of the file, in ASCII. File names must be in the format
described in File Concepts (chapter 3).

1

mcat

File management category:

o
1
2
3
4
5
6
7
mode

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
Magnetic tape file.
User-generated drop file.
System-generated drop file.
Batch file.

Mode of input/output:

o
1

Open for explicit I/O.
Open for implicit I/O.

hpa

Page address of the highest page accessed.

pbc

Page byte count; number of bytes written to user's dayfile.

cont

Contiguous flag.

noext

No extension flag.

acs

File access permissions. This 5-bit field is treated as five I-bit
fields with each bit specifying the associated permission:

Figure 2-4.
60459420 G

Set if file is contiguous.
Set if file is not extendable.

Bit

Hex. Value

Description

1
2

10

3
4

4
2

5

1

Execute access permitted.
Modify access permitted.
Append access permitted.
Read access permitted.
Write access permitted.

8

Format of I/O Connector for a Mass Storage File Opened
for Implicit I/O (Sheet I of 2)
2-21

Word
1

Description

Field
priv

Privileged open designator:

o

Regular open.
Privileged open.

1

own

File ownership (refer to File Concepts, chapter 3).

o

Private.
Public.
Pool.

1

2
2

I
3

The values are:

fsto

File segment table ordinal.

mfs

Minimum file size to which this file needs to be extended.
is set by PAGER when the extf flag is set.

19p9

Large page flag bit; set only if the file is to be extended with large
pages.

extf

Set to 1 by the operating system if the file needs to be extended.

ptr

For a privileged open file, the owner's user table (UT) entry or the
pool list table (PLIST) entry number.

con

For a drop file, a control field with the following format:

This field

(drop
files)
cl

Subfield
cl=l
c2=1
c3=0
c3=1

c2

c3

Description
Write access is permitted.
Read access is permitted.
File is contained on small pages.
File is contained on large pages.

Otherwise, this field is O.

3
(nondrop
files)

len

For a drop file, the length of the file, in blocks.
field is O.

lfa

For a drop file, the logical mass storage sector address of this
file's first page. Otherwise, this field is O.

vba

Virtual block address of the start of the file.
not mapped in from the start of the file.

Figure 2-4.

2-22

Otherwise, this

Zero if the file is

Format of I/O Connector for a Mass Storage File Opened
for Implicit I/O (Sheet 2 of 2)

60459420 G

o

flags

63

o

name

64
m
0

meat

4

d t
e
2 2

t

2

2

leall

Isfne

25

4

nor

opo

2

m
e

t

aes

lun

8

8

5

3

teall

8

8

48

mpru

3

fmtp

32

32

t Unused.

Word

Field

Description

o

name

Name of the file in ASCII. File names must be in the format described
in File Concepts, Chapter 3.

1

mcat

File management category:

o
1

2
3
4

5
6

7
mode

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
Magnetic tape file.
User-generated drop file.
System-generated drop file.
Batch file.

Mode of input and output:

o
1

Open for explicit I/O.
Open for implicit I/O.

mc

Reserved.

flags

Status flags:

errb

Figure 2-5.
60459420 E

wvsb

Bit

Name

1
2

errb
wvsb

3
4

syop
wrb

syop

wrb

Description
An error was returned for at least one call.
Set by RESIDENT if all I/O has completed, but
virtual system completion routine has not run.
Set if the system is processing OPEN.
Set if a write was issued for this file.

Format of I/O Connector for a Tape File (Sheet 1 of 2)
2-23

Word

Description

Field
lcall

Physical word address of the last outstanding request.

lsfnc

Last subfunction issued for this tape file.

lun

Logical unit number.

acs

Access permission:
1
2
3

2

3

This field contains the tapes table ordinal.

Write access only is permitted.
Read access only is permitted.
Read and write access are permitted.

opo

Open processing options.

nor

Number of outstanding requests.

tcall

Virtual bit address of the first outstanding request or top call.

mpru

Maximum PRU size.

fmtp

Format parameters as defined in the TAPE MANAGEMENT system message.

Figure 2-5.

Refer to the OPEN FILE system message.

Format of I/O Connector for a Tape File (Sheet 2 of 2)

60459420 E

MAP DIRECTORIES
Words #88 through #8A of the first minus page contain map directories. Each map directory
contains information relating to the location and length of its associated file map. Each
directory occupies the second half-word of its location in the minus page. For the first
minus page, the bound explicit map directory is at word #88; the bound implicit map
directory is at word #89: and the drop file map directory is at word #8A. Each directory is
formatted as shown in figure 2-6. For the second minus page, the bound explicit map
directory is at word 0, and the bound implicit map directory is at word 1.

o

63
non map directory information
28

Figure 2-6.

60459420 G

count of
entries 12

pointer to first entry
of this type of map

24

Map Directory Format

2-25

I

MINUS PAGE FilE MAPS
The file maps in the minus pages associate files with physical mass storage areas. For
files opened for implicit I/O, the maps associate physical mass storage areas with virtual
address areas. Each time a program opens a file for explicit I/O, one entry is made in a
bound explicit map. The MAP message (f=#0004) places entries in a bound implicit map.

Bound Explicit Maps

I

Words #AO through #AF of the first minus page and #DA through #lOF in the second minus page
contain bound explicit maps. These maps are related to files opened for explicit I/O
(mode=O). Each file that has been opened for explicit I/O corresponds to one map entry; the
files are identified by their I/O connector numbers. The format of the bound explicit map
entry is shown in figure 2-6.1.
63

0
unused

01
~

0

13hl

Ifa

len

2.1

Field
.. con

241

Description
Flag bits, in the following format:

c1

c2

c3

Subfield

Description

c1=1
c2=1
c3=O
c3=l

Write access is permitted.
Read access is permitted.
File consists of small blocks.
File consists of large blocks.

Otherwise, the field is O.
len

Length of the file, in blocks.

lfa

Logical file address of the first block of this segment of virtual
space.
Figure 2-6.1.

2-26

Bound Explicit Map Entry Format

60459420 G

Bound Implicit Maps

Words #BO through #FF of the first minus page and #110 through #lFF in the second minus page
contain bound implicit maps. These maps are related to files opened for implicit I/O
(mode=l); such files can consist of discontinuous virtual address ranges. Up to 160 virtual
address space segments can be mapped simultaneously. All the segments can be associated
with one I/O connector, or each segment can be so associated. The format of a bound
implicit map entry is shown in figure 2-7.
In bound implicit map entries, all first words are in the first half of the map space, and
all second words are in the second half. Entries are sorted by ascending virtual page
address; blank entries are squeezed out. Observe that both minus pages have a first half of
the map space so that no map entry is split between the two minus pages.

o

63

ioe

fsto

16

vpa

unused

8

33

7

n
0

2

unused

P con
s

12 1

Word

2

Ifa

len

3

24

Field

24

Description

fsto

File segment table ordinal.

ioc

I/O connector number associated with this segment.

vpa

Virtual page address of the first block of this segment.

nops

Flag bit indicating there is not yet physical space associated with
this map entry.

con

Flag bits in the following format:

e1

Subfield
C1=1
C2=1
C3=1

e2

e3

Description
Write access permitted.
Read access permitted.
File consists of large pages.

len

Length of this segment in blocks.

lfa

Logical file address of the first block of this segment.
Figure 2-7.

60459420 E

Bound Implicit Map Entry Format

2-27

DROP FILE MAP

I

I
I

I

Half of the first minus page and the whole third minus
case of a free-space attachment to a file, the defined
file on which it can reside if it becomes necessary to
attachments are cataloged in the drop file map in much
virtual space are cataloged in the bound implicit map.

page are
space is
swap the
the same

a drop file map. In the
allocated a part of the drop
attachment out. Free-space
way that other kinds of

Each drop file map entry consists of one full word and one half word. Up to 511 entries can
be made in the drop file map, and each entry can have up to 32 associated pages. This
allows for up to 511 noncontiguous address spaces to be part of the drop file.
The first and third minus page have 170 and 341 full word map entries respectively. The
format of these entries is shown in figure 2-8. The 170 half-word entries that follow the
full-word entries correspond as shown in figure 2-9. Each half-word entry consists of 32
bits, 1 bit per page. If the bit is 0, the page is either undefined or exists in main
memory or on the paging device; if the bit is 1, the page has been written to mass storage
on the drop file. Bit 0 or 32 corresponds to page 1 of a segment; bit 31 or 63 corresponds
to page 32 of a segment.

0

I
Word
0

Ifa

length

I

vpa

13

Field

Description

lfa

Logical file address of the first block of this segment of virtual
space.

pgsz

Size of the pages in this segment of virtual space:

o
1

Small pages.
Large pages.

length

Length of this segment of virtual space in blocks.

vpa

Virtual block address of the first page in this segment of virtual
space.
Figure 2-8.

2-28

63

Drop File Map Full-Word Entry Format

60459420 G

o

63

32
1

32

3

2

32

4

32
5

32
6

32

32

,

~

?

';J

107

32
109

Figure 2-9.

60459420 E

32

108
10A

32
32

Drop File Map Half-Word Entry Format

2-29

TAPES TABLE

I

The tapes table holds pertinent information about the tape units and the volumes which are
in use on them. There is one entry per unit. The tapes table entry is returned to the user
in the TAPE FUNCTION system message after the completion of a request. The tapes table
entry is also returned to the user in the OPEN, CLOSE, and TAPE SWITCH VOLUME system
messages if the user supplied a buffer. Refer to chapter 4 for more detailed information on
use of this table.
The format of the tapes table is shown in figure 2-10.

o

63
t

I

uato

pzip

2

t
8

4

db

bzip
8

8

16

8
tad2

tad1
8

jdt

rpo

ioe

4

8

8

3

pu
4

Ibsn
8

8
stun

cflgs

dev
12

8

8

Ifn
64

4

fsn

sn
16

fwe

pepr

fre
8

16

8

8

wer
4

rer
4

time

5

64

6

reel

vsn
16

48

bid1

7

bid2
16

8

bid5

9
fe

abc

etfp

trre
16

c

elflg

16
cbc
24

8
stce

16
pruct

8

bid12
16

24

twre

16

bid11
16

8

8

bid8
16

bid10
16

A

bid7
16

bid9

16

16

bid6
16

bid4

bid3
16

dtee
16

tflgs
24

16

16
r
eml denl t d
t
y
4
4 3 b
4

tUnused.

Word

I

1

Field

Description

uato

User activity table ordinal.

db

Descriptor block number; nonzero if opened.

ioc

Input/output connector.
Figure 2-10.

2-30

Tapes Table Format (Sheet 1 of 5)

60459420 F

Word

Field
rpo

1

Description
Request processing options:
Bit
32-41
42

Description
Unused.
Error retry parameter.
reading the tape:

o
1
Unused.

44

Read unconditional processing option:

1

45

when

The user is
information
The user is
information
the tape to

not allowed to read past the end of
or the end of tape.
allowed to read past the end of
or the end of tape. This could cause
go off the reel.

Tape unload processing option (inhibit unload):

o
1
46-47

a~plies

Standard error recovery processing takes place
when a hardware read/write error occurs.
Error inhibit; all hardware read/write errors are
ignored and processing continues.

43

o

2

This field only

When
load
When
load

the tape is released, it is rewound to the
point and unloaded from the drive.
the tape is released, it is rewound to the
point, but it is not unloaded from the drive.

Unused.

jdt

Job descriptor table ordinal.

lbsn

Last boat sequence number; each boat is assigned a sequence number.
lbsn is the sequence number for the last request on this unit.

pzip

Primary zip for this unit.

bzip

Backup zip for this unit.

tad1

First tape access driver NAD number.

tad2

Second tape access driver NAD number; 0 if single access.

pu

Physical unit (0 through #F).

dev

Device unit number (#100 through #iFF).
Figure 2-10.

60459420 E

Tapes Table Format (Sheet 2 of 5)

2-31

Word
2

Description

Field
cflgs

Central flags:
Bit

Name

Description

48

PDWNB
BDWNB
TIDB
T2DB

Status of primary inboard NAD.
Status of backup inboardNAD.
Status of tape access NAD 1.
Status of tape access NAD 2.
Unused.
Single access bit.
Unused.

49-50
51
52
53-54
55
56
stun

SACB

Status of the unit:
Bit

Name

Description

56
57-59
60-62
61
62
63

RERB
STRES
ASNB
ROB
OWNB
OFFB

Resident detected error.
Free.
Assign bit.
Read-only bit.
Down bit.
Off bit.

3

lfn

Logical file name; set if unit is assigned.

4

fsn

Current file sequence number for an ANSI labeled tape; 0 for
unlabeled/nonstandard tape.

sn

Current file chapter number for an ANSI labeled tape; 0 for
unlabeled/nonstandard tape.

fwe

Fatal write errors.

fre

Fatal read errors.

pepr

Positioning errors per reel.

wcr

Number of consecutive reels in which write recoverable errors exceeded
the threshold.

rcr

Number of consecutive reels in which read recoverable errors exceed
the threshold.

5

time

Length of time the unit was assigned, in microseconds.

6

reel

Reel number of the current volume.

vsn

Volume serial number of the currently assigned reel.

bidl
through
bid12

The block identifier of the eleventh through the last good PRU on tape.

7, 8,
9

Figure 2-10.

2-32

Tapes Table Format (Sheet 3 of 5)

60459420 E

Field

Word

A

fc

Description
Failure code. This field is set when a unit exceeds an error
threshold or because the unit got a nonfatal or fatal marginal drive
indicator (MDI). The system automatically degrades unit status at
unload time if fc is set. fc is cleared when the unit is brought up:
1
2

3

4

Nonfatal MDI (degraded to read only).
Erase/write errors exceeded the threshold on consecutive
reels (degraded to read only). Write threshold and
consecutive reel count are installation parameters.
Erase/read errors exceeded the threshold on consecutive reels
(degraded to down). Read threshold and consecutive reel
count are installation parameters.
Positioning errors exceed the threshold on one reel (degraded
to down). Positioning threshold is an installation parameter.

abc

Absolute physical record unit (PRU) count including tape marks from
the beginning of the volume. abc is a count of the number of
interblock gaps encountered on the tape. If abc=O, the tape is at
load point.

ctfp

Current tape file position flags. If ctfp=O, the tape is positioned
in the middle of a logical record unit (LRU). The only legitimate
combination of bits is end of group (EOG) and end of information (EOI).

Bit

Tape File Position

B1-B4

Unused.
Beginning of information.
End of LRU.
End of group.
End of information.

B5
B6
B7
B8
cbc

Current PRU count from the beginning of information.
does not include label PRUs if the tape is labeled.

twre

Total accumulation of recoverable write errors in the use of this
volume. This count is put in the dayfile at unload time and cleared
at the next reel mount time.

trre

Total accumulation of recoverable read errors in the user of this
volume. This count is put in the dayfile at unload time and cleared
at the next reel mount time.

stce

Total accumulation of single-track, hardware-corrected errors. This
count is put in the dayfile at unload time and cleared at the next
reel mount time.

dtce

Total accumulation of double-track, hardware-corrected errors. This
count is put in the dayfile at unload time and cleared at the next
reel mount time.

B

Figure 2-10.
60459420 E

This PRU count

Tapes Table Format (Sheet 4 of 5)
2-33

Word
C

Description

Field
elflg

Error log flags.

pruct

PRU count.

tflgs

Tape flags.

cml

Conversion code for the label:

o
1
2
denl

Density of the label:
1
2

rdyb

Unknown.
ASCII.
EBCDIC.

6250 bpi.
1600 bpi.

Ready bit. This field is set/cleared by the scan when the tape is
ready/not ready.
Figure 2-10.

2-34

Tapes Table Format (Sheet 5 of 5)

60459420 E

FILE CONCEPTS

3

The file concepts used in VSOS are described in volume 1 of this reference manual. This
chapter describes additional file specifications used in the system messages described in
chapt.er 5.

FILE NAMES
A file has only one name associated with it; it is both its permanent file name and its
logical file name. The file name can be one to eight letters and digits long, and must be
left-justified and blank-filled within the field. User-created file names cannot contain
special characters and must begin with a letter. System-created file names can contain any
character; system-created drop files must begin with one digit. The conventions used for
naming drop files are described in volume 1 of this reference manual.

FILE OWNERSHIP
Privileged users have ownership rights over all files except local files. A nonprivileged
user has ownership rights determined by the values in file index table fields as shown in
table 3-1. The file index table is described in chapter 2. The GIVE FILE system message
can change file ownership.
The file owner specifies the file attributes. To permanently change file attributes, the
appropriate fields in the ,file index table must be changed (refer to the CHANGE FILE
ATTRIBUTES system message in chapter 5).
The three file ownership categories are private, pool, and public. Each private file
cataloged in the file index table belongs to a particular user number and account
identifier. When a private file is given by one user to another, the user number associated
with the file changes immediately. However, the account identifier does not change until
the new owner references the file. The system accounting tables indicate the total amount
of time that the original account owned the file.
Calls to the POOL FILE MANAGER system message perform the same functions as the pool file
utilities and SIL calls described in volume 1. The GIVE FILE system message can give files
to a pool; the DESTROY FILE system message can destroy pool files.
Public files are owned by user number 000000, signifying system ownership. The list of
public files is controlled by the installation administrator or by privileged tasks.

60459420 F

3-1

Table 3-1.
File
Category

File Index Table Fields that Affect File Ownership

File Index
Table Field

Nonprivileged
User

Privileged
User

Public

buser = 0

All users

All users

Pool

POOLNAME = poolname

Pool boss

Users according to pool access
list of user numbers

Private

gacs = 0 and no
access directory

Originating usert

Originating usert

gacs :/: 0

Originating usert

All users

Access directory exists

Originatingusert

Users in access directory and
originating user

tOriginating user number determined by the user field of the file index table.

FILE ACCESS
File access is controlled by the file ownership category, file access permission fields, and
security level in the file index table entry. All file references require the task to be at
an equal or higher security level than the file which the user is trying to access.
Assuming this requirement is met, all users can access public files; users given access to a
pool can access files in the pool; the file owner can access private files. The file owner
can also give other users access to a private file. Privileged users can access any
permanent file on the system, regardless of the access permissions.
Read, write, append, modify, and execute access are controlled by the permission parameter,
which is set either when the file is created or by subsequent permission calls. A file with
write access can be written into by a user program or by the operating system.
An attempt to write into a read-only file produces a fatal error. The only exception is
that the OPEN FILE message (f=#0003) can be used to indicate that during subsequent
execution in the task, pages of read-only files can be mapped with MODDROP (write-temporary)
access.
When the user opens a file, he requests read, write, modify, execute, or modify access. The
system checks if the requested access is allowed for the file by checking the appropriate
access permissions. For example, if write permission has not been specified for the file,
write access cannot be granted to the file. If no access is explicitly requested, the
default access is as many permissions of read and/or execute as the user is granted.
Each private file access defaults to wait for a file, if it is already attached in such a
way that file access cannot be shared.

PRODUCTION FILES
A site may use additional security measures which include designating executable files as
production or nonproduction files and users as production or nonproduction users.
Production users can only execute production files. Refer to the Installation Handbook for
further discussion.
3-2

60459420 H

FILE MANAGEMENT CATEGORIES
The management category field in the file index is a combination of device type~ disposition
information~ and file origin information.
This file index table entry determines the system
management of the file. The possible category designations are:

•
•
•
•
•
•
•

Mass storage file
Scratch file
Output file
Drop file
MODDROP file
File connected to a terminal
Tape file

I

MASS STORAGE FILES
The originating user controls the creation and disposition of mass storage files. VSOS
protects mass storage files from access or destruction by other nonprivileged users.

SCRATCH FILES
Only a task can create scratch files. Scratch files exist during the originating task's
activity. When the task terminates normally~ all scratch files are automatically
destroyed. When the operating system terminates the task and saves its drop file~ scratch
files are saved. A CLOSE FILE system message specifying a scratch file destroys the file.
All scratch files have read and write access.
Scratch files are a subset of local files. Local files exist for the duration of the user
job; scratch files exist only for the duration of the task. Scratch files can be created
only on mass storage.

6045Y4:l0 F

3-3

I

OUTPUT FILES
Output files contain information suitable for processing by an output device, such as a
printer, card punch, or microfilm device. Only a user task or utility can create an output
file. When one of the following occurs for batch jobs, VSOS gives all output files with
valid disposition codes to privileged system tasks for output processing.
•

The task terminates normally.

•

The task issues a CLOSE FILE (f=#0005) message.

•

The task issues a TERMINATE (f=#0006) message.

After output files are processed, they are destroyed.

DROP FILES
VSOS creates a drop file for each task called into execution. If a local file already
exists which has the same name as the target file name, the system destroys the existing
local file and creates a new drop file. The executing task is called the source file. Its
drop file contains modified pages of the source file, free space, and write-temporary
files. Modified pages for other files are written directly to the re$pective file. Drop
files may exist on mass storage or tape, but must exist on mass storage when used in the
execution of a controllee. Volume 1 gives further description of drop files and their
naming conventions.

MODDROP (WRITE-TEMPORARY) FILES
A MODDROP file is a read-only file that has been modified while paged in to central memory.
The modified pages cannot be paged back to the read-only file, and so are paged to the drop
file. Subsequent references to those pages access the modified version from the drop file.
To reference the original read-only version, the modified pages must be removed from the
drop file. Only files being used implicitly can be MODDROP files. This form of access is
selected when the file is opened.

FILES CONNECTED TO A TERMINAL
Files connected to a terminal are useful for small amounts of interactively entered I/Os.
The task may create, open, and destroy such files through virtual system calls, but must
perform using SIL subroutines. These files may be used only by a level-2 or lower
controllee execution.

TAPE FILES

I

A tape file is a file that has been stored on tape rather than in mass storage. The system
treats tape files as a separate file management category. (Refer to chapter 4, Tape
Management. )

3-4

60459420 F

FILE I/O
As described in volume 1, VSOS performs two types of input/output, implicit and explicit.
The type of input/output is specified in the OPEN call. The type of I/O that may be done to
a file is dependent on the device type.
The EXPLICIT I/O (f=#F500) and TAPE FUNCTION (f=#F406) system messages perform explicit
I/O. With a single system request, these messages can transfer one or more blocks between
the specified buffer and a storage device. The system locks down the buffer in memory while
the peripheral request is active; it cannot be paged out while I/O is going on. More system
action is required to prepare for explicit than for implicit I/O.
The mass storage EXPLICIT I/O message (f=#F500), a single I/O request, may transfer up to 24
small or large pages.
The TAPE FUNCTION message (f=#F406) performs explicit tape I/O. The buffer cannot span more
than 48 small or large pages. Small and large pages cannot both exist in the buffer at the
same time.
Implicit I/O is performed only with mass storage files. With implicit I/O, information
transfers directly between a storage device and its current location in central memory. The
transfer occurs when the user causes an access interrupt by referencing a page of data or
code not in memory. If the virtual page has been previously associated with physical space
via the MAP function, the system transfers the data between memory and the physical device.
If a virtual-to-physical relationship has not been previously established, the system
defines the virtual page in free space so that it becomes an extension of program space.
Files connected to terminals do not use explicit or implicit I/O messages. This type of I/O
is a SIL feature. SIL translates Q5GETN and Q5PUTN calls into Q5GETMCR and Q5SNDMCR calls
and uses the message processing facilities in the system.
VSOS recognizes two types of file addressing, physical and virtual.

PHYSICAL FILES
A physical file is accessed by physical addresses. It is, by definition, a data file. It
cannot be executed. File I/O can be implicit or explicit. A physical file never has a
minus page.

VIRTUAL FILES
A virtual code file is a controllee file produced by the LOAD utility.
its minus page.

60459420 F

Its first block is

3-5

I

I

4

TAPE MANAGEMENT

TAPE ASSIGNMENT
Whenever a tape is mounted, the system checks for labels. If the tape is labeled, the
system records the VSN from the VOLl label in the system tapes table. If a requested VSN
matches a VSN in the tapes table, the system automatically assigns the tape to the
requesting job. If there is no match, the system suspends the job until the tape with the
requested VSN is mounted. If a tape is unlabeled, the operator must type in a VSN for the
tape. If the job did not specify a VSN when it requested the tape file, the sytem requests
that the operator specify a VSN for the job. When the job and the tape unit have a matching
VSN, the tape unit is assigned to the job. Observe that assignment of a NOS tape can occur
only if the VSN is six characters long.

RECOVERY
VSOS handles tape recovery for the physical record unit (PRU) and for user errors in the
following manner.

PRU RECOVERY
The system PRU recovery of bad reads and writes of tapes is done at the driver level. The
advanced tape system (ATS) features such as controlled backspace, selectable clipping
levels, and block ID identification are employed. For group-encoded (GCR) tapes,
single-track write correction and dual-track read correction are used (single-track write
correction can be disabled by the user).
A block ID is a hardware-generated identifier for use in positive positioning of tape during
error recovery. There is 1 identifier per PRU and the last 12 identifiers are kept in the
tapes table. The absolute block count is the count of PRUs, including tape marks since load
point. The current block count is the count of PRUs since the previous label group. The
block IDs and block counts are kept current on a volume-by-volume basis and are cleared on a
rewind or unload. The block IDs are discarded one PRU at a time for a backspace.

USER ERROR RECOVERY
If the user selects user error processing (UEP) at open time, the system returns control to
the user after a tape I/O error (#100 through #1FF) or tape subsystem error (#200 through
#2FF) occurs. Observe that PRU recovery at the driver level has not been able to recover
this error. The user can choose to skip the failing data.

60459420 E

4-1

SYSTEM LABEL PROCESSING
VSOS processes both nonstandard and ANSI standard labeled tapes.

NONST.ANDARD LABELS

The system permits the user to process nonstandard labels if the installation parameter IP
TPNSL equals 1. The user must request the tape with a label type of nonstandard. Then it
is possible for the user to supply labels in the OPEN FILE system message. A nonstandard
label consists of 80-character PRUs delimited by tape marks as in ANSI standard label. The
only difference in system processing of standard/nonstandard labels is the system omits any
verification of fields for nonstandard labels. Also, the system does not position to
nonstandard labels. The system does not inhibit ANSI standard labels from being processed
as nonstandard if the installation parameter IP TPNSL equals 1.

ANSI LABELS

ANSI labels conform to the American National Standard Magnetic Tape Labels for Information
Interchange X3.27-1978.
VSOS processes labels
characters of an ANSI
number within a label
and whether or not it

at level 2. All labels are 80 characters long. The first three
label identify the label type. The fourth character indicates a
type. Table 4-1 shows a summary of each label type, name, function,
is required.

Required Labels

The VOL1, HDR1, and EOF1 labels are required on all ANSI-labeled tapes. In addition, an
EOV1 label is required if the physical end-of~tape reflector is encountered before an EOF1
label is written or if a multifile set is continued on another volume. In the descriptions
of the contents of these labels, n is any numeric digit and a is any letter, digit, or any
of the special characters of the center four columns of the code table in ANSI X3.4-1977
except position 5/15. Refer to appendix A for this code table.
Some fields are optional. An optional field which does not contain the designated
information must contain blanks. Fields which are not described as optional are required
and written as specified. All n-type fields are right-justified and zero-filled, and a-type
fields are left-justified and blank-filled.
For reading labels, nonzero fields in the user HDR1 label buffer are compared with .the tape
HDR1 label until a match occurs.
For writing labels, the fields in the user label buffer are verified for a-type or n-type as
required; however, only the file sequence number field in the label buffer is used to
position to the tape HDR1 label.

4-2

60459420 E

Table 4-1.
Label
Identifier

Number

VOL

1

UVL

Tape Label Format

Label Group Name
Beginning-of-volume
or beginning-of-file chapter

Required/
Optional

Volume header

Required

1-9

User volumes

Optional

HDR

1

File header

Required

HDR

2-9

File header

Optional

User header

Optional

Beginning-of-file

Required

Beginning-of-file

Optional

User header

Optional

End-of-file

Required

UHL
HDR

1

HDR

2-9

Beginning-of-file

UHL

t

Label Set Name

EOF

1

End-of-file

EOF

2-9

End-of-file

Optional

UTL

t

User trailer

Optional

EOV

1

End-of-volume

Required
when a
file
crosses
tape
volume

EOV

2-9

End-of-volume

Optional

UTL

t

User trailer

Optional

End-of-file chapter

An a-type character defined in the Required Labels section.

60459420 E

4-3

Volume Header Label (VOL1)
The volume header label must be the first label on a labeled tape. All reels begin with a
VOLl label. The user can use the existing VOLl label or write a new VOLl label. In either
case, the volume accessibility character in the tape VOLl label must match the original
volume accessibility (ova) in the TAPE MANAGEMENT Beta. If the user is writing a new VOLl
label, UVL labels can also be written.
The system processes the following fields in the VOLl label.
•

Label identifier

•

Label number

•

Volume identifier

•

Accessibility

•

Label-standard version

The format of the volume header label is shown in figure 4-1.

4-4

60459420 E

o

63
1

VOL

vsn

24

reserved

va

vsn

2

32

8

16

40

8
reserved

3

64
reserved

4

64
owner identifier

reserved

5

24

40
owner identifier

6

64
owner identifier

7

reserved

40

24

8

reserved

9

reserved

64
64

10

Isv

reserved

56
Word
1-2
2

5-7
10

Field

8

Description

vsn

Volume serial number assigned by the owner to identify this physical
reel of tape.

.va

Accessibility. An a-type character which indicates the restrictions,
if any, on who may have access to the information on the tape. A
blank means unlimited access.

owner
identifier

Any a-type characters identifying the owner of the physical volume.

lsv

Label-standard version:
3

blank

Labels ·and data formats on this volume conform to the
requirements of the ANSI X3.27-1978 standard.
Labels and data formats on this volume require the
agreement of the interchange parties.
Figure 4-1.

60459420 E

VOL1 Format

4-5

First File Header Label (HDRl)
The first file header label must appear before each file. When a file is continued on more
than one volume, the file header is repeated after the volume header label on each new
volume for that file. If two or more files are grouped in a multifile set, each HDRI label
indicates the relative position of its associated file within the multifile set.
If writing labels, the system first positions the tape using only the file sequence number.
If the file sequence number is 0, it defaults to the current tape file sequence number plus
one (next file). In order to extend a multifile set, the file sequence number must be set
to 9999. For this case, the system positions the tape after the last file in the multifile
set and sets the file sequence number to the last member sequence number plus one.
The system processes the following fields in the HDRI label.

•

Label identifier

•
•
•
•
•

Label number

•

File identifier
File set identifier
File chapter number
Expiration date
Accessibility

The format of the first file header label is shown in figure 4-2.

4-6

60459420 E

o

63
HDR

file identifier

1

24

32

8
file identifier

64

2
file identifier

set identifier

24

40

3

fsn

file section number

set identifier
fsn

grn

generation number

24

5

32

grn

6

8

32

24

4

8
unused

creation date

48

8
expiration date

block count

fa

40

7
block count

8

16

system code

32

32

8

8

system code

64

9
system
code

10

Word

reserved

56

8

Field

Description

1-3

file
identifier

Up to 17 a-type characters used to identify the file.

3-4

set
identifier

Up to six a-type characters used to identify the file set. To
conform to the ANSI tape standard, this value is the same for all
files of a multifile set.

file
section
number

Four n-type characters identifying the file section number. The file
section number of the first HDR1 label of a file is 0001. If the file
extends to more than one volume, this number is incremented by one for
each subsequent volume.

fsn

File
of a
0002
this

4

4-5

sequence number. Four n-type characters to specify the position
file within a file set. This value is 0001 for the first file,
for the second, and so on. In all the labels for a given file,
field contains the same number.
Figure 4-2.

60459420 E

HDR1 Format (Sheet 1 of 2)

4-7

Word

Description

Field
generation
number

Four n-type characters specifying the generation number of a file.
This value is 0001 for the first generation of a file, 0002 for the
second, and so on.

grn

Generation version number. Two n-type characters used to distinguish
successive iterations of the same generation. The generation version
number of the first attempt to create a file is 00. This field is not
checked for privilege jobs.

6

creation
date

Date the file was created; it is recorded as a space followed by two
n-type characters for the year followed by three n-type characters for
the day within the year.

7

expiration
date

The file is considered expired when today's date is the same as or
later than the date given in this field. When this condition is
satisfied, the remainder of the volume may be overwritten. Thus, to
be effective on multifile volumes, the expiration date of a file must
be earlier than or the same as the expiration date of all preceding
files on the volume. The expiration date is written in the same
format as the creation date.

fa

File accessibility. An a-type character which indicates the
restriction, if any, on who may have access to the information in this
file. A blank means unlimited access. An A means the owner
identification field in the VOL1 label must contain the owner's user
number. If any other character, all future accesses to the tape must
specify this character as the fa.

7-8

block
count

This field must be zero-filled.

8-10

system
code

Thirteen a-type characters identifying the operating system that
recorded this file. The tape is considered to have been written under
VSOS if the first 10 characters match the default.

5

5-6

Figure 4-2.

4-8

HDR1 Format (Sheet 2 of 2)

60459420 E

First End-of-File Label (EOFl)
The end-of-file label is the last block of every file. It is the system end of information
for the file. A single tape mark precedes EOFI. A double tape mark written after the EOFI
label marks the end of a multifile set.
When writing labels, the system uses the fields from the HDRI label to write the
corresponding fields in the EOFI label.
The system processes the following fields in the EOFI label.
•

Label identifier

•

Label number

.'

Block count

The format for the first end-of-file label is shown in figure 4-3.

60459420 E

4-9

o

63
file identifier

1

EOF

24

32

8
file identifier

64

2
fi Ie identifier

set identifier
40

3

24

file section number

set identifier

fsn

24

4

32
generation number

fsn

grn

24

5

32
creation date

grn

8
unused

48

8

6

8

expiration date

fa
40

'7
block count

block count
8

16

system code
32

8

8

32

system code
64

9

10

Word

system
code 8

reserved

56

Field

Description

1-3

file
identifier

Up to 17 a-type characters used to identify the file.

3-4

set
identifier

Up to six a-type characters used to identify the file set. To conform
to the ANSI tape standard, this value is the same for all files of a
multifile set.

file
section
number

Four n-type characters identifying the file section number. The file
section number of the first HDR1 label of a file is 0001. If the file
extends to more than one volume, this number is incremented by one for
each subsequent volume.

4

Figure 4-3.

4-10

EOF1 Format (Sheet 1 of 2)

60459420 E

Word
4-5

Description

Field
fsn

File
of a
0002
this

generation
number

Four n-type characters specifying the generation number of a file.
This value is 0001 for the first generation of a filet 0002 for the
second t and so on.

grn

Generation version number. Two n-type characters used to distinguish
successive iterations of the same generation. The generation version
number of the first attempt to create a file is 00. This field is not
checked for privileged jobs.

6

creation
date

Date the file was created; it is recorded as a space followed by two
n-type characters for the year followed by three n-type characters for
the day within the year.

7

expiration
date

The file is considered expired when today's date is the same as or
later than the date given in this field. When this condition is
satisfied t the remainder of the volume may be overwritten. Thus t to
be effective on multifile volumes t the expiration date of a file must
be earlier than or the same as the expiration date of all preceding
files on the volume. The expiration date is written in the same
format as the creation date.

fa

File accessibility. An a-type character which indicates the
restriction t if anYt on who may have access to the information in this
file. A blank means unlimited access. An A means the owner
identification field in the VOLl label must contain the owner's user
number. If any other character t all future accesses to the tape must
specify this character as the fa.

7-8

block
count

Six n-type characters specifying the number of PRUs between this label
and the preceding HDR label group. This total does not include labels
or tape marks.

8-10

system
code

Thirteen a-type characters identifying the operating system that
recorded this file. The tape is considered to have been written under
VSOS if the first 10 characters match the default.

5

5-6

sequence number. Four n-type characters to specify the position
file within a file set. This value is 0001 for the first filet
for the second t and so on. In all the labels for a given filet
field contains the same number.

Figure 4-3.

60459420 E

EOF1 Format (Sheet 2 of 2)

4-11

First End-of-Volume Label (EOVl)
The end-of-volume label is required only if the physical end-of-tape reflector is
encountered before an EOFI label is written or if a multifile set is continued on another
volume. EOVI is preceded by a single tape mark and followed by a double tape mark.
When writing labels, the system uses the fields in the HDRI label to write the corresponding
fields in the EOVI label.
The system processes the following fields in the EOVI label.
•

Label identifier

•

Label number

•

Block count

The format for the first end-of-volume label is shown in figure 4-4.

4-12

60459420 E

o

63

1

EOV

24

file identifier

32

8
file identifier

64

2
file identifier

set identifier

40

3
set identifier

24

file section number

fsn

24

4

32

fsn

grn

generation number

24

5
grn

32
creation date

8
unused

8

6

8

48
expiration date

block count

fa

40

7
block count

8

16

system code

32

8

8

32

system code

64

9
system
code

10

reserved

8

Word

56

Field

Description

1-3

file
identifier

Up to 17 a-type characters used to identify the file.

3-4

set
identifer

Up to six a-type characters used to identify the file set. To conform
to the ANSI tape standard, this value is the same for all files of a
multifile set.

file
section
number

Four n-type characters identifying the file section number. The file
section number of the first HDR1 label of a file is 0001. If the file
extends to more than one volume, this number is incremented by one for
each subsequent volume.

fsn

File
of a
0002
this

generation
number

Four n-type characters specifying the generation number of a file.
This value is 0001 for the first generation of a file, 0002 for the
second, and so on.

4

4-5

5

sequence number. Four n-type characters to specify the position
file within a file set. This value is 0001 for the first file,
for the second, and so on. In all the labels for a given file,
field contains the same number.

Figure 4-4.

60459420 E

EOV1 Format (Sheet 1 of 2)

4-13

Word

Description

Field
grn

Generation version number. Two n-type characters used to distinguish
successive iterations of the same generation. The generation version
number of the first attempt to create a file is 00. This field is not
checked for privilege jobs.

6

creation
date

Date the file was created; it is recorded as a space followed by two
n-type characters for the year followed by three n-type characters for
the day within the year.

7

expiration
date

The file is considered expired when today's date is the same as or
later than the date given in this field. When this condition is
satisfied, the remainder of the volume may be overwritten. Thus, to
be effective on multifile volumes, the expiration date of a file must
be earlier than or the same as the expiration date of all preceding
files on the volume. The expiration date is written in the same
format as the creation date.

fa

File accessibility. An a-type character which indicates the
restriction, if any, on who may have access to the information in this
file. A blank means unlimited access. An A means the owner
identification field in the VOL1 label must contain the owner's user
number. If any other character, all future accesses to the tape must
specify this character as the fa.

7-8

block
count

Six n-type characters specifying the number of PRUs between this label
and the preceding HDR label group. This total does not include labels
or tape marks.

8-10

system
code

Thirteen a-type characters identifying the operating system that
recorded this file. The tape is considered to have been written under
VSOS if the first 10 characters match the default.

5-6

Figure 4-4.

4-14

EOV1 Format (Sheet 2 of 2)

60459420 E

Optional Labels

Six types of optional labels are processed. They are additional file header (HDR2 through
9), end of file (EOF2 through 9), end of volume (EOV2 through EOV9), user volume (UVLa),
header (UHLa), and trailer (UTLa) labels. These labels are written to tape if supplied in a
label buffer or returned to the user if a label buffer is supplied.

Additional File Header Labels (HDR2 through HDR9)
HDR2 through HDR9 labels may immediately follow HDRI.
Character
Position

Field Name

Their format is as follows:

Contents

1-3

Label identifier

HDR

4

Label number

2 through 9

5-80

Any a-type character

Only the label identifier and the label number are checked when writing label.
number must be in ascending order, beginning with 2.

The label

Additional End-of-File Labels (EOF2 through EOF9)
EOF2 through EOF9 labels may immediately follow EOFI.
Character
Position

Field Name

Their format is as follows:

Contents

1-3

Label identifier

EOF

4

Label number

2 through 9

5-80

Any a-type character

Only the label identifier and the label number are checked when writing labels.
number must be in ascending order, beginning with 2.

60459420 E

The label

4-15

Additional End-of-Volume Labels (EOV2 through EOV9)
EOV2 through EOV9 labels may immediately follow EOV1.
Character
Position

Their format is as follows:

Contents

Field Name

1-3

Label identifier

EOV

4

Label number

2 through 9
Any a-type character

5-80

Only the label identifier and label number are checked when writing labels.
number must be in ascending order, beginning with 2.

The label

User Labels
User labels may immediately follow their associated system labels. Thus, user volume labels
(UVLa) may follow VOL1, user header labels (UHLa) may follow the last HDRn label, and user
trailer labels (UTLa) may follow the last EOVn or EOFn label. Their format is as follows:
Character
Position

Contents

Field Name

1-3

Label identifier

UVL, UHL, or UTL

4

Label number

Must be 1, 2, 3, 4, and so on, consecutively
for UVL labels. For other labels, any a-type
character

5-80

Any a-type character

Only the label identifier and the label number are checked when writing labels.
checks the number of user labels of a label type; a maximum of 32 is allowed.

4-16

The system

60459420 E

SYSTEM MESSAGES

5

Programs use system messages to request VSOS processing. With five exceptions, the system
messages described in this chapter are calls to the virtual system. (The ADVISE, EXPLICIT
I/O, GIVE UP, PROCESS SYSTEM PARAMETER, and TAPE FUNCTION messages are calls to the resident
system. )

SYSTEM MESSAGE EXECUTION
A program can use either of two methods to issue a system message. It can call an SIL
subroutine which, in turn, issues a system message, or it can issue the system message
directly. SIL subroutines are described in volume 1. The SIL method is recommended because
it is recognized as the supported user interface and will remain unchanged even though the
system messages may change.
To issue a system message directly, the user presets one or two blocks of words known as the
Alpha and Beta of the message and then issues an exit force instruction. The Alpha and Beta
formats for each message are referenced in the individual message descriptions. The exit
force instruction is described in the CYBER 200 Hardware Reference Manual.
A 32-bit indirect or 64-bit direct pointer immediately follows the exit force instruction
within the instruction stream. It points to the system message Alpha. When the exit force
instruction is executed, system operation changes to monitor mode and the system message is
executed.
The hexadecimal format of an indirect message pointer is:
OOEEOOrr
rr is the number of the register containing the virtual bit address of the message.
hexadecimal format of a direct message pointer is:

I

The

OOFFaddress

I

address is the virtual bit address of the first full word of the message (12 hexadecimal
digits).
When a message is processed without error, the operating system returns control to the half
word or full word immediately following the message pointer.

60459420 G

5-1

ALPHA AND BETA WORD CONVENTIONS
System messages have a two-part standard format. The first part, called the Alpha portion,
specifies the function to be performed, the length of the Beta portion, and where to proceed
for error processing. The Alpha portion has the same general format for all messages, and
is always either two or three words in length.
The second part, called
from one message to the
described later in this
portion what the length
message descriptions in
must be. The user can,
left unchanged.

the Beta portion, contains parameters and varies greatly in length
next. The format of the Beta portion depends on the function, as
chapter for each function code. The user specifies in the Alpha
of the Beta portion is and, in some cases, where it is located. The
this chapter specify what the minimum size of any particular Beta
however, specify a larger Beta, in which case the extra space is

Alpha and Beta portions must start on full-word boundaries. They must exist in virtual
space and have read/write or write-temporary access. Alpha and Beta portions must not cross
large page boundaries.

I NOTE I
Options/control field values of #EO through
#FF, response code (r field) values of #7000
through #7FFF, and error response (ss or
cerr field) values of #EO through #FF are
reserved for installation use. The
options/control field is the 8 bits to the
left of the function code field in Alpha.
The response code field is bits 0 through 15
in Alpha (1), where bits are numbered from O.
Values returned in the r, ss, serr, and cerr
fields are in hexadecimal notation.

In the figures in this chapter, some of the Alpha and Beta words are drawn with dashed
lines. These words are optional.

5-2

60459420 F

OVERVIEW
The following are the available system messages listed according to functional areas.
comments in parentheses are meant to clarify the purpose of the message.)

(The

File Management
ACCESS CONTROL (f=#002B)
ATTACH FILE (f=#0010)
CHANGE FILE ATTRIBUTES (f=#OOOB)
CREATE FILE (f-#OOOl)
DESTROY FILE (f=#0002)
GIVE FILE (changes file ownership) (f=#0008)
POOL FILE MANAGER (f=#0026)
FILE DISPOSITION (f=#OOOD)
Tape Management
LABEL (f=;1002E)
TAPE MANAGEMENT (f=#002C)
TAPE SWITCH VOLUME (f=#002D)
Input/Output Operation
CLOSE FILE (f=#0005)
EXPLICIT I/O (f=#F500)
GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME (f=#FF02)
MAP (into virtual space) (f=#0004)
OPEN FILE (f=#0003)
TAPE FUNCTION (f=#F406)

I

Interrupt Processing
ABNORMAL TERMINATION CONTROL (f=#0020)
PROGRAM INTERRUPT CONTROL (f=#OOlC)
RETURN FROM INTERRUPT (f=#0051)
Starting and Ending Program Execution
EXECUTE IQM REQUEST (f=;10030)
EXECUTE PROGRAM FOR USER NUMBER (f=#0022)
RECALL (suspends program execution) (f=#0025)
TERMINATE (ends program execution) (f=#0006)
USER REPRIEVE (f=#002F)
Controllee Chain Processing
INITIALIZE CONTROLLEE CHAIN (f=#OOlD)
INITIALIZE OR DISCONNECT CONTROLLEE (f=#OOlB)
LIST CONTROLLEE CHAIN (f=#0013)
REMOVE CONTROLLEE FROM MAIN MEMORY (f=#0019)

60459420 F

5-3

Message Communication
GET MESSAGE FROM CONTROLLEE (f=#0017)
GET MESSAGE FROM CONTOLLER OR OPERATOR (f=#0016)
SEND MESSAGE TO CONTROLLEE (f=#0015)
SEND MESSAGE TO CONTROLLER (f=#0014)
SEND MESSAGE TO OPERATOR (f=#001A)
SEND MESSAGE TO DAYFILE (f=#0029)
SEND MESSAGE TO JOB SESSION (f=#0033)
File Space Allocation
ADVISE (on virtual space requirements) (f=#FFOO)
PROCESS SYSTEM PARAMETER (sets memory limits) (f=#FF01)
Information Retrieval
GET PACK LABEL AND PFI (f=#0011)
LIST FILE INDEX TABLE (f=#0007)
LIST SYSTEM TABLE (f=#0009)
MISCELLANEOUS (f=#0024)
Accounting
UPDATE USER DIRECTORY (f=#0023)
USER/ACCOUNTING COMMUNICATION (f=#OOOE)
VARIABLE RATE ACCOUNTING (f=#0028)
Special Functions
EXECUTE OPERATOR COMMAND (for operator user number) (f=#0021)
RHF CALL (RHF functions) (f=#002A)
SHRLIB ALTER or RESTORE (f=#0053)

5-4

60459420 F

MESSAGES
The message descriptions in this chapter are in function code order.
messages in alphabetical order.

Table 5-1.

Table 5-1 lists the

Message Function Codes (Sheet 1 of 3)

Message

Hexadecimalt
Function Code

ABNORMAL TERMINATION CONTROL

0020

ACCESS CONTROL

002B

ADVISE

FFOO

ATTACH

0010

CHANGE FILE ATTRIBUTES

OOOB

CLOSE FILE

0005

CREATE FILE

0001

DESTROY FILE

0002

EXECUTE IQM REQUESTtt

0030

EXECUTE OPERATOR COMMANDtt

0021

EXECUTE PROGRAM FOR USER NUMBERtt

0022

EXPLICIT I/O

F500

GET MESSAGE FROM CONTROLLEE

0017

GET MESSAGE FROM CONTROLLER OR OPERATOR

0016

GET PACK LABEL AND PFI

0011

GIVE FILE

0008

GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME

FF02

INITIALIZE CONTROLLEE CHAIN

0010

INITIALIZE OR DISCONNECT CONTROLLEE

001B

t#lE, #IF, and #EOthrough #FF are reserved for installation use.
Alpha(l). Abbreviated as f.
ttAvailable to a privileged system task.

6045Y420 F

I
I

Rightmost field in

I
5-5

Table 5-1.

Message Function Codes (Sheet 2 of 3)

Message
LABEL

002E

LIST CONTROLLEE CHAIN

0013

LIST FILE INDEX TABLE

0007

LIST SYSTEM TABLE

0009

MAP

0004

MESSAGE CONTROL

0018

MISCELLANEOUS

0024

OPEN FILE

0003

POOL FILE MANAGER

0026

PROCESS SYSTEM PARAMETER

FFOI

PROGRAM INTERRUPT CONTROL

001C

RECALL

0025

REMOVE CONTROLLEE FROM MAIN MEMORY

0019

RETURN FROM INTERRUPT

0051

RHF CALL tt

002A

ROUTE AND FILE DISPOSITION

DODD

SEND MESSAGE TO CONTROLLEE

0015

SEND MESSAGE TO CONTROLLER

0014

SEND MESSAGE TO DAYFILE

0029

SEND MESSAGE TO JOB SESSION

0033

SEND MESSAGE TO OPERATOR

001A

SHRLIB ALTER OR RESTORE

0053

TAPE FUNCTION

F406

TAPE MANAGEMENT

002C

t#lE, #IF, and #EO through #FF are reserved for installation use.
Alpha(l). Abbreviated as f.
ttAvailable to a privileged system task.

I
5-6

Hexadecimalt
Function Code

Rightmost field in

60459420 F

Table 5-1.

Message Function Codes (Sheet 3 of 3)

Message

Hexadecimalt
Function Code

TAPE SWITCH VOLUME

002D

TERMINATE

0006

UPDATE USER DIRECTORY

0023

USER REPRIEVE

002F

USER/ACCOUNTING COMMUNICATION

OOOE

VARIABLE RATE ACCOUNTING

0028

t#lE, #IF, and #EO through OFF are reserved for installation use.
Alpha(l). Abbreviated as f.

60459420 F

I

Rightmost field in

5-7

CREATE FILE (f=#OOOl)
The CREATE FILE message defines parameters for files. Except for files connected to a
terminal, this message also assigns space, usually on a mass storage device, names it, and
gives that space to a user. The operating system makes an entry in the file index table and
PFI for this named space (file), and initializes fields in the entry using information given
in the message. The format of the CREATE FILE message is shown in figure 5-1.
A privileged user can set some of the values in the new file index table entry the operating
system creates every time a file is created. Eight Beta words are required for a privileged
create. Only one Beta is processed per Alpha issued. In Beta(4) the user can provide a
file's access directory entry.
Beta(3) contains the virtual bit address of a file index table entry copy as shown for the
file index table in chapter 2. The user sets the following fields of the copy, which the
system uses to initialize the created file's file index table entry.
For the file's access directory entry option, Beta(4) contains
file index table extension entry. The format of this entry is
portion (message option #10) of the LIST SYSTEM TABLE message.
filled in by the system before storing to ensure that there is
being created and its associated file access directory entry.
file access directory defined, Beta(4) must contain O.

the virtual bit address of a
as described for the Beta
The first two words are
no mismatch between the file
For files that do not have a

The operating system sets the mcat and acs fields for a privileged create (c=1); otherwise,
values of the message fields are provided by the user.

5-8

60459420 E

o

63

Alpha(1)

r

len

c

16
Alpha(2)

0001

16

16

16

n

eea
16

I

Alpha(3)

48

bl

ba

I ________ -1§ _____._ _ _ _ _ _ _ _.____________ ......1a
L

Beta (1)

name
64

Beta (2)

ss

acs

Beta (3)

8

24

8

fiord

ec
x n ~ unused
8 1 11
5

pkno

slev

length

8

(c=1)

fiptr

48

16
Beta (4)

unused

fade

(c=1)
48

16
Beta (5)

csio
64

Beta (6)

unused
4

dat

meat
4

Beta (7)

sfo

rt

bt
4

4

4

reserved

pc

rmd
4

8

8

comt
8

rlmax

rlmin
24

Beta (8)

4

unused

ie
4

8

au
24

16

reserved
64

Word
Alpha(1 )

Description

Field

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

r

1

2

11214

Figure 5-1.

60459420 G

Error code was returned in an ss field of Beta(3).
User is not privileged (privileged creates only).
Beta buffer length error; the buffer length must be
greater than or equal to 8.

CREATE FILE (f=#OOOl) Message Format (Sheet 1 of 5)

5-9

Word
Alpha(l)

Description

Field
len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. All requests must provide at least four Beta
words and for privileged creates, len must be a multiple of 5.

c

Create mode:

o

Request a local file.
Define an unattached permanent file (privileged only).
Define a permanent file (make local file permanent or
create a permanent file).

1
2
Alpha(2)

n

Number of creates in this message; maximum is 16.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Beta(l)

name

File name, in ASCII~ left-justified with blank fill.
must be in the format described in chapter 3.

Beta(2)

ss

Error response field.

o
1
2
3
4
5
6

7
8
#A
#B
#C

#D
#E
#F
#10
#11
#12
#13
#14
#15
#16
#17
#18
#19

I
Figure 5-1.
5-10

File names

The values are:

No error.
File already exists.
No available mass storage for this file.
Invalid mcat specified.
Invalid C option specified.
The file index table, user table, or File Segment table
is full.
Invalid file name.
Invalid data type.
Unable to find the requested pack identifier.
If c=l or c=2, error in attempt to make file permanent.
If c=l, cannot locate user or pool.
Requested file size is greater than installation
parameter LDSK.
Number of user files exceeds installation limit.
If c=2, attempt to define a tape file.
Attempt to create a file at a higher security than
allowed.
If c=2, attempt to define a file connected to a terminal.
Illegal value in the comt (communications type) field.
Invalid access.
Illegal value in the sfo (file organization) field.
Illegal value in the bt (blocking type) field.
Illegal value in the rt (record type) field.
Invalid sfo/rt combination.
Illegal value for ostat (bits 59 through 63 of Beta(6)
must be zero).
Caller not the file owner.
Production status lost on the file. Warning only, the
file is created. Privileged create only.

CREATE FILE (f=#OOOI) Message Format (Sheet 2 of 5)
60459420 H

Word
Beta(2)

Field
acs

Description
Initial access permissions. This 8-bit field is treated as eight,
I-bit fields with each bit specifying the associated permission:
Bit

Hexadecimal
Value

1~

4
5
6

7
8

10
8

4
2

Description
Unused.
Execute access permitted.
Modify access permitted.
Append access permitted.
Read access permitted.
Write access permitted.

length

Length of the file to be created in 512-word blocks. The actual
file length is rounded up to a disk allocation unit boundary and
returned to the called.

slev

Security level (1 through 8) to be given to the file if this field
is not zero and is not greater than that of the interactive job
issuing this message. If the field is zero, use the security
level belonging to the interactive job issuing this message.

pkno

Indicates pack number. If a calling parameter, this field
contains the number of the disk pack in the device set on which
the file is to be created. VSOS returns the number of the disk
pack on which the initial segment of the file was created. Valid
pack number entries are all binary numbers from #1 through #80 for
which a disk pack exists. Specifying a 0 allows the operating
system to choose the disk pack on which to allocate space.

ex

File extensions:

o
1

File may be extended.
File may not be extended.

I

If cn is set to 1 but ex is set to 0, a contiguous, extendable
file is created. Therefore, a file that was contiguous when
created may become noncontiguous when later extended.
cn

File contiguity requirements:

o
1
da

If c=2, action statement returned by the system:

o
1
Figure 5-1.

60459420 F

File may be created as a noncontiguous (segmented) file.
File must be created as a contiguous (nonsegmented) file.

New file created.
Existing local file made permanent.

CREATE FILE (f=#OOOI) Message Format (Sheet 3 of 5)

5-11

Word
Beta(3)

I

Description

Field
fiord

File position (local file identifier); returned to the caller.

fiptr

For privileged creates (c=I), this field contains the virtual bit
address (furnished by the user) of a 16-word copy of the file
index table extension entry that is used to define the
characteristics of the file being created.

Beta(4)

f~e

For privileged creates (c=I), this field contains the virtual bit
address (furnished by the user) of a 16-word copy of the file
index table extension entry. The system uses the file access
directory portion of this entry to initialize the file's access
directory entry in the file index table. The format of the file
index table extension entry copy is the same as for the Beta
portion of the LIST SYSTEM TABLE message (f=#0009), option #10.

Beta(5)

csio

Field reserved for the operating system.
defined on return to the caller.

Beta(6)

dat

Data type:

o
1
mcat

Physical data file.
Virtual code file.

File management category:

o
1
2

I

The contents are not

5
9

Mass storage file.
Scratch file (valid only if c=O).
Output file.
User-created drop file.
File connected to a terminal (valid only if c=O).

The operating system sets the mcat field to 0 for a privileged
create. For categories 0 through 2 of this field, standard file
name conventions apply.
sfo

File organization:

o
bt

Blocking type field. This field is ignored by the system on
entry, and is set to 2 on return.

rt

Record type:

o
1
2
7

Control word (W).
ANSI field length (F).
Record mark (R).
Undefined.

rmd

The record mark delimiter may be any 8-bit ASCII character.

pc

A padding character is used only with F-type records.
any 8-bit ASCII character.
Figure 5-1.

5~12

Sequential file.
Direct file.

It may be

CREATE FILE (f=#OOOI) Message Format (Sheet 4 of 5)
60459420 F

Word
Beta (6)

Field

Description

reserved

Reserved for the operating system.

comt

Communication type:

o
1

Beta(7)

Beta(8)

ic

Not used.

rlmin

Contains the minimum record length in bytes.

rlmax

Contains the maximum record length in bytes.

au

Allocation unit size is used by the operating system as a
guideline when extending a file. The value in this field is given
as the number of 512-word blocks.

reserved

Reserved for the operating system.

Figure 5-1.

60459420 E

Non-RHF.
RHF.

CREATE FILE (f=#0001) Message Format (Sheet 5 of 5)

5-13

DESTROY FilE (f=#0002)

The DESTROY FILE message can be issued to sever the program's connection with a file and/or
release the mass storage space. At the conclusion of DESTROY FILE message processing, any
mass storage file referenced by the message has ceased to exist, as have any modified pages
of the file. Virtual address definitions pertaining to this file are no longer defined, and
the I/O connection and map entries are erased. The format of the message is shown in figure
5-2. (Only one Beta is processed for each Alpha.)
If a mass storage file is at a sufficiently high security level, it is overwritten with a
pattern when it is destroyed. Some installations can choose to overwrite all files when
they are destroyed. A privileged destroy is not a close and destroy, as is the
nonprivileged destroy; the privileged destroy must be preceded by a privileged close.
If the name refers to a tape file, the system rewinds and unloads the current volume. If
the name is a multifile set, all logical files belonging to the multifile set are returned.

o

63
r

Alpha(l)

len
16

eea

16

-Alpha(3)

IL

bl

_ _ _ _ _ 1§.

16

16

n

Alpha(2)

0002

e

16

48

I

ba

-----

Beta(l )

- - - - - - - - - - - - _4§J

name

64

I

Beta(2)

ioe

dev

8
Beta(3)

22

dre

8

own

8

ss

8

owner

Field

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

r

1
2
#211
#214

Figure 5-2.

5-14

unused

L _ _ _ _ _ -_ _ _ _ _ _ _ _

Word
Alpha(1)

ul

8 2

Error code was returned in an ss field of Beta(2).
User is not privileged (privileged destroys only).
Number of destroys in this message is illegal (the n
field is 0 or greater than 16).
Beta buffer length error; either the first word address
of Beta plus length is greater than the maximum user
virtual address, or the Beta buffer is too small for
the number of requests and length specified.

DESTROY FILE (f=#0002) Message Format (Sheet 1 of 3)

60459420 G

Word
Alpha(l)

Field

Description

len

If this field is #FFFF, Alpha(3) contains the length and virtual bit
address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in word of the
Beta protion. The value of len must be a multiple of 2 (for regular
destroys) or 3 (for privileged destroys).

c

Destroy mode:

o
1
2
3
Alpha(2)

Return local and attached permanent files.
Privileged purge of a permanent file.
Purge of a permanent file (makes file local if attached).
Purge of a pool file in pool in Beta(3).

n

Number of requests in this message; maximum is 16.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an error
occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Beta(l)

name

File name, in ASCII, of the file to be destroyed.
be in the format described in chapter 3.

Beta(2)

ioc

Input/output connector number. If the file is connected to a terminal, this field is #FE. If a mass storage file is being destroyed,
the operating system returns, in this field, the inclusive OR of all
I/O connector numbers connected to this file.

dev

Device type:

o
8
ul

Mass storage device or magnetic tape device.
Reserved.

Unload Tape. This field is significant only for returning files
(c=O) and is only applicable to tape files.

o
1
2
drc

File names must

When the tape is released, the tape is rewound to the load
pOint and is then unloaded in accordance with the iu option
specified in the TAPE MANAGEMENT system message (f=#002C).
When the tape is released, the tape is rewound to the load
point, but is not unloaded from the drive.
When the tape is released, the tape is rewound to the load
point and unloaded from the drive.

Decrement resource count if this field is nonzero. If drc=O, do not
decrement resource count. This field applies only to tape files.
Ownership of the file to be destroyed. This field is significant
only for nonprivileged users (c=1). The values are:

o
1
2
Figure 5-2.
60459420 G

Private ownership.
Public ownership; valid only for privileged users.
Pool ownership; valid only for the pool boss.

DESTROY FILE (f=#0002) Message Format (Sheet 2 of 3)
5-15

Word
Beta(2)

Field
ss

Description
Error response field.

The values are:

o Normal completion.
1
2
3
4
5
6
7
8
9
#A
#B
#C
#D
#E
#F
#10
#11

I
Beta(3)

owner

Figure 5-2.

5-16

File name does not exist.
File name given is in conflict with that in the I/O
connector.
Another active program has the file open, or the file has
been privileged opened.
Attempt to purge a permanent file attached to another job.
Nonprivileged task tried to destroy a public file.
User other than the pool boss tried to destroy a pool
file.
Illegal I/O connector number specified.
Drop file map is full.
Error trying to remove the PFI entry.
Disk is logically off.
Caller is not the file owner.
No room in FILE1 for privileged destroy pseudologon.
Attempt to destroy an open tape file.
Illegal ul option specified.
Cannot destroy a public file unless privileged.
Attempt to purge a tape file.
Pool not attached or does not exist.

For privileged destroys, a user number or pool name to which the
file being destroyed belongs. The binary user number must be
right-justified with zero fill or, if this is the pool name, it
must be left-justified with blank fill.
DESTROY FILE (f=#0002) Message Format (Sheet 3 of 3)

60459420 G

OPEN FILE (f=#0003)
The format of the OPEN FILE message is shown in figure 5-3. (The Beta portion of the
message can actually consist of more than one of the five- or six-word sets shown in the
figure.)

o
Alpha(1)

63
r

Alpha(2)

len

16

n

16

c

16

0003

eea
16

I

Alpha(3)

LWord
Alpha(l)

48

bl

ba

16

-----

- - ----------

Field

I

_ _ _ _ _ _4f!J

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

r

1
2
3

114
11211
11214

#216

Error code was returned in an ss field of Beta(3).
User is not privileged (privileged opens only).
Input/output error code was returned.
Illegal message option (c field).
Number of opens in this message is illegal (the n
field is 0 or greater than 16).
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.
Descriptor is out of bounds.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion.

c

Open mode:

o
1

Figure 5-3.

6045Y420 F

16

Regular open; file must be attached.
Privileged open; fields dola, tlr, dolm, and tolm in
the file index table are not updated for the file
being opened.

OPEN FILE (f=#0003) Message Format (Sheet 1 of 9)

5-17

I

I

Word

Description

Field

Alpha(l)

c

This field determines the settings of several other fields in
Beta(2) of this message. When this field is 0, the cl option
enables the user to modify fields in the file index table.
Permission to modify these fields is granted by the system if the
file ownership is: private; pool, and the user is the pool boss;
or public, and the user is privileged. When this field is 1, the
cl option enables the privileged user to specify who can access
the file for the duration of this open.

Alpha(2)

n

Number of files to be opened at this time; maximum is 16. At
times, it might be more efficient to open more than one file at a
time. When this is to be done, the Alpha portion for the OPEN
FILE message is used once, with n equaling the number of files to
be opened; this is followed by groups of Beta words, one group per
file.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full words of the Beta portion.

Alpha(3)

For nontape files:

o

63
name

Beta(1 )

64
e
Beta(2)

m

"[

t 3

e3

x unused e e
1a t ~

ioe

t

6

8 2

unused

slev

mode

aes
8

8

8

I

Beta(3)

pw
n
1 2

unused

length

Beta(4)

0

8
n
st e
4 2

unused

I

8

ptr (e=1)
48

unused

fade (e=1 )
48

16

I

ss

40

16
Beta(6)

8

nab
24

Beta(5)

pkno

tUnused.

Word

Field

Beta(l)

name

File name, in ASCII. File names must be in the format described
in chapter 3. If the format is not proper, error response #21 is
returned in the ss field.

Beta(2)

ioc

The file's input/output connector number (0 to #F and #12 to #47),
#FE, or #FF. #FE indicates that a file connected to a terminal is
to be opened.

Description

Figure 5-3.
5-18

OPEN FILE (f=#0003) Message Format (Sheet 2 of 9)
60459420 F

Word
Beta(2)

Field

Description

ioc

#FF causes the operating system to allocate an input/output
connector and then to return the number in this field. If no
input/output connector is available when the system attempts to
allocate one~ the system returns an error code of #37 in the error
response field in this message.

~t

File extendability; set by the user.

o
1

The values are:

Extensions allowed if extensions were not prohibited on
creation of the file (same as ext=2).
No extensions allowed (same as ext=3).

Value that was set at creation time is returned by the operating
system after a successful open. This field is 0 if extensions
were allowed or 1 if not allowed. If the file was created with no
extensions allowed~ it would not have been opened with extensions
allowed; however~ if the file was created with extensions allowed~
it can be opened with either extensions allowed or not allowed.
cl

Open the file as specified in the mode field.
the values are:

o
1

1

mcat

opens~

the values are:

Other privileged and nonprivileged opens are allowed~ but
without write access.
No other opens are allowed until the privileged open is
complete; the privileged open cannot occur if any other
opens or attaches currently exist.

File management category to be associated with the file. For
privileged opens~ the operating system sets this field to O. For
regular opens~ this field is copied into the mcat field of the I/O
connector. A file connected to a terminal is indicated by ioc=#FE
instead of in the mcat field:

o
1
2
3
4
type

opens~

Do not change the file type.
Change the file type to the one in the type field.

For privileged

o

For regular

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as a write-temporary file).
Tape file.

File type. If the cl option is O~ the operating system returns
the file type to this field. If the cl option is l~ the file type
is to be changed to the type specified by this field~ which can be
one of the following:

o
1
2

Physical data.
Virtual data.
Virtual code.

The operating system sets this field to 0 for privileged opens.
Figure 5-3.
60459420 F

OPEN FILE (f=#0003) Message Format (Sheet 3 of 9)
5-19

I

Word
Beta(2)

Description

Field

File access desired. Only the indicated access combinations are
allowed. The values are:

acs

Hex. Value
00
01

02
03
04
06
08
OA

Description
Open file for R, W, or RW access as determined
by access permissions.
Write access requested.
Read access requested.
Read, write access requested.
Append access requested.
Read, append access requested.
Modify access requested.
Read, modify access requested.

Observe that if acs is 0, the system will attempt to open the file
for read and write access. If the caller has read, write, or read
and write permissions, the file is opened accordingly. The actual
access obtained is returned in acs. If the caller has neither
read nor write access, an access violation error is returned.

Beta(3)

mode

Input/output mode. This field is 0 if the file is to be opened
for explicit I/O, or set to 1 if the file is to be opened for
implicit I/O.

slev

Security level of this file, 1 through 8; set by the operating
system.

pkno

Pack number of the disk pack on which the initial segment of the
file resides; returned by the operating system.

1p

Field returned by the operating system.
permanent file, and 1 for a local file.

own

File ownership; set by the operating system.

o
1
2

st

The values are:

Private.
Public.
Pool.

Management category of the file; set tby the operating system.
values are:

°1
2
3
4
5
6
7
9
Figure 5-3.

5-20

This field is 0 for a

The

Mass storage file.
Scratch file.
Output file.
Write-temporary file.
Magnetic tape file.
Drop file created by the user.
Drop file created by the operating system.
Batch file.
File connected to a terminal.

OPEN FILE (f=#0003) Message Format (Sheet 4 of 9)

60459420 E

Word
Beta(3)

Field
nc

Description
File extendability and contiguity; returned by the operating
system if the open is successful. The values are:

o
2

3

ss

Error response field.

o
#21
#22
#24
#25
#2A
#2B
#2C
#2D
#2F
#31
#32
#33
#34
#35
#37
#3A
#3B
#3C
#3D
#3E
#3F
#40
#41
#50
#61
#62
Beta(4)

create was not requested but extensions are
create was not requested and extensions are
create was requested and extensions are
create was requested but extensions are

The values are:

Normal completion.
Either no name was given or the file is not attached.
Illegal value in the mcat field.
I/O connector is already in use or not #0 through #45.
Illegal value in the aCS or type field.
File spans downed device, and open access is not read
only (privileged opens only).
User directory was not found or the pool was not found
(privileged opens only).
Read or write open is not allowed; the file has been
privileged opened by another user.
Nonprivileged user.
No more write opens permitted.
No more room for the user table (privileged opens
only).
Cannot open an attached file (privileged opens only).
No FST space available.
File access violation.
Implicit mode required with write temporary.
No I/O connector available.
Attempt to implicitly open a file with write-only
access.
Cannot privilege open tape file.
Cannot locate tape volume.
Cannot open tape file implicitly.
File does not exist.
Cannot privilege open local disk file.
Calling task is not a level-2 controllee.
Warning; file is open but may be only partially
available.
Error in modifying the PFI entry for this file.
Attempt to open a purge only file.
File is currently privileged open.

length

The length of this file in blocks, set by the operating system.
When ss=#41, this is the number of blocks available.

nab

Relative byte address, returned by the system, of the next byte to
be written in the file.

Figure 5-3.

60459420 F

Contiguous
allowed.
Contiguous
allowed.
Contiguous
allowed.
Contiguous
allowed.

OPEN FILE (f=#0003) Message Format (Sheet 5 of 9)

5-21

Description

Field

Word
Beta(5)

ptr

For privileged opens (c=I), this field contains the virtual bit
address (furnished by the user) of the first word of a 16-word
area in which the operating system is to return a formatted copy
of the file index table entry for the opened file. The format of
the file index table entry copy is the same as for the Beta
portion of the LIST FILE INDEX OR SYSTEM TABLE message (f=#0009),
option 1, or unformatted as described in chapter 2, depending on
the setting of fmt. The first word of the file index table entry
copy must be prefilled by the user with the user number or the
pool name of the file to be opened; the second word contains the
file name; and the remaining words contain the file index table,
as supplied by the operating system.

Beta(6)

fade

For privileged opens (c=I), this field contains the virtual bit
address (furnished by the user) of the first word of the 16-word
area in which the operating system is to return a copy of the file
index table extension entry for the opened file. The entry copy
contains the file access directory for the file and is the same
format as for the Beta portion of the LIST FILE INDEX OR SYSTEM
TABLE message (f=#0009), option #10. This first two words of the
copy are set to 0 by the operating system if the file does not
have an extension entry.

I

For tape files:

o

63
Ifn

Beta(1 )

64
Beta(2)

ioe
8

m
e
unused
a
9t3

unused

unused

aes
12

24

8
unused

vsn

Beta(3)

48

ss
8

8

mfn

Beta(4)

64
Beta(5)

8

unused

ofp

ado

opo

8

16

mpru

unused

Beta(6)

ioer
24

8

32

32

dtt

Beta(7)

64
dvsn

Beta(8)

64
dulb

Beta(9)

64
dlb

Beta(10)

64

Figure 5-3.
5-22

OPEN FILE (f=#0003) Message Format (Sheet 6 of 9)
60459420 H

Word

Field

Description

Beta(1)

lfn

Logical tape file name t in ASCII.

Beta(2)

ioc

The file's input/output connector number.

mcat

Management categorYt returned by the system.
to 4 for a logical tape file.

acs

Access permissions. If acs=1 and unexpired HDR1 label date is
found t an error is returned. It is possible for the
installation to allow the operator to override this condition
and allow writing on an unexpired tape:

o
1
2
3
Beta(3)

acs is set from the file index.
Write-only permission only.
Read-only permission only.
Read/write permission.

vsn

Volume serial number of the currently assigned tapes.
field is returned by the system.

ss

Error response field:

o
#21
#22
#24
#25
#2A
#2B
#2C
#2D
#2F
#31
#32
#33
#34
#35
#37
#38
#39
#3A
#3B
#3C
#3D
#3E
#3F
#40
#41
#42
1143

#44
Figure 5-3.
60459420 E

This field is set

This

Normal completion.
Either no name was given or the file is not attached.
Illegal value in the mcat field.
I/O connector is already in use or not #0 through #45.
Illegal value in the acs or type field.
Disk is logically off.
User directory was not found or the pool was not
found (privileged opens only).
Read or write open is not allowed; the file has been
privileged opened by another user.
Nonprivileged user.
No more write opens permitted.
No more room for the user table (privileged opens
only) •
Cannot open an attached file (privileged opens only).
No FST space available.
File access violation.
Implicit mode required with write temporary.
No I/O connector available.
Need six Beta words for option c=2.
Illegal user number for option c=2.
Attempt to implicitly open a file with write-only
access.
Cannot privilege open tape file.
Cannot locate tape volume.
Cannot open tape file implicitly.
File does not exist.
Cannot privilege open local disk file.
Calling task is not a level-2 controllee.
Not all entries were returned in the tapes table
array; OPEN was completed.
Not all VSNs were returned in the VSN array; OPEN was
completed.
Label buffer was too short; OPEN was completed.
File identifier does not match.

OPEN FILE (f=#0003) Message Format (Sheet 7 of 9)
5-23

Word
Beta(3)

Description

Field
ss

1145
1146
1147
1148
1149
114A
114B
114C
114D
114E
1150
1151
1152
1153
1154
1155
1156
1158
1159
115B

File set identifier does not match.
File chapter number does not match.
File sequence number does not match.
Generation number does not match.
Generation version number does not match.
File accessibility character does not match.
File accessibility character is A and user number does
not match.
Illegal labels.
Volume not available.
Header 1 not found.
Error in modifying the PFI entry for this file.
No unit was assigned.
Illegal assembly/disassembly.
Illegal access.
Only one tape open per Alpha allowed.
Logical tape file already opened.
Label unexpired and IP TPEXP=O.
Tape coded mode with ado=3.
Attempted to write expiration data greater than the
multifile set expiration date.
Illegal tape position option.

Beta(4)

mfn

Multifile set name, returned by the system for the currently
assigned tape. This field equals 0 if the logical file name does
not belong to a multifile set.

Beta(5)

opo

Open tape file processing options. These processing options are
in effect for as long as the tape file is opened:
Bit

Name

o

ETP

Description
End-of-tape processing option:

o
1

1

3-7

Unused.

2

UEP

User error processing option:

o

1
3-7
Figure 5-3.
5-24

The system automatically switches
volumes.
Control is returned to the user at
end of tape.

Tape I/O errors encountered when
reading or writing a tape are
returned to the operator. The
operator makes a decision whether to
repeat or ignore the error, drop or
rerun the job, and so forth. Refer
to appendix B for more information
on tape I/O errors.
Control is returned to the user when
a tape I/O error occurs. Refer to
appendix B.

Unused.

OPEN FILE (f=1I0003) Message Format (Sheet 8 of 9)
60459420 E

Word
Beta(5)

Field
ado

Description
Bit string assembly/disassembly option. This field specifies what
type of assembly or disassembly is to be done on the data:

o
3

ofp

No assembly/disassembly is done.
Bits 60 to 64; 60 bits on tape, 64 bits in memory with
the upper 4 bits equal to O. The buffer address must be
on a 64-bit word boundary for the TAPE FUNCTION call.

Open file positioning option.
selected is returned:

o
1

If ofp=O, the file positioning

No rewind.
Rewind to the beginning of information of the current
file.

ioer

Error number. The r field in Alpha is set to 3 if ioer is
nonzero. Refer to appendix B for a complete description of the
ioer error numbers.

Beta(6)

mpru

Maximum PRU size in bytes. This field is valid only for tape
formats V and NV. If mpru is 0, the mpru from the REQUEST is
used. If mpru=O and no mpru was specified at request time, the
system default is 32,768 bytes.

Beta(7)

dtt

Tapes table descriptor. If nonzero, the system returns the tapes
table entry. For ofp=3, the user supplies the tapes table and on
completion, the updated tapes table entry is returned:

Beta(8)

Beta(9)

Beta(10)

dvsn

dulb

dlb

Itt

16-63

att

Length of the tapes table, in words. This
field must be 12 words long.
Virtual bit address of the tapes table
buffer. The buffer must be on a word boundary.

Descriptor for the VSN list.
VSN list:
0-15

lvsn

16-63

avsn

If nonzero, the system returns the

Length of the VSN list, in words (0 < Ivsn
256).
Virtual bit address of the VSN list. The
buffer must be on a word boundary.

<

Descriptor for the user header labels. If dulb is nonzero, the
user header labels are supplied by the user. This field only
applies when writing labels:
0-15

lulb

16-63

aulb

Length of the user label buffer, in words (0 <
lulb < 512).
Virtual bit address of the user label buffer.
The buffer must begin on a word boundary.

Descriptor for the label buffer.
returns all labels here:

Figure 5-3.
60459420 E

0-15

0-15

llb

16-63

alb

If dlb is nonzero, the system

Length of the label buffer, in words (0 < lIb
< 512).
Virtual bit address of the label buffer. The
label buffer must be on a word boundary.

OPEN FILE (f=#0003) Message Format (Sheet Y of 9)
5-25

Mass Storage Files
The OPEN FILE message connects the user's program to a preexisting file for performing input
and output on the file. In opening a file, the user can accept the parameters given to the
file when it was created; otherwise, if the file owner has given permission, the user can
al ter the parameters. Both physical and virtual files can be opened for either explicit or
implicit I/O. Once opened for explicit I/O, however, a file cannot be accessed implicitly,
and vice versa. Nevertheless, a file can be opened in several I/O connectors at the same
time; some for implicit I/O, and others for explicit I/O.

I

When a program opens a physical file in explicit mode, the specified I/O connector in the
program's minus page is filled in as required and an entry is made in the explicit file map
area of the minus page. This allows initiation of explicit I/O. In this mode, the file is
accessed by explicit requests to transfer data into buffer areas. The EXPLICIT I/O message
(f=#F500), or its SIL counterpart, must be used to define the buffers and initiate data
transfers.
When a program opens a physical file in implicit mode, the specified I/O connector in the
program's minus page is completed. No entry is made in the bound explicit map. Explicit
input/output cannot be accomplished on a physical file that is opened in implicit mode.
When a program opens a virtual file in explicit mode, all input/output must be done
explicitly through the program's buffers in the same manner as for physical files opened in
explicit mode. The I/O connector number specified in the program's minus page is filled in,
and one entry is made in the explicit map. When a file is opened in explicit mode, no
implicit access is possible to any of the virtual space usually represented by the file.
When a program opens a virtual file in implicit mode, the I/O connector number in the
program's minus page is filled in.
For privileged opens to occur, the file must not be open with write access by anyone; while
the file is privileged open, all attempts to open with write access are barred. If the cl
field in Beta(2) is 1, these rules are extended to exclude an open of any sort to assure
that the privileged open is successful.
A privileged user can get a copy of the opened file's file index table entry by specifying a
virtual bit address in Beta(5). The copy is returned beginning at the specified address.
This copy is not used in the same way that the copy can be used on a privileged create;
initializing fields in the copy associated with an OPEN FILE message does not alter the
values in the file index table entry. If this is used, the fmt=l option to return the
unformatted file index should be used.
A privileged user can also get a copy of the opened file's file index table extension entry,
which contains the file access directory, by specifying a virtual bit address in Beta(6).
The copy is returned, beginning at the specified address in the same format as the Beta
portion of the LIST SYSTEM TABLE message (f=#0009), option #10. If no file index table
extension entry exists, the first two words of the area, starting at the specified address,
are set to 0 by the system.
If the file was created with no extensions allowed, it cannot be opened with extensions
allowed; however, if the file was created with extensions allowed, it can be opened with
either extensions not allowed or extensions allowed.

5-26

60459420 F

Magnetic Tape Files

The OPEN FILE message can be issued only for a logical tape file requested in the TAPE
MANAGEMENT message or for a logical tape file requested in the LABEL message. If the
logical tape file belongs to a multifile set, only one of the logical files can be opened at
one time. There can be only one tape file specified in the Beta for each OPEN FILE
message. After a successful open, the ioc is built, and the user can issue input/output and
positioning functions to the tape file.
The file position at the time of the open is determined by the ofp field. Label processing
is not required for a file that is being reopened after previous use in which label
processing was done and the tape was left positioned within this file.
Observe that only explicit I/O is allowed for tape files.
on the open.

Implicit use may not be specified

Files Connected to a Terminal

The OPEN FILE message is also used to connect the user's program to a file connected to a
terminal. A connected file can be opened only if this is done by a level-2 or lower level
controllee of an interactive processor. It cannot be opened implicitly.
A connected file does not use an I/O connector.
Since a file connected to a terminal is a SIL feature, no explicit or implicit I/O is done
to this file. SIL traps all I/O requests and converts them to either GET MESSAGE FROM
CONTROLLER or SEND MESSAGE TO CONTROLLER requests. This is why a file connected to a
terminal needs no ioc. It does not use any buffers as explicit I/O does. Instead, it uses
the numbered common block 99434642.
Observe that the following Beta fields are not valid for a file connected to a terminal:
ext, nc, saddr, unit, fsto, length, mlength, and packid.

60459420 E

5-27

MAP (f=#0004)

The MAP message gives a program access to a virtual region by defining a correspondence of
virtual addresses to physical mass storage addresses. The process of defining the virtual
region associated with a file is called mapping-in the file. Once a program maps in a file,
the program can perform implicit reads and writes on the file. The message might also be
used to release (map out) a virtual region by erasing the correspondence of the virtual
addresses with mass storage. The map-out operation can also be performed by using the CLOSE
FILE message. The mass storage space that is being mapped could contain a file already
defined and opened, or it could be space that is not associated with any file (free space).
Before virtual space can be accessed implicitly, the definition of that space must be
cataloged in the implicit map area of the program's minus page. The definition can be made
using MAP with the map-in option. Up to 40 noncontiguous address regions can be cataloged.
The user associates a virtual starting address and length with the mass storage address of
an open file or free space and indicates the access rights pertaining to that virtual
region. The operating system makes the necessary entries in the bound implicit map (for an
open file) or drop file map (for free space) of the program. Overlaps of space are signaled
as an error. If all entries of a map are full, an error is signaled and no further map-in
calls are permitted until some space is released with a map-out.
The map-out option allows for release of virtual address space. Virtual address space that
has been mapped out is no longer accessible to the program, but the mass storage file itself
is not closed (the I/O connector for the file remains intact). The mass storage region can,
after the map out, be mapped in again to the same or other virtual space. Mapping out free
space causes the corresponding drop file map entries to be deleted and frees the mass
storage space for reassignment. If the mass storage file represented by a virtual region
has write access and is mapped out, all modified pages of that space are written on that
mass storage file before the map-out process is complete. If the file itself did not have
write access, all modified pages are lost through the map-out process.
The MAP call must not be used with files opened for explicit I/O.
be mapped in. The format of the message is shown in figure 5-4.

5-28

Also, source files cannot

60459420 E

o
Alpha(1)

63
r

Alpha(2)

e

len

16

0004

16

16

16

eea

unused

48

16

I

Alphq(3)

bl

L _____

1~~

Beta (1 )

ba
_____________

32

32
length

Word
Alpha(1 )

..

ee

unused

24

14

Ox
t

r

.ioe

con

8

55

8

8

Description

Field
r

-

Ifa

vpa

Beta(2)

I
_ _ _4~

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
#214

Error has been returned to the ss field of Beta(2).
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. This must be zero when WPA is zero and IOC is
#OF to MAPIN SHRLIB. Used by debug.

c

Map mode:

o
2

Map-in the file specified in the ioc field.
Map-out the file specified in the ioc field (both the
bound implicit map and drop file map entries are
altered).
Map-out only this program's drop file (a c field
value of 0 must be used to map-in a drop file).

Alpha(2)

eea

Virtual bit address at which control transfers if an error occurs
during processing of this message (riO). If this field is 0 when
an error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.
Figure 5-4.

60459420 E

MAP (f=#0004) Message Format (Sheet 1 of 3)
5-29

Word

I

Beta(1 )

Beta(2)

Field

Description

vpa

Virtual page address of the first small page of the space
defined. Must be zero when len is zero and ioc is #OF to MAPIN
SHRLIB.

lfa

Logical file address associated with the virtual page address. If
this field is #FFFFFFFF, free space is appended as defined by the
virtual page address and length fields.

length

Length of the virtual region, in blocks. If this call is not for
free space, the space on the mass storage file must be
contiguous. When returned to the caller by the operating system,
this field is adjusted to the next page multiple.

cont

File contiguity; set by the operating system after a successful
map-in (value is set at creation time). This field is 0 if the
file was not created contiguously (in two segments), or set to 1
if the file was created.

ext

File extendability; set by the user.

o

The values are:

Extensions allowed if extensions were not prohibited on
creation of the file (same as ext=2).
No extensions allowed (same as ext=3).

Value that was set at creation time by the operating system after
a successful map-in. This field is 0 if extensions were allowed
or set to 1 if not allowed. If the file was created with no
extensions allowed, it could not have mapped-in with extensions
allowed; however, if the file was created with extensions allowed,
it can be mapped-in with either extensions allowed or not allowed.
ioc

Input/output connector number for the mass storage file being
mapped (a source file cannot be mapped in):

I

Mass storage file map-in or map-out.
Source file map-out.
Drop file map-in or map-out.
SHRLIB MAPIN: used by debug. VAP and LEN
must be zero.

IIO-IIE, 1112-1/47

1110
1111
IloF

con

A set of 8 bits providing control information as follows:

c4

ac

11

Subfield
c3

Description
Page map request.

o

Figure 5-4.
5-30

Small.
Large.

MAP (f=110004) Message Format (Sheet 2 of 3)
60459420 F

Word
Beta(2)

Description

Field
con

Description

Subfield
wa

Access:

o
1
ac

Get access rights (determined when the
file was opened) from the I/O connector.
Get access rights from the ac field if
allowed by the ioc access field.

Access:

o
1
2
34

No read or write access.
Read access.
Write access.
Both read and write access.

Bits cl. c2. c4. and c5 are not used. The wa and ac fields are
examined by the system when mapping in files associated with I/O
connectors 0 through #E.
ss

Error response field.

o
1
2
3
4
5
6

7
8

9
#A
#B
#C
#D
#E
#F
#10
#11
#12

#13
#14
#15
#16
#17
Figure 5-4.
60459420 G

The values are:

Normal completion.
Virtual address overlap of file space.
Cannot map-in file in virtual page O.
Length field in a map message is 0 or greater than the
length in the map.
Length in the request is not modulo page size.
I/O connector does not exist or the mode specified in
the I/O connector is not implicit.
Virtual address is the same as that of an existing
ADVISE call.
Bound implicit map was full at map-in.
Logical mass storage address plus length exceeds the
file length.
Page requested for map-out is locked in.
Space is undefined at map-out.
Map entry virtual address is not on a page boundary.
Bound implicit map is full at map-out.
I/O connector is not proper for a free space request.
Drop file map is full at map-out.
Drop file map is full at map-in.
Mass storage file index table entry cannot be found.
Virtual address overlap of free space.
For a map-in request. no read access was specified;
map-in has not been performed.
File is privileged opened by the user and cannot be
mapped.
Logical file address overlap.
Logical file address plus length exceeds user or pool
maximum.
Error in extending file.
No more disk space available when extending the file.

MAP (f=#0004) Message Format (Sheet 3 of 3)
5-31

I

CLOSE FILE (f=#0005)

This message terminates immediate access to the data. System operation varies slightly,
depending on the medium. Only one Beta is processed for each Alpha. The format of the
CLOSE FILE message is shown in figure 5-5.

o

63

Alpha(1}

len

r

16
Alpha(2}

0005

e

16

16

16
eea

n

48

16
Alpha(3)

ba

bl

I

16

--- - - - - -

Beta(1 )

ioe

'------- - - - - - - - . - - - - -

meat

Beta(2)

type

ef

4

8

8

4

length

unused:

bilb
'12

flag

4

opt

8

ss

8

nab

24
Word
Alpha(l)

Field

8

40

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

r

1
2
#211

Error code was returned in an ss field of Beta(I).
User is not privileged (privileged closes only).
Number of files specified in this call is illegal
(the n field is 0 or greater than 16).
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.
Beta portion is in read-only space.

#214

#270
len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. This field must be a multiple of 3 for a
regular close issued by a privileged system task (c=2); this field
must be a multiple of 2 for other regular closes (c=O). For a
privileged close (c=I), Beta must have a length of at least two
words per file closed.

c

Close mode:

o
1

I

2

Figure 5-5.
5-32

~

Regular close.
Privileged close.
Regular close by a privileged task.

CLOSE FILE (f=#0005) Message Format (Sheet 1 of 6)
60459420 G

Field

Word
Alpha(2)

Description

n

Number of files closed by this message; maximum is one.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (rFO). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Beta( 1)

ioc

Input/output connector number of the file being closed.

mcat

File management category of the file being closed; stored in the
file index table if the flag field is 2. The categories are:

o

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
User-created drop file.
Batch file.

1
2

3
5
7

cf

I

A set of four control bits, as follows:

cl

11

c2

11

c3

11

Bit
cl

11
Description

File type:

o
1

Do not change the file type in the file index
table.
Change the type in the file index table to the
value given in the type field.

c2

Unused.

c3

Drop file size:

o
1
c4

c4

Do not change the drop file size.
Change the drop file size in the file index
table to that given in the length field.

Drop file length:

o
1

Do not remove the drop file length from the
file index table.
Remove the drop file length from the file index
table.

These flags can cause changes to be made in the file index table
if the file ownership is private; pool, and the user is the pool
boss; or public, and the user is privileged. This field must be
all zeros for privileged closes (the ss field is A otherwise).
Figure 5-5.
60459420 H

CLOSE FILE (f=#0005) Message Format (Sheet 2 of 6)
5-33

Word
Beta(1)

Description

Field
type

File type:

o
1
2
bilb

Bits used in last byte:

o
1-7
flag

Physical data file.
Virtual data file.
Virtual code file.

All bits in last byte are used.
From 1 to 7 bits in last byte are used.

Flag for special action, as follows:
f1

I f2 I f3 I f4 I f5 I f6 I f7 I fa I
Description

Bit
fl-f3

Reserved.

f4

bilb field:

o
1
f5

dmp flag:

o
1
f6

1

f8
Figure 5-5.

5-34

Do not change the nab fields in the file
index table.
Change the nab fields in the file index table
according to the nab value supplied in
Beta(2).

mcat fields:

o

I

Do not change the dmp bit in the file index
table.
Set the dmp bit in the file index table.

nab fields:

o

f7

Do not set the bilb field in the file index
table.
Set the bilb field in the file index table to
the value given in bilb in Beta(1).

Do not change the mcat field in the file
index table.
Change the file index table's field
management category to that given in the mcat
Beta field. If mcat is changed to drop file
and the caller is a production user number,
the drop file is given production status and
all write access permissions are removed from
the file.

Reserved.

CLOSE FILE (f=#0005) Message Format (Sheet 3 of 6)
60459420 H

Word

Beta(l)

Field

Description

opt

Option field; for a privileged close only. If this field is 0,
the file is not to be destroyed with this call; or, if it is 1,
the file is to be destroyed with this call.

ss

Error response code.

o
1
2
3
4
5
6
7
8
9
#A
#B
#C
#E
#F
#10

1111
#12
#13
#14
#15
Beta(2)

Normal completion.
I/O connector was not for a mass storage file.
I/O connector number was out of range.
Attempt to alter a public file index table entry; the
I/O connector is cleared, but no information is altered
in the file index table (file is closed).
File type, access right, or lockout specified by this
request is illegal (file is closed).
Close was requested for a file, one of whose pages is
still locked in.
A scratch or output file is open to another program of
this user (file is closed to this problem program but
not destroyed or given).
Invalid name for a file with a management category of
output (file is closed).
Specified I/O connector was not open.
Drop file map is full.
Format error (privileged close only).
Nonprivileged user (privileged close only).
File was not found or not attached.
Supplied nab value is inconsistent with the
system-maintained value. (File is closed.)
One file close per Alpha.
Not all VSNs were returned in the VSN array; CLOSE
completed.
Label buffer too short; CLOSE completed.
Not all entries are returned in the tapes table array;
CLOSE completed.
Illegal label in the buffer label.
lun field in FILEI or IOC is invalid.
db in tapes table does not match db of task.

length

Length of the drop file in blocks; set in the file index table if
the c3 field is 1.

nab

Relative bit address, supplied by the caller, of the next byte to
be written in the file. If the supplied value does not correspond
to that maintained by the system at the block level, this value is
ignored, the lbc/hbw field in the FILEI is set to indicate that
the last block is full, and a warning error is returned.

Figure 5-5.

60459420 H

The values are:

CLOSE FILE (f=#0005) Message Format (Sheet 4 of 6)

5-35

I

For tape files:

o

63
unused

ioe

Beta(1 )

ss

48

8
unused

Beta(2)

8

ioer
48

16

dtt

Beta(3)

64
Beta(4)

dvsn
64

Beta(5)

dulb
64

Beta(6)

dlb
64

Word
Beta(l )

Field

Description

ioc

The files's input/output connector number.

ss

Error response field:

o
#F
#10
#11
#12
#13

No errors.
Only one file close per Alpha allowed.
Not all VSNs were returned in the VSN array; CLOSE
completed.
Label buffer too short; CLOSE completed.
Not all entries are returned in the tapes table array;
CLOSE completed.
Illegal label in buffer label.

Beta(2)

ioer

Error number. The r field in Alpha is set to 3 if ioer is nonzero.
Refer to appendix B for a complete description of the ioer error
numbers.

Beta(3)

dtt

Tapes table descriptor.
returned by the system:

Beta(4)

dvsn

Name

0-15

Itt

16-63

att

Description
Length of the tapes table buffer, in words.
The buffer must be 12 words long.
Virtual bit address of the tapes table buffer.
The buffer must be on a word boundary.

Descriptor for the VSN list.
by the system:

Figure 5-5.
5-36

Bit

If nonzero, the tapes table entry is

Bit

Name

0-15

lvsn

16-63

avsn

If nonzero, the VSN list is returned
Description

Length of the VSN list, in words (0 < lvsn
256).
Virtual bit address of the VSN list. The
buffer must be on a word boundary.

<

CLOSE FILE (f=#0005) Message Format (Sheet 5 of 6)
60459420 G

Word

Field

Beta(5)

Beta(6)

dulb

dlb

Description
Descriptor for the user trailer label buffer. If dulb is nonzero,
the user trailer labels are supplied by the user. This field
applies only when writing labels:

E

Name

0-15
16-63

lulb
aulb

Description
Length of the user label buffer, in words.
Virtual bit address of the user label
buffer. The buffer must begin on a word
boundary.

Label buffer descriptor. If dlb is nonzero, the system returns
the end-of-file labels here:

Figure 5-5.

6045~420

Bit

Bit

Name

0-15
16-63

llb
alb

Description
Length of the label buffer, in words.
Virtual bit address of the label buffer.
label buffer must be on a word boundary.

The

CLOSE FILE (f=#0005) Message Format (Sheet 6 of 6)

5-37

Mass Storage Files

A program can issue the CLOSE FILE message to sever its connection to a file. After the
file has been closed, the program no longer has access to the file through the severed
connection, although other unsevered I/O connections might remain. Existence of the mass
storage file is not affected by a close, but some file attributes in the file index table
entry for the file are modified, and virtual address space associated with an implicit file
is no longer defined. A file that has been privileged created or privileged opened can be
closed only with a privileged close. The user must do a privileged close before doing a
privileged destroy.

I

When a file is closed, the operating system gives the file to an output processor if the
activity count (the count of programs accessing the file, that is, of I/O connectors for the
file) is 0 and the management category is output. Other ways of outputting a file are to
use the FILE DISPOSITION message (f=#OOOD) or the GIVE FILE message (f=#0008).
When a file opened for implicit I/O and with write access is closed, modified pages of the
file are rewritten in mass storage before the close function has completed. If the file
does not have write access, modified pages are lost at the time the close function completes.
All outstanding input/output requests are completed before any file index table changes are
made. The file index table entry will exist in its new state only at the completion of
CLOSE FILE message processing.

Magnetic Tape Files

The CLOSE FILE message can be issued only for a logical tape file that is open. There can
be only one tape file specified in the Beta for each CLOSE message. After the successful
completion of the CLOSE, the ioc is cleared and no input/output or positioning functions can
be issued until a subsequent OPEN is issued. The CLOSE does not return the logical tape
file.
Files Connected to a Terminal

The CLOSE FILE message is used to relinquish access to a file connected to a terminal.
Existence or contents of the FILEI entry is not affected by a close.

5-38

60459420 F

TERMINATE (f=#0006)
A user program can issue a TERMINATE message to signal the operating system that it has
completed execution. All lower level controllees are also terminated. The message consists
of an Alpha portion only, as shown in figure 5-6.

a

63

Alpha(1)

0000

unused

16
Alpha(2)

rc

unused
8

Word
Al pha(1 )

16
48

Description
Indicates disposition of the drop file when the program is removed
from main memory. The values are:

2

rc

0006

resume

o

Alpha(2 )

16

8

Field
c

c

16

Drop file, scratch files, and output-type files are
preserved (but not made permanent) so the program can be
restarted. All modified pages belonging to write access
files overwrite their current disk images and all other
modified pages are written to the drop file. The resume
address is stored in the drop file's minus page.
Drop file and scratch files are destroyed. Give
output-type files to the output processor.
Same as option 0 except the terminate state is set to
report an abort (#3D).

Return code, set by the user.

o
4

S

The values are:

Successful completion.
Nonfatal error.
Fatal error.

This return code value is also referred to as the termination
value.
resume

Virtual bit address at which the program is to be resumed when it
is restarted.
Figure 5-6.

60459420 F

TERMINATE (f=#0006) Message Format

5-3q

I

LIST FILE INDEX TABLE (f=#0007)

The LIST FILE INDEX TABLE system message can retrieve copies of one or more file index table
entries. The message issuer can specify the file ownership category and file attributes of
the entries to be returned.
The file index entries are returned in the Beta portion of the message. The Beta length
must be a multiple of the file index entry length (refer to figure 2-1). Qualifiers for the
file index table search are specified only in the first entry length of the Beta.
The file index table entry format is shown in figure 2-1.
figure 5-7.

The message format is shown in

o

63

Alpha(1 )

r

Alpha(2)

n

w

8

c

8

0007

16

eea

16

48

I

bl
ba
1
.......J
L... _ _ _ _ _ 16
_ '--- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _481

Word

Field
r

Description
Response code returned by VSOS when message processing completes:

o
1
2

3
4
5
6
7
8
9
#214

len

Figure 5-7.

5-40

16

I

Alpha(3)

Alpha(l )

len

16

No errors.
No files exist which match the options and qualifiers
specified.
More file entries exist than can fit in the Beta
portion. At least one more file entry exists for the
owner, but the file index entry has not been checked
for matching qualifying fields.
Caller is not a member of a pool or the pool is not
attached.
Illegal message option (c field).
Incorrect file index entry length (w field).
User table is full.
FILEI is full.
Incorrect user number.
Invalid account number.
Beta length error. Either the first word address of
Beta plus length is greater than the maximum user
virtual address, or the Beta buffer is too small for
the number of requests and length specified.

Total Beta length. If len
and virtual bit address of
buffer is assumed to begin
multiple of the file index

is #FFFF, Alpha(3) contains the length
the Beta buffer; otherwise, the Beta
at Alpha(3). The length must be a
entry length.

LIST FILE INDEX TABLE (f=#0007) Message Format (Sheet 1 of 3)

60459420 E

Description

Field

Word
Alpha(1)

w

Current file index entry length (refer to figure 2-1). If an
incorrect value is specified, a response code of 5 is returned and
the system returns the correct value in this field.

c

Message option specifying the file index information to be
returned:

o
1
2
3
4

5
6

Alpha(2)

Public file entries.
Pool file entries.
Private file entries.
Entries for private files attached to this job.
Entries found according to the file search hierarchy.
The first search is for a private file attached to this
job. If no file is found, the second search is for a
pool file. If no file is found again, the third search
is for a public file.
File owner's access permissions, whether the file is
attached or not.
This option is the same as option 4, except that an
additional word containing the third word of the file
index entry is returned for each file. The format of the
entries returned will parallel the actual format of the
FILEI with the 3 word top entry returned first, followed
by the 14 word bottom entry.

n

Maximum number of file index entries to return. If fewer than n
qualifying file entries are found, this field is reset to the
number of the file entries found.

eea

Error exit address; virtual bit address to receive control if an
error occurs during message processing (r#O). If this field is 0
when an error occurs, the error ~s considered fatal.

Alpha(3)

bl, ba

If the len value is #FFFF indicating the Alpha and Beta portions
of the message are not contiguous, these fields give the length
and virual bit address of the first full word of the Beta portion.

Beta

The Beta format is the same as the file index table format, except that the
third word of the top is not returned (refer to figure 2-1). The Beta buffer
length must be at least the file index table entry length multiplied by the
number of entries to be returned (n).
Values specified in the first entry of the Beta buffer are used as qualifiers
in the file index table search. A pool name must be specified for option c=1;
all other qualifiers are optional.

Figure 5-7.

60459420 E

LIST FILE INDEX TABLE (f=#0007) Message Format (Sheet 2 of 3)

5-41

The following qualifiers can be used with any option (c=O, 1, 2, 3, or 4).
Refer to figure 2-1 for the field format.
Qualifier

Description

name

File name.

qf

Queue flag, indicating whether the file has been read
by the IQM.

mcat

Management category.

fidc

Disposition code.

fiic

Internal format characteristics.

fiec

External format characteristics.

fisid

Source or destination processor mainframe identifier.

fizip

Destination processor zip number.

mpn

Master project number.

acct

Account number.

The following qualifier can be used with options c=2 or 3.
Qualifier
user

Description
Owner's user number. When specified, the owner's
file index entries are returned for files to which
the caller has access. The oacs field in the file
index table entry is set to the largest set of access
permissions as determined from the general access
permissions and the caller's individual access
permissions.

If within the Beta portion, a field in the first file index entry length is
nonzero, the specified value is used as a qualifier. Zero cannot be used as a
qualifier. Only those file index table entries with field values matching the
specified qualifiers are returned.
Figure 5-7.

5-42

LIST FILE INDEX TABLE (f=#0007) Message Format (Sheet 3 of 3)

60459420 E

GIVE FILE (f=#0008)

The GIVE FILE system message transfers file ownership. If the GIVE mode is 0 or 1, the file
must be an attached permanent file, a local file, or an attached private pool file. (Only
the pool boss can give pool file.) If the give mode is 2, the file must be a private,
unattached permanent file. (Only privileged users can use GIVE mode 2.)
A nonprivileged user can give a file to another user or to a pool. A privileged user can
also give a file to the public file list. (The file must not have the same name as an
existing public file.) The privileged system task can give a file to the IQM and the IQM
can give a file to a user.
Whenever a file is given to another user, the dmp flag in the file index table is cleared to
indicate that the attribute of the file has been changed.
The message format is shown in figure 5-8. More than one 2- to 4-word Beta portions can be
specified. Only one Beta is processed for each Alpha.

a

63

Alpha(1)

len

16

Alpha(2)

n

16

c

16

0008

eea

16

16
48

I

I

Alpha(3)

IL-- _ _ _bl_ _ _
16.....J'-- _ _ _ _ _ _ _ . _ _ _
ba _ _ _ _ _ _ _ _ _
481
:J

Beta(1 )

name

Beta(2)

ss

acs
8

auser

8

48

I

Beta(3)

64

I

pname

t~ pUbret~ 1:1 ~t~~:~-~_unured-~_2J-~jdn :~

Beta(4)

I

vri

Beta(5)

cuser/act
64 1
L _ _ _ _ _. __________________

1

~

Alpha( 1)

Description

Field

Word
r

Response code returned by VSOS when message processing is complete:

o
1
#211
#214

Figure 5-8.
60459420 H

No errors.
Error code returned as ss field of Beta(2).
Number of files given was 0 or greater than 16.
Beta buffer length error. Either the first word
address of Beta plus its length is greater than the
maximum virtual user address, or the Beta buffer is
too small for the number of requests and length
specified.

GIVE FILE (f=#0008) Message Format (Sheet 1 of 4)
5-43

Word
Alpha(l)

Field
len

Description
Total Beta length. If len is #FFFF, Alpha(3) contains the length
and virtual bit address of Beta; otherwise, Beta is assumed to
begin at Alpha(3). A Beta portion must be specified for each file
to be given. The length of each portion depends on the give mode
as follows:
c=O
c=1
c=2
c=3

I

c

Give mode:
0

1

2

I

3

Alpha(2)

Two words to give a file to a user; four words to
give a file to the public file list.
Four words.
Five words.
Four words.

The file is given to the private user number
specified in Beta(2) or, if the specified user number
is 0 and the issuer is privileged, the file is given
to the public file list.
The file is given to the pool specified in Beta(3).
The file whose user number is cuser is given to the
user number specified by auser. The caller must be a
privileged user to use this mode.
The local file that is the last group file of an
output file family is given to the output queue and a
JDN is associated with the last group file.

n

Number of files to be given; maximum is 16.

eea

Error exit address; virtual bit address to receive control if an
error occurs during message processing (r~O). If this field is 0
when an error occurs, the task is aborted.

Alpha(3)

bl, ba

If the len value is #FFFF (indicating the Alpha and Beta portions
of the message are not contiguous) these fields give the length of
Beta and the virtual bit address of its first full word.

Beta(l)

name

File name (eight ASCII characters, left-justified, blank-filled).

Beta(2)

ss

Error response code:

o
1
3
4
5
6
7
8
9
#A
#B
#C
#D
Figure 5-8.
5-44

No errors; normal completion.
File recipient already has a permanent file with this
name.
The specified file is not attached.
The specified user number does not exist.
Output file is incorrectly named.
File to be given is still active.
User is not privileged.
Failure in modifying PFI.
File recipient has a security classification less than
that of the file.
Either the specified pool does not exist, or the giver
does not have access to the pool.
cuser is not a valid user number.
Not used.
Permanent file space limit exceeded for new power.

GIVE FILE (f=#0008) Message Format (Sheet 2 of 4)
60459420 H

Word
Beta(2)

Field

Description

lIE
IIF

ss

1110

#11
#12
#13
#14
#16

1117
1118

1119
lilA
IIlB
II1C
IIlD

No space available in system tables FILEI or UDMINI.
Issuer specified nonzero vri field, but the site does
not use variable rate accounting.
Issuer attempted to set a variable rate index (vri
field) for a data file being given to the public file
list. Only a code file can have a variable rate index
set.
Issuer attempted to give a file belonging to a pool
for which she/he is not the pool boss.
File is a magnetic tape file.
File recipient already has the maximum number of files
she/he can own.
IQM user number specified.
Unable to give ~ttached permanent file (if cuser is
used).
Cannot give connected file.
Caller is not the owner of the file.
File size exceeds limits for user.
No JDNs available to assign to file (c=3 and jdn=O).
Task is not privileged (c=3 and jdn=O).
JDN specified is not caller's (c=3 and jdn .ne. 0).
Destination user number is not an output spooler (c=3).

File access permissions. This 8-bit field is treated as eight
1-bit fields, with each bit specifying the associated permission:

acs

Bit

Hexadecimal
Value

1-3
4
5
6
7
8

10
8
4
2
1

Description
Unused.
Execute access permitted.
Modify access permitted.
Append access permitted.
Read access permitted.
Write access permitted.

auser

User number (six ASCII characters, left-justified, blank-filled).
For c=O or 1, auser is the user number of the file recipient. If
the issuer is privileged and the auser and c fields are 0 and the
len field is 4, the file is given to the public file list. When
auser is nonzero, the len field must be 2 or 3.

Beta(3)

pname

Pool name (eight ASCII characters, left-justified, blank-filled).
This field specifies the pool to which the file is given when c=1.

Beta(4)

pubset

Reserved for public file sets.

vri

Variable rate index set in the descriptor block (refer to Variable
Rate Accounting in chapter 8). This field is only specified for
virtual code files.
Figure 5-8.

60459420 H

I

GIVE FILE (f=#0008) Message Format (Sheet 3 of 4)

5-45

I

Word
Beta(4)

Field
flag

Description
Other operations to be performed when giving the file to the
public file list. This field is used only when the auser and c
fields are both 0:
1
2
4

5
6
7

I

Beta(5)

Clear the originating user field in the file index table.
Clear the originating user field in the file index table.
The file is given to the specified pool; if c=l, this
flag also causes the file to become privileged.
Do both 1 and 4.
The file is given to the specified pool; if c=l, this
flag also causes the file to become privileged.
Do both 1 and 4.

jdn

Job descriptor number (binary, 1 through 2047).

cuser/acct

The user number to which this file currently belongs. If c=2,
indicates that a file is to be given to the user number specified
by auser.

Figure 5-8.

Used only if c=3.

GIVE FILE (f=#0008) Message Format (Sheet 4 of 4)

The effect of the access parameter is determined by the current ownership and the resulting
ownership of the file.
If the current ownership is private and the resulting ownership is private, acs establishes
the new owner's access permissions. If acs=O, the new owner's permissions will be the same
as the previous owner had prior to the give.
If the ownership goes from private to pool, acs establishes the access permissions that all
pool members will have, including the pool boss. The default is the access permission the
owner had prior to the give.
If the ownership goes from private to public, acs establishes the access permissions all
users will have to the public file. The default is read and execute access permissions.
If the ownership goes from pool to private, acs establishes the access permissions the new
owner will have. The default is the access permissions the pool boss had prior to the give.
If the ownership goes from pool to pool, acs establishes the access permissions that all
pool members of the receiving pool will have, including its pool boss. The default is that
the new pool boss will have the access permissions the old pool boss had and the general
access permissions are retained.
If the ownership goes from pool to public, acs establishes the access permissions all users
will have to the public file. The default is read and execute access permissions.

5-46

60459420 H

LIST SYSTEM TABLE (f=#0009)
With this message, a user can retrieve a formatted copy of part or all of certain system
tables.
For option 9, two word entries (one from the top and one from the bottom) are listed
sequentially in the Beta area. The operating system moves entries from the disk status
table to the Beta area until either the table or the Beta area is exhausted. The number of
entries transferred is returned in the n field of the Alpha portion of the message.
The Beta format for option #10 of this message is also used by the privileged options of the
CREATE FILE and OPEN FILE messages.

I

For c field value of #10, the number of Beta words returned for each file entry is specified
by the quantity len divided by n. For example, if 4 files (n=4) were to be listed and the
len field is 16, only the first 4 Beta words of information for each file would be
returned. To get all 16 words of information for each file would require that n=4 and the
len field be at least 64.
The format of the LIST SYSTEM TABLE message is shown in figure 5-9. (For some of the
message options, the Beta portion of the message can consist of more than one of the
multiword sets shown in the figure.)
For a c field value of #10, the user can set up more than one Beta word group, and the
operating system returns the same number of groups as the user set up. If the file was not
found, the file name field of that group is zeroed. If the file name field of the first
group is 0, the system returns all file index extension entries for those files which have
ex tensions.

o

63

Alpha(1 )

r

len
16

Alpha(2)

n

0009

c
16

16

16

eea

48

16

IL

Alpha(3)

Word
Alpha( 1)

bl
_ _ _ _ _1~

ba

----- --------

Field
r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
2

11214

Figure 5-9.
60459420 F

I

_ _ _ _ _4~

Illegal message option.
Nonfatal; more files exists than fit in the Beta
buffer. At least one more file exists for the owner
but this file has not been checked for valid
qualifiers (for option #10 only).
Beta buffer length error. Either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 1 of 6)
5-47

I

Word
Alpha(l )

Description

Field
len

If this field is #FFFF, Alpha (3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the total length in words
of the Beta portion. For option #10, the len field should be at
least 16n. For options 2 through 5 and option 9, this. field
specifies the number of Beta words available for the requested
system table (refer to the c field).

c

Message option field, specifying the system table information that
the operating system is to return in the Beta portion. The values
are:

I

2
3
4
5
9

#F
#10

Alpha(2 )

n

Timecard buffer; a Beta length of at least 512 is
required.
Statistics buffer; a Beta length of at least 100 is
required.
Bank update table; a Beta length of at least 32 is
required.
Miscellaneous table; a Beta length of at least 104 is
required.
Disk status table; a Beta length of at least 32 is
required. If more than the required number of words
are specified to the bl field, the operating system
resets the bl field to 32. (The system does not reset
the bl field of option 2, 3, 4, or 5.)
Job category table entries; a Beta length of 198 is
required.
File index table extension entries for all private
files with extensions, or for individually specified
private files.

If the c field value is #10, n is the number of files to be
listed; the quantity len divided by n specifies the number of
words returned per file index table entry. For the other options,
n is the size of the table to be listed (in words), and the Beta
area should be at least n words long. The operating system moves
words from the table into the Beta area until either the table or
the Beta area is exhausted. The value of n must always be greater
than O.
For a c field value of #10, if the operating system finds fewer
than n files to list, it resets n to the number of files found.

I

Al pha(3)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first ~ull word of the Beta portion. For a c field
value of 9, the operating system sets the bl field to the length
of the table.

Figure 5-9.

5-48

LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 2 of 6)

60459420 F

For message options 2, 3, 4, 5, and #F:

o

63
tabwd 1

Beta( 1)

64
Beta(2)

tabwd 2
64

I.

Beta(n)

tabwd n
64

Word

Field

Beta{1 )
through
Beta(n)

tabwd i

Description
One word of an n-word table; returned by the operating system when
the c field is 2, 3, 4, 5, or #F.

For message option #9:

o

64

u o ~ 0
Beta( 1) P now
1 1
Beta(2)

~~

reserved

zip1

pkno

dsno

8

8
errs

use

8

8

pu2

zip2

pu1

8

12

8

dau

8
dtype

unused

8

16

dvno

8

8

4

label
12

repeat of Beta (1) for drive pack 2

Beta(3)

64
repeat of Beta (2) for drive pack 2

Beta( 4)

···
Beta(3 1)

repeat of Beta (1) for drive pack 16

Beta(3 2)

repeat of Beta (2) for drive pack 16

Figure 5-9.

60459420 E

7

LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 3 of 6)

5-49

Word
Beta(l )

Field
up

Description
Status. The operating system sets this field to one of the
following values:

o Down.
1

I

on

Up.

Usage. The operating system sets this field to one of the
following val ues :

o Off.
IOn.

drop

Drop file. The operating system sets this field to one of the
following values:

o Drop files disallowed.
1
own

Ownership. The operating system sets this field to one of the
following values:

o
1

Beta(2)

System ownership.
Private ownership.

zipl

Primary zip.

pul

Primary physical unit number.

zip2

Secondary zip.

pu2

Secondary physical unit number.

dau

Disk allocation unit.

dvno

Device number associated with this disc device.

pkno

Pack number written in pack label.

dsno

Device set number of which this pack is a member.

use

Percent of disk space in use (0-100).

errs

Fatal disk errors since autoload.

dtype

Device type of this pack.

label

Address of label of this pack.

Figure 5-9.

5-50

Drop files allowed.

LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 4 of 6)

60459420 F

For message option #10:

o

63

Beta(1 )

00

auser

atjdn
12

8

44

Beta(2)

name
64

Beta(3)

ptrpfif

unused
48

16
Beta(4)

unused
64
a

unused

Beta(5)

20

r

unused
42

2

Beta(6)

unused
64

Beta(7)

unused
64

Beta(8)

extid

unused

32

32
Beta(9)
Beta(10)

Beta(16)

Word
Beta(l)

unuacs(1 ) used
4
8
unuacs(3) used
4
8

20
user(3}

user(15)

Field

Figure 5-9.

60459420 H

user(2)
20
user(4)
20

user(16)
20

Description

I

The job descriptor number (1 through 2047):
=0
+0

auser

20

unuacs(16) used
8
4

user( 1)

unuacs(15) used
4
8

atjdn

20

unuacs(2) used
8
4
unuacs(4) used
4
8

File is not attached.
File is attached; atjdn contains the job descriptor to
which the file is attached.

The binary user number issuing the request; returned by the
operating system.
LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 5 of 6)

5-51

Word

Description

Field

Beta(2)

name

The name field of each Beta entry supplied can contain the ASCII
name of a file for which information is to be returned. The
operating system places a zero here if the name given is not found
or does not have a file index extension entry.

Beta(3)

ptrpfil

Pointer to the proper block of the PFI for this entry, relative to
the first block of the PFI.

Beta(5)

apf

Access permission flags:
Bit 20=1
Bit 21=0

File index table extension.
Used in file index table entry.

Beta(8)

extid

Extension identifier used to match file index table entries when
duplicate files occur.

Beta(9)
through
Beta(16)

uacs(i)

Individual user access permission for the user specified in the
user(i) field:

user(l)

Figure 5-9.

5-52

Bit

Description

1-3
4
5
6
7
8

Reserved (ignored by the system).
Execute access permitted.
Modify access permitted.
Append access permitted.
Read access permitted.
Write access permitted.

Binary user number of a user whose access permission is defined by
uacs(i). An entry of 0 indicates the end of the list.
LIST SYSTEM TABLE (f=#0009) Message Format (Sheet 6 of 6)

60459420 E

CHANGE FILE ATTRIBUTES (f=#OOOB)

This message allows a user program to change various attributes of an existing local file,
an attached permanent file, or a tape file. Nonprivileged users may change the file name,
account, master project number, or retention period of their own files. Privileged users
may also change the account number of another user's file, and they can change ostat, the
output file status. The site security administrator user number can clear the drop file
restart flag so that the drop file may be restarted. For tape files, only SIL file
attributes may be changed. Whenever a change in file attributes occurs, the dump flag in
the file index table is cleared to indicate the file has been modified. The format of the
message is shown in figure 5-10.

o

63

Alpha(1)

len

r

cf

16
Alpha(2)

0008

c

16

8

unused

16

8

eea
48

16
Alpha(3)

bl

ba
16

48

Beta (1)

cfile
64

Beta (2)

nfile
64

Beta (3)

usernum
64

Beta (4)

unused

mpn

dflength
24

24

Beta (5)

rp
10

6

csio
64

Beta (6)

unused

type

4

4

Beta (7)

mcat
4

sfo

bt
4

rmd

rt
4

4

rlmin

rpb

It

PIT
14

unused

ic
4

4

3

ostat

5

ausize
24

unused
16

Beta (9)

8

rlmax
24

Beta (8)

8

8

ct

reserved

pc

16

mpru
32

account
64

Figure 5-10.

60459420 H

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 1 of 8)

5-53

I

Word

Field

Alpha(l)

r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
2
3
4
5
6

7
8
9
#A
#C
#D
#E
#F
#10
#11
#12
#13
#14
#15
#16
#17
#18
#19
#20
#21
#23
#24
#27

I

#28
#29
#30
#31
#214

len

Figure 5-10.

5-54

Current file name is still active.
Current file name does not exist or is not attached.
New file already exists.
New account number is not valid.
New file name is invalid.
User is not privileged, although the len field is 3.
Invalid c field value.
Duplicate permanent file name.
Not a level-1 task (a level-1 task is one with no
controller).
Caller is not owner of the file.
Illegal type code.
Unable to change characteristics of a connected file.
For virtual code file only.
Illegal management category.
No match found in ioc for the file name given in
cfile.
Illegal class code.
Illegal file organization code.
Illegal blocking type code.
Illegal record type code.
Must have write access to cfile in order to change
hba.
Illegal attribute for a tape file.
Invalid ct value.
Invalid ic value.
Illegal record type change for a direct access file.
Illegal ostat field.
Unable to change ostat field in the FILEI.
Invalid account.
Illegal master project number.
Caller is not the site security administrator user
number.
File is not a drop file.
No user table entry available or the FILEI is full.
Undefined user number.
Nonprivileged caller.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the message; otherwise, Beta is assumed to begin at
Alpha(3), and len must be 9.
CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 2 of 8)

60459420 H

Word

Field

Alpha(l )

cf

Description
File attribute change options for mass storage files only.
Control bits are represented as follows:

cf8

cf7 un- cf5 cf4

cf3 cf2 cf1

used
1

1

1

1

1

1

1

1

Description

Subfield
cf8

Internal characteristics:

o
1
cf7

Communication type:

o
cf5

1

1

1

1

1

60459420 E

Do not change retention period~
Change the retention peroid.

File type:

o

Figure 5-10.

Do not change the drop file size.
Change the drop file size in the file
index table to the value given in the
dflength field in Beta(4).

Retention period:

o
cfl

Do not change the mcat field in the file
index table.
Change the meat field in the file index
table to the value given in the mcat
field in Beta(5).

Drop file size:

o

cf2

Do not reset hba.
Reset hba to 1 in the file index table
and to 0 in the ioc. Source file (ioc
number 16) and drop file (ioc number 17)
cannot be changed.

Management category:

o

cf3

Do not change communication type.
Change communication type.

Byte address (hba):

o

cf4

Do not change internal characteristics.
Change internal characteristics.

Do not change the file type in the file
index table.
Change the type field in the file index
table to the value given in the type
field in Beta(5).

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 3 of 8)
5-55

Word

Field

Alpha(l)

c

Description
Type of change.

o
1

I

I

2

The values are:

Change mpn, account number, and/or file attributes. Only
c=O is valid for tape files.
Enable the restart of the drop file identified by cfile
and usernum. This option is valid for the site security
administrator user number only. (No other file
attributes are changed.)
Change the account number of this executing level-l task
(such as a batch processor); cfile is the drop file name
of the task.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (rFO). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion. There is only
one Beta per Alpha.

Beta(l)

cfile

For c=O, this field must contain the current file name in ASCII,
left-justified with blank fill. If changing only the filename,
the c field must be 0 and nfile must contain the new filename
(refer to the following description of nfile). The cf and csio
fields must also be O. To change file attributes (cf, csio)
without changing the filename, the c field and the new filename
field must both be O. The current filename (cfile) must also be
given. File names must be in the format described in File
Concepts. For c=2, this field must contain the task's drop file
name.

Beta(2)

nfile

When the c field is 0, this field must contain the new file name
in ASCII, left-justified with blank fill. The file name cannot be
changed for tape files.

Beta(3)

usernum

Binary user number under which the new account is valid (a
privileged user issued a call with the c field set to 0 or the
site security administrator issued the call with c set to 1).

Beta(4)

dflength

Length of the drop file in blocks when cf3 is set to 1.
file may be no larger than #3FFFF due to drop file map
limitations.)

mpn

Master project number in ASCII, left-justified with blank fill.
To change the master project number, c must be set to O. The mpn
cannot be changed for tape files.

rp

Retention period in days; in binary notation when cf2 is set to 1.

Figure 5-10.

5-56

(The drop

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 4 of 8)

60459420 H

Word

Field

Beta(5)

Description

csio

SIO file attribute change options for local, permanent, or tape.
Control bits are respresented as follows:

o

63

cc cc cc cc cc ccc

unused

55 5 5 55 5 5 55 555
12 11Q 98 76 54 3 2 1

unused

1~

48

3 1111111111111
Subfield
cs13

Description
Output file status:

o
1
cs12

Allocation unit

o
1
cs11

1

1

o

o

o

60459420 E

Do not change the records per block.
Change the records per block to that
specified in the rpb field.

Record mark:
1

Figure 5-10.

Do not change the label processing.
Change the label processing to that
specified in the lp field.

Records per block:
1

cs7

Do not change the tape mode.
Change the tape mode to that specified in
the tm field.

Label processing:
1

cs8

Do not change the maximum PRU size.
Change the maximum PRU size to that
specified in the mpru field.

Tape mode:

o
cs9

Do not change allocation unit.
Change allocation unit to that specified
in the ausize field.

Maximum PRU size:

o

cs10

Do not change output file status.
Change the output file status to value
specified in ostat field.

Do not change the record mark.
Change the record mark to that specified
in the rmd field.

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 5 of 8)

5-57

Word

Field

Description
Subfield

Beta(5)

csio

cs6

Description
Padding character:
0
1

cs5

Record type:
0

1
cs4

1
type

2

2
3
7

sfo

1

5-58

Mass storage file.
Scratch file.
Output file.
MODDROP file (formerly known as write-temporary file).
Batch file.

File organization when csl is set to 1:
0

Figure 5-10.

Physical data file.
Virtual code file.

File management category when cf4 is set to 1:
0
1

I

Do not change the file organization.
Change the file organization to that
specified in the sfo field.

File type code when cfl is set to 1:
0

mcat

Do not change the blocking type.
Change the blocking type to that
specified in the bt field.

File organization:
0

Beta(6)

Do not change the minimum record length.
Change the minimum record length to that
specified in the rlmin field.

Blocking type:
0
1

csl

Do not change the maximum record length.
Change the maximum record length to that
specified in the rlmax field.

Minimum record length:
0
1

cs2

Do not change the record type.
Change the record type to that specified
in the rt field.

Maximum record length:
0
1

cs3

Do not change the padding character.
Change the padding character to that
specified in the pc field.

Sequential.
Direct.

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 6 of 8)
60459420 H

Description

Field

Word
Beta(6)

bt

Blocking type when cs2 is set to 1:

o
1
2
4
rt

Record type when cs5 is set to 1:

o
1
2
4
5
7

Control word (W).
ANSI fixed length (F).
Record markeR).
Lower CYBER controlword (L).
System block (B).
Undefined (U).

rmd

Record mark when cs7 is set to 1 (any 8-bit ASCII character).

pc

Padding character when cs6 is set to 1 (any 8-bit ASCII character).

ct

Communication type:

o
1
2
ic

1
2
3

ostat

Default; currently 1.
Eight-bit ASCII. If dc=SC (refer to figure 5-9), file
has free form carriage control.
Binary notation.
Eight-bit ASCII. If dc=SC (refer to figure 5-9), file
has ANSI carriage control.

Output file status:

o
1
2
3
4
5
6
7
8-32

Figure 5-10.

Reserved.
Access station.
Remote Host Facility.

Internal characteristics, indicating the format of the file:

o

60459420 E

SIL assumes the file was created before SIL was added to
the system; therefore it enters default values in the SIL
fields of the file index entry.
Internal blocking (I).
Character type blocking (C).
Exact records blocking (K).

Normal status.
Destination LID disabled.
Destination not responding.
Destination rejecting file.
SIL error occurred during file transfer.
DIVERTED.
Hardware ~ath to LID not available.
SYS error occured during file transfer.
Reserved by CDC.

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 7 of 8)

5-59

Word
Beta(7)

Beta(8)

Description

Field
rlmin

Minimum record length when cs3 is set to 1 (24-bit, user-supplied
length in number of bytes).

rlmax

Maximum record length when cs4 is set to 1 (24-bit, user-supplied
length in number of bytes).

ausize

Allocation unit size in blocks when cf2 is set to 1. User
specified guideline for operating system to follow when extending
file.

rpb

Records per block (used only for bt=k) when cs8 is set to 1.

lp

Label processing when cs9 is set to 1:

o
1
tm

Tape mode when csl0 is set to 1:

o
1

Beta(9)

Binary.
Coded.

mpru

Maximum PRU size (used only for V-format tapes) when csll is set
to 1.

account

Account number, in ASCII, left-justified with blank fill. This
field must be valid under the user number of the task issuing the
message, or if the user is a privileged user, this field must be a
valid account number under the user number specified in Beta(3).

Figure 5-10.

5-60

Read and verify the existing labels.
Write new labels.

CHANGE FILE ATTRIBUTES (f=#OOOB) Message Format (Sheet 8 of 8)

60459420 E

FILE DISPOSITION (f=#OOOD)

A user program can issue this message to specify the disposition of a file, freeing the user
from the burden of using naming conventions to accomplish disposition of a file. The file
must be either a local mass storage file or an attached permanent file.
The format of the FILE DISPOSITION message is shown in figure 5-11. (The Beta portion of
this message can consist of more than one of the seven-word entries shown in the figure.)

o

63

Alpha(1 )

r

len

unused

16
Alpha(2)

0000

16

n

16

16

eea
16

Alpha(3)

48

bl
ba
I
L _ _ _ _ _1~L- _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Beta ( 1)

I

~8.J

name
64

Beta(2)

flags

def
40

Beta(3)

unused

ie

em

Beta(5)

nae

8

16

16

st

unused

ot

16

8
de

32
Beta(4)

ss

el
8

24

8

16

tid
8

56

Beta(6)

fid
64

'Beta(7)

unused
64

Word
Alpha( 1)

Field
r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
#211
#214

Figure 5-11.
60459420 E

Error code was returned in an ss field of Beta(2).
Number of files routed by this message was illegal
(the n field is 0).
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

FILE DISPOSITION (f=#OOOD) Message Format (Sheet 1 of 3)
5-61

Word

Field

Description

Alpha(l)

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len in the length in words of
the Beta portion (a multiple of 7).

Alpha(2)

n

Number of files to be routed by this message.
files.

eea

,

Maximum is #FFFF

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Beta(l)

name

File name, in ASCII. File names must be in the format described
in File Concepts, Chapter 3.

Beta(2)

flags

Flag bits. Each bit must be set to 0 if the specified parameter
is to be ignored, or set to 1 if the specified parameter is to be
processed (the value is to be placed in the appropriate file index
table entry field).
Beta(2) bits and corresponding parameters in this field, from left
to right starting from 0, are:

o
1
2

3

4
5

dc
cm
st

6
7
8

ot
Unused
tid

9

10
11

fid
Unused
nac

def

If set to 1, indicates that file disposition is to be deferred.
The operating system stores the information about the file into
the file index table but does not dispose of the file.

el

Beta entry length; must be at least 2 and no more than 7.

ss

Error response field.
2
3
4
5
6
7
8
9
#B
#C
#D
#E

Figure 5-11.

5-62

Unused
Unused
ic

The values are:

Immediate release (def=O) of an active file.
Immediate release (def=O) of a nonallocated file.
Beta entry length (el) error.
File must be attached before the route message is
executed.
Immediate release (def=O) with no disposition set.
Could not write a PFI entry.
Illegal disposition code.
Illegal site identifier, or the mainframe site
identifier is not logged in.
Illegal file name.
Attempt to route a magnetic tape file.
RHF files may not be routed.
Files connected to a terminal may not be routed.
Caller is not the private file owner.

FILE DISPOSITION (f=#OOOD) Message Format (Sheet 2 of 3)

60459420 E

Word
Beta(3)

Beta(4)

Field

Description

ic

Internal characteristic, indicating the format of the file.
to figure 5-9 for the possible values in this field.

dc

Disposition code, indicating how the file is to be disposed.
Refer to figure 5-9 for the possible values in this field.

cm

Conversion mode, indicating the type of conversion to be performed
on the file when it reaches the access station (st=AST):
DI
EC
BI

st

Refer

Display code (64-character set).
Extended display code (128-character set).
Binary.

Site identifier, identifying the processor responsible for
processing the file. If the disposition code is IN (input for
batch processing), this field identifies the processor on which
the file is to be executed. If the disposition code specifies an
output queue, this field identifies the processor on which the
file is output.
For possible values for this field, contact a site analyst.

ot

Origin type of a file.
B
E
I

Beta(5)

Beta(6)

nac

Access station area code.

tid

Terminal identifier. The central site is indicated by tid=O.
(Not meaningful for files destined for the CYBER 205.)

fid

The first five characters of the file name that is to designate
the file while it is in the output queue. Any combination of one
to five letters and numbers can be specified, with the first
character a letter. Two unique job sequence characters added by
the system to the job name are used as the sixth and seventh
characters of the file name. The eighth character (CYBER 200
only) is a blank.

Figure 5-11.

60459420 E

Local batch.
Remote batch.
Interactive.

FILE DISPOSITION (f=#OOOD) Message Format (Sheet 3 of 3)

5-63

USER/ ACCOUNTING COMMUNICATION (f=#OOOE)

A user program can issue the USER/ACCOUNTING COMMUNICATION message to retrieve accounting
statistics from the cumulative accounting buffer. This call is used by the batch processor
to communicate with the accounting system. Only the accounting statistics for the program
issuing the message are available to the program; the statistics are available via this
message only for the duration of the job.
The format of this message is shown in figure 5-12. The Beta portion of the message is
described under the c field definition. The value in each of the Beta words, except for the
leftmost 16 bits of Beta(15), is a sum over all accounting periods for the job up until
issuance of the USER/ACCOUNTING COMMUNICATION message.

o

63

Alpha(l)

r

Alpha(2)

OOOE

c

len

16

16

unused

16
eea

16
Alpha(3)

I

L

Word
Alpha(l )

ba

Field

5
7
8
#214

Figure 5-12.

-

----

1

---

_ _ _ ._48
_1

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

4

len

------

Description

2
3

5-64

48

bl
_ _ _ _ _1~

r

16

Illegal message option.
Nonprivileged task attempted to use a privileged option;
or, option 1 or 2 was issued by a user other than a
level-1 task.
System time unit (STU)/system billing unit (SBU) value is
less than O.
Too many entries are written to the accounting file.
Error in call to user validation routine.
Account number is not valid.
Beta buffer length error; either the first word address
of Beta plus length is greater than the maximum user
virtual address, or the Beta buffer is too small for the
number of requests and length specified.

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. For message option 1, len must be 1; for option
3, len must be 22; for option 4, len must be 0; and for option 9,
len must be 5.
USER/ACCOUNTING COMMUNICATION (f=#OOOE) Message Format (Sheet 1 of 4)

60459420 E

Word
Alpha(1 )

Field
c

Description
Message options:

o
1
2
3
4

5
6
7
8
Y

Reserved.
Start of this batch job; can be issued only from a
level-1 task.
End of this batch job; can be issued only from a level-1
task.
Retrieve accounting information for this task or for all
level controllees executed since the start of this batch
job.
Dump accounting temporary storage to permanent storage
and terminate the accounting file; can be issued only by
a privileged task. No Beta portion is used for this
option.
Close out current system dayfile and start a new one; can
be issued only by a privileged task. No Beta is used for
this option.
Allows operating system file transfer utilities to make
accounting record entries. Beta(1) through Beta(6) will
contain accounting record information.
Adds accounting information pertinent for bill usage to
the account file.
Adds STUs/SBUs to user's accounting statistics.
Adds project accounting information to the account file.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Message options:

For option 1, the Beta portion of the message consists of one
word, a job name of up to eight ASCII characters starting with a
letter, left-justified with blank fill.
For option 2, Beta words 2 through 6 are optional; therefore, the
Alpha length must be set accordingly (len is either 1 or 6).

o

63

Beta (1)

job name
64
job sbu/stu

Beta (2)

64
Beta (3)

project
64
project

Beta (4)

64
Beta (5)

project

project
32

Beta (6)

32

project sbu/stu
64

Figure 5-12.

60459420 F

USER/ACCOUNTING COMMUNICATION (f=#OOOE) Message Format (Sheet 2 of 4)

5-65

I

Word

I

Field

Description

Beta(l )

jobname

Job name in ASCII, left-justified with blank fill.

Beta(2)

job sbu/stu

Total SBU/STU amount accumulated by the job.

Beta(3)
through
Beta(5)

project

1- to 20-character project number, in ASCII, left-justified with
blank fill.

Beta(6)

project
sbu/stu

Total SBU/STU amount accumulated by the project number.

For option 3, VSOS returns the following Beta words:
Beta(l )
Beta(2)
Beta(3)
Beta(4)
Beta(5)
Beta(6)
Beta(7)
Beta(~)

Beta(9)
Beta(10)
Beta(ll)
Beta(12)
Beta(13)
Beta(l4)
Beta(l5)
Beta(l6)
Beta(17)
Beta(18)
Beta(l9)
Beta(20)
Beta(2l)
Beta(22)
Figure 5-12.

5-66

User execution CPU time, in microseconds.
Memory usage; at the end of each accounting period, (current
working set size)*(user CPU time for current accounting period) is
computed and added to a running total kept in this field.
Number of 16-bit bytes transferred to or from tape files.
Number of tape accesses (input/output requests issued) for reads
and writes.
Number of nonread and nonwrite tape functions, such as read
hardware status.
Virtual and resident CPU time, in microseconds, for user program
execution.
Number of disk accesses (input/output requests issued) for large
page explicit reads and writes.
Number of disk accesses (output requests issued) for large page
implicit writes.
Number of disk accesses (input/output requests issued) for small
page explicit reads and writes.
Number of disk accesses (output requests issued) for small page
implicit writes.
Number of disk sectors transferred for explicit reads and writes.
Number of disk sectors transferred for implicit writes.
Number of disk accesses (input requests issued) that resulted from
large page faults (large page implicit reads).
Number of disk accesses (input requests issued) that resulted from •
small page faults (small page implicit reads).
Current working set size (leftmost 16 bits), and the number of
virtual system user calls made (rightmost 48 bits).
STUs (cumulative TCHARGE calculations, integer).
SBUs (cumulative MCHARGE calculations, real).
Number of large pages lost.
Number of small pages lost.
Cumulative amount of CPU time for which this task's working set
size limit appeared to be too small.
Account block STU value (integer).
Account block SBU value (real).

USER/ACCOUNTING COMMUNICATION (f=#OOOE) Message Format (Sheet 3 of 4)

60459420 F

For options 4 through 6, there is no Beta portion. For option 7, the Beta
portion of the message is as follows, with up to 10 words of Beta:

o

63
string of installation-defined data

Beta (1)

64

··
·

7

string of installation-defined data

Beta (n)

64

Maximum length of 80 characters containing billing information.
For option 8, the Beta portion of the message consists of one word, a positive
floating-point STU/SBU amount.
For option 9, the account set in Beta(l) is checked for validity and the
accumulated account block SBUs or STUs are returned to the caller.

o

63

Beta (1)

account

64
Beta (2)

project

64
project

Beta (3)

64
Beta (4)

project

unused

32

32

project sbu/stu

Beta (5)

64

Word

Field

Beta(l)

account

Account number in ASCII, left-justified with blank fill.

Beta(2)
through
Beta(4)

project

1 to 20 character project number in ASCII, left-justified with
blank fill.

Beta(5)

project
sbu/stu

Total SBU/STU amount accumulated by the project number.

Figure 5-12.
60459420 E

Description

USER/ACCOUNTING COMMUNICATION (f=#OOOE) Message Format (Sheet 4 of 4)
5-67

ATTACH PERMANENT FILE (f=#0010)

A program issues this message to attach an existing permanent file. Only one Beta is
processed for each Alpha used. The format of this message is shown in figure 5-13.

o

63

Alpha (1)

len

r

16
Alpha (2)

0010

c

16

n

16
eea

16

48

bl

Alpha (3)

16

ba

16

48

Beta (1)

name

64
Beta (2)

ss

flag

acs

8

8

unused

40

8
owner

Beta (3)

64

Word

Field

Alpha( 1)

r

Description
Response code returned by the operating system when this message
has been processed. If no error occurs, the code is 0; otherwise:
1
2
3
4
5
6
#211
#214

Alpha(2)

len

If this field is #FFFF, Alpha(3) exists and contains the length
and virtual bit address of the Beta portion of the message;
otherwise, Beta is assumed to be located beginning at Alpha(3),
and len is the length of the Beta portion of the message.

c

Control field. If this field is 0, attach files given in the Beta
field. If this field is 1, attach all files (no Beta required).

n

Number of requests in this message (maximum is 16).
c=1.

Figure 5-13.
5-68

Refer to Beta field ss for the specific error. All
Beta entries are processed.
More than one of the following response codes 4, 5,
and 6.
Illegal option. Control field contains an illegal
value (not 0 or 1).
Access conflict with another job of this user.
Filename is in use as a local file.
Access conflict with another user.
Number of files given was 0 or greater than 16.
Beta buffer length error. Either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

Not used for

ATTACH PERMANENT FILE (f=#0010) Message Format (Sheet 1 of 2)
60459420 E

Word

Field

Description

Alpha(2)

eea

Virtual bit address to receive control if an error occurs while
this message is processed (r not equal to 0); if eea is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta portion of the message is not contiguous to the Alpha
portion (len=#FFFF), these parameters indicate the length and
virtual bit address of the first full word of the Beta portion.

Beta(1)

name

Name of the file in ASCII; file names (left-justified with blank
fill) must be in the format described in chapter 3. Drop file can
also be attached.

Beta(2)

ss

Error responses:

o
1

2
3
4

5
6
7
8
9

IIA

#B
IIc
liD
acs

Normal completion.
Permanent file name not found.
File already attached to this job.
Access conflict with another of user's jobs.
File already attached as a local file or attached
permanent file.
No user table entry available.
Access violation; user does not have requested access
permissions.
Access conflict with another user.
Specified user number does not exist.
Not enough space in the FILEI system table.
File spans a downed device.
Read-only access required for partial attach.
Attempted to attach a purge-only file.
User attempted to attach a file with write, modify, or
append access when the field is privileged open.

I

Desired file access. This field is treated as eight I-bit fields.
Each bit set requests the associated access. Combinations are
allowed. The values are:
Bit
1-3
4
5
6
7
8

Hexadecimal
Value
10
8
4
2
1

Description
Unused.
Execute access.
Modify access.
Append access.
Read access.
Write access.

If acs is binary 0, the default is all access types permitted to
the caller.
flag

A set of 8 bits (Fl through F8) indicating a special action.
Values are:
fl=O
fl=1
fl=2-8

Beta(3)

owner

Figure 5-13.
60459420 H

Do not attach file spanning a downed device.
Attach file spanning a downed device.
Reserved.

ASCII user number of file owner (six ASCII characters,
right-justified, zero-filled). If this field is 0, the caller's
user number is used.
ATTACH PERMANENT FILE (f=#0010) Message Format (Sheet 2 of 2)
5-69

I

GET PACK LABEL AND PFI (f=#OOll)

A privileged user or master user issues this message to retrieve the pack label and pack
file index for a specified pack. The preferred option is to return unformatted entries
(c=l) •
If the user is a privileged user, all the PFI entries are returned for the specified pack.
If the user is a master user, only those PFI entries (for which the user is a master user of
the account) are returned for the specified pack.
In the first call, the user initializes the Alpha words (n set to 0) and the packid field in
Beta(l). The length of the Beta portion must be at least 528 (one block plus 16 words for
the pack label). The pack label is returned in Beta(l) through Beta(ll) and the PFI entries
are returned starting at Beta(l7). A count is returned to the n field indicating the number
of entries plus one that have been returned in the current call (or series of calls, if more
than one call is issued). If a 1 is returned in the r field of Alpha(l), more PFI entries
exist and the call must be reissued to get the rest of the entries. In the second and any
subsequent calls, the n field must contain the count returned in the previous call. PFI
entries are then returned starting at Beta(I).
The label format, as set by the system routine NAMEPACK, is shown in figure 5-14. The
format of the entries is the same as for the LIST FILE INDEX OR SYSTEM TABLE message option
1 (shown in figure 5-9), except that the user/ref field is always ref and oacs always
contains the oacs value.

o
Alpha(1)

63
len

r

16
Alpha(2)

0011

c

16

16

16
eea

n

48

16
Alpha(3)

I

bl

L - . - - - _1f! - -

Figure 5-14.

5-70

I

ba

----- ---- ------

_4~

GET PACK LABEL AND PFI (f=/l0011) Message Format (Sheet 1 of 4)

60459420 E

63
Beta (1 )

volume
64

Beta (2)

series

packid

16

48
Beta (3)

pfiloc

label

40

24
Beta (4)

pfie

pkln

pfil
16

32

16

Beta (5)

creation
64

Beta (6)

update
64

Beta (7)

expiration
64

Beta (8 )

dau

Beta (9 )

dfsloc

dfsl
16

dtyp

16

32
bsmloc

dvno
16

Beta (10 )

16

32

devset
64

Beta (11 )

type
64

Beta (12 )

badspot
64
~

Beta (13)

timestamp
64

Beta (14 )

unused
64
unused

Beta (15)

64
Beta (16 )

check _byte

unused
16

Figure 5-14.

60459420 E

48

GET PACK LABEL AND PFI (f=#0011) Message Format (Sheet 2 of 4)

5-71

Word

Description

Field

Alpha(1 )

r

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

2
3
4
5
6

I

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the message; otherwise, Beta is assumed to begin at
Alpha(3), and len is the length in words of the Beta portion.
This field must be multiple of 16 and a minimum of 528.

c

Message options:

o
2
Alpha(2)

Nonfatal error; more files exist than the Beta portion
could hold; reissue the call to get the rest.
User is not privileged or is not a master user.
Disk I/O error.
Pack identifier was not found.
Illegal option.
User directory not found.

Return pack label (Beta is at least 16 words).
Return PFI entries (Beta is a multiple of 16, at least
512 words).
Return bad spot map (Beta is at least 512 words).

n

This field must be set to 0 by the user for the first call,
causing the pack label alone to be returned. For a reissued call,
this field must be set to the value that the operating system
returned to the user in this field for the previous call. If C=1,
n indicates the starting entry.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r40). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3 )

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word 0'£ the Beta portion.

Beta(1 )

volume

When the call is issued, Beta(l) contains the pack number.
Contains the characters VOL 3 to distinguish the label from the
earlier versions that contained VOL 2.

Beta(2)

packid

Pack identifier of the pack sought, in ASCII, left-justified with
blank fill. For a first call (n=O), the pack identifier in
Beta(1) is overwritten with the returned label. Sixteen words of
the pack label are returned (last three words are not used); all
16 words of each used pack file index entry are returned. Pack
identifiers are obtained using option 9 of the LIST SYSTEM TABLE
(f=#0009) message.

series

Value of 2031, in hexadecimal notation.

Figure 5-14.

5-72

GET PACK LABEL AND PFI (f=#OOll) Message Format (Sheet 3 of 4)

60459420 F

Description

Field

Word

label

Disk block address of this label.

pfiloc

Disk block address of the first block of the Pack File Index (PFI).

pfie

Entry number of this entry within the PFI, counting from O.

pfil

Length of the PFI in blocks.

pkln

Pack length that is the number of sl2-word blocks that can be
allocated on this disk pack.

Beta(s)

creation

ASCII date, in the format mm.dd.yy, of the creation of this label.

Beta(6)

update

ASCII date, in the format mm.dd.yy, of the last update of the disk.

Beta( 7)

expiration

ASCII date, in the format mm.dd.yy, of the expiration of the disk.

Beta(8)

dau

The disk allocation unit contains the binary number of sl2-word
blocks in an allocation unit. It is the minimum allocation unit
for this disk pack.

dfsl

Length of the directory of file segmentation (DFS).

dfsloc

Starting disk block address of the DFS.

dtyp

Device type indicator:

Beta(3)

Beta(4)

Beta(9)

1
2
3

Reserved.
81912 disk pack (single density, 18 sector).
81922 disk pack (double density, 18 sector).

dvno

Device number associated with this disk pack.

bsmloc

Starting disk block address of the bad spot map (BSM).

Beta(10)

devset

Device set name in the format DVSTxx, where xx is the device set
number. The field is left-justified and blank-filled.

Beta( 11)

type

Type of disk pack: 81912 or 81922 in hexadecimal notation; used
by the operating system to determine the length of the disk pack.
(Returned for release version 2.1.5 compatibility only.)

Beta(12)

badspot

Name of pseudo file converting the bad spot map.
release version 2.1.5 capability only.)

Beta(13)

timestamp

Time of last autoload.

Beta(l6)

Figure 5-14.

60459420 E

(Retained for

Check sum of selected fields of the pack label. Words 1 through 4
and 8 through 12 are used to generate the check_byte.
GET PACK LABEL AND PFI (f=#OOll) Message Format (Sheet 4 of 4)

5-73

LIST CONTROLLEE CHAIN (f=#0013)

A user program can obtain a list of the controllee chain, including the program level and
descriptor block number, the executable source file name, drop file name, and so forth, of
each task in the chain, by using the LIST CONTROLLEE CHAIN message shown in figure 5-15.
The issuing program can determine its own position in the chain by comparing fields j and b
in Alpha(2) with fields sand t in Beta(l).
A total of nine levels is the maximum; that is, eight controllees plus the level-1 batch
processor or virtual system interactive processor. The descriptor block number is unique
and is associated with the program until it terminates. Observe that level 1 will be listed
for a batch job. Level 2 will be the highest level for which information is returned if the
task is running interactively.

o

63

Alpha(1)

r

len

j

Alpha(2)

IL

16

8

8

b

eea
48

8

8
Alpha(3)

16

0013

unused

c

16

bl

I

ba

____

16

--

------

-- ---

-----

_ _4~

o
Beta( 1)

63
s

t
8

Beta(2)

ctlr
8

unused
40

8

k

tl
56

8
Beta(3)

source
64

Beta(4)

drop
64

Word

Field

AlphaO)

r

Description
Response code; returned
has been processed. If
and this field contains
otherwise, the response
1
2
#214

Figure 5-15.
5-74

by the operating system when this message
no error occurs, control proceeds normally
the number of words returned in Beta;
code is:

The length specified for Beta is O.
An illegal option was selected.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

LIST CONTROLLEE CHAIN (f=110013) Message Format (Sheet 1 of 2)
60459420 E

Description

Field

Word
Alpha(1)

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. For message option 0, len must be a multiple of
4, up to a limit of 36. For message options 1, 2, and 3, len must
be 4.

c

Message options:

o
1
2
3
Alpha(2)

List all control lees in the chain; controllees are listed
in ascending order, starting with the job control
processor.
List only the program that issued the message.
List only the controller of the program that issued the
message.
List only the control lee of the program that issued the
message.

j

Level in the control lee chain of the program that issued the
message. Level numbers in this field range from 1 to 9.

b

Descriptor block number of the program that issued the message.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Beta(1 )

s

The level in the controllee chain of the program whose name is in
Beta(3). Level numbers in this field range from 1 to 9.

t

Descriptor block number of the program whose name is in Beta(3).

ctlr

Descriptor block number of the controller of the program whose
name is in Beta(3):
#FF

Beta(2)

Controller is interactive processor.

k

Descriptor block number of the control lee of the program whose
name is in Beta(3). This field can be O.

tl

Time limit of the program whose name is in Beta(3).

Beta(3)

source

Name of the executable source file, in ASCII.

Beta(4)

drop

Name of the drop file, in ASCII.

Figure 5-15.

60459420 E

LIST CONTROLLEE CHAIN (f=#0013) Message Format (Sheet 2 of 2)

5-75

SEND A MESSAGE TO CONTROLLER (f=#0014)

This message is used by a program to send a string of binary or ASCII data to a program
controller or the job control processor (the batch processor or virtual system interactive
processor). When this message is issued, the operating system copies the data string from
the Beta portion of the message into a system buffer.
When output requests are being sent to a virtual system interactive processor (for example,
a user at a terminal) from a task (its controllee) and the wait or replace option (m=O) has
been selected, the system message buffer can hold up to 5 data strings or 4096 character
bytes, whichever limit is reached first. For a logged-out user, only one data string can be
held in the buffer. The data is grouped in blocks of 151 character bytes and sent, 1 block
at a time, from the virtual system interactive processor to the output device. If the last
block is fewer than 151 character bytes, an end-of-message character is added after the last
character byte. The issuer of the message is responsible for formatting any multiline
strings to be sent to a terminal by inserting line feed and carriage return characters at
the appropriate places in the string.
If a data string from a controller has been sent but not requested by the controllee when
the controllee issues this message, the data string from the controller to the controllee is
lost. The control lee should check, therefore, to see if any data strings are waiting to be
received before it issues this message.
If the controller is the batch processor, the message is put in the job dayfile. The format
of this message is shown in figure 5-16. The Beta portion contains the string of binary or
ASCII data sent to the program controller or job control processor. The maximum length of
the Beta portion, when present, is 4096 character bytes. When a data string is sent in this
way to the virtual system interactive processor, the processor sends it to an output device
(a terminal).

o

63

Alpha(1)

16

16
Alpha(2)

unused

I
L_

Word
AlphaCl )

48
ba

bl

---

_1§

---------

______

I

~8...J

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

2
3

5-76

- -

Description

1

Figure 5-16.

16

eea

8

Field
r

8

8

b

8
Alpha(3)

0014

cf

c

len

r

Length of Beta in character bytes is either 0 or
greater than 4096.
Illegal option was selected for this message.
No controllee matches the value of b=O, or this task
is a level-1 task; therefore, sending this particular
message was pointless.

SEND A MESSAGE TO CONTROLLER (f=#0014) Message Format (Sheet 1 of 2)

60459420 E

Word

Field

Alpha(1)

Description

r

4

6

7
#214

len

If this field is #FFFF, Alpha(3) contains the length in character
bytes and the virtual bit address of the Beta portion of the
message; otherwise, Beta is assumed to begin at Alpha(3), and len
is the length in character bytes of the Beta portion.

c

Message options:

o

2
cf

2

Alpha(3)

The values are:

Send the data string to the controller. If the
controller is a virtual system interactive processor or
batch processor, continue running this controllee program
(the program issuing this message); otherwise, start
running the controller and stop running this controllee
program.
Send the data string to the level-1 task. Continue
running this controllee program.

b

Descriptor block number of the controller. If the data string is
to be sent directly to a level-1 task (c=2), or if this program's
controller is a level-1 task, this field is ignored. If this
field is 0, the data string is sent to the next higher controller.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these paralneters indicate the length in character
bytes and virtual bit address of the first full word of the Beta
portion.

Figure 5-16.
60459420 E

If the controller to whom the data string was sent is a
logged-out user, replace any existing string waiting in
the buffer with the new string. If the job control
processor buffer is full, stop running this program until
the buffer is free.
If the data string cannot be sent to the controller,
return control to the error exit address.
If the data string cannot be sent to the controller, stop
running this program until the message can be sent.

Control field.

o

Alpha(2)

If the notify option was selected (c=1), the
controller designated was a job control processor for
a logged-out user.
If the notify option was selected, the system output
buffer is full.
Error in sending message to job dayfile.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

SEND A MESSAGE TO CONTROLLER (f=#0014) Message Format (Sheet 2 of 2)
5-77

SEND A MESSAGE TO CONTROLLEE (f=#OOlS)
A program starts a controllee running by issuing a SEND A MESSAGE TO CONTROLLEE message.
The optional Beta portion of this message contains a string of binary or ASCII data for the
controllee to receive as soon as the controllee has been started running. If the Beta
portion is present when the operating system processes the SEND A MESSAGE TO CONTROLLEE
message, the operating system copies the data string from the Beta portion into a system
buffer before it starts the controllee. The controllee will have to issue a GET MESSAGE
FROM CONTROLLER OR OPERATOR message to retrieve the data string from the system buffer.
A special situation arises if any controllee (except for the immediate controllee of a
level-1 task) issues a GET MESSAGE FROM CONTROLLER OR OPERATOR message when no data string
is waiting in the system buffer. In this case, the controllee stops running and waits until
a message is sent to it, and the next higher controller in the controllee chain is started
running.
The format of this message is shown in figure 5-17.
when present, is 4096 character bytes.

The maximum length of the Beta portion,

o

63

Alpha(1)

r

len
16

Alpha(2)

unused

b

8
Alpha(3)

I

Alpha(1)

bl

ba

....

I

_------- - - - - - - - - ....18.J
Description

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

2
3
4
7
#214

5-78

16

48

1

Figure 5-17.

0015

8

eea

Field
r

8

8

L _ _ _ _ _1E!
Word

unused

c
16

Length of Beta in character bytes is 0 or greater
than 4096.
Illegal option was selected for this message.
No controllee matches the value of the b field (for
b=O) •
For b=O, no controllee exists.
Error exit has been taken, since the control lee
already has a text string from the controller.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

SEND A MESSAGE TO CONTROLLEE (f=#0015) Message Format (Sheet 1 of 2)

60459420 E

Word
Al pha(l)

Description

Field
len

If this field is #FFFF, Alpha(3) contains the length in character
bytes and the virtual bit address of the Beta portion of the
message; otherwise, Beta is assumed to begin at Alpha(3), and len
is the length in character bytes of the Beta portion.

c

Message options:

o

2
Alpha(2)

AlphaO)

b

Descriptor block number of the controllee; if 0, the data string
is sent to the next lower control lee in the control lee chain.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=IIFFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Figure 5-17.

60459420 F

This message has a Beta portion containing a data string
for the controllee. If the controllee already has a data
string waiting from the controller, replace it with the
new data string.
This message has a Beta portion containing a data string
for the controllee. If the controllee already has a data
string waiting from the controller, return control to the
error exit address.
This message does not have a Beta portion.

SEND A MESSAGE TO CONTROLLEE (f=1I0015) Message Format (Sheet 2 of 2)

5-79

I

GET MESSAGE FROM CONTROLLER OR OPERATOR (f=#0016)

A string of binary or ASCII data sent by a controller program or the operator and waiting in
a system buffer can be retrieved by this controllee program using a GET MESSAGE FROM
CONTROLLER OR OPERATOR message. Depending on the message option selected, the data string
being retrieved might be copied into Beta, or it could be processed into a set of symbols
before it is stored into Beta. In any case, the data string being retrieved must not exceed
512 words (4096 character bytes).
Multiword symbols are permitted and processed without any special treatment. If the number
of symbols exceeds the number requested, only the number requested are stored in Beta. If
fewer symbols are returned than are requested, all symbols are stored in Beta. The
operating system in this case never appends an end-of-message character.
Delimiters are always returned right-justified with blank fill. Blanks are never treated as
a special case (if a space is a delimiter, all occurrences of blank result in a delimiter
being returned; if space is not a delimiter, spaces are processed the same as any other
character).
A special situation occurs if there is no data string waiting in the system buffer when a
controllee (except for the immediate controllee of a level-1 task) issues this message. The
controllee will stop running and wait for a data string from its controller. The next
higher controller in the controllee chain will start running.
The format of this message is shown in figure 5-18.
c field description.

The Beta portion is discussed under the

o

63

Alpha(1 )

16
j

Alpha(2)

IL

Word
Alpha(l )

__

0016
16

8

48
ba

bl

- -

_1§. 1....

____ ,__

--.- ---

I

_ _ _ _ _4flJ

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, control proceeds normally
and this field contains the number of words (if an unprocessed
dat~ string was obtained) or character bytes (if a data string
processed into symbols was obtained) returned in Beta. If control
returns to the error exit address, nothing was returned in Beta
and the values are:
1
2
3
5

Figure 5-18.

5-80

3

8

Field
r

5

eea

b

8
Alpha(3)

16

cf

c

fj

len

r

Count of bytes returned was either 0 or greater than
4096.
Illegal option was specified for this message.
No controller or operator message existed.
$EOF received for file connected to a terminal.

GET MESSAGE FROM CONTROLLER OR OPERATOR (f=#0016)
Message Format (Sheet 1 of 3)
60459420 E

Field

Word
Alpha(1)

Description
7
8
7

r

y

11214

len

If this field is #FFFF, Alpha(3) contains the length in words (if
the data string is to be translated into symbols) or character
bytes (if an untranslated data string is to be obtained) and the
virtual bit address of the Beta portion of the message; otherwise,
Beta is assumed to begin at Alpha(3), and len is the length of the
Beta portion in words or character bytes. Maximum is 512 words
(4096 bytes).

fj

Fill and justification for the message.
c=O, the values are:

o
1
4
5
c

For all options except

Left-justification, blank fill to the right.
Left-justification, zero fill to the right.
Right-justification, blank fill to the left.
Right-justification, zero fill to the left.

Message options:

o

2

3

Figure 5-18.

60459420 E

$EOG received for file connected to a terminal.
$EOR received for file connected to a terminal.
More than 200 delimiters are defined by this program.
This message was issued from a level-1 task.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

The data string is to be copied from the system buffer to
Beta, beginning at Beta(1). If the number of words in
the data string exceeds the number specified by the len
field, only the first len words are copied to Beta. If
there are fewer than the number requested, the last word
of the data string is left-justified with binary zero
fill.
The data string is to be translated into symbols.
Delimiters must be defined by the program issuing this
message, and their number must not exceed 200. Symbols
are stored in Beta, one symbol per word, starting with
Beta(2). Beta(1) contains the number of delimiters
(leftmost 16 bits), and the virtual bit address of the
delimiter buffer (rightmost 48 bits). Delimiters are
stored left to right, character byte by character byte,
in the buffer.
The data string is to be translated into symbols.
Delimiters are blank, period, comma, slash, equals, plus,
minus, and left and right parentheses. Symbols are
stored in Beta starting with Beta(1).
The data string is to be translat.ed into symbols.
Delimiters are defined as installation parameter
options. Symbols are stored in Beta starting with
Beta(l) •

GET MESSAGE FROM CONTROLLER OR OPERATOR (f=#0016)
Message Format (Sheet 2 of 3)
5-81

Alpha(1)

Description

Field

Word

Control field:

cf

o

1

2

3

4

5

Alpha(2)

Alpha(3)

j

Level of the controller that sent the data string being retrieved;
. supplied by the operating system. If the data string came from
the operator, this field is O. If no data string was found in the
system buffer, the operating system returns in j the level of the
task that issued this message.

b

Descriptor block number of the controller that sent the data
string being retrieved; supplied by the operating system. (If the
interactive processor was the conroller, b is FF.) If the control
field is 4 or 5, this field is the descriptor block number of the
operator. If no data string was found in the system buffer, the
operating system returns in b the descriptor block number of the
task that issued this message.

eea

Virtual bit address to receive control if an error occurs during
processing of this message. If this field is 0 when an error
occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), this parameter indicates the length in words (if an
untranslated data string is to be obtained) or character bytes (if
the data string is to be translated into symbols) and virtual bit
address of the first full word of the Beta portion.

Figure 5-18.
5-82

If no data string from this program's controller is
waiting in the system buffer, stop running this program
until a data string arrives. Process and return the data
string to Beta, and release the system buffer space
occupied by the data string.
If no data string from this program's controller is
waiting 1n the system buffer, return control to the error
exit address. If there is a data string waiting, process
and return it to Beta, and release the system buffer
space occupied by the data string.
If no data string from this program's controller is
waiting in the system buffer, stop running this program
until a data string arrives. Process and return the data
string to Beta, but do not release the system buffer
space occupied by the data string.
If no data string from this program's controller is
waiting in the system buffer, return control to the error
exit address. Process and return the data string to
Beta, but do not release the system buffer space occupied
by the data string.
If no data string from the operator is waiting in the
system buffer, stop running the program until a data
string arrives. Process and return the data string to
Beta, and release the system buffer space occupied by the
data string.
If no data string from the operator is waiting in the
system buffer, return control to the error exit address.
Process and return the data string to Beta, and release
the system buffer space occupied by the data string.

GET MESSAGE FROM CONTROLLER OR OPERATOR (f=#0016)
Message Format (Sheet 3 of 3)
60459420 E

GET MESSAGE FROM CONTROLLEE (f=#0017)

A string of binary or ASCII data sent by a control lee program and waiting in a system buffer
can be retrieved by this controller program using a GET MESSAGE FROM CONTROLLEE message.
Depending on the message option selected, the data string being retrieved might be simply
copied into Beta, or it could be processed into a set of symbols before it is stored in
Beta. In any case, the data string being retrieved must not exceed 512 words (4096
character bytes).
Multiword symbols are permitted and processed without any special treatment. If the number
of symbols exceeds the number requested, only the number requested are stored in Beta. If
fewer symbols are returned than are requested, all symbols are stored in Beta. The
operating system in this case never appends an end-of-message character.
Delimiters are always returned right-justified with null fill. Blanks are never treated as
a special case (if a space is a delimiter, all occurrences of blank result in a delimiter
being returned; if space is not a delimiter, spaces are processed the same as any other
character).
The format of this message is shown in figure 5-19.
c field description.

The Beta portion is discussed under the

o

63

Alpha(1)

r

Alpha(2)

j

I
L

Word
Alpha( 1)

8

16

48
ba

----

16 ' - - -

--

Field

I

- - - - - - - - - - - - - - .3~
Description

Response code; returned by the operating system when this message
has been processed. If no error occurs, control proceeds normally
and this field contains the number of character bytes (if a
message was obtained) or words (if symbols were obtained) returned
in Beta. If control returns to the error exit address, nothing is
returned in Beta and the values are:
2
3
4
6

7

11214

Figure 5-19.

3
eea

bl

r

0017

cf

c

5

8

1

60459420 E

16

b
8

Alpha(3)

fj

len
16

Count of bytes returned was 0 or greater than 4096.
Illegal option was specified for this message.
No controllee message existed.
Message from the controller (not the controllee) was
waiting.
This program started because the controllee, whose
level and descriptor number are stored in fields j
and b, is waiting for a message from the controller.
More than 200 delimiters are defined by this program.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

GET MESSAGE FROM CONTROLLEE (f=1I0017) Message Format (Sheet 1 of 3)
5-83

Word
Alpha(l)

Description

Field
len

If this field is #FFFF, Alpha(3) contains the length in character
bytes (if an untranslated data string is to be obtained) or words
(if the data string is to be translated into symbols) and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length of the Beta
portion in words or character bytes. Maximum is 512 words (4096
bytes).

fj

Fill and justification for the message.
c=O, the values are:

o
1
4
5
c

1

2

3

2

5-84

The data string is to be copied from the system buffer to
Beta, beginning at Beta(I). If the number of words in
the data string exceeds the number specified by the len
field, only the first len words are copied to Beta. If
there are fewer than the number requested, the last word
of the data string is left-justified with binary zero
fill.
The data string is to be translated into symbols.
Delimiters must be defined by the program issuing this
message, and their number must not exceed 200. Symbols
are stored in Beta, one symbol per word, starting with
Beta(2). Beta(l) contains the number of delimiters
(leftmost 16 bits), and the virtual bit address of the
delimiter buffer (rightmost 48 bits). Delimiters are
stored left to right, character byte by character byte,
in the buffer.
The data string is to be translated into symbols.
Delimiters are blank, period, comma, slash, equals, plus,
minus, and left and right parentheses. Symbols are
stored in Beta starting with Beta(I).
The data string is to be translated into symbols.
Delimiters are defined as installation parameter
options. Symbols are stored in Beta starting with
Beta(I).

Control field:

o

Figure 5-19.

Left-justification, blank fill to the right.
Left-justification, zero fill to the right.
Right-justification, blank fill to the left.
Right-justification, zero fill to the left.

Message format options:

o

cf

For all options except

After data string has been retrieved, release system
buffer space occupied by string.
After data string has been retrieved, do not release
system buffer space occupied by string.

GET MESSAGE FROM CONTROLLEE (f=#0017) Message Format (Sheet 2 of 3)

60459420 E

Word
Alpha(2)

Alpha(3)

Field
j

Level of the controllee that sent the data string; supplied by the
operating system. The value in this field has no meaning if the
controllee that sent the data string being retrieved has been
disconnected.

b

Descriptor block number of the controller that sent the data
string; supplied by the operating system. The value in this field
has no meaning if the controllee that sent the data string being
retrieved has been disconnected.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in words (if an
untranslated data string is to be obtained) or character bytes (if
the data string is to be translated into symbols) and virtual bit
address of the first full word of the Beta portion.

Figure 5-19.

60459420 E

Description

GET MESSAGE FROM CONTROLLEE (f=#0017) Message Format (Sheet 3 of 3)

5-85

REMOVE CONTROLLEE FROM MAIN MEMORY (f=#0019)

A controller (the user program) can swap a controllee program or itself from main memory to
mass storage. The controller program stops running until all control lee pages are written
to mass st-orage. The format of this message is shown in figure 5-20. For option 0, the
program issuing this message must have only one controllee.

o

63

Alpha(1)

r

Alpha(2)

n

len

16

16

unused

16

0019

eea

48

16

I

Alpha(3)

L

bl

-

16

ba

---

16

_....J

- - - - - - - - - - - - - - ___

I

~8..J

Beta( 1)

Word
Alpha(l )

Field
r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
3
#214

Alpha(2)

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. This field is 0 or 1.

n

Specifies the controllee to be removed.

o

2

Figure 5-20.

5-86

No controllee exists with this descriptor block
number.
More than one controllee for an n field value of O.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the len field is 0
(n=l only).

The values are:

Remove the control lee program to mass storage; no Beta
portion is required for this option.
Remove the controllee specified in Beta(l) to mass
storage.
Remove this program to mass storage; no Beta portion is
required for this option.

REMOVE CONTROLLEE FROM MAIN MEMORY (f=#0019) Message Format (Sheet 1 of 2)

60459420 E

Word

Field

Description

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Beta(l)

b

Descriptor block number of the controllee to be removed to mass
storage.

Figure 5-20.

60459420 E

REMOVE CONTROLLEE FROM MAIN MEMORY (f=#0019) Message Format (Sheet 2 of 2)

5-87

SEND A MESSAGE TO OPERATOR (f=#OOlA)
A program uses this message to send a string of binary or ASCII data to the operator. The
system copies the data string from the Beta portion of the system message to a system buffer.
If the system buffer is full, the string cannot be sent.
continues task execution at the error exit address.

If the buffer is full, the system

Because the operator of· a busy system could miss a string sent to him, the system provides a
string save table. If the operator is logged in and n=2 or 3, the string is kept in the
string save table.
Only one string per task is kept. If the task sends another string, only the most recent
string requiring a response is kept.
The operator can access the string save table to see the most recent strings sent by
executing tasks. The operator clears a string from the save table with the command CFO.
(Strings are kept by descriptor block number.)
The format of this message is shown in figure 5-21. The Beta portion contains the string
being sent; maximum length of the string is 80 character bytes (10 words).

o

63

Alpha(1)

r

len
16

Alpha(2)

unused
16

001A
16

eea

n

48

16
Alpha(3)

L

Word
Alpha(1)

bl

I
Field

--

---

_ _ _ _4~

Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:

2
#214

5-88

-----

Description

1

Figure 5-21.

I

ba
16

- - - - - -' - - - -

r

16

Specified length of the Beta portion in character
bytes was out of range (either 0 or greater than 80).
String in Beta could not be sent to the operator
because no system buffer was available; error
processing is indicated by the value of the n field.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the len field is O.

SEND A MESSAGE TO OPERATOR (f=#001A) Message Format (Sheet 1 of 2)

60459420 E

Field

Word

Description

Alpha(1 )

len

If this field is IIFFFF, Alpha(3) contains the length in character
bytes and the virtual bit address of the Beta portion of the
message; otherwise, Beta is assumed to begin at Alpha(3), and len
is the length in character bytes of the Beta portioR. The len
field should be greater than a and less than or equal to 80.

Alpha(2)

n

Indicates action to be taken if the string cannot be sent; also
indicates whether the string should be kept in the save table:
0,1
2,3
4

Alpha(3)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is a when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=IIFFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Figure 5-21.

60459420 E

If the system buffer is full, continue execution at
the error exit address. Do not enter the string in
the save table.
If the operator is not logged in or the system buffer
is full, continue execution at the error exit
address. Enter the string in the save table.
Send the message to the remote operator. Return r=2
if the remote operator is not logged in.

SEND A MESSAGE TO OPERATOR (f=1I001A) Message Format (Sheet 2 of 2)

5-89

INITIALIZE OR DISCONNECT CONTROLLEE (f=#OOl B)
A user program can make another program a controllee, and optionally start the controllee
running, by using the INITIALIZE OR DISCONNECT CONTROLLEE message.
It can also be used to disconnect a previously connected controllee. Up to eight levels of
program controllees are permitted in a controllee chain, making a possible total of up to
nine levels. The format of this message is shown in figure 5-22.

o

63

Alpha(1)

len

r

16
Alpha(2)

oo1B

unused
16

16
eea

m

48

16
Alpha(3)

bl

I

16

ba

L ____

_1Ei ' - - - - - - - - -

- - _._----

I

_4§J

r----------

I

Beta( 1)

t=b Junused J==_===== tl

Beta(2)

Word
Alpha(l)

filename

Field
r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
2
3
4
5
6
7
8
9
#A
#B
#C

#D
#E
#F

Figure 5-22.
5-90

Controllee program is already present.
Illegal message option.
Control lee program file was not found or not attached.
Insufficient time to run the control lee program.
Illegal priority.
Error in creating the drop file.
Controllee program file is not executable.
Mass storage device error.
Full system tables inhibit initialization of the
controllee program at this time.
Abnormality in the control lee program file or drop
file I/O connector entry.
Nine task levels are present already.
No controllee is present (for disconnect only); if a
controllee program is being disconnected, this
response code indicates no controllee program is
present.
Controllee program drop file is too small.
Unable to destroy the existing drop file.
Unable to restart the controllee because the
interrupt register table is full.

INITIALIZE OR DISCONNECT CONTROLLEE (f=#OOlB) Message Format (Sheet 1 of 2)
60459420 E

Word
Alpha(l)

Field

Description

1110

r

if11
1112

Itl3
1114

1115
1117

1118
1119

lilA
II1B
Illc
IIlD
/fIE

IIIF
tt21
1122
11214

Alpha(2)

Drop file cannot be verified.
C500 request error.
Bad minus page in the controllee file.
Undefined error in the drop file verification.
Control lee program file is privileged open.
No FST space.
IOC for file not found.
User does not have execute access.
Execute file has wrong small page size.
Drop file has wrong small page size.
File is incomplete.
Charge statement must be supplied.
SHRLIB is not active.
Control lee must be reloaded.
Controllee using wrong libraries.
Controllee is purge-only.
Nonproduction program not permitted (production users
only) •
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

len

If this field is ifFFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion. The length of the Beta portion is at least 2.

m

Message options:

o
1
10

Initialize the control lee program and restart this
program.
Initialize the control lee program and immediately begin
running it; stop running this program.
Disconnect the control lee program (the Beta portion of
the message is required for this option, but is not used).

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r+O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=/fFFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Beta(l)

filename

Name of the control lee program (must be a virtual code file),
left-justified with blank fill.

Beta(2)

b

Controllee program's descriptor block number; returned by the
operating system when the message is issued. If the controllee
program is disconnected and reconnected, this number could change.

tl

Time limit for the controllee program, in microseconds.
field is 0, the controller's time limit is used.

Figure 5-22.
60459420 H

When this

INITIALIZE OR DISCONNECT CONTROLLEE (f=/f001B) Message Format (Sheet 2 of 2)
5-91

I

PROGRAM INTERRUPT CONTROL (f=#OOlC)

The operating system supports one level of software interrupt for any task. With the
PROGRAM INTERRUPT CONTROL message, a user program can tell the operating system whether or
not the task can be interrupted. If interrupts are enabled, an ASCII character string must
be waiting at the interrupt address specified in Beta(l) of the PROGRAM INTERRUPT CONTROL
message at the time control passes to the interrupt address. For control to return to the
calling routine, the interrupt routine must issue a RETURN FROM INTERRUPT CONTROL message
when it has finished performing its tasks.
When a program is interrupted, the program's minus page is altered before control is passed
to the virtual address specified by the user in a PROGRAM INTERRUPT CONTROL message. The
minus page has space for the current invisible package (level 0). The interrupt register
table has space for the interrupted routine invisible package (level 1). (These level
designations are not to be confused with the level of a task in the controllee chain, nor
with the security level of a task.) At the time of an interrupt, the level-l invisible
package becomes the current execution invisible package (level 0), and the level-O invisible
package is saved in the interrupt register table. The operating system saves the register
file image for the old level 0, and places in register 3 a pointer to the Alpha portion of,
and an index to the Beta portion of, the message that caused the interrupt. The operating
system also puts into register IE the length and address of the data base to be used by the
interrupt routine. Initializing the rest of the register file is the responsibility of the
interrupt routine.
When message option 1 is specified, any ASCII character string preceded by (sc)I that is
received from a terminal interrupts the user program (the currently executing program). The
symbol (sc) is a special character defined by the installation (refer to volume 1). When
the string has been received, the (sc)I preceding the string is stripped and the string is
realigned at the beginning of the word. An (sc)I interrupt causes any outstanding output
message to be released to the output device. When (sc)I precedes a string, the message
interrupts the highest level controller that issued a PROGRAM INTERRUPT CONTROL message with
message option 1 (highest level refers to level in the controllee chain).
The format of the PROGRAM INTERRUPT CONTROL message is shown in figure 5-23.

o

63

r

Alpha(1)

Alpha(2)

unused

Alpha(3)

I

L_

Beta( 1)

16

16

48

8

bl

- - - - - .... - - - - - -

---- ------

5-92

_4~

ia

unused

dbl

48
dba

16

Figure 5-23.

I

ba
16

16
Beta(2)

16

eea

b

8

001C

unused

len
16

48

PROGRAM INTERRUPT CONTROL (f=#OOIC) Message Format (Sheet 1 of 2)

60459420 E

Field

Word
Alpha(l)

r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0,
otherwise:
1
2

#214

Alpha(2)

Value of the interrupt address is greater than the
upper limit of the virtual bit address range.
Program selected an illegal interrupt option.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion.

b

Interrupt options:

o
1
2

This program can be interrupted by any program.
This program can be interrupted by a terminal if the data
at the interrupt address begins with the two characters
(sc)I.
This program must not be interrupted.

°

When this message is issued for options
or 1, the program
issuing this message can be interrupted by all subsequent messages
and interrupts coming from a terminal until this program either
issues this message with option 2 or terminates.
eea

Virtual bit address to receive control if an error occurs during
processing of this message (rIO). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual bit
address of the first full word of the Beta portion.

Beta(l)

ia

Interrupt address, the virtual bit address of the word to which
control transfers upon occurrence of an interrupt.

Beta(2)

dbl

Length of the data base to be established if an interrupt occurs.

dba

Address of the data base to be established if an interrupt
occurs. If this field is 0, the data base of the interrupted
program (the program issuing this message) is used.

Figure 5-23.

60459420 E

PROGRAM INTERRUPT CONTROL (f=#OOlC) Message Format (Sheet 2 of 2)

5-93

INITIALIZE CONTROLLEE CHAIN (f=#OOl D)

A user program can issue this message to make itself the controller of a chain of
controllees. Up to nine levels of control lee programs are permitted in any controllee chain
(for example, if the program issuing this message is the controllee of a level-l task, a
maximum of seven controllees can be specified in this message). Control is always returned
to the user program after the call has been processed; unlike the INITIALIZE OR DISCONNECT
CONTROLLEE message (f=#OOlB), this message cannot be used to start a controllee running.
Any error in the request causes the entire chain to be ignored, and none of the controllees
are initialized. The format of this message is shown in figure 5-24.

o

63

Alpha( 1)

r

len
16

Alpha(2)

unused

001D

16

n

16

16

eea
16

48
I

IL

Alpha(3)

bl

Beta( 1)

s

t

k

- ------- -- ----unused

db

8
Beta(2)

8

_ _4f!J

unused

ss
16

8

unused
8

I

ba

_ _ _ _ _1~
-

8

16

tl
8

48

Beta(3)

source
64

Beta(4)

drop
64

Word
Alpha(l)

Field
r

Description
Response code; returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
1
2
3
4
5
#214

Figure 5-24.
5-94

Controllee program is already present.
Full system tables inhibit initialization of the
controllee program at this time.
Controllee chain levels exceed nine.
Error in an attempt to initialize the controllee;
refer to an ss field in Beta.
Controllee file is privileged open.
Beta buffer length error. Either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and lengths
specified.

INITIALIZE CONTROLLEE CHAIN (f=#OOlD) Message Format (Sheet 1 of 3)
60459420 E

Field

Word

Description

Alpha(l)

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta is
assumed to begin at Alpha(3), and len is the length in words of
the Beta portion (a multiple of 4, and always less than or equal
to 14).

Alpha(2)

n

Number of tasks to be initialized in the chain; n is always less
than or equal to 9.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Beta(l)

s

Controllee chain level (2 through 9) of the program named in
Beta(3); returned by the operating system. Beta words appear in
the order in which the control lees are to be initialized, highest
to lowest in the chain.

t

Descriptor block number of the program named in Beta(3); returned
by the operating system.

db

Descriptor block number of the controller of the program named in
Beta(3); returned by the operating system.

ss

File initialization error.
2
3
4
6
7
8
9
#A
#B
#D
#E
#F
#10
#11
#13
#14
#15
#16
#17
#18
#19

Figure 5-24.
60459420 H

The values are:

Full system tables inhibit initialization of the
control lee program.
Controllee program file was not found or was not
attached.
Insufficient time to run the controllee program.
Error in creating the drop file.
Controllee program file is not executable.
Mass storage error.
Abnormality in the controllee program file or drop
file I/O connector entry.
Controllee program file is privileged open.
No FST space.
IOC for file not found.
Bad minus page.
User does not have execute access for control lee
program file.
Drop file is too small.
Unable to destroy existing drop file.
Shared library needed.
Controllee must be reloaded for new bound implicit map
(BIM).
Source file bad small page size.
Drop file bad small page size.
Drop file is too long.
File is incomplete.
File has purge-only status.

INITIALIZE CONTROLLEE CHAIN (f=#OOID) Message Format (Sheet 2 of 3)

5-95

I

Word
Beta(l)

I

Field
ss

Description
#IA
#IC
#30
#31
#32

Beta(2)

Controllee using wrong libraries.
Charge statement must be supplied.
Operating system version mismatch.
Nonproduction program not permitted (production users
only).
Drop file cannot be restarted (see site security
administrator).

k

Descriptor block number of the controllee (in this chain) of the
program named in Beta(3). This field is 0 if there is no
controllee.

tl

Amount that remains, in microseconds, of the time allowed for
running the controllee program. When the controllee has exhausted
the time, this field is O.

Beta(3)

source

ASCII name of the executable source file to be initialized if the
drop field is O. The name is left-justified with blank fill.
Returned by the operating system if the drop field is not O.

Beta(4)

drop

ASCII name of the drop file, left-justified with blank fill. If
the user provides a nonzero value in this field, the program is
started from this drop file (the drop file contains the I/O
connector containing the source file name associated with the drop
file).

Figure 5-24.

5-96

INITIALIZE CONTROLLEE CHAIN (f=#OOID) Message Format (Sheet 3 of 3)

60459420 H

ENABLE/DISABLE ATC (f=#0020)

The ENABLE/DISABLE ATC message allows the user to process what is normally a fatal error.
The user does this by setting/zeroing the interrupt subroutine address and data base
descriptor in the minus page. If abnormal termination control (ATC) is ready, the user may
reissue this message to change the interrupt routine information. However, all of the
fields must be supplied as if this message had not previously been issued. The format of
the message is shown in figure 5-25.

o

63
r

Alpha (1)

len

16
unused

Alpha (2)

0020

unused

16

16
eea

16

IL _____
bl

Alpha (3)

48

I__________________
ba

~

ito

Beta (1)

dbl

48
dba

48

16
Field

Word
Alpha(l)

r

Description
Response code returned by the operating system when this message
has been processed. If no error occurs, the response code is 0;
otherwise:
#61
#62
#63
#214

Alpha(2)

Entry point or data base address out of virtual
address range for user program or hexadecimal bit
address less than 8000.
Interrupt type option is illegal.
Data base length out of range.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

len

If len=ftFFFF, Alpha( 3) contains the length( bl) and virtual bit
address(ba) of the Beta portion. Otherwise, Beta is assumed to
begin at Alpha(3) and len is the length of the Beta portion (two
words).

eea

Virtual bit error exit address to receive control if an error
occurs during message processing (r~O). If eea=O, the error is
fatal.

Figure 5-25.

60459420 E

I

~

ira

16
Beta (2)

16

ENABLE/DISABLE ATC (f=#0020) Message Format (Sheet 1 of 2)

5-97

Word
Alpha(3)

Beta(1 )

Field

Description

bl

Beta length, if len=#FFFF.

ba

Virtual bit address of the Beta portion's first full word, if
len=IIFFFF.

ito

Interrupt type option:

o
1

Beta(2)

ira

User interrupt subroutine address (virtual bit address) to be
entered if predefined system errors occur.

dbl

Data base length (in words) of user's interrupt subroutine.

dba

Data base bit address of user's interrupt subroutine.

Figure 5-25.

5-98

Enable ATC.
Disable ATC.

ENABLE/DISABLE ATC (f=1I0020) Message Format (Sheet 2 of 2)

60459420 E

EXECUTE OPERATOR COMMAND (f=#0021)
This message can be issued only by a privileged user and executes exactly one of the
operator commands that are listed as possible values for the c field in Alpha(l). The user
number of the issuer must be the primary, the remote operator, or the site security
administrator user number. User numbers running the Q utility are allowed to use options
1110, 112c, and 1142 only. A nonprivileged user may execute option if2F only for the user
number executing the system message.

I

The format of the Alpha portion of this message is shown in figure 5-26. The Beta word
formats depend on the message option (c field) in Alpha(l), and are shown in figure 5-27.
Each option is a correspondence between the Beta format and the operator command. (Refer to
the VSOS 2 Operator's Guide.)

o

63

Alpha(1 )

len

r

16
Alpha(2)

16

* unused
7

c

0021

8

16

eea

n

48

16
Alpha(3)

bl

I

ba

L _ _ _ _ _ 1~

Word
Alpha( 1)

1..._-_ . . . . - - - - - - - - - - - -

Field
r

Description
Response code; returned by the operating system when this message
has been processed:
0
1

2
3
4
5

IIF4
len

I

_4~

No errors.
Illegal option (c field value is out of bounds, or there
is a bad parameter).
User is not privileged and is not running under the
operator's user number.
Error in a resident system call issued by the virtual
system routine OPCOM.
Error in a resident system call issued by the virtual
system routine OPCOM.
A user directory editor is already active. Retry later.
Beta overflow in message option ifF.

This field must always be IIFFFF, indicating that Alpha(3) contains
the length and virtual bit address of the Beta portion of the
message.
Outstanding messages:
1

o
Figure 5-26.

60459420 H

There are outstanding messages awaiting operator
response.
There are no outstanding messages.

EXECUTE OPERATOR COMMAND (f=1I0021) (Alpha) Message Format (Sheet 1 of 2)

5-99

I

Word
Alpha(l)

Field

Description
Message options; each of the options has a different Beta format.
The Beta formats are described following the Alpha field
definitions:

c

1

5

7
#A
#B
#D
#E
#F
#10
#11
#12
#13
#16
#17
#18
#19
#lC
#lD
#IE
#IF
#21
#22
#24
#25
#26
#27
#28
#29
#2A
#2C
#2D
#2F
#31
#32
#38

I

I

~2

Alpha(2)

Alpha(3)

n

The number of words returned in the Beta portion of the message,
the value of which depends on the message option (c field).
(Refer to the specific c option description.)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta portion.

Figure 5-26.
5-100

Display user.
Send a message to the users.
Drop (terminate the task and log out the user).
This is used only by system checkpoint.
Return data from virtual system in Beta area for
specified virtual address.
Modify virtual system address with data specified in
Beta parameters.
Date.
Time.
Return copy of system configuration table.
Return B or Q(E) display information.
Display all tasks.
Return information for S display.
Return information for J display.
Suspend or resume the task.
List the account.
Return the default project number.
Turn output processing on or off.
Checkpoint jdn.
Turn on or off the no login flag.
Turn off F RESTART bit in MISCTAB.
Set job category priority.
Test and set user directory editor serialization flag.
Clear user directory editor serialization flag.
Turn on or off job submission to the CPU scheduler.
Set maximum large page limit for job category.
Set maximum memory overcommitment percentage.
Set maximum combined time limit for all executing jobs.
Set maximum job time limit for job category.
Set maximum working set size limit for job category.
Set maximum executing jobs for job category.
Retrieve Hand Q(I) display information.
Retrieve V display information.
Retrieve validated job categories for user number.
Adjust SHRLIB working set.
User drop support functions.
Checkpoint functions.
Return a set of file index entries for Hand Q(O)
displays.

EXECUTE OPERATOR COMMAND (f=#0021) (Alpha) Message Format (Sheet 2 of 2)
60459420 H

Message option:
c=1

Return the 16-word UAT entry for one user or the binary user number of
all users who are currently on the system. The value of the n field in
Alpha(2) is returned by the operating system. The value of n is #FFFF
if m is 5, 18 if m is 16, and m otherwise.

o

63

Beta( 1)

usrno

uatx

48

16
Beta(2)

tab 1
64
7

7

Beta(n)

tab m

64

Word

Field

Beta( 1)

uatx

Type of information in the tab field; returned by the operating
system. If this field is 0, the information is from the user
directory. If this field is nonzero, it is from the user
activity table; the uatx field contains the user activity table
index of the table entry.

usrno

Binary user number of the user table or user directory entry in
the tab fields; or, the character string ALL, left-justified
with blank fill, indicating that user numbers and teletypewriter
(TTY) numbers of all logged-in users are to be placed in the tab
field. Supplied by the user.

Beta(2)
through
Beta(n)

Figure 5-27.

60459420 H

. tabi

Description

The tabl field contains binary zeros if no user identified by
the usrno field was found. Otherwise tabl contains the first
word of a 16-word copy of the user activity table entry (uatx=O)
for an active user; a 5-word copy of the first part of the user
directory entry (uatx=O) for an inactive user; or m words, one
for each currently logged-on (active) user, each of which
contains the binary user number in the rightmost 48 bits and a
TTY number in the leftmost 16 bits. For an active user, the
user activity table is followed by a list of all active
accounts, with one account per word.

EXECUTE OPERATOR COMMAND (f-#0021) (Beta) Message Format (Sheet 1 of 27)

5-101

I

Message option:
Transmit a specified character string to the output buffer or all
interactive users (WARN command):

c=5

Q

63

Beta(1 )

cnt

unused

48

16
unused

Beta(2)

ss
60

Beta(3)

message m

64

Field

Description

Beta(l)

cnt

Number of characters in the message.

Beta(2)

ss

Error response field:

o
1
Beta(3)
through
Beta(n)

I

64

t,

'-7
Beta(n)

Word

Figure 5-27.

5-102

4

messag e1

message

No error.
No users are logged on the system.

A word of a message in ASCII.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 2 of 27)

60459420 H

Message option:
Terminate all tasks and log off the user(s) [interactive] or terminate
the job(s) [batch]:

c=7

o

63
sf

Beta(1 )

ss

usrno

Description

Field
dbn

DB number of task to terminate.

sf

Subfunction, set by the user to one of the following
values:

o
1
2
ss

Error response field. The operating system sets this
field to one of the following values:

o
1
2
3
usrno

Drop job, but allow BATCHPRO to clean up.
Rerun job.
Drop job and do not allow BATCHPRO to clean up.

No error.
No user table entry.
Attempted to drop operator.
Attempted to drop system user.

Binary user number for the task to be terminated.

If Beta(1) is #FFFFFFFFFFFF, terminate all interactive tasks and log off
the interactive users.

Figure 5-27.

60459420 H

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 3 of 27)

5-102.1/5-102.2

I

Message option:
c=IIA

Return data from virtual system in Beta(2) through Beta(n) for the
specified virtual address in Beta(1) word.

o

63
ss

Beta (1)

mstart
16

48

Beta (2)

data word 1
64

···
data word n-1

Beta (n)

64

Word
Beta(1)

Field
ss

Description
Error response field. The operating system sets this field to
one of the following values:

o
1
2
3

Beta(2)
through
Beta(n)

Figure 5-27.

60459420 H

No error.
Beta length error from Alpha parameter n (n#2).
Address specified is not in the virtual system.
Address specified is not on a word boundary.

mstart

User-specified virtual system memory starting address on a word
boundary.

data word
1 through
data word
n-1

Word of data returned from the virtual system.

EXECUTE OPERATOR COMMAND (£=#0021) (Beta) Message Format (Sheet 4 of 27)

5-103

I

Message option:

c=IIB

Modify specified virtual system address with data from BETA parameter.

o

63

Beta(l )

ss

mstart

16
Beta(2)

48
data

64
Word

Field

Beta(l)

ss

Description
Error response field. The operating system sets this field to
one of the following values.

o
1
2
3

Beta(2)

No error.
Beta length error from Alpha parameter n (n#2).
Address specified is not in the virtual system.
Address specified is not on a word boundary.

mstart

User specified virtual memory starting address on a word
boundary.

data

Hexadecimal data to be entered at virtual bit address specified
by mstart.

Message option:
c=IID

Set or request the date (DATE command):

o

63
date

Beta(l)

64
unused

flag

Beta(2)

48

16

I

Word

Field

Beta( 1)

date

ASCII date, in the format: mm/dd/yy (month/day/year); set by
the user if the flag field is 1, or set by the operating system
if the flag field is O.

Beta(2)

flag

This field must be 0 for the data to be returned, or 1 to set
the data.

Figure 5-27.

5-104

Description

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 5 of 27)

60459420 H

Message option:

c=IIE

Set or request the time (TIME command):

o

63
time

Beta(1 )

64
unused

flag

Beta(2)

48

16

Word

Field

Beta( 1)

time

ASCII clock time, in the format hh.mm.ss (hour.minutes.seconds);
set by the user if the flag field is 1, or set by the operating
system if the flag field is O.

Beta(2)

flag

This field must be 0 for the time to be returned, or 1 for the
time to be set.

Description

Message option:
c=#F

Return a copy of the system configuration table (T SC). The length of
the Beta area must be supplied by the caller in the Alpha field n. If
the supplied length is less than the actual table length, the Beta is
filled with as much data as will fit, and an error code of #F4 is
returned in the Alpha field r. If the supplied length is greater than
or equal to the actual table length, the Alpha field n is set to the
table length by the system.

o
Beta(1 )Beta(n)

Word
Beta (1)
through
Beta(n)

Figure 5-27.

60459420 H

Field
t sc

Description
The system configuration table (SCT).

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 6 of 27)

5-105

I

Message option:
c=1I10

Return job and task information for remote operator for the B display
and user Q(E) display. A return Beta entry consists of six words
each. The number of entries returned is indicated by n in Alpha(2):

o
Beta(l )

63
unused

Beta (2)

pr

pmt

status

8

susflg

8

8

8

jdn

tl

8
cbc

.wset

nt

Ip

8

12

16

16

12

24

userno

Beta(3)

64
job name

Beta(4)

64
task name

Beta(5)

64
Beta(6)

jce

Word
Beta(l)

priv
4

db

8

8

I

Figure 5-27.

5-106

24

Description

status

Program state number.

pmt

Priority map table index (0 through 15).

pr

Subpriority (1 through 255).

susflg

If the task is in a suspended state, the operating system sets
this field to one of the following values:
1

Beta(2)

lid
20

Field

o

I

. unused

Task was suspended by the operator.
Task was suspended by the operating system.

tl

Time left for this task, in seconds.

jdn

Job descriptor for this job or session (1 through 2047).

wset

Number of 512-word blocks in the task's working set.

cbc

Number of 512-word blocks currently assigned to the job.

lp

Number of large pages of memory assigned.

nt

Number of tape drives reserved for this job or session.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 7 of 27)

60459420 H

Word

Field

Beta(3)

userno

ASCII user number; six characters, left-justified, blank-filled.

Beta(4)

job
name

Name of the batch job file, interactive session name, or
SYSTEM.

Beta(5)

task
name

Name of the file currently executing.

Beta(6)

jce

System job category table index.

db

Top DE index (BATCHPRO).

priv

Privileged flag.

lid

Logical identifier of the front-end system from which the job
originated.

Description

If the user is not privileged, this option will return only Beta
entries that have a userno equal to the user.
Message option:

c=lfl1

Return information
words are returned
in Alpha(2) to the
checkpoint/restart

about 'all active tasks in the system. Three Beta
for each task; the operating system sets the n field
number of tasks in the system. Used during SYSTEM
only.

o
Beta( 1)

63
unused

8

Beta(2)

lev

8

state

8

db

8

jdn

unused
12

20

fname

64
Beta(3)

userno

64
Word
Beta(l)

Field

Description

lev

Level of the task in the controllee chain.

state

Program state of the task (refer to appendix F).

db

Descriptor block number for the task.

jdn

Job descriptor number for the task (1 through 2047).

Beta(2)

fname

Source file name of the task, in ASCII.

Beta(3)

userno

Binary user number under which the task is running.

Figure 5-27.

60459420 H

I

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 8 of 27)

5-107

I

Message option:
c=1I12

Return information for the S display.

o

I

number of active users

Beta (2)

number of active tasks

Beta (3)

total system up time (seconds)

Beta (4 )

total loads

Beta (5)

total cpu time (seconds)

Beta (6)

user page faults

Beta (7)

system page faults

Beta (8)

page faults per cpu second

Beta (9)

total kernel time (seconds)

Beta (10 )

total pager time (seconds)

Beta (11)

total virtual time (seconds)

Beta (12)

total user time (seconds)

Beta (13)

total wait time (seconds)

Beta (14)

total idle time (seconds)

Beta (15 )

percent kernel time

Beta (16)

percent pager time

Beta (17)

percent virtual time

Beta (18)

percent user time

Beta (19 )

percent wait time

Beta (20)

percent idle time

Beta (21 )

SHRLlB working set

64

Beta (22 )

SH R LI B unused pages

64

Figure 5-27.

5-108

63

Beta (1)

64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 9 of 27)

60459420 H

Message option:
c=tt13

Return task EXECUTE OPERATOR COMMAND (f=#0021) information for J
display. A six-word entry is returned for each descriptor block in
every active task chain for the user. The first 6-word entry is
empty. The first word of the Beta field contains the user for whom
information is returned.

o
Beta(1 )

63
unused

pmt

status

8
jdn

Beta(2)

8

8
.wset

12

tl

susflg

pr

8

24

8
cbc

nt

Ip

8

12

16

16
userno

Beta(3)

64
Beta(4)

job name
64
task name

Beta(5)

64
Beta(6)

pplvl

cdb

8

unused

24

Word

Field

Beta(1)

status

Program state number.

pmt

Priority map table index (0 through 15).

pr

Subpriority (1 through 255).

susflg

If the task is in a suspend state, the operating system sets
this field to one of the following values:

Description

0
1

Beta(2)

Figure 5-27.

60459420 H

I

lid
24

8

Task was suspended by the operator.
Task was suspended by the operating system.

tl

Time left for this task, in seconds.

jdn

Job descriptor for this job or session (1 through 2047).

wset

Number of 512-word blocks in the task's working set.

cbc

Number of 512-word blocks currently assigned to the job.

I

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 10 of 27)

5-109

I

Word

Field

Beta(2)

lp

Number of large pages of memory assigned.

nt

Number of tape drives reserved for this job or session.

Beta(3)

userno

ASCII user number, six characters, left-justified, blank-filled.

Beta(4)

job
name

Name of the batch job file, interactive session name, or
SYSTEM.

Beta(5)

task
name

Name of the file currently executing.

Beta(6)

pplvl

Level of DB in chain.

cdb

Ordinal of current DB.

Description

If the user is not privileged, this option will return only Beta
entries that have a userno equal to the user.

I

lid

Logical identifier of the front-end mainframe from which the job
originated.

Message option:
c=/116

Suspend or resume execution of the task specified.
checkpoint/restart only.

63

0
Beta(1 )

ss

1
Word

Field

Beta( 1)

ss

81

db

81

5-110

81

Error response field.
1
2
3
4
5
6
7

Figure 5-27.

sf

unused

401

Description

o

I

Used during SYSTEM

The values are:

No error.
Descriptor block is not assigned.
Invalid descriptor block number.
Descriptor block is not in a suspended state.
Descriptor block is already suspended.
Cannot suspend the operator task or system user.
Descriptor block is in a terminate or initiating state.
Not enough central memory (CM) space to resume task
execution.

db

Descriptor block number of the task to be resumed or suspended.

sf

Subfunction. This field must be set to 0 to suspend execution,
or 1 to resume execution.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 11 of 27)

60459420 H

Message option:
c=tl17

List all accounts for a user. The operating system returns the length
of the Beta portion in the n field of Alpha(2):

o

63

Beta( 1)

unused
64

Beta(2)

,

unused
64

Beta(3)

ss

nacnts

8

unused

8

usrno
16

Beta(4)

32

acct1

-- -

- - - - - - - - - - - - - - -

-

-

- - - - 64I.

I.

- - - - Beta(n)

-

-

- - - - - -

- - - - - -

- ---

L ________ _

_ _

I

--E~

Word

Field

Beta(3)

nacnts

This field is set to the number of accounts listed.

ss

Error response field.
completed function.

usrno

User number for which the account is to be modified.

Beta(4)
through
Beta(n)

accti

Account number of an account in the system; eight
ASCII characters, left-justified with blank fill.
Returned by the operating system.

Figure 5-27.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 12 of 27)

60459420 H

Description

This field is set to 0 for a successfully

5-111

I

Message option:
Return the default project number for a user.

c=/118

o
Beta (1)

63
ss

unused

8

user number

32

24

Beta (2)

project number
64

Beta (3)

project number
64

Beta (4)

project number

unused

32

32

Word

Field

Beta(l)

ss

Description
Error response field:

o
1

Beta(2)
through
Beta(4)

No error.
Default project number does not exist.

user
number

Binary user number for which the default project number is to
to be returned.

project
number

1- to 20-character default project number, in ASCII,
left-justified with blank fill.

Message option:
c=/119

Turn output file processing on or off for all users (OUTP command). If
output is turned off, no output files are transferred until output is
turned on. The Beta portion consists of one word in which bits 1
through 56 are unused and bits 57 through 64 are the a field:
a=O
a=l
a=2
a=3

Turn output on.
Turn output off.
Turn output off, save current state.
Restore output to former state.

Options 2 and 3 are used during checkpoint/restart only.

I

Figure 5-27.

5-112

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 13 of 27)

60459420 H

Message option:
c=#IC

Checkpoint option. Set the checkpointed jdn for all the files
belonging to the batch job in the file index. Write file index entries
for all local files belonging to user jobs. Switch batch input files
to checkpointed input files. Switch output files to checkpointed
output files and give back to originating user. Save pool names.

c=#ID

Turn terminal login processing on or off for all users except the
operator (LOGO command). If terminal login processing is turned off,
no login lines are accepted until terminal login processing is turned
on:

o

63
flag

~

Field

Login Terminal
Processing Flag

flag

o
1

I

Description
Turn on.
Turn off.

Message option:
c=#IE

Restart option. Turns off F RESTART flag and MIS CKPT in MISCTAB to
indicate that system restart-is complete. No Beta is required. Used
during system checkpoint/restart only.

o

Word

Field

Beta(l)

ckptfn

Figure 5-27.

60459420 H

63

Description
System checkpoint file.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 14 of 27)

5-113

I

Message option:
Set a new maximum or default priority for the specified job category
(CHPR operator command):

c=1/1 F

o
Beta(1 )

63

81

ss

sf

81

Beta(2)

Word

jcat

Field

Beta(l)

Description
Error response code:

ss

o
1
2

No error.
Job category not found in system table.
Invalid parameter value.

Subfunction code indicating the priority type to be set:

sf

o
1

Beta(2)

~:I

prior

unused

Maximum priority.
Default priority.

prior

Priority:

1 (lowest) through 15 (highest).

jcat

Job category (eight ASCII characters, left-justified,
blank-f illed) •

Message option:
c=1121

Test and set the user directory editor serialization flag. If not
already set, return r=O. If already set, return r=5. No Beta is
required.

c=1I22

Clear the user directory editor serialization flag.
required.

Figure 5-27.

5-114

No Beta is

EXECUTE OPERATOR COMMAND (f=1I0021) (Beta) Message Format (Sheet 15 of 27)

60459420 H

Message option:
c=lt24

Turn on or off the submission of jobs for the specified job category
(INPT operator command):

63

0
Beta(l )
Beta(2)

81

ss

I

Word

jeat

Field

Beta(l)

Description

ss

Error response code:

o
1
2
sf

No error.
Job category does not exist.
Invalid subfunction (sf field value).

Subfunction code:

o
1
Beta(2)

481

unused

jcat

Turn input on for the specified job category.
Turn input off for the specified job category.

Job category (eight ASCII characters, left-justified,
blank-filled). If jcat is all blanks, the command applies to
all job categories.

Message option:
Set the maximum large page limit for any job within the specified job
category (MXLP operator command):

c=lt25

63

0
Beta( 1)
Beta(2)

5S

I

Word
Beta( 1)

unused

81

:1

Description

Field
S5

241
jeat

n

Error response code:

o
1
2

No error.
Job category does not exist.
Invalid parameter value.

n

Maximum number of large pages allowed (0 through maximum large
pages in machine, MAXWS/128).

Beta(2)

jcat

Job category (eight ASCII characters, left-justified,
blank-filled).

Figure 5-27.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 16 of 27)

60459420 H

5-115

I

Message option:
Set the percentage of memory overcommitment allowed (MXMO operator
command):

c=If26

o

Beta( 1)

I

Word

63

81

ss

unused

n

Description

Field

Beta( 1)

ss

Error response code:

o
1

No error.
Invalid parameter value.

Integer (0 through 10000) indicating allowed memory
overcommitment. The integer is the percentage value.

n

Message option:
Set the maximum combined time limit for all jobs currently executing in
the system (MXRR operator command):

c=If27

o

63

Beta(1 )

Word
Beta(l)

ss

81

unused

Field
ss

Description
Error response code:

o
1
n

I

Figure 5-27.

5-116

n

No error.
Invalid parameter value.

Number of system minutes (1 through 9999).

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 17 of 27)

60459420 H

Message option:

c=1128

Set the maximum time limit for any job within the specified job
category (MXTL operator command):

63

0
Beta(1 )
Beta(2)

I

Word

81

ss

unused

n
jcat

Field

Beta(1)

Description
Error response code:

ss

o
1
2

Beta(2)

No error.
Job category does not exist.
Invalid parameter value.

n

Time limit in system seconds (1 through 599,940).

jcat

Job category (eight ASCII characters, left-justified,
blank-filled).

Message option:

c=1/29

Set the maximum working set size for any job within the specified job
category (MXWS operator command):
0

63

ss

Beta(1 )
Beta(2)

I

Word
Beta(1)

81

unused

n

jcat

Field
ss

Description
Error response code:

o
1
2

No error.
Job category does not exist.
Invalid parameter value.

n

Working set size limit in 512-word blocks (0 through the maximum
blocks in machine MAXWS).

Beta(2)

jcat

Job category (eight ASCII characters, left-justified,
blank-filled).

Figure 5-27.

EXECUTE OPERATOR COMMAND (£=#0021) (Beta) Message Format (Sheet 18 of 27)

60459420 H

5-117

I

Message option:
Set the maximum number of executing jobs for the specified job category
(SJCT operator command):

c=1I2A

63

0

Beta(1 )
Beta(2)

I

Word
Beta( 1)

ss

unused

81

Field
ss

Error response code:
1
2

I

Figure 5-27.

5-118

:~I

Description

o

Beta(2)

n

241
jcat

No error.
Job category does not exist.
Invalid parameter value.

n

Maximum number of jobs that can concurrently execute (1 to 50).

jcat

Job category (eight ASCII characters, left-justified,
blank-filled) •

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 19 of 27)

60459420 H

Message option:
c=t/2C

Retrieve H,I or Q,I display information for all input queue entries
(refer to the VSOS 2 Operator's Guide for a description of the H
display). The message returns values in all Beta fields.
For this option, the user must set the value of the bl field in
Alpha(3). If the caller is not privileged, any entries belonging to
the caller will be returned:

o
Beta(1 )

63
ss

ctrr

ctmc

Beta(2)

mxrr

mxmo

maxws

tphflg

mxtp

ctnt
8

16

24

24

16
Beta(3)

fnum
24

16

8

unused
40

8

8

job name

Beta (4)

64
userno

Beta(5)

64
Beta(6)

tl

wslim

48

16
Beta(7)

Ip
12

pr
4

nt

spr
8

status
32

8
jcat

Beta(8)

r uprodn
I
Beta(9)

64

16 1

Word
Beta(1)

Error response code:
1

60459420 H

24

Description

o

Figure 5-27.

23

Field
ss

lid

unused

jdn

No error.
More input queue entries exist than can fit in the
reserved Beta area.

ctmc

Current percentage of memory overcommitted.

ctrr

Current number of system minutes required to rerun all executing
jobs.

fnum

Number of input queue entries returned.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 20 of 27)
5-119

I

Word

Field

Beta(2)

mxmo

Maximum percentage of memory overcommitment allowed.

mxrr

Maximum rerun time (in system minutes) allowed for all executing
jobs.

maxws

Maximum working set size.

ctnt

Number of tape drives not in use.

mxtp

Maximum number of tape units available.

tphflg

Tape holding flag. The operating system sets this field to one
of the following values:

Beta(3)

Description

o
1
Beta(4)

job name

Name of the batch job file.

Beta(5)

userno

User number; six ASCII characters, left-justified, blank-filled.

Beta(6)

wslim

Working set

tl

Time limit, in system seconds.

lp

Large pages required.

pr

Priority (1 through 15).

spr

Subpriority (0 through 255).

nt

Number of tape drives required by the job.

status

Input queue status (four ASCII characters, left-justified,
blank-filled).

Beta(8)

jcat

Job category (eight ASCII characters, left-justified,
blank-filled).

Beta(9)

jdn

Job descriptor number (1 through 2047).

uprodn

1 is returned if user is a production user.
user is not a production user.

lid

Logical identifier of the front-end mainframe from which the job
originated.

Beta(7)

I

Jobs requiring tape units are not held in the input
queue.
Jobs requiring tape units are held in the input queue.

limit~

in blocks.

0 is returned if

The words Beta(4) through Beta(9) are repeated for every input queue entry returned.

I

Figure 5-27.

5-120

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 21 of 27)

60459420 H

Message option:
Retrieve V display information for all job categories (refer to the
VSOS 2 Operator's Guide for a description of the V display). The
message returns values in all Beta fields.

c=lf2D

For this option, the user sets the value of the bl field in Alpha(3).
The system returns the information in the Beta:

o
Beta(l ).

63
SS

81

jnum

unused

16

Beta(2)

jinfo i

Beta(n)

Word
Beta(1)

Field
ss

Description
Error response code:

o
1

No error.
More entries exist than can fit in the Beta.

jnum

Length of job category table returned in Beta.
table is returned.)

Beta(2)
through
Beta(n)

j infoi

Copy of the T JCAT system table (four words per job category).
The format of-the T JCAT table is shown in figure 5-28.

Figure 5-27.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 22 of 27)

60459420 H

(The entire

5-121

Message option:
c=1I2F

Retrieves job categories for which the specified user number is
validated.
For this option, the user must set the bl field of the Alpha to the
Beta length. The length must not be less than the number of valid job
categories plus 1:

o
Beta(1 )

63
ss

81

jnurn

81

161

32

jcat1

64

Beta(jnum+1)

jcatjnurn

64

Beta(l)

Field
ss

Description
Error response code:

o
1
2

Beta(2)
through
Beta(n)

Figure 5-27.

5-122

userno

Beta(2)

Word

I

unused

No errors.
Beta length specified in the bl field of the Alpha
portion is insufficient for return of all valid job
categories.
User number not found.

jnum

In this field, the system returns the number of job categories
it returned.

userno

Binary user number whose valid job categories are returned.
For a nonprivileged user executing this option, the userno must
be the executing user number.
Job category mnemonic (one to eight ASCII characters,
left-justified, blank-filled).

EXECUTE OPERATOR COMMAND (f=H0021) (Beta) Message Format (Sheet 23 of 27)

60459420 H

Message option:
Alters the working set for the system shared library. Virtual system
routine OPCOM uses mis slmax to mis slmin for a legal range when
adjusting the SHRLIB working set.

c=1I31

o

l_______

l_____________

Beta(1) _

63

u_n_u_s_e_d_________________
32

~~I______m__ax_w__s______16~1

m_i_n_w_s____ 16

Description

Word

Field

Beta(l)

minws

Minimum working set size for SHRLIB to be placed in mis slmin.

maxws

Maximum working set size for SHRLIB to be placed in mis slmax.

Message option:

c=1I32

Drops jobs for a user.
specified in the Beta.

Only one of the jdn or userno fields must be
The format of the Beta is as follows:

o

63

Beta(1 )

sf

55

16
Beta(2)

jdn
16

userno
12

20

jobname
64

Word
Beta(1)

Description

Field
ss

Error response field.
following values:

o
1
2
3
4
5
6
7
sf

60459420 H

No error.
Nonprivileged user cannot specify alternate user.
No jobs found for specified user number.
Cannot drop interactive task.
Cannot drop task issuing request.
Both jdn and jobname specified.
Beta is not large enough.
Beta length greater than 512 words.

Subfunction (set by the user). If set, bits 0 through 15 (left
to right) have the following meaning:
0
1-12
13
14
15

Figure 5-27.

Set by the operating system to one of the

Kill the job.
Not used.
Search the input queue.
Search the execute queue.
Search the output queue.

EXECUTE OPERATOR COMMAND (f=1I0021) (Beta) Message Format (Sheet 24 of 27)
5-123

•

Word

Description

Field
jdn

Job descriptor number (binary) of the job to drop (set by the
user). If 0, then jdn is not used as a qualifier to search for
jobs and jobname must be specified.

userno

User number (binary) of the job(s) that are to be dropped (set
by the user). If userno is set to 0, then the user number of
the task that issued the request is used. If the user is not
privileged, then userno must be set to
or set to the user
number of the task that issued the request.

°

Beta(2)

jobname

Job name (ASCII, left-justified, blank-filled) of the job(s) to
be dropped (set by the user). If 0, then jobname is not used as
a qualifier to search for jobs and jdn must be specified. If
jobname is * (left-justified, blank-filled), all jobs belonging
to userno are dropped.

For each job that is dropped, a 2-word entry is returned in the Beta. The returned
entries begin at word 3 of the Beta. The format of each entry is as follows:

63

0
Beta(3)

Beta(4)

jdn

unused

jobname

I

Description

Field

Word
Beta(3)

°

Queue flags. When set, bits
through 3 (left to right)
indicate in which queue the specified job was found:

q

°1
2
3

Beta(4)

Not used.
Input queue.
Execute queue.
Output queue.

jdn

Job descriptor number (binary) of the job that was dropped.

jobname

Job name (ASCII, left-justified, blank-filled) of the job that
was dropped.

Message option:
Perform support functions for system checkpoint processing.

c=1138

o
Beta( 1)

I ____________ I__________ I__________________________ I
~.

Figure 5-27.
•

5-124

63
SS

1_6~

sf

~1~6~

unused

3~2~

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 25 of 27)
60459420 H

Word

Field

Beta(l)

Description

ss

Returned error:
1
2
3
#10
#20

sf

Called when checkpoint not in progress.
Caller is not operator.
Invalid subfunction.
I/O will not complete interactive task during
subfunction #10 processing.
Not all batch jobs were suspended during subfunction
1120 processing.

Subfunction code indicating the type of support processing:
#10
1120
#30

Remove interactive users from the system.
Suspend all batch jobs that are in a running state.
Drop ITFS if running.

Message option:
c=1142

Return a set of file index entries for a specified group of files. The
value of the n field in Alpha(2) is set by the user. This option is
used for the Ht H(O)t and H(P) displays. For the Q(O) display where
sf2=l t only files created by a caller that is not privileged will be
returned:

o
Beta(1 )
Beta(2)

63
ss

unused
8
4

sf

4

fnum

16

usrno

32

finfo 1
64

64
Beta(n)

finfo m
64

Figure 5-27.

60459420 H

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 26 of 27)

5-124.1 •

Word
Beta(l)

Description

Field
ss

Returned error:

o
1
2
sf

No error.
User is inactive.
Invalid subfunction.

Set of flags for the file set desired.
set:

sf1

sf2

sf3

sf4

Description

Flag
sf1=1
sf2=1
sf3=1
sf4=1

Beta(2)
through
Beta(n)

Public files.
Print files.
Punch files.
Private files for the user specified in the usrno
field.

fnum

Number of files in this file set.
the operating system.

usrno

Binary user number if sf4=1.

finfo i

A 16-word copy of the file index table entry for each file in
the set specified is returned:
Public files
Print files

Punch files

Private files

I

Figure 5-27.

5-124.2

Only one flag must be

This number is returned by

Return the files for user O.
Search system processor table (SPT) for zip
codes with disposition code=#20 (print).
Return all mcat=output files for the
associated user number. Files with names
PYYxxxxx and Q5Lxxxxx are assumed to have a
disposition code of #20.
Search SPT for zip codes with disposition
code=#10 (punch). Return all mcat=output
files stored under the associated user
numbers.
Search FILEI for all files under the
specified user number.

EXECUTE OPERATOR COMMAND (f=#0021) (Beta) Message Format (Sheet 27 of 27)

60459420 H

o

63

o

jcat1
64

65

jcat66
64

66

mxws

reserved

mxtl

16

131

mxws

reserved

mxtl

16

132

mxlp

mp

mxlp

dp

8

8

mjc

ioo

8

dp

mp
16

32

16

16

197

32

16

8

mjc

ioo

8

cjc

8

8

cjc

8

198

class

df+1

263

class

df+1

Figure 5-28.

60459420 H

unused

8

8

unused

8

8

T JCAT System Table Format (Sheet 1 of 2)

5-125

Word

o-

65

66 - 131

132 - 197

Description

Field
jcat

Job category mnemonic (ASCII left-justified, blank-filled).

mxws

Maximum working set size limit, in blocks.

mxtl

Maximum time limit, in system seconds.

mxlp

Maximum large page limit.

mp

Maximum priority.

dp

Default priority.

ioo

Input on or off status:

o
1

198 - 263

mjc

Maximum job count; the maximum number of jobs from this category
that can execute concurrently.

cjc

Current job count.

class

Job category class mnemonic (four ASCII characters, leftjustified, blank-filled).

df+l

Default category time limit.

Figure 5-28.

5-126

Input on.
Input off.

T JCAT System Table Format (Sheet 2 of 2)

60459420 H

EXECUTE PROGRAM FOR USER NUMBER (f=#0022)
The EXECUTE PROGRAM FOR USER NUMBER system message initiates execution of a file for a
specified user number. Only a privileged user can issue this message. The initiated file
can be local, attached permanent, attached pool, or public.
The message format is shown in figure 5-29.

o

63

Alpha(1)

r

Alpha(2)

n

Alpha(3)

bl

Beta(1 )

ss

len

16

0022

ba

16

48

usrno

8\

unused

Beta(4)

jce

81

16 priority 8
sl

.subpriority 8

56
64

mxws

16

mxlp

tl

8

Beta(5)

Field

Alpha( 1)

64

Description
Response code returned by VSOS when message processing is
complete:

r

o
1
2
3
4
#214

No errors.
User is not privileged.
File request error [refer to the ss field in
Beta(l)] •
No table space available.
Invalid message option (c field).
Beta buffer length error. Either the first word
address of Beta plus its length is greater than the
maximum virtual user address, or the Beta buffer is
too small for the number of requests and length
specified.

len

Beta location. If this field is #FFFF, Alpha(3) contains the
length and virtual address of Beta. If this field is not #FFFF,
the Beta buffer immediately follows word Alpha (2) and contains
one word.

c

Message option:
2

5-29~

16
48

account

Word

16

48

fname

Beta(3)

60459420 H

16

eea

16

Beta(2)

Figure

c

16

Switch task to user number.
option.)

(This is the only

EXECUTE PROGRAM FOR USER NUMBER (f=#0022) Message Format (Sheet 1 of 2)
5-126.1/5-126.2

I

Word
Alpha( 2)

Field

Description

n

Number of files put into execution with this message.

eea

Error exit address; virtual bit address to receive control
if an error occurs during message processing (r~O). If this
field is 0 when an error occurs, the task is aborted.

Alpha(3)

bl, ba

If len=#FFFF, these fields contain the length in words and
the virtual bit address of the first full word of the Beta
portion.

Beta(l)

ss

Error response code:

o
2
3

4
5
6
7
8
9
IIA

liB
IIc
liD
tIE

No errors.
User directory is not on the disk.
File was not found or not attached.
Nonexecutable file.
Invalid priority value.
Invalid user number.
Not authorized to run at priority level.
Invalid security level specified.
File access conflict with another user.
FILEI (file index table) is full.
Requested time limit exceeds time available to
the user.
User does not have execute access for the file.
Nonproduction program not permitted (production
users only).
No JDNs available to assign to user program.

usrno

User number (six ASCII characters, left-justified,
blank-filled).

Beta(2)

fname

File name (eight ASCII characters, left-justified,
blank-filled).

Beta(3)

priority

Job priority 1 (lowest) through 15 (highest).

subpriority

Subpriority of the job (1 through 255).

lDXWS

Maximum working set limit in blocks (0 through the maximum
blocks in machine, MAXWS in MISCTAB).

mxlp

Maximum large page limit (0 through the maximum large pages
in machine, MAXWS/128).

jce

Job category entry number (0 through 65).

sl

Security level (1 through 8) to be given to the task.
Default is an installation-defined parameter.

tl

Time limit in system seconds (0 through 599,940). The
default (+1=0) is the maximum amount of time allocated for a
user number.

account

Account number (eight ASCII characters, left-justified,
blank-filled) •

Beta(4)

Beta(5)

Figure 5-29.
60459420 H

EXECUTE PROGRAM FOR USER NUMBER (f=#0022) Message Format (Sheet 2 of 2)
5-127

I

UPDATE USER DIRECTORY (f=#0023)

This message can be issued only by a privileged user and allows the user to create, delete,
or modify a user directory. One purpose for which an installation can use this message is
to create a utility for managing batch job accounting (refer to Accounting, chapter 8). A
nonprivileged user may execute option #4 only for the user number executing the call.
The format of the Alpha portion of this message is shown in figure 5-30. The Beta word
formats depend on the message option (c field) in Alpha(l), and are shown in figure 5-31.
Only one Beta will be processed per Alpha.

o

63

1€
Alpha(2)

16

16

Word
AlphaO)

48

I

I

bl
ba
L_________
W ________________________________
3illI

I

Field
r

Description
Response code returned by VSOS when message processing is
complete:

o
#214

No errors.
Beta buffer length error. Either the first word
address of Beta plus its length is greater than the
maximum virtual user address, or the Beta buffer is
too small for the number of requests and length
specified.

1

If this field is #FFFF, bl in Alpha(3) contains the length of
the remote Beta buffer. ba contains the location of the remote
Beta buffer. If this field is not #FFFF, the Beta buffer
immediately follows word Alpha(2) and contains one word.

c

Message options, each of which has a different Beta format:
1
2
3
4
5
6
7
8
9
#A
#B

Figure 5-30.
5-128

16

eea

unused
16

Alpha(3)

0023

c

Alpha(1 )

Delete user from user directory.
Replace password for user.
Write (modify/create) user directory entry and
encode password.
Read user directory entry.
Write (modify/create) user directory entry, do not
encode password.
Verify user directory permissions.
Read user accounts.
InitiaLize user directory (delete all but special
users).
Read user directory file into caller's buffer.
Return default project number for a user.
Return first eight words for user activity table
entry.

UPDATE USER DIRECTORY (f=#0023) (Alpha) Message Format (Sheet 1 of 2)
60459420 F

Word

Field

Description

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message. If this field is 0 when an error
occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(l=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta
portion.

Figure 5-30.

UPDATE USER DIRECTORY (f=#0023) (Alpha) Message Format (Sheet 2 of 2)

For message option 1:

o

63

user

Beta(1 )

64
unused

ss

Beta(2)

56

8

Word

Field

Beta(l)

user

Binary user number.

Beta(2)

ss

Error response code:

Description

o
1
2
3
4
Figure 5-31.

60459420 E

No error.
User is not privileged.
Illegal c option.
User is active (c=l, 3, 5).
User directory is full (c=3, 5,

crflg~O).

UPDATE USER DIRECTORY (f=#0023) (Beta) Message Format (Sheet 1 of 5)

5-129

For message option 2:

0

63
user

Beta(l )

64
Beta(2)

unused

ss

56

8
oldpword

Beta(3)

64
newpword

Beta (4)

64

Description

Field

Word
Beta(l)

user

Binary user number.

Beta(2)

ss

Error response code:

o
1
2
5
6
7

No error.
User issuing the call is not privileged.
Illegal c option.
User does not exist.
Invalid password.
Passwords do not match.

Beta(3)

oldpword

User's password in ASCII before the issuance of this call.

Beta(4)

newpword

User's new password in ASCII after the successful completion of
this call. This field is set to 0 on return.

For message options 3, 4, 5, 9, and #B:

o

I

63
user

Beta(l )

64
crflg

ss

Beta(2)

p
f

8
Beta(3)

8

~1

unused
48
bufaddr

buflen

48

16

Word
Beta(l)

user

Figure 5-31.

5-130

Description

Field
Binary user number.

UPDATE USER DIRECTORY (f=#0023) (Beta) Message Format (Sheet 2 of 5)

60459420 H

Word

Field

Beta(2)

ss

Description
Error response code:

o

No error.
User issuing the call is not privileged.
Illegal c option.
User is active (c=3, 5).
User directory is full (c=3, 5, and crflg#O).
User does not exist (c=4, #B; c=3, 5 and crflg=O).
Invalid password (c=2).
User already exists (c=3, 5, and crflg#O).
User in Beta does not match the user in the buffer
(c=3, 5).
Buffer is not long e?ough to contain user directory
(c=9).
Caller is not site security administrator (only if
production status is selected for the specified user).

1
2
3

4
5
6
8
9

liB
fIE

Beta(3)

crflg

If 0, this request is to modify an existing user's user
directory entry. If set to 1I7F, this request is to create a new
user directory entry.

pflg

If pflg=l, the production user flag is set in the user directory
entry (c=3 or 5) •.

buflen

Length of the buffer specified at bufaddr. For c=3, 4, 5, and
7, buflen is in words. For c=#B, buflen should be set to 8.
For c=7, buflen is returned to the caller and is the number of
accounts read. For c=9, buflen is in blocks.

bufaddr

Virtual bit address of the buffer to or from which data is moved.

I

I

For message option 6:

o

63

Beta(l )

user

r- prodtn
Beta(2)

8
Beta(3)

fl

seclev

ss

8

I

64

I

unused

6 -1

43
account
64

Beta(4)

password
64

Beta(5)

jcat
64

Figure 5-31.

60459420 H

UPDATE USER DIRECTORY (f=1I0023) (Beta) Message Format (Sheet 3 of 5)

5-131

Word

Field

Beta( 1)

user

Binary user number.

Beta(2)

ss

Error response code:

Description

o
1
2
5
#A
#C

No error.
User issuing the call is not privileged.
Illegal c option.
User does not exist.
Parameter in Beta does not match parameter in user
directory.
Specified job category does not exist.

seclev

Security level to be verified.

fl

This field is comprised of six subfields:
Bit
0
1
2
3
4
5

Subfield
acflg
pwflg
slflg
jcflg
daflg
tpflg

Description
If
If
If
If
If
If

set,
set,
set,
set,
set,
set,

verify
verify
verify
verify
return
verify

account identifier.
password.
security level.
job category (jcat).
default account.
tape access.

Account verification, if requested, occurs first. Password
verification, if requested, precedes security level
verification, which precedes job category verification, which
precedes tape access verification. As a parameter is
successfully verified, the associated flag in fl is cleared to
O. On detection of an unsuccessful verification, all
verification processing stops. The system returns an ss code of
#A, and the flag (and all following flags) associated with the
unsuccessful verification in fl is still set.
If both actflg and daflg are set, the account in Beta(3) will be
verified. If the account doesn't verify, then the default
account will be returned in Beta(3).

I

prodtn

Returned value = 1 if a production user.
not a production user.

Beta(3)

account

Account identifier to be verified, in ASCII.

Beta(4)

password

Password to be verified, in ASCII.
return.

Beta(5)

jcat

Job category to be verified, in ASCII.

Figure 5-31.

5-132

Returned value

o

if

This field is set to 0 on

UPDATE USER DIRECTORY (f=#0023) (Beta) Message Format (Sheet 4 of 5)

60459420 H

For message option 8:

o

63

Beta(1 )

unused
64

Beta(2)

ss

unused

8

Word

56

Field

Beta(2)

Description

ss

Error response code:

o
1

2

No error.
User issuing the call is not privileged.
Illegal caption.

For message option #A:

o

63

Beta(1 )

user
64

Beta(2)

ss

unused

8

56

Beta(3)

project number
64

Beta(4)

project number
64

Beta (5)

project number

unused
32

Word

Field

Description

Beta(l )

user

Binary user number.

Beta(2 )

ss

Error response code:

o
1
2
5
#D
Beta(3),
(4), (5)

proj ect
number

Figure 5-31.
60459420 E

32

No error.
User issuing the call is not privileged.
Illegal caption.
User does not exist.
Default project number does not exist.

A 1- to 20-character default project number in ASCII,
left-justified with blan~ fill.

UPDATE USER DIRECTORY (f=#0023) (Be ta) Message Format (Sheet 5 of 5)
5-133

MISCELLANEOUS (f=#0024)

With this message, a user program can determine a variety of information concerning itself,
its controller, and its control lees • Also, raw account ing statistics can be retrieved with
option 9 (c field). The format of this message is shown in figure 5-32. The Beta portion
of the format is discussed under the c field description.

o

63

Alpha(1)

len

r

16
Alpha(2)

c
16

unused

0024
16

16

eea
16

Alpha(3)

Word
Alpha(l )

IL

48

bl

____

ba
_____________
"___

-...:!~"-

Field
r

Description
Response code; returned by the operating system when this
message has been processed. If no error occurs the response
code is 0; otherwise:

2
3
#214

len

I
Figure 5-32.

5-134

I

~~

No controllee, illegal information option, or the
error response field for Beta(l) of option value C,
12, or 13 is set.
Program not currently running in interrupt program
state (c=#F or #11 only).
Error in system call to read the user's account
numbers.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
speci fied.

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion. For option 8, if this field is
3, Beta(4) and Beta(5) are not present. For option 1, if this
field is 3, Beta(4) through Beta(9) are not present.
MISCELLANEOUS (f=#0024) Message Format (Sheet 1 of 8)

60459420 F

Word
Alpha(l)

Description

Field
c

Message options (c=4, c=#B, and c=#14 are reserved). All
information is returned by the operating system unless otherwise
specified. The values are:
1

2
3

4
5
6

7
8

9

Get the user number, bank account, and maximum file
length.
Verify logged-in workstation user.
Get the time limit.
Reserved.
Get the controllee's termination state.
Get the controllee's name and place.
Get the controller's name and place.
Get this program's name and place.
Get the raw page fault counts, CPU times, and memory
usage. If the batch processor issues this option,
the statistics returned include the cumulative
statistics for the batch processor and all its
controllees. The Beta portion of the format is as
follows:
Beta(l)
Beta(2)
Beta(3)
Beta(4)

#A
#B
#D

HE
#F
#10
#11
#12
#13
#14

Small page fault count.
Large page fault count.
CPU time (microseconds).
Memory usage.
System CPU time.

Get clock times as of message issuance.
Reserved.
Get the contents of minus pages.
Get the version identifiers.
Get the interrupt invisible package.
Get the task CPU time.
Get the interrupted register file.
Destroy batch job's input file if system fails.
Rerun batch jobs input file if system fails.
Reserved for DEBUG.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r+O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta
portion.

Figure 5-32.

60459420 H

MISCELLANEOUS (f=#0024) Message Format (Sheet 2 of 8)

5-135

I

I

Message option:
c=l

Get the user number, bank account, and maximum file length. If Beta(4)
is set to an account number, validate the account and return additional
parameters in Beta(5) through Beta(9). (The len field must be set to
either 3 or 9.)

o
Beta (1)

63
unused

user

48

16

unused

Beta (2)

bank

24
Beta (3)

40

unused

mfl

32

32
Beta (4)

acctno

64
Beta (5)

acctflag

privflag

8

unused

muflag

8

Beta (6)

8

40
cacct

64
Beta (7)

projno

64
Beta (8)

projno

64
Beta (9)

unused

projno

32

Word

Field

32

Description

Beta(l )

user

User number in ASCII, right-justified with blank fill.

Beta( 2)

bank

Quantity of STU units in the user's bank account.

Beta(3)

mfl

Maximum file length.

Beta( 4)

acctno

Eight character account number to be verified.

Figure 5-32.

5-136

MISCELLANEOUS (f=If0024) Message Format (Sheet 3 of 8)

60459420 F

Word

Field

Beta(5)

privflag

Description
User privileged flag:

o
1
acctflag

Account number valid flag:

o
1
muflag

Nonprivileged.
Privileged.

Invalid account.
Valid account.

Master user flag:

o

User is not the master user of the account.
User is the master user of the account.

Beta(6)

cacct

Current account number in execution (in ASCII t left-justified
with blank fill).

Beta(7)
through
Beta( 9)

projno

1- to 20-character project number in execution (in ASCII t leftjustified with blank fill).

Message option:
c=2

Verify that a user program executing a workstation utility is permitted
to communicate with the correct workstation zip code. If the user is
making the call from a workstation t the zip and ttyno are returned in
Beta(1) •

o

Beta(1)

63

~I______________________u_n_us_e_d_____________________4~8~1___ 8~I~t_t_y_n_O~81
Z_iP___

Word

Field

Beta(1)

zip

Zip code of workstation.

ttyno

Terminal number of logged-on user.

Figure 5-32.

60459420 H

Description

MISCELLANEOUS (f=#0024) Message Format (Sheet 4 of 8)

5-137

•

Message option:
c=3

Get the time limit. Beta(1) contains the existing time limit, tn
microseconds, in the rightmost 48 bits; the leftmost 16 bits are unused.

c=5

Get the controllee's termination state.

Beta(l) contains the following:

o

63
unused

Controllee's return code.
other values are:
4
8

cts

cts

8

I

Description

Field
rc

rc

rc=O means successful completion;

Nonfatal error.
Fatal error.

Controllee's termination state.

o
1
2
3
4
#39
113D
#3E

The values are:

Still active.
User terminal break to the EXIT control statement.
Operator break to the EXIT control statement.
Operator break to the end-of-job (6/7/9) card.
Operator drop of the entire batch deck.
Normal termination.
Abort.
Normal termination.

The drop, scratch, and output files are saved for #3D and #3E.
For #39, the drop and scratch files are destroyed, while the
output file is given to an output processor according to the
disposition code for the file.
Figure 5-32.

5-138

MISCELLANEOUS (f=#0024) Message Format (Sheet 5 of 8)

60459420 F

Message option:
c=6

Get the controllee's name and place. Beta(l) contains the source file
name for the controllee, and Beta(2) contains the drop file name for
the controllee (see the following Beta format).

c=7

Get the controller's name and place. Beta(l) contains the source file
name for the controller, and Beta(2) contains the drop file name for
the controller (see the following Beta format).

c=8

Get this program's name and place.

The Beta portion of the format is:

o

63

Beta( 1)

sfile
64

Beta(2)

dfile
64

Beta(3)

priv

lev

8
Beta (4)

unused
8
4

jdn

site

I

unused
24

12

8

user
64

Beta(5)

jobname
64

Word

Field

Description

Beta(l)

sfile

Source file name for this program.

Beta(2)

dfile

Drop file name for this program.

Beta(3)

priv

Identifies the privileged task. This field must be set to 0 for
a nonprivileged task, or nonzero for a privileged task.

lev

Level in the controllee chain; 1

jdn

Job descriptor number (integer; 1 through 2047) of the calling
job.

site

Origination site ID (ASCII).

Beta(4)

user

User number in ASCII, right-justified with blank fill.

Beta(5)

jobname

Job name of the calling task in ASCII, left-justified with blank
fill.

Figure 5-32.

60459420 H

~

lev

~

9.

MISCELLANEOUS (f=#0024) Message Format (Sheet 6 of 8)

5-139

I

Message option:
c=9

Get the raw page fault counts, CPU times, and memory usage. If the
batch processor issues this option, the statistics returned include the
cumulative statistics for the batch processor and all its controllees.
The Beta portion of the format is:

o

63
spflt

Beta(1 )

Beta(2)

Ipflt

32

32
ucpu

unused

48

16
Beta(3)

memu

unused

48

16
Beta(4)

unused

16

syscpu

48

Word

Field

Beta( 1)

spflt

Number of disk accesses (input requests issued) that resulted
from small page faults (small page implicit reads) up until the
issuance of the MISCELLANEOUS message.

lpflt

Number of disk accesses (input requests issued) that resulted
from large page faults (large page implicit reads) up until the
issuance of the MISCELLANEOUS message.

Beta(2)

ucpu

User execution CPU time, in microseconds, up until the issuance
of the MISCELLANEOUS message.

Beta(3)

memu

Memory usage; the values (current working set size)*(user CPU
time for the current accounting period) summed over all
accounting periods for the task up until the issuance of the
MISCELLANEOUS message.

Beta(4)

syscpu

Virtual and resident system CPU time, in microseconds, for user
execution up until the issuance of the MISCELLANEOUS message.

Description

Message option:
c=IIA

Get clock times as of message issuance.
is as follows:
Beta(l )
Beta(2)

Figure 5-32.

5-140

The Beta portion of the format

Master clock value, expressed as yymmddhhmmsspppp.
is fraction of a second.
ASCII clock value, expressed as hh.mm.ss
(hour.minutes.seconds).

pppp

MISCELLANEOUS (f=110024) Message Format (Sheet 7 of 8)

60459420 F

Beta(3)
Beta(4)
Beta(5)
Beta(6)

Calendar value, expressed as mm/dd/yy (month/day/year).
Value of the millisecond clock (0 at midnight).
Value of the microsecond central processor clock (0 at
power on).
Current date, in the rightmost 16 bits. The leftmost 7
bits of the 16 bits contain the last 2 digits of the
year, in binary; the remaining 9 bits contain the number
of days since the beginning of the year (1 to 366), in
binary. The leftmost 48 bits of Beta(6) are unused.

Message options:
c=#B

Reserved.

c=#D

Get the contents of the minus pages and return them in Beta(l) through
Beta(1536). (The format of the minus pages is described in chapter
2.) If there is no second, minus page, Beta(513) is #FFFF. If there is
no third minus page, BETA(1025) is #FFFF. If Beta length is 512, only
the first minus page is returned. If Beta length is 1024, only the
first and second minus pages are returned.

c=#E

Get the version identifiers. Beta(l) contains the resident system
version identifier, and Beta(2) contains the virtual system version
identifier.

c=#F

Get the interrupt invisible package. If the program is running in
interrupt state, Beta(l) through Beta(40) contain the contents of the
invisible package saved when a program interrupt occurred. (Refer to
appendix E, which describes the invisible package.) If the program is
not currently running in interrupt state, a response of 2 is returned.

c=#10

Get the task CPU time.
microseconds.

c=#ll

Get the interrupted register file. Beta(l) through Beta(256) contain
the contents of registers 0 through 255, when a program interrupt
occurred. If the program is not currently running in the interrupt
program state, a response code of 2 is returned.

c=#12

If the batch input file whose name is supplied by the user in Beta(l)
fails to complete due to a system failure, destroy the batch job's
input file. The name of the batch input file must be left-justified
with blank fill. Beta(2) contains the return code; the value is 0 if
the batch job's input file is successfully destroyed, or 1 if the batch
file names does not exist.

c=#13

If the batch input file whose name is supplied by the user in Beta(l)
fails to complete due to a system failure, rerun the batch input file.
The name of the batch input file must be left-justified with blank
fill. Beta(2) contains the return code; the value is 0 if the batch
input file is successfully rerun, or 1 if the batch file name does not
exist.

c=#14

Reserved for DEBUG.

Figure 5-32.

60459420 G

Beta(l) contains the task CPU time, in

MISCELLANEOUS (f=#0024) Message Format (Sheet 8 of 8)

5-141

I

RECALL (f=#0025)

The RECALL message allows a program to suspend its own execution for not fewer than 30
seconds nor more than 30 minutes. At the end of suspension, the program is recalled to an
active status. The format of this message is shown in figure 5-33.

o

63
r

Alpha(1 )
Alpha(2)

unused

len
16

unused

0025
16

16
eea

48

16
Alpha(3)

IL

bl
ba
_. _ _ _ _1~ ..... _ _ _ _. --.; _ _ _ _ _ _ . _ _ _ _ _

Beta(1 )

Word
Alpha(l)

unused

Field
r

16

I

~~

time

Description
Response code; returned by the operating system when this
message has been processed. If no error occurs, the response
code is 0; otherwise:
1
#214

This message is not allowed for this program.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the number of requests and length
specified.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3), and len is the length in words
of the Beta portion, that is, 1.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r+O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta
portion.

Beta(l)

time

Period of suspension; specified as a hexadecimal integer number
of microseconds. No fewer than 30 seconds and no more than 30
minutes must be specified by this field. Values outside this
range are set to the nearest interval limit.
Figure 5-33.

5-142

RECALL (f=#0025) Message Format

60459420 E

POOL FILE MANAGER (f=#0026)

This message offers a variety of options relating to pool file management, including
attaching the user to a specified pool (thus giving the user access to the files in the
pool) and detaching a pool (after which the files in the pool are no longer accessible to
that user). A user who issues option 1 of this message to create a pool becomes that pool's
pool boss. Only the pool boss can issue options 2, 3, 6, and 7. Only the pool boss or a
user authorized by the pool boss can issue options 4 and 5. Any user can issue option 8.
At the end of each batch job, when the batch processor issues the USER/ACCOUNTING
COMMUNICATION message option 2 (end of job), any pools that were first attached by the job
are detached.
Pools that have been attached interactively remain attached until the user detaches them or
until that JDN is no longer active [that is, has done a (sc)BYE].
The format of the POOL FILE MANAGER message is shown in figure 5-34.
described under the c field definition.

The Beta formats are

o

~

Alpha(1 )

r

Alpha(2)

len

16

16

c

16

0026

eea

unused

48

16
Alpha(3)

IL _ _ _
bl
I
__

1~

Word

ba

r

Description
Response code; returned by the operating system when this
message has been processed. If no error occurs, the response
code is O. A nonzero response code does not necessarily mean an
error has occurred (refer to message options 7 and 8). Other
values are:

1111
1112
1113
1114
1115

1116
1117
1118
1119
1120
Figure 5-34.

60459420 F

I

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _~

Field

Alpha(1)

16

Pool name was already attached by this job.
Pool name is undefined.
Four pools already attached.
Pool is not attached.
Cannot attach to the pool; user has no access to
the pool.
Undefined user number.
Duplicate pool name.
Unable to destroy the pool.
Pool access directory (PAD) is full.
One or more pool files span a downed device.

POOL FILE MANAGER (f=1I0026) Message Format (Sheet 1 of 4)

5-143

I

Word

Description

Field

Alpha(l)

#IA
#IB
#IC
#ID
#IE

r

#IF
#214

Pool list (PLIST) table is full.
Invalid pool.
Invalid pool name.
Not a pool boss.
PAD or PLIST file was not found (refer to the
VSOS 2 Installation Handbook).
File index table is full.
Beta buffer or user list buffer length error;
either the first word address of Beta plus length
is greater than the maximum user virtual address,
or the Beta buffer or user list buffer is too
small for the number of results and length
specified.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3), and len is the length in words
of the Beta portion. If this field is 1 under message option 3,
all users can access the pool.

c

Message options. The pool name field in Beta(l) contains up to
eight letters and numbers and must start with a letter; it is
left-justified with blank fill. Binary user numbers can range
from 1 to 999999; they are right-justified with zero fill. The
options are:

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta
portion. Under option 3, all users can access the pool if the
bl field is 1.

2
3

Figure 5-34.

5-144

Create a pool. Adds the pool name to the pool list
and clears (zeros) the pool access directory (invalid
when universal access is set) for that pool. The
creator is the pool boss. Beta(l) contains the pool
name.
Destroy the pool. If no users are attached and no
files are in the pool, the pool name is deleted from
the pool list. Beta(l) contains the pool name.
Grant access to the pool. Places the specified user
numbers into the pool access directory. If either the
len field or bl field is 1, all users can access the
pool. Beta(l) contains the pool name. Beta(2)
contains the length and address of the user number
list buffer:

POOL FILE MANAGER (f=#0026) Message Format (Sheet 2 of 4)

60459420 E

o

63

Beta (1 )

Beta (2)

poolnm

. length

address

16

Word

48

Field

Description

Beta(1)

poolnm

Name of this pool, in ASCII.

Beta(2)

length

Length of user number list buffer, in words.

address

Bit address of user number list buffer.
4
5

6

7

8

Figure 5-34.

60459420 F

Attach to the pool. Attaches the requesting job to
the named file pool. Beta(l) contains the pool name.
Detach the requestor from the pool. Beta(1) contains
the pool name.
Remove the access privilege. Specified user numbers
are removed from the pool access directory. Beta(1)
contains the pool name. Beta(2) contains the length
and address of the user number list buffer.
List the users having access to the pool. Beta(1)
contains the pool name. Beta(2) contains the length
and address of the user number list buffer.
List the pools and the pool boss. All nonzero entries
in the pool list file are copied into a variable
number of Beta words; the number of words copied is
returned in the response code field. Each pool list
entry returned by the operating system has the format
shown next.

POOL FILE MANAGER (f=#0026) Message Format (Sheet 3 of 4)

5-145

I

o

63
pcount

Beta(1 )

pboss

pfree

pptr
16

16

12

poolnm

Beta(2)

20

64

Word

Field

Beta(l )

pcount

Count of users attached to this pool.

pptr

Pointer into the pool access directory that contains a list of
user numbers which can attach to this pool (the value is used by
the operating system only).

pfree

Currently unused.

pboss

User number of the boss of this pool.

poolnm

Name of this pool, in ASCII.

Beta(2)

Figure 5-34.

5-146

Description

POOL FILE MANAGER (f=#0026) Message Format (Sheet 4 of 4)

60459420 E

LINK (f=#0027)

With this message, a privileged user can process a CYBER interactive output message.
The Alpha portion of the LINK message is shown in figure 5-35. The Beta word formats depend
on the message option (c field) in Alpha(l) and are shown in figure 5-36.

o

63

Alpha(1 )

16
Alpha(2)

0027

c

len

r

16

16
eea

n

48

16
Alpha(3)

ba

bl

48

16

Word
Al pha(l )

Field

Description
Response code; returned by the operating system when this
message has been processed. If no error occurs, the response
code is 0; otherwise:

r

1
2
#214

Alpha(3)

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3), and len is the length of the
Beta portion.

c

Message option:
The sys tem returns the identifiers of te rminal s
that have outstanding output along with the output
messages.

n

This field is the size of the Beta portion of the message, and
the Beta area should be at least n words long. When the message
has been processed, n is set equal to the word length of the
information returned in the area 'pointed to by bva.

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=IIFFFF), these parameters indicate the length in full words
and virtual bit address of the first full word of the Beta
portion.

Figure 5-35.
60459420 E

Illegal option.
The message is for privileged use only.
Beta buffer length error; either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer
is too small for the number of requests and length
specified.

len

1116

Alpha(2)

16

LINK (f=1I0027) (Alpha) Message Format
5-147

Message option:

I

c=tl16

Poll. The caller
VSOS beginning in
field of Alpha(2)
returned in the n

puts the terminal number of all terminals logged into
Beta(2). The number of terminals is put in the n
by the caller. The length of the output in words is
field of Alpha(2) by the operating system:

o

63

Beta(l )

I

unused

Beta(2)

bva

16

48

ttyno

hold
11
logout

unused
16

Word

Field

Description

Beta(l )

bva

The system returns terminal output messages at this bit address.

Beta(2)

ttyno

Terminal number.

logout

Set by VSOS if user is to be logged out.

hold

Set if caller cannot accept any output for this terminal at this
time. The system does not return output (if any) for this
terminal.

Format for output messages:

o
Header

63
ttyno

.16

unused

16

words

16

bytes

16

messagel

64

•••
message m

64

Word

Field

Header

ttyno

Terminal number.

words

Number of words, including header.

bytes

Number of bytes in the message.

message

Message text.

(l)-(m)

Description

Figure 5-36.

5-148

LINK (f=#0027) (Beta) Message Format

6045Y420 F

VARIABLE RATE ACCOUNTING (f=#0028)

This message dynamically changes the variable rate during execution of a task. This call
can be made only by a public controllee, a controllee which has the variable rate permit
flag set in the user directory, or a nonpublic controllee with the proper password. Dynamic
calls to change variable rates are made by applications programs rather than utilities. The
rates to be indexed are in the Q5VRF file.
If IP F VR is 0, the call is illegal (r=2).
The change to the variable rate index is made in the descriptor block entry. At the time
the change is made, BANKAC is called to compute the accumulated SBUs to be charged at the
old rate and to decrement the available time remaining to complete the task.
Figure 5-37 shows the format of the Alpha portion of the VARIABLE RATE ACCOUNTING message.

o

63

Alpha(1)

r

len
16

Alpha(2)

vri

Alpha(3)

a
a
12 f

unused
16

t

0028
16

16

eea
3

48

bl

ba
48

16

Beta(1 )

password

t Unused.

Word
Alpha(l )

Description

Field
r

Response code returned by the operating system when this message
has been processed:

o
1
2
3

#214

Alpha(2)

len

Length of the Beta; if len=#FFFF, then Alpha(3) contains the
starting address and length of the Beta.

vri

Index into variable rate table (set by user).

Figure 5-37.

60459420 E

Normal.
File is not public or privileged.
Call is not valid at this installation.
Accounting access denied. This could be caused by
three events: the call has not been verified as
being issued by a legitimate task, the password
does not match the password in the variable rate
table, or the variable rate table contains a
password to that variable rate index.
Beta buffer length error.

VARIABLE RATE ACCOUNTING (£=#0028) Message Format (Sheet 1 of 2)

5-149

Word
Alpha(2)

Field

Description
Accounting flag. If set, accounting statistics will not be
accumulated to the minus page or to BACCTG:

aaf

=0
#0

Alpha(3)

Beta( 1)

eea

Virtual bit address to receive control if an error occurs during
message processing (if r is different from 0). If eea=O, the
error is considered fatal.

bl

Beta length.

ba

Beta address.

password

Password (64-bit) to the variable rate table.

Figure 5-37.

5-150

Not accounting (default).
Accounting.

VARIABLE RATE ACCOUNTING (f=#0028) Message Format (Sheet 2 of 2)

60459420 E

SEND MESSAGE TO DAYFILE (f=#0029)
This message allows the user to send a string of ASCII data to the program dayfile.
The format of the message is shown in figure 5-38.

o

63
r

Alpha(1 )

16

unused

Alpha(2)

c

cf

len
16

8

16

eea

48

16
bl

Alpha(3)

0029

8

ba

48

16

Beta(1 )
string of ASCII data
Beta(n)
Word
Alpha( 1)

Field
r

Description
Response code; returned by the operating system when the message
has been processed. If no error occurs the error code is 0;
otherwise:
1
2
3
4
5
6
7

8
#214

len

Figure 5-38.

60459420 E

Length of Beta in character bytes is greater than
4096.
Illegal c field selected for this message.
Dayfile is full. The message in dayfile will be
DAYFILE FULL.
Dayfile is not opened for implicit I/O.
Invalid base virtual bit address for Q5DAYFILE.
Unable to find Q5DAYFILE.
The call is currently blocked waiting for access to
dayfile (caller will not see a response code 7 when
control is returned).
User not authorized to make the call.
Beta buffer length error. Either the first word
address of Beta plus length is greater than the
maximum user virtual address, or the Beta buffer is
too small for the message; length is O.

If len=#FFFF, Alpha(3) contains the length in character bytes
and the virtual bit address of the Beta portion of the message.
Otherwise, Beta is assumed to begin at Alpha(3), and len is the
length in character bytes of the Beta portion.

SEND MESSAGE TO DAYFILE (f=#0029) Message Format (Sheet 1 of 2)

5-151

Word
Alpha(l )

Field

Description

cf

Type of entry (used only when c=2):
1
2
3
4

USER;
SYST;
LABL;
DIAG;

job dayfile and terminal entries.
messages to and from the operator.
new system dayfile started.
customer engineering diagnostics.

Control field:

c

1

2

I

3

Send message to the system and job dayfile.
Send message to the system dayfile, for
privileged/authorized users only (such as operator and
privileged system tasks).
Send message to the job dayfile. The message does not
go into the system dayfile.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
message processing (r'O). If eea is 0, the error is considered
fatal.

Alpha(3 )

bl, ba

If the Beta portion of the message is not contiguous to the
Alpha portion (len=#FFFF), these parameters indicate the length
in character bytes and virtual bit address of the first full
word of the Beta portion.

Beta(l )
through

string of Maximum length of 4096 characters. If there is no flIF at the
ASCII data end·of the line, one will be added. Illegal characters #00
through #IE and #7F through #FF will be changed to blanks. The
combination #ODOA will be changed to #20IF.

( n)

Figure 5-38.

5-152

SEND MESSAGE TO DAYFILE (f=#0029) Message Format (Sheet 2 of 2)

60459420 F

RHF_CALL (f=#002A)

This message controls the RHF-related tables.

The RHF applications issue this message.

The Alpha format of the RHF_CALL system message is shown in figure 5-39.
The Beta format is shown in figure 5-40.

o

63

Alpha(1 )

r

Alpha(2)

c

len
16

16
unused

002A
16

eea
48

16
Alpha(3)

bl

ba
48

16

Word
Alpha(1)

Field
r

Description
Response code; returned by the operating system when this
message has been processed.

o
1
#214

No errors.
Error code was returned in Beta(n).
Beta buffer length error.

len

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3) and len is the length of the
Beta portion. All requests must provide at least 15 Beta words.

c

Function code:
1
2
3
4
5
6
7

8
9

IIA
liB
Ilc
tiD
#E

Figure 5-39.
60459420 H

16

Return Remote Host Facility table (T RHFT) entry.
Create new currently active table (T=CAT) entry for
servicer RHF application.
Set NETON flag in T CAT for servicer application.
Status currently running table (T_CRT) for
application name.
NETOFF and clear T CAT entry.
Create new entry in T_CAT for requested initiator
application.
Change maximum number of copies of an RHF
application.
Change default output LID.
Save information about an error condition.
Return currently active table (T CAT).
Return RHF mainframe table (T RHMFT).
Return application table (T_APPT).
Return T CRT table.
Enable/disable physical identifier/logical
identifier (PID/LID).

RHF CALL (f=#002A) (Alpha) Message Format (Sheet 1 of 2)
5-153

I

Word

Field

Description

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r~O). If this field is 0 when an
error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Alpha and Beta portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in words of
Beta and the virtual bit address of its first full word.

Figure 5-39.

RHF CALL (f=#002A) (Alpha) Message Format (Sheet 2 of 2)

Function code:
Return T RHFT entry:

c=1

o

63
aname

Beta( 1)

unused
56

Beta(2)

unused

user

40

24
Beta(3)

8

unused

status

48

16
level 5 parameters

Beta(4)

64
Beta(5)
level 6 connect
message
parameters

Beta(8)

Word

Field

Beta(l)

aname

Application name; used to search T RHFT.

Beta(2)

user

User number of the application that issues the call.

I

Figure 5-40.

5-154

Description

RHF CALL (f=#002A) (Beta) Message Format (Sheet 1 of 13)

60459420 H

Word

Field

Beta(3)

status

Description
Error message returned:
#11
#12
#13

No matching application connect waiting.
Invalid user for this application.
No entry in T_CRT for this application.

Beta(4)

level 5

Level 5 connection parameters as received from the LCN
parameters (returned by system).

Beta(5)
through
Beta(8)

level 6

Incoming application connection request as received from the LCN
parameters (returned by system).

Function code:
c=2

Create new T CAT entry for requested servicer RHF application:

o

63

Beta(1 )

aname

subopt

8

56
Beta(2)

user

unused
24

Beta(3)

40

status

unused
16

48

Beta(4)

level 5 parameters
64

Beta(5)

level 6 connect
message
parameters

••
•

7

Beta(8)
Beta(9)

unused

8

Beta(10)

n

8

minacn

12

maxacn

12

unused

24
ordinal

unused
56

Figure 5-40.

60459420 H

8

I

RHF CALL (f=#002A) (Beta) Message Format (Sheet 2 of 13)

5-155

Word

Field

Description

Beta(l)

aname

Application name.

subopt

Determines if LIDs should be validated for multiple file
transfers on a single operation.
0
1

Do not validate the LID.
Validate the LID.

Beta(2)

user

User number of the application that issues the call.

Beta(3)

status

Error message returned:
#21
#22
#23
#24
#25
#26
#27
#28

Local LID specified by level 6 parameters not found.
Local LID specified by level 6 parameters disabled.
Currently running limit exceeded for this
application.
Undefined RHF application name.
Invalid user number specified for this application.
Application not in currently running table (T CRT).
No empty entries in connected application table
(T_CAT) •
No empty slot in connected application table (T_CAT).

Beta(4)

level 5
Level 5 connection parameters as received from the LCN.
parameters

Beta(5)
through
Beta(8)

level 6
Incoming application connection request as received from the LCN
parameters (provided by caller).

Beta(9)

n

Number of outstanding connections for this application.

minacn

Minimum application connection number.

maxacn

Maximum application connection number.

ordinal

Index to entry in T CAT.

Beta(10)

I

Figure 5-40.

5-156

RHF CALL (f=#002A) (Beta) Message Format (Sheet 3 of 13)

60459420 H

Function code:
c=3

Set NETON flag in T_CAT for servicer application:
0

I

Beta( 1)

status

Word

Field

Beta(1)

status

unused

I

ordinal

81

Description
Error message returned:
#31
#32

ordinal
c=4

40

63

Invalid T CAT ordinal.
No entry for this ordinal.

Index to entry in T CAT.
length of T_CAT.

Valid range of the ordinal is 3 to the

Status CRT for application name:

o

63

Beta( 1)

aname

unused
56

Beta(2)

8

unused
64

Beta(3)

status

cur

maxall
16

8

unused

Word

Field

Beta( 1)

aname

Application name.

Beta(3)

status

Error message returned:

Description

o
1
2
#41

Currently running limit not exceeded.
Currently running limit equals the maximum allowed.
Currently running limit exceeds the maximum (occurs if
operator reduces maximum to a number lower than what
is currently running).
Application name not found.

maxall

Maximum number of currently running applications allowed
(returned by system).

cur

Number of applications currently running (returned by system).

Figure 5-40.

60459420 H

32

8

I

RHF CALL (f=#002A) (Beta) Message Format (Sheet 4 of 13)

5-157

Function code:
NETOFF and clear T CAT entry:

c=5

o
Bma(1)

l______________

1~_ _____~_a_t_us_______16

Word

Field

Beta(l)

status

ordinal
Figure 5-40.

5-158

~I_____o_r_d_in_a_'____81

u_n_u_se_d________________40

Description
Error message returned:
#51
#52

I

~

Invalid T CAT ordinal.
No entry for this ordinal.

Index to entry in T CAT.
RHF CALL (f=#002A) (Beta) Message Format (Sheet 5 of 13)

60459420 H

Function code:
c=6

Create new entry in T CAT for requested initiator application and
return initial connection request packet.

o

63
subopt

aname

Beta(1 )

56
unused

user

Beta(2) "

8

40

24
Beta(3)

remote pid

remote lid

status

24

24

16

level 5 parameters

Beta(4)

64
Beta(5)

•••

level 6 connect
message
parameters

Beta(8)
n

zip

Beta(9)

8
Beta(10)

unused

maxacn

minacn
8

12

12

24
ordinal

unused
56

Word

Field

Beta( 1)

aname

Application name.

subopt

Determines if LIDs should be validated for multiple file
transfers on a single connection.

Description

o
1

Do not validate the LID.
Validate the LID.

Beta(2)

user

User number of the application that issues the call.

Beta(3)

status

Error message returned:
#61
#62
#63
#64
#65
#66
#67
#68
#69
#6A
#6B
#6C

Figure 5-40.
60459420 H

8

LID not found.
LID disabled.
Currently running limit exceeded.
Undefined RHF application name.
Invalid user number.
No CRT entry for this application.
PID not found in Remote Host Facility mainframe table
(T RHFMT).
PID disabled.
No empty slot for T_CAT ordinal in the application
entry in T CRT.
No empty entry in connected application table (T_CAT).
RCD NAD is disabled.
SHD NAD is disabled.

RHF CALL (f=#002A) (Beta) Message Format (Sheet 6 of 13)
5-159

I

Word

Field

Beta(3)

remote
lid

Remote logical identifier.

remote
pid

Remote physical identifier (returned by system).

Description

Beta(4)

level 5
LevelS connection to be sent to the LCN (returned by system).
parameters

Beta(5)
through
Beta(8)

level 6
Data from the NAD on the host incoming application request
parameters (returned by system).

Beta(9)

zip

Zip code of the NAD that received this connection (returned by
system).

n

Number of outstanding connections for this connection
application to be sent to the remote host (returned by system).

minacn

Minimum application connection number (returned by system).

maxacn

Maximum application connection number (returned by system).

ordinal

Index to entry in T CAT (returned by system).

Beta(10)

Function code:
c=7

Change maximum number of copies of an RHF application:

o

63

Beta{1 )

aname

unused
56

Beta(2)

maxall

status

Word

Field

Beta( 1)

aname

unused

40

8

16

8

Description
Application name or ALL.
The option ALL is used to set all the application limits to the
same value on one command.

Beta(2)

status

Error returned:
#71
#72

maxall

I

Figure 5-40.
5-160

Application is not found.
Maximum specified is too large.

Maximum number of currently running applications allowed (0 to
8).
RHF CALL (f=#002A) (Beta) Message Format (Sheet 7 of 13)
60459420 H

Function code:
Change the default output LID:

c=8
0

63

Beta(1 )

status

unused

1
Word

Field

Beta(l)

status

lid

241

161

241

Description
Error code returned:

o
#81
#82

Successful completion, no error.
The specified LID is not defined.
The default output LID is already sent to the
specified value.

Logical identifier of a remote host (three ASCII alphanumeric
characters).

lid
Function code:
c=#A

Return T CAT table:

o

63

Beta(1 )

aname

unused

8

56
Beta(2)

status

count
16

pid
16

unused
24

8

Beta(3)

Beta (count +2)

Word

Description

Field

Beta(l)

aname

Application name. If aname is zero, then the entire connected
Application Table is returned. Otherwi.se, the application name
and pid are used as qualifiers for the entries returned.

Beta(2)

status

Error message returned:
#A1
#A2

Figure 5-40.
60459420 H

Named application not found.
Beta length is too small for qualified T CAT entries.

RHF CALL (f=#002A) (Beta) Message Format (Sheet 8 of 13)
5-160.1 •

Word

Field

Description

Beta(2)

count

Number of words returned [excluding Beta(1) and Beta(2)].

pid

Remote pid. If pid is zero, then aname is the only qualifier
for returned entries. Otherwise, the corrected remote pid and
application name are used as qualifiers for the entries returned.

Function code:
Save information about an error condition:

c=1I9

o

63

Beta(1 )

interval

status
16

Word

Field

Beta(l )

status

16

64

Description
Error information returned:

o
1191

No errors. The information from the Beta has been
saved by the virtual system.
The time interval since the last occurrence of the
ec/msgno error condition has not elapsed. The
information from the Beta was not saved.

interval

Time interval in minutes (binary). The time is compared with
the last occurrence of ec/msgno and if the difference is greater
than interval, the information in the Beta is saved.

ec

Error condition category:
1
2

RHF application internal error.
RHF application SIL error.

msgno

Error message number associated with the error condition.

time

Time stamp of the occurrence of the error condition. The format
used for the time stamp is the master clock time (refer to the
'MASTER=' parameter of Q5TIME).

Figure 5-40.

• 5-160.2

16

time
(yymmddhhmnsspppp)

Beta(2)

Beta(2)

msgno

ec
16

RHF CALL (f=1I002A) (Beta) Message Format (Sheet 9 of 13)

60459420 H

Function code:
c=#B

Return T RHMFT table:

o

~

Beta( 1)

lid

pid
24

Beta(2)

count

status

nad
24

unused

8

8

unused
16

16

32

Beta(3)

returned entries

Beta( cou nt+2)

If Beta(l) is 0, the entire RHF mainframe table is returned. Otherwise, the nonzero
field in Beta(l) is used to qualify the set of RHF mainframe table entries returned:
Word
Beta( 1)

Beta(2)

Field

Description

lid

Logical identifier.

pid

Physical identifier.

nad

Network access device number.

status

Error message returned:
#B1
#B2
#B3
#B4

count
Figure 5-40.

60459420 H

No matching
No matching
No matching
Beta length

LID
NAD
PID
too

found.
found.
found.
short for qualified T_RHMFT entries.

Number of words returned [excluding Beta(l) and Beta(2)].

I

RHF CALL (f=#002A) (Beta) Message Format (Sheet 10 of 13)

5-161

Function code:
c=#C

Return T APPT table:

o

~

Beta( 1)

aname

Beta(2)

status

56

count

pid

16

unused 8
unused

24

16

8

Beta(3)

•••

returned entries

7

Beta(count+2)

Word

Field

Beta(l)

aname

Application name. If aname is 0, the entire application table
is returned. Otherwise, the application and pid are used as
qualifiers for the entry returned.

Beta(2)

status

Error message returned:

Description

#Cl
#C2

I

count

Number of words returned [excluding Beta(l) and Beta(2)].

pid

If pid is 0, then pid is not used as a qualifier for returned
entries; otherwise, the 3-character pid names and application
names are used as qualifiers for the entry returned.

Figure 5-40.

5-162

Named application not found.
Beta length too short for full application table.

RHF CALL (f=#002A) (Beta) Message Format (Sheet 11 of 13)

60459420 H

Function code:
c=flD

Return T CRT table:

o

63

Beta(l )

aname

unused

56
Beta(2)

status

count

16

8

unused

16

32

Beta(3)

•••

returned entries

7

Beta(count+2)

Word

Field

Beta(l)

aname

Application name. If aname is 0, the entire T CRT table is
returned. Otherwise, the application is used as a qualifier for
the entry returned.

Beta(2)

status

Error message returned:

Description

tlDl
flD2

count
Figure 5-40.

60459420 H

Named application not found.
Beta length too short for qualified T CRT entries.

Number of words returned [excluding Beta(l) and Beta(2)].

I

RHF CALL (f=fl002A) (Beta) Message Format (Sheet 12 of 13)

5-163

Function code:
Enable/disable PID/LID:

c=IIE

o

63

Beta( 1)

lid

pid

nad

24
Beta(2)

status

24

8

e
unused ~

unused

16

Word
Beta(l)

48

Description

Field
lid

Logical identifier.

pid

Physical identifier.

nad

Network access device.

e/d

Enable/disable entry:

o
1
Beta(2)

status

Figure 5-40.

5-164

Disable entry.
Enable entry.

Error message returned:
liE 1
IIE2
IIE3
IIE4
IIE5
IIE6

I

7\..1

LID not found.
PID not found.
LID specified is for a PID that is currently disabled.
No LIDs for the specified PID.
LID, PID, or NAD already in requested state.
NAD was not found, or none of lid, pid, or nad were
specified.

RHF CALL (f=1I002A) (Beta) Message Format (Sheet 13 of 13)

60459420 H

ACCESS CONTROL (f=#0028)

This message provides program level control of access permissions for private, public, and
pool files. The format of this message is shown in figure 5-41.

o

63

Alpha(1 )

len

r

Alpha(2)

cf
16

16

c

8

n

002B

8

eea
16

Alpha(3)

16

48

bl

ba
16

48

Beta( 1)

name
64

ss

Beta(2)

acs

8

auser
8

48
poolname

Beta(3)
0

Word
AlphaO)

ouser

16

Response code.
otherwise:
1
2
3
4
11211
11214

len

Figure 5-41.

60459420 H

48

Description

Field
r

I

64

If no error occurs, the response code is 0;

Error code is returned in the ss field of Beta.
Illegal c or cf option.
Caller not privileged.
Caller is not site security administrator.
Number of requests is illegal (the n field is 0 or
greater than 16).
Beta buffer length error. Either the first word is
greater than the maximum user virtual address, or
the Beta buffer is too small for the number of
requests and length specified.

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message. Otherwise, Beta
is assumed to begin at Alpha(3), and len is the length in words
of the Beta portion. The value of len must be a multiple of 3.
ACCESS CONTROL (f=#002B) Message Format (Sheet 1 of 3)

5-165

I

Word
Beta(2)

Description

Field
cf

Ownership option:

o
1
2
c

Private file.
File resides in pool specified by poolname (caller
must be the pool boss).
Public file (caller must be privileged).

Control field:

o
1
2

Grant access to user.
Grant production status to the file and remove all
write permissions.
Remove production status from the file. Caller must
be the site security administrator user number.

n

Number of requests in this message; maximum is 16.

eea

Virtual bit address to receive control if an error occurs during
the processing of this message (r#O).

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual
bit address of the first word of the Beta portion.

Beta(l)

name

File name, in ASCII, of the file whose access permission is to
be changed.

Beta(2)

ss

Error response field.

Alpha(2)

o
1
2
3
4
5
6
7
8
9
#A
#B
#C
#D
#E
#F
acs

Normal completion.
File not found.
Pool not found.
Illegal access permission.
FILEI is full, no entry made.
Access control list is full, no entry made.
User not pool boss.
MODPFI error.
User number is invalid for specified file.
Caller is not the file owner.
User number is not defined.
Illegal access for tape.
Write access and there is no write ring.
Write permissions are not valid for a production file.
No user table entry is available (c=1 or 2).
Write permissions are not valid for a drop file.

File access permissions. This 8-bit field specifies the access
permissions to be granted. Five bits are currently defined:
Bit

Hex. Value

Description

10
8

Unused.
Give execute access.
Give modify access.

1-3

4
5
Figure 5-41.
•

5-166

The values are:

ACCESS CONTROL (f=#002B) Message Format (Sheet 2 of 3)
60459420 H

Word

Field
acs

Description
Bit

Hex. Value

Description

6
7
8

4
2
1

Give append access.
Give read access.
Give write access.

Users affected will have only those access permissions specified
by these bits (a replacement operation).
Beta(2)

auser

This parameter identifies whose access permission is to be
modified. Its definition is dependent on the cf (ownership)
option:
File

Beta(3)

Private local

auser must be binary 0. Only the owner's
access permissions can be changed.

Private
permanent

auser can have one of the following values:
•

The ASCII user number of the user
whose access permissions are to be
modified.

•

"GENRAL", which indicates that all
access permissions are to be modified.

•

"*", left-justified, blank-filled,
which indicates all access permissions
are to be modified.

•

Binary 0, which indicates that the
caller's (file owner's) access
permission is to be changed.

Public

auser is ignored. The general access
permissions are to be changed.

Pool

auser can have one of the following values:
•

"GENRAL", which indicates that all
pool members' access permissions are
to be modified.

•

"*", equivalent to "GENRAL".

•

Binary 0, which indicates that the
caller's (pool boss') access
permissions are to be changed.

pool name

Name of pool in which pool file resides.

ouser

File owner's ASCII user number (c=1 or 2).

Figure 5-41.
60459420 H

Description

I

ACCESS CONTROL (f=#002B) Message Format (Sheet 3 of 3)
5-167

TAPE MANAGEMENT (f=#002C)
This message associates a logical file name with a magnetic tape unit.
a local file.

The logical file is

Message option 1 allows the user to specify a list of VSNs to be associated with this local
tape file. The VSN list is maintained by the system until the tape file is returned. If a
user attempts to assign VSNs to an existing file, an error is returned but the file is not
returned.
Message option #2 checks user validations for interactive or batch tape access. If the user
is not allowed tape access, an error will be returned. Message option 2 allows the user to
specify density, conversion mode, tape format, noise size, and label type of the tape file.
The user can also specify request processing options. Message option 2 causes the system to
compare the VSN supplied by option 1 with the VSNs read from mounted tapes. If a match is
found, the system automatically assigns the tape unit to the job. If the tape is not
mounted, a request for assignment is displayed at the operator console and the job is
suspended until the requested VSN is mounted. If the tape is unlabeled, the operator enters
the VSN command that associates a VSN with a tape unit. The system can then assign the
tape. Refer to the VSOS 2 Operator's Guide for more information.
Message option 3 is a combination of the first two options.
file (tape or disk) with the same file name already exists.

An error is returned if a local

Message option 4 is like option 3, but it also blank labels a new tape. The label buffer
descriptor is used only for this option. Either the caller must be privileged or the
installation option IP TPVOL must be set to 1.
If the tape file is an ANSI standard labeled tape, the multifile set name is the same as the
logical file name. This logical file is given an HDRI label with a file sequence number
equal to 1. That means that, by default, it is the first file on the tape unless this HDR1
label is replaced by a subsequent LABEL call. The file attributes in Beta(8) through
Beta(A) are assigned to the logical file and the multifile set.
The format of the TAPE MANAGEMENT message is shown in figure 5-42.

5-168

6045~420

F

o

63

Alpha(1 )

len

r

c
16

16
Alpha(2)

002C
16

16
eea

unused

48

16
Alpha(3)

bl

ba
48

16

Beta(1 )

Ifn
64

Beta(2)

dvsn
64

Beta(3)

rpo

acs

ova

16
Beta(4)

fmtp

8

8

32

reel

vsn
16

48

Beta(5)

dom
64

Beta(6)

dlb
64

Beta(7)

ccb
64

Beta(8)

unused

sfo
12

Beta(9)

4

bt

rt
4

rmd

pc

4

8

rlmin

unused
8

24

rlmax
24

unused
24

16

c
Beta(A)

rpb

unused
16

0

n
14 I, v

mpru
32

I

Iproc

Figure 5-42.

60459420 E

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 1 of 9)

5-169

Word
Alpha(l)

Description

Field
r

Response code returned by VSOS when message processing is
complete:

o
1
2
3
4
5
6
7
8
9
#A

liB
Ilc
#D
liE
IIF
1110
#11
1112
1113
1114
1115
1116
1117
1118
1119

IlIA
tllB
Illc

I

IIID
#25
1126
1127
len

If this field is #FFFF, bl in Alpha(3) contains the length of
the remote Beta buffer. ba contains the location of the remote
Beta buffer. If this field is not #FFFF, Beta is assumed to
begin at Alpha(3), and len is the length, in words, of the Beta
portion.

c

Message options:
1
2
3
4

Figure 5-42.
5-170

No errors.
File already exists.
Cannot blank label a tape.
Illegal c option field.
Interactive tape access requested when the
installation parameter allowing interactive access
is not appropriately set.
Nonstandard labeling is not allowed.
Illegal original volume accessibility_
No room in the file index.
Standby job cannot issue the call.
Invalid logical file name.
Requested read unconditional flag and the
installation parameter allowing this option is not
set.
Conversion mode does not match the label.
Mismatch of density.
No VSN list (c=l, 3).
More than 255 VSNs (c=l, 3).
Illegal conversion mode.
Illegal label type.
Illegal error correction mode.
Illegal tape format.
Illegal density.
Illegal access permission.
Mismatch of ova.
Illegal VSN (c=l, 3).
Illegal equal number in the virtual bit address of
VSN list (c=l, 3).
Illegal label.
Number of tapes exceeds the number requested on the
resource card.
Volume is not available.
ioc is not available.
Read-only access (c=4).
User not allowed tape access.
Illegal file organization.
Illegal block type.
Illegal record type.

Assign V·SNs.
Request a tape file.
Assign VSNs and request a tape file.
Write VOLl labels. Request a tape as in option 3.
Beginning-of-volume labels (VOL1) in the label
buffer are verified and written.

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 2 of 9)
60459420 F

Word

Description

Field

Alpha(2)

eea

Error exit address.

Alpha(3)

bl, ba

If the Beta and Alpha portion are not contiguous (len=#FFFF),
these parameters indicate the length in full words and virtual
bit address of the first full word of the Beta portion.

Beta(l )

lfn

Logical file name. If the tape file is an ANSI standard labeled
tape, lfn is also the multifile set name.

Beta(2)

dvsn

Descriptor for the volume serial number list. The volume serial
number is left-justified, with blank fill. This list contains
the VSNs that are to be assigned to the file. This field is
ignored for option 2:
0-15

lvsn

16-63

avsn

Length of the VSN list in 64-bit words (0
Ivsn < 256).
Virtual bit address of the VSN list. The
list must begin on a word boundary:

0

63

1 u 41

Beta(3)

equal

rpo

vsn

121

10

equal

If 0, this VSN is to be
processed in sequential order.
If 1, the next n VSNs are
scanned and the first available
VSN is assigned. All equal
entries should have equal=n set.

vsn

Volume serial number. The VSN
is a left-adjusted alphanumeric
name, one to six letters or
digits in length. If VSN is
fewer than six characters, this
field must be blank-filled.
This field is ignored for option 1 :
Description

Unused.
try

Error retry parameter. This field applies
only when reading the tape:

o
1

Figure 5-42.

Unused.

Name

0-9

321

u

Request processing options.
Bit

60459420 E

<

Standard error recovery processing
takes place when a hardware read
error occurs.
Error inhibit; all hardware read
errors are ignored and processing
continues.

TAPE MANAGEMENT (f=tI002C) Message Format (Sheet 3 of 9)
5-171

{>lord
Beta(3)

Description

Field
rpo

Name

Bit

Description
Unused.

11

12

ru

Read unconditional processing option:

o
1

13

iu

Tape unload processing option (inhibit unload):

o

1

14
ring

o
1

Figure 5-42.

5-172

Ring is not needed. (Read permission only.)
Ring is needed. (Write or read/write
permission.)

Access permission for the logical tape file or multifile set. A
ring must be in the tape for acs=2 or 3. The tape must not have
a ring for acs=l. If the write enable status of the tape being
assigned does not correspond with what was requested by this
option, the job is suspended and the operator is sent a message
requesting the tape be mounted correctly:
1
2
3

ova

When the tape is released (refer to the
DESTROY FILE system message, option 0),
the tape is rewound to the load point
and unloaded from the drive.
When the tape is released (refer to the
DESTROY FILE message), the tape is
rewound to the load point, but it is
not unloaded from the drive.

Unused.

15

acs

The user is not allowed to read past
the end of information or the end of
tape.
The user is allowed to read past the
end of information or the end of tape.
This could cause the tape to go off the
reel.

Write permission only.
Read permission only.
Read/write permission.

Original volume accessibility character.
the volume accessibility character in the
nonblank. This field applies for message
4. Default is the installation parameter

This field must match
tape VOL1 label if
options c=2, 3, and
IP TPVA.

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 4 of 9)

60459420 E

Word
Beta(3)

Description

Field
fmtp

Format parameters.

This field is ignored when c=1:

Bit

Name

32-63

NS

Noise size in frames. This option applies
only for V- or NV-formatted tape files when
the tape is being read. Any PRU containing
fewer than the specified number of frames
is considered noise and is discarded by the
system. A noise size of 0 causes the
default noise size to be used. The default
size is O. The maximum NS is 31 decimal
frames. NS is ignored for I, SI, and LB
tape formats.

ECB

Hardware error correction mode for tapes
being written in GCR mode. This field is
set by the system from the EC field:

37

Description

o
1

38-44
45-47

Reserved.
DENS

Tape recording density. This parameter
applies only to writing data on an
unlabeled tape positioned at load point.
Data is written on a labeled tape at the
same density in which labels are written.
Data is read from a tape at the same
density at which it was written. The
default density is an installation-defined
option. The default for the released
system is 6250 cpi. The density selected
is returned in DENS by the system:

o
1
2
48-49

EC

1
2

Figure 5-42.
60459420 E

Default.
6250 cpi (GE).
1600 cpi (PE).

Hardware error correction mode for GCR
tapes. The mode selected is returned in
ECB:

o
50-51

Enabled; the system allows more
single-track errors to be written
than can be corrected when the tape
is read.
Disabled; a single-track error
while writing a 6250-cpi tape
results in standard error recovery
processing.

Installation default (IP_TPEC).
Enabled.
Disabled.

Unused.

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 5 of 9)
5-173

Word

Beta(3)

Description

Field

fmtp

Bit

Name

52-55

CM

Description
Conversion mode character set for the file
data. Specifies the character set that
data is converted from when it is read from
the tape. The default character set for a
labeled tape is the character set in which
the labels are written. For an unlabeled
tape, the default is an installation-defined
option. The default for the released
system is ASCII:

o
1
2

Default.
ASCII.
EBCDIC.

Observe that the tape file must be
requested in coded mode for the conversion
to take place. Refer to the conv field in
the CHANGE system message.
56-59

LT

Label tape. Specifies the type of labels,
if any, that are on the tape. The default
label type is the type of labels on the
tape being assigned. If LT=O, the label
type selected is returned:

o
1

2
3

60-63

TF

Tape format. (Refer to appendix G for more
detailed information.) The format of the
data on the tape. The default is an
installation-defined option. The TF
selected will be returned if TF=O:

o
1
2
3
4
C

Figure 5-42.

5-174

Default.
ANSI standard label.
Unlabeled.
Nonstandard; valid only if
privileged caller or installation
option IP_TPNSL=l.

Default.
Large block format (LB).
SCOPE internal (SI).
NOS internal (I).
Variable length block (V).
Variable length block with embedded
tape marks (NV).

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 6 of 9)

60459420 E

Word

Description

Field

Beta(4)

Beta(5)

reel

The position in the VSN list of the tape to be assigned. If
ree1=0, it defaults to 1 or the first VSN. This field applies
only when c=2 or 3.

vsn

Volume serial number. The system returns the VSN of the volume
assigned in option c=2 and 3.

dom

Descriptor for operator message. If nonzero, this descriptor
points to a message which is flashed on the a display after the
MOUNT message. This field applies only for options c=2 and 3:
0-15

10m

16-63

aom

Length of operator message text, in bytes (1
< 10m < 64).
Virtual bit address of the operator
message. This address must begin on a byte
boundary.

Beta(6)

d1b

Descriptor for the label buffer. This field is used for option
c=4 only. The label buffer must contain a VaLl and a HDR1 label.

Beta(7)

ccb

Change control bits:

o

63

cc c cc
cc
ss ss ss s~ sss

unused 1 1 98 76 54 32 1
5 1 11 11 1 11 1 11

unused

48
Bit
csll

Description
Maximum PRU size:

o
1
cs10

Tape mode:

o
1
cs9

o

1

60459420 E

Do not change the label processing.
Change the label processing to that
specified in the 1p field.

Records per block:

o

Figure 5-42.

Do not change the tape mode.
Change the tape mode to that specified in
the tm field.

Label processing:
1

cs8

Do not change the maximum PRU size.
Change the maximum PRU size to that
specified in the mpru field.

Do not change the records per block.
Change the records per block to that
specified in the rpb field.

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 7 of 9)
5-175

Word

I

Beta(7 )

Description

Field
ccb

Description

Bit
cs7

Record mark:

o
1
cs6

Padding character:

o

cs5

1

1

sfo

5-176

Do not change the file organization.
Change the file organization to that
specified in the sfo field.

File organization:

o
Figure 5-42.

Do not change the blocking type.
Change the blocking type to that specified
in the bt field.

File organization:

o
Beta(8)

Do not change the minimum record length.
Change the minimum record length to that
specified in the rIm in field.

Blocking type:

o
cs1

Do not change the maximum record length.
Change the maximum record length to that
specified in the rlmax field.

Minimum record length:

o

cs2

Do not change the record type.
Change the record type to that specified in
the rt field.

Maximum record length:

o
cs3

Do not change the padding character.
Change the padding character to that
specified in the pc field.

Record type:

o
cs4

Do not change the record mark.
Change the record mark to that specified in
the rmd field.

Sequential.

TAPE MANAGEMENT (f=#002C) Message Format (Sheet 8 of 9)

60459420 F

Word
Beta(8)

Field
bt

Description
Blocking type:

o
1
2
4
rt

Record type:

o
1
2
4
5

7

Beta(9)

Beta(A)

Control word (W).
ANSI fixed length (F).
Record mark (R).
Lower CYBER control word (L).
System block (B).
Undefined (U).

rmd

Record mark; 8-bit ASCII character (any character is valid).

pc

Padding character; 8-bit ASCII character (any character is
valid).

rlmin

Minimum record length; 24-bit length in number of bytes.

rlmax

Maximum record length; 24-bit maximum length in number of bytes.

rpb

Records per block.

lproc

Label processing options.

conv

Data conversion option:

o
1
mpru
Figure 5-42.

60459420 E

SIL assumes the file was created before SIL was added
to the system; therefore t it enters default values in
the SIL fields of the file index entry.
Internal blocking (I).
C-type blocking.
Exact record count blocking (K).

There is no data conversion.
Convert data.

Maximum length of the PRU.
TAPE MANAGEMENT (f=#002C) Message Format (Sheet 9 of 9)

5-177

TAPE SWITCH VOLUME (f=#002D)

This virtual system message causes the system to perform end-of-tape processing on the
current volume and position to the beginning of volume on the next reel. The user is
blocked until completion of the call. The logical tape file must be opened. This call will
not position past a beginning-of-file or end-of-file label group.
The TAPE SWITCH VOLUME message enables the user to perform his own end-of-tape processing.
When an I/O operation encounters end-of-tape, control is returned to the user if the user
selected the end-of-tape processing option on the OPEN FILE message. An ioer=40 is returned
in the TAPE FUNCTION message that encountered end of tape. An ioer=31 is returned in any
other TAPE FUNCTION message outstanding at the time end of tape was encountered. The TAPE
SWITCH VOLUME message automatically clears any existing ioer condition. If the user wishes
to perform any tape function call before the TAPE SWITCH VOLUME system message, the user
must issue the TAPE FUNCTION message, system function #30, to clear the ioer.
At the time the TAPE SWITCH VOLUME option is issued, the system performs end-of-tape
processing on the current volume. If the last operation was a write, the system performs
the following:
Tape Format

Unlabeled

V

Writes two tape marks

Writes a tape mark, an EOV1, and two tape marks.
If the user end-of-volume label buffer was
supplied, the system may also write EOV2 through
EOV9 and UTL labels.

Writes a tape mark, an
EOV1 label, and two
tape marks

Same as for labeled V tapes.

I,SI,LB

Labeled

If the last operation was a read, the tape is labeled, a tape mark immediately follows, the
user is supplied an end-of-volume label buffer, and all labels from this tape mark
(beginning with EOVl) through the next tape mark are returned (as space permits).
The current tape is unloaded and the system requests the operator to mount the next VSN.
After the tape has been assigned and if it is labeled, the system reads or. writes
beginning-of-volume labels, depending on whether the last operation was a read or write,
respectively. The user may supply a beginning-of-volume label buffer. If the label is
being read, any nonzero fields in the user HDR1 label supplied at LABEL time are compared
with the HDR1 field on the tape. An error is returned if any nonzero field does not match.
Then all labels from VOL1 through the first tape mark are returned to the user label buffer,
as space permits. Verification of additional labels is the user's responsibility. If the
label is being written, the system uses the previous VOL1 and HDR1 labels. The current VSN
is placed in VOL1 and the chapter number is incremented by one in HDR1. UVL, HDR2 through
HDR9, and UHL labels are written if present in the user buffer.
The format of the TAPE SWITCH VOLUME message is shown in figure 5-43.

5-178

60459420 E

o

63

Alpha(1 )

len

r
16

Alpha(2)

e
16

002D
16

16

eea

unused
16

Alpha(3)

48

bl

ba
16

Beta(1 )

ioe

48

unused

ioer

8

40

Beta(2)

16

dtt
64

Beta(3)

dvsn
64

Beta(4)

duelb
64

Beta(5)

delb
64

Beta(6)

dublb
64

Beta(7)

dblb
64

Word

Description

Field

Alpha(1 )

r

Response code returned by VSOS when message processing is
complete:

o
1
2
3
4
5
6
7
8

Figure 5-43.

60459420 E

No errors.
Illegal I/O connector.
Tapes table descriptor is too short.
Tape input/output error is returned.
Label buffers are too short.
Illegal labels.
Not at end-of-volume.
Volume not available.
Label is unexpired and IP TPEXP=O.

TAPE SWITCH VOLUME (f=#002D) Message Format (Sheet 1 of 3)

5-179

Field

Word
Alpha(l)

Description

len

If this field is #FFFF, bl in Alpha(3) contains the length of
the remote Beta buffer. ba contains the location of the remote
Beta buffer. If this field is not #FFFF, Beta is assumed to
begin at Alpha(3), and len is the length, in words, of the Beta
portion.

c

Message options:

a
1

If the last function was a write, switch the volume.
If the last function was not a write, switch the
volume if the tape is positioned at the trailer labels.
If at least one write operation was issued for this
file, write trailer labels at the current tape
position and switch the volume. Be aware that data
may be lost. If there was no write operation for this
file, switch the volume if the tape is positioned at
the trailer labels.

Alpha(2)

eea

Error exit address.

Alpha(3)

bl,ba

If the Beta and Alpha portion are not contiguous (len=#FFFF),
these parameters indicate the length in full words and virtual
bit address of the first full word of the Beta portion.

Beta(l)

ioc

Input/output connector for this tape file.

ioer

Input/output error number. Refer to appendix B for more a
detailed description of the ioer codes.

dtt

Tapes table descriptor.
returned:

Beta(2)

Beta(3)

Beta(4)

dvsn

duelb

Figure 5-43.

0-15

Itt

16-63

att

If nonzero, the tapes table is not
Word length of the tapes table buffer.
This buffer must be 12 words long.
Bit address of the tapes table buffer.
The buffer must begin on a word boundary.

Descriptor for the VSN list.
returned by the system:
0-15

lvsn

16-63

avsn

If nonzero, the VSN list is

Length of the VSN list, in words (0 <
lvsn < 256).
Virtual bit address of the VSN list.
This field must be on a word boundary.

Descriptor for user end-of-volume labels. If duelb is nonzero,
then user end-of-volume labels are supplied by the user. This
applies only when writing labels.
TAPE SWITCH VOLUME (f=#002D) Message Format (Sheet 2 of 3)

.

5-180

60459420 E

I
\

Word

Field

Beta(5)

delb

Beta(6)

Beta(7 )

dublb

dblb

Figure 5-43.

60459420 E

Description
End-of-volume label buffer descriptor. If delb is nonzero, the
system returns all the end-of-volume labels here:
0-15

lelb

16-63

aelb

Length of end-of-volume label buffer, in
words.
Bit address of the end-of-volume label
buffer. The buffer must begin on a word
boundary.

Descriptor for user beginning-of-volume labels. If dublb is
nonzero, the user beginning-of-volume labels are supplied by the
user. This field applies only when writing labels:
0-15

lublb

16-63

aublb

Length of user beginning-of-volume label
buffer, in words.
Virtual bit address of user
beginning-of-volume label buffer. The
buffer must begin on a word boundary.

Beginning-of-volume label buffer descriptor. If dblb is
nonzero, the system returns all of the beginning-of-volume
labels here:
0-15

lublb

16-63

aublb

Length of beginning-of-volume label
buffer, in words.
Bit address of beginning-of-volume label
buffer. The buffer must begin on a word
boundary.

TAPE SWITCH VOLUME (f=#002D) Message Format (Sheet 3 of 3)

5-181

LABEL (f=#002E)

This message is issued to request a logical file which belongs to an existing multifile
set. The logical file is a local file. One or more LABEL calls can be issued for the same
multifile set. One or more LABEL calls can be issued for the same logical file within the
multifile set as long as the logical file is closed: that is, the LABEL message cannot be
issued for an open file. Label processing is performed at OPEN time.
The file attributes of the multifile set are assigned to the logical file.
control bits define which attributes are superceded by the LABEL message.

The change

The format of the LABEL message is shown in figure 5-44.

o

63

Alpha(1 )

r

len

unused

16
Alpha(2)

16

002E
16

unused

16

eea
16

Alpha(3)

48

bl

ba
16

48

Beta(1 )

Ifn
64

Beta(2)

mfn
64

Beta(3)

ofa

acs

unused
8

8
Beta(4)

48

lib

alb
16

48

Beta(5)

ccb
64

Beta(6)

unused
12

Beta(7)

sfo
4

rt

bt
4

rmd
4

pc
8

rlmin

24

rlmax
24

Beta (8)

unused
8

unused

rpb
16

unused
24

16

mpru
14

I

32

Lconv
---I po
r c

Figure 5-44.

5-182

LABEL (f=#002E) Message Format (Sheet 1 of 5)

60459420 E

Word
Alpha(1)

Description

Field
r

Response code returned by VSOS when message processing is
complete:

o
1
2

4
5

6
7
8
9

#B
#e
#D
#E

No errors.
Multifile set does not exist.
Logical file already exists and it does not belong to
this multifile set.
Label buffer out of bounds.
lfn is open; ioc exists.
Illegal labels.
Illegal access.
Illegal original file accessibility character.
Duplicate FSN specified.
Tape requested is unlabeled or nonstandard.
No unit assigned.
No room in FILEI for entry.
Illegal logical file name.

len

If this field is #FFFF, bl in Alpha(3) contains the length of
the remote Beta buffer. ba contains the location of the remote
Beta buffer. If this field is not #FFFF, Beta is assumed to
begin at Alpha(3), and len is the length, in words, of the Beta
portion.

Alpha(2)

eea

Error exit address.

Alpha(3)

bl, ba

If the Beta and Alpha portion are not contiguous (len=#FFFF),
these parameters indicate the length in full words and virtual
bit address of the first full word of the Beta portion.

Beta(1)

lfn

Logical file name. If the tape file is an ANSI standard labeled
tape, lfn is also the multifile set name.

Beta(2)

mfn

Multifile set name.
logical file name.

Beta(3)

ofa

Original file accessibility character. This field must match
the file accessibility character in the tape HDR1 label. This
applies only when labels are being written. The default is the
installation parameter IP_TPFA.

acs

Access permissions for the logical file. acs must be a subset
of the access permissions supplied at the time of the request:
1
2
3

Beta(4)

Write permission only.
Read permission only.
Read/write permission.

llb

Length of the label buffer, in words.

alb

Virtual bit address of the label buffer.
on a word boundary.

Figure 5-44.

60459420 G

If this field is 0, mfn is the same as the

The buffer must begin

LABEL (f=#002E) Message Format (Sheet 2 of 5)

5-183

I

Word

Field

Beta(5)

ccb

Description
Change control bits:

o

63

un- f'~ I~f s~ s~ sss
used ~1" 198 11~ 154 321

unused

5 11 11 11 11 111

Bit
csll

Description
Maximum PRU size:

o
1
cs10

1

1

1

o

1

1

5-184

Do not change the padding character.
Change the padding character to that
specified in the pc field.

Record type:

o

Figure 5-44.

Do not change the record mark.
Change the record mark to that specified in
the rmd field.

Padding character:

o
cs5

Do not change the records per block.
Change the records per block to that
specified in the rpb field.

Record mark:
1

cs6

Do not change the label processing.
Change the label processing to that
specified in the lp field.

Records per block:

o

cs7

Do not change the tape mode.
Change the tape mode to that specified in
the tm field.

Label processing:

o

cs8

Do not change the maximum PRU size.
Change the maximum PRU size to that
specified in the mpru field.

Tape mode:

o
cs9

48

Do not change the record type.
Change the record type to that specified in
the rt field.

LABEL (f=#002E) Message Format (Sheet 3 of 5)
60459420 E

Word
Beta(5)

Field

Description

ccb

Bit
cs4

Description
Maximum record length:
0
1

cs3

Minimum record length:
0
1

cs2

1

1

sfo

1

2
4

SIL assumes the file was created before SIL was
added to the system; therefore, it enters default
values in the SIL fields of the file index entry.
Internal blocking (I).
C type blocking.
Exact record count blocking (K).

Record type:
0
1

2
4
5
7

Control word (W).
ANSI fixed length (F).
Record mark (R).
Lower CYBER control word (L).
System block (B).
Undefined (U).

rmd

Record mark; 8-bit ASCII character (any character is valid).

pc

Padding character; 8-bit ASCII character (any character is
valid).

Figure 5-44.

60459420 E

Sequential.

Blocking type:
0

rt

Do not change the file organization.
Change the file organization to that
specified in the sfo field.

File organization:
0

bt

Do not change the blocking type.
Change the blocking type to that specified
in the bt field.

File organization:
0

Beta(6)

Do not change the minimum record length.
Change the minimum record length to that
specified in the rlmin field.

Blocking type:
0

csl

Do not change the maximum record length.
Change the maximum record length to that
specified in the rlmax field.

LABEL (f=#002E) Message Format (Sheet 4 of 5)

5-185

Word

Field

Beta(7)

rlmin

Minimum record length; 24-bit length in number of bytes.

rlmax

Maximum record length; 24-bit maximum length in number of bytes.

rpb

Records per block.

lproc

Label processing options:

Beta(8)

Description

o
1
conv

Data conversion option:

o
1
mpru

There is no data conversion.
Convert data.

Maximum length of the PRU.

Figure 5-44.

5-186

Read and verify the existing labels.
Write new labels.

LABEL (f=#002E) Message Format (Sheet 5 of 5)

60459420 E

USER REPRIEVE (f=#002F)

The USER REPRIEVE system message allows the user to have control returned to a specified
address for processing during termination processing.
The aaf field is set when an application accounting routine makes this system message call.
After the aaf flag is set, enable or disable of user reprieve is not allowed until an
accounting routine with the ap.propriate password disables user reprieve.
The format of the USER REPRIEVE system message is shown in figure 5-45.

o

63

Alpha(1 )

r

len
16

Alpha(2)

aaf

unused

8
Alpha(3)

opt
16

002F
16

eea

8

bl

48
ba

16

Beta(1 )

aapw

48

rpa
16

Beta(2)

dbl

48
dba

16

Figure 5-45.

60459420 E

16

48

USER REPRIEVE (f=#002F) Message Format (Sheet 1 of 2)

5-187

Word
Alpha(1)

Description

Field
r

Response code:

o
1
2
4
#214
len

Length of the Beta. If len=#FFFF, then Alpha(3) contains the
length and starting address of the Beta; otherwise, Beta(l) is
assumed to start in Alpha(3).

opt

Option code:

o
1
Alpha(2)

aaf

1

Beta(l)

Beta(2)

Off.
On.

eea

Error exit address.

bl

Beta length.

ba

Beta address.

aapw

Accounting password.

rpa

Reprieve address.

dbl

Data base length.

dba

Reprieve data base address.

Figure 5-45.

5-188

Enable user reprieve.
Disable user reprieve.

Application accounting flag:

o

Alpha(3)

No error.
Routine or data base address error.
Routine data base len~th error.
Reprieve enable or disable not allowed.
Beta buffer length error.

USER REPRIEVE (f=#002F) Message Format (Sheet 2 of 2)

60459420 E

EXECUTE IQM REQUEST (f=#0030)

The EXECUTE IQM REQUEST system message processes IQM requests. Only privileged system tasks
can issue this message. Only the IQM utility can issue c option 1.
The format of the EXECUTE IQM REQUEST system message is shown in figure 5-46.

o

63

Alpha(1 )

r

Alpha(2)

n

Alpha(3)

bl

Word

len

16

r

48

16

ba

48

Description
Response code returned by VSOS when message processing is
complete:
1
2
3
4

IH2
IH3
1114
1115

IH6
IH7
IH8
#19

IHA
IHB
IHc
#211
11214

Figure 5-46.

60459420 F

16

16

o

len

161

0030

eea

Field

Alpha( 1)

161

c

No errors.
Bad parameter; ss code contains the description.
User number of message issuer is not that of the
IQM.
Job file was not added to the input queue because
the queue is full.
Invalid message option (c field value).
Bad caller.
Input queue is full; resubmit job.
Bad c option.
Batch input file is not found.
Batch input file is open.
Batch user is a privileged system task.
IQM does not exist; consult an analyst.
Error was made in giving batch input file to IQM;
consult an analyst.
Batch input file is of wrong type (tape of
connected file).
Device on which batch input file resides is
logically down.
Caller does not own batch input; cannot give it to
IQM.
Either 0 or too many Beta entries were specified.
Beta buffer length error. Either the first word
address of Beta plus its length is greater than the
maximum virtual user address, or the Beta buffer is
too small for the number of requests and length
specified.

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3) and len is the length in words
of the Beta portion.
EXECUTE IQM REQUEST (f=#0030) Message Format (Sheet 1 of 3)

5-189

Word

Field

Alpha( 1)

Description

c

Message options:
1
2

Alpha(2)

Alpha(3)

Remove an entry from the input queue.
Add an entry to the 1nput queue.

n

Number of input queue entries to remove (also number of Beta
entries; c=1 only).

eea

Error exit address; virtual bit address to receive control if an
error occurs during message processing (r~O). If this field is
o when an error occurs, the task is aborted.

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length in words of
Beta and the virtual bit address of its first full word.

Message option:
c=1

Remove an entry from the input queue and reorder the subpriorities of
the remaining entries as needed:

o

63

Beta(1 )

I

iqent

Word

Field

Beta( 1)

iqent

Description
Job descriptor number of entry to be deleted (0 through 2047).

Message option:
c=2

Add an entry to the input queue. This option changes file ownership
from the caller to IQM. After the input queue entry is made, the job
is scheduled as appropriate:

o

63
jn

Beta(1 )

64
jcat

Beta(2)

64
un

Beta(3)

I

uprod-.

64

I

Beta(4)

8

8
Beta(5)

pr

nt

ss

16
Beta(6)

23

Iplim

wslim

jdn

unused
8 1
sl

12

16
tl
32

4
account

64

Figure 5-46.
5-190

EXECUTE IQM REQUEST (f=#0030) Message Format (Sheet 2 of 3)
60459420 H

Word

Field

Description

Beta(l)

jn

Batch input file name (eight ASCII characters, blank-filled).
IQM will modify jn, if necessary, to cause the batch name for
this job to be unique on the system. The modified file name is
returned in this field. If the call fails, jn is not modified.

Beta(2)

jcat

Job category (eight ASCII characters, blank-filled or 0).

Beta(3)

un

Binary user number of owner of the job.

Beta(4)

ss

Error response code:

o
1

2

3
4
5
6
7
8
9
15

Beta(5)

Beta(6)

I

nt

Number of tape drives required by the job.

pr

Priority (1 through 15).

uprod

o is

jdn

Job descriptor number assigned to the job.
through 2047.

wslim

Working set limit. If 0, the job will be assigned a working set
limit equal to the maximum for the job category.

lplim

Large page limit.

sl

Security level (1 through 8).

tl

Time limit in system seconds.

account

Account identifier under which the job will run.

Figure 5-46.

60459420 H

No error.
Job category does not exist.
Maximum working set limit is exceeded.
Maximum large page limit is exceeded.
Invalid time limit.
Invalid priority.
User is locked out of specified job category.
Invalid user number.
Number of jobs per user exceeded.
No JDNs available to assign to input file.
Large page limit exceeded.

not a production user.

1 is a production user.
Values for jdn are 1

EXECUTE IQM REQUEST (f=#0030) Message Format (Sheet 3 of 3)

5-191

I

SEND MESSAGE TO JOB SESSION (f=#0033)

This message allows the user to send a message to a batch job's dayfile or to an interactive
user terminal. Only privileged tasks are allowed to use this system call. VSOS uses the
job descriptor number, the user number, and the job name supplied in the Beta to locate the
proper job session. If found, the message is queued up for delivery to the job session. If
the job session is not found or other errors are encountered, an error response is returned
in the Alpha.
The format of the SEND MESSAGE TO JOB SESSION is shown in figure 5-47.

o
len

r

Alpha (1)

16
Alpha (2)

0033

unused
16

16

unused

eea
16

48

bl

Alpha (3)

ba
48

16

Beta (1 )

ss

jdn

msglen
16

32

16

Beta (2)

usernum
64

Beta (3)

job name
64

Beta (4)

message 1
64

Beta (n)

message n
64

Word
Alpha( 1)

Field
r

Description
Response code; returned by the operating system when the message
has been processed. If no error occurs, the error code is 0;
otherwise:
1
2
3
4

Figure 5-47.
5-192

Length of Beta in character bytes is either 0 or
greater than 4120.
Caller is not a privileged task.
Job session is not active.
System error (ss code in Bet~ is error code returned
by system routine TOCON).

SEND MESSAGE TO JOB SESSION (f=#0033) Message Format (Sheet 1 of 2)
60459420 E

Word

Field

Description

Alpha(l)

len

If len=#FFFF, Alpha(3) contains the length and virtual bit
address of the message; otherwise, Beta is assumed to begin at
Alpha(3), and len is the length of the Beta portion.

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
message processing (if r is different from 0). If this field is
zero when the error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Alpha and Beta portions are not contiguous (len=#FFFF),
these parameters indicate the length and virtual bit address of
the first full word of the Beta portion. There is only one Beta
per Alpha.

Beta(l)

ss

Error return code (integer) for r=4.
1
2
3
4
5
6
7
8-13
14
15

Message length is greater than 4096 characters.
Bad function code in Beta.
Dayfile is full.
Dayfile is not implicit.
Invalid base virtual address for dayfile.
Unable to find dayfile.
Problem program blocked while waiting for dayfile.
Unused.
No terminal ID number for interactive user.
Either teletype has been logged out or this message
would overflow the MFline buffer.

msglen

Message length in characters (integer)

jdn

Job descriptor number (1 through 2047).

Beta(2)

usernum

User number, in ASCII, left-justified, blank-filled.

Beta(3)

jobname

Job name, in ASCII, left-justified, blank-filled.

Beta(4)
through
Beta(n)

message

Message text, in ASCII.

Figure 5-47.

60459420 H

I

SEND MESSAGE TO JOB SESSION (f=#0033) Message Format (Sheet 2 of 2)

5-193

RETURN FROM INTERRUPT (f=#0051)

For control to return to the calling routine, an interrupt routine must issue this message
when it has finished performing its tasks for either an input/output or program message
interrupt. The message consists of an Alpha portion only, which is shown in figure 5-48.
Because the interrupt routine (level 1) cannot be interrupted by any other software
interrupts, it will run until it issues a RETURN FROM INTERRUPT message. The current
interrupt is then released and its invisible package is lost. The level-O invisible package
becomes current, and its register file image is restored by the operating system. All
information from the level-1 register file is lost.
An option in this message allows level 1 to become the new level 0 after all additional
interrupts stacked for this and any other level-1 routines have been processed. In this
case, the register file image for level 0 is lost at the time level 1 becomes level O. The
new level 0 can have its own level-1 interrupt routines.
When interrupts occur and the interrupt routine is already in control, the operating system
stacks the interrupt information in the interrupt address stack in the program's minus
page. When the interrupt routine issues a RETURN FROM INTERRUPT message, level 0 is not
restarted. Instead, the next interrupt on the stack is taken. This process is repeated
until the stack is empty.

o

63
len

r

Alpha(1 )

16

16

48

16
Alpha(3)

Word
AlphaO)

bl
I
L ____ -.1~

ba

I
-----------------~
Description

Field
r

Response code; returned by the operating system when this
message has been processed. If no error occurs, the response
code is 0; otherwise:

2
11214

len

Figure 5-48.

5-1Y4

16

eea

n

Alpha(2)

0051

unused
16

Response code was issued by routine other than
interrupt routine.
Illegal Beta address (only for n=4).
Beta buffer length error (only for n=4).

If this field is #FFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3), and len is the length in words
of the Beta portion (two words). Used only if n=4.
RETURN FROM INTERRUPT (f=110051) Message Format (Sheet 1 of 2)

6045Y420 F

Description

Field

Word
Alpha(2)

Message options. Release the current interrupt and take the
next interrupt in the stack, if one exists. When all interrupts
outstanding have been processed, or if no other interrupts
existed, do one of the following:

n

o
1

2
3

4

Alpha(3)

Return control to the interrupted program at the point
of interruption.
Return control to the point following this particular
RETURN FROM INTERRUPT message; that is, make the
interrupt routine that issued this message the new
level-O routine.
Return control to the interrupted program at the
address in register 4.
Abnormal termination control interrupt only. Abort at
the point of original interrupt. Normal user dumps
and trace-back information are produced for the
original fatal error.
Return control to the interrupted program at the
address in Beta(l) using data base information in
Beta(2).

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r#O). If this field is 0 when an
error occurs, the error is considered fatal.

bl, ba

If Beta and Alpha portions of the message are not contiguous
(len=#FFFF), these parameters indicate the length and virtual
bit address of the first full word of the Beta portion.

Message option:
For n=4 only:

o
Beta.(1 )

63
unused

vba

48

16
dbl

Beta(2)

dba
16

48

Word

Field

Beta(1 )

vba

Virtual bit address in the interrupted program to which control
is returned.

Beta(2)

dbl

Length of data base to be reloaded.

dba

Address of data base to be reloaded for return to interrupted
program.

Figure 5-48.

60459420 F

Description

I

RETURN FROM INTERRUPT (f=#UU51) Message Format (Sheet 2 of 2)

5-1~5

SHRUB ALTER OR RESTORE (f=#0053)
A user program can issue this message for altering or restoring the contents of the system
shared library file. The operating system keeps a record of alterations for each user
program. Alteration for shared library in one user program does not affect the other user
program. If a user program does not restore the shared library before it terminates, the
operating system automatically restores the shared library file when this user program
terminates.
The format of this message is shown in figure 5-49.

o

63

Alpha (1)

len

r

c

16

16

unused

Alpha (2)

0053

16
eea

48

16
Alpha (3)

ba

bl

48

16

o
Beta (1)

16

63

vadd

unused

55

8

48

8

Beta (2)

value

64

Word
Alpha(l )

Field
r

Description
Response code; returned by the operating system when this
message has been processed. If no error occurs, the response is
0; otherwise:
1
11214

ss contains error code.
Beta buffer error; either the first word address of
Beta plus length is greater than the maximum user
virtual address or the length of the Beta buffer is
greater than 2.

len

If this field is IIFFFF, Alpha(3) contains the length and virtual
bit address of the Beta portion of the message; otherwise, Beta
is assumed to begin at Alpha(3) and len is the length in words
of the Beta portion; len must be at least one word long.

c

Message option:
Place v~lue at vadd; if location is currently
altered, it will be altered again.
2

I

Figure 5-49.
5-196

Restore original value at vadd.

SHRLIB ALTER OR RESTORE (f=1I0053) Message Format (Sheet 1 of 2)
60459420 F

Word

Field

Description

Alpha(2)

eea

Virtual bit address to receive control if an error occurs during
processing of this message (r not equal to 0). If this field is
o when an error occurs, the error is considered fatal.

Alpha(3)

bl, ba

If the Beta and Alpha portions of the message are not contiguous
(len=#FFFF), the parameter indicates the length and virtual bit
address of the first full word of the Beta portion.

Beta(l)

ss

Return error code:

o
1
2

3
4
5
6
7

Beta(2)

vadd

Bit address on a word boundary of the location that is to be
altered/restored.

value

For C=I, this is the 64-bit value to be placed at vadd.
For C=2, this is not used.

Figure 5-49.

60459420 F

No error.
vadd is not in SHRLIB range.
There is no room in the SHRALT tabie for another
change to SHRLIB; C must equal 1. Each DB is allowed
a maximum of 20 changes with a total of 127 for all
DBs.
The page containing vadd is not in memory; the shared
library working set needs to be increased.
vadd is not on a word boundary.
Location being restored was never changed; C must
equal 2.
No value specified, len was 1; C must equal 1.
Illegal option; C must equal 1 or 2.

SHRLIB ALTER OR RESTORE (f=#0053) Message Format (Sheet 2 of 2)

5-197

•

TAPE FUNCTION (f=#F406)

The TAPE FUNCTION message is processed by the resident system. It is issued by user mode
programs to initiate tape I/O and positioning function. The tape file must be open. This
message does not read or position past a beginning-of-file or end-of-file label group. If a
positioning function causes the tape to be positioned backwards and the last operation was a
write, the system performs end-of-file processing. For V unlabeled tapes, it writes two
tape marks. For I, SI, LB labeled or unlabeled tapes and V labeled tapes, it writes one
tape mark and an EOFI label followed by two tape marks.
This message allows the user to continue processing or give up the CPU until I/O
completion. The resident give-up call (f=#FF02) is issued to check for I/O completion.
The maximum number of TAPE FUNCTION messages outstanding at anyone time for a tape file is
defined by the installation parameter IP TPNOR. If a program issues one more TAPE FUNCTION
message for a tape file than IP_TPNOR, the caller is blocked until one of the caller's
previous TAPE FUNCTION messages completes.
The TAPE FUNCTION system message can be broken down into four different chapters. The first
chapter consists of user-supplied information: I/O connector number and function code. For
I/O function (sfnc < #10), the user must set the buffer address, buffer length, and the
length of the logical record unit array. The buffer cannot span more than 48 small or large
pages. Depending on the word offset (wo=O/l), the buffer address begins on any
half/full-word boundary. Each logical record uni~ begins on the next 32/64-bit boundary in
case the preceding LRU is not a multiple of 32/64 bits. For some of the positioning
functions, a skip count must be supplied.
For the read function, the buffer length must be at least large enough to hold the maximum
PRU size supplied at open time. The system will not start tape motion to read the next PRU
unless there is at least room in the buffer to hold mpru. Therefore, it is recommended that
the user add mpru to the read buffer length. For the read skip function, mpru is ignored;
however, the user can specify a maximum LRU that is to be returned. The buffer does not
have to be as long as mlru. If the system has returned at least one LRU to the buffer, the
system will not start tape motion to read the next LRU unless there is at least room in the
buffer to hold mlru. If mlru=O, it is considered infinite and mlru=O results in single LRUs.
The second chapter is filled in from system tables by the system. It consists of
information supplied by the user at request, label, or open time: maximum PRU size and
format parameters. It also contains the caller user number and job name.

I

I

The third chapter consists of information returned by the system at the competion of the
call or a tape I/O error. For I/O functions, the number of processed LRUs is returned. For
some of the positioning functions, a skip count is returned. The updated tapes table,
including block IDs and PRU counts, is also returned at the completion of the request. This
information can be saved.
The last chapter holds the LRU array. It is only used for I/O functions (sfnc < Iil0). Each
entry holds the logical record size, tape, and record mark information. It is set by the
caller for a write and returned by the system for a read.
The format of the TAPE FUNCTION message is shown in figure 5-50.

5-1Y8

60459420 F

o
Alpha(1)

63

al

etrl

F406

reserved

16

Alpha(2)

reserved
64

Alpha(3)

len

reserved
48

Beta(l )

reserved

al

ioe

Beta(2)

a~ -- -

vhwa

- - - - -vfwa
--------

bfln

sfne
32

Beta(3)

al ~seNed al

-

43100

-4~

16

reserved

mlru

unuse~~M

levno

al

Beta(5)

~

ske

32

32
Beta(4)

5

00

reserved
48
reserved
64

Beta(6)

ioer

161~1

unused

231

rlru

al

rske
16

ttl

Beta(7)

64

Beta(18)

tt12
64

Beta(19)

reserved
64
reserved

Beta(20)

64
Beta(21 )

reserved
64
Iru(l )

Beta(22)

64

~
Beta(n+22)

L.

Iru(n)
64

Figure 5-50.

60459420 F

I

TAPE FUNCTION (f=#F406) Message Format (Sheet 1 of 5)

5-199

Word

Field

Alpha(l)

ctrl

Description
Control bits:

o

7

I

111

5

I L reserved
L- rsm
'---- reserved
'-----fre

r

Bit

Description

fre

Cleared when the call is complete.
set the fre bit.

rsm

Set to 1 if the caller wants to be resumed
immediately. rsm=O if the caller wants to give up
until the I/O completes. For backward positioning
functions (#10 ~ sfnc ~ #IF), the system sets rsm=O.

The caller must

Response code returned by VSOS when message processing is
complete:

o
1
2

No error.
Error occurred before the request was issued to the
tape subsystem.
Error occurred and request was issued to the tape
subsystem. The error number is returned in ioer.

Alpha(3)

len

Length of Beta, in words. For positioning functions (sfnc >
#10), the user should set len=21. For I/O functions (sfnc
#10), the user should set len=21 plus the number of words in the
LRU array.

Beta(1)

ioc

Input/output connector number of the tape, set by the caller.

vhwa

Virtual half-word address of the buffer, set by the caller.
vhwa is used if wo=O.

vfwa

Virtual full-word address of the buffer, set by the caller.
vfwa is used if wo=l.

bfln

Overall buffer length in 8-bit bytes, set by the caller. bfln
must be a multiple of 4/8 bytes based on the word offset (wo=O
or wo=I). On completion, bfln is set to the number of bytes
left in the buffer.

Beta(2)

I

Figure 5-50.

5-200

<

TAPE FUNCTION (f-#F406) Message Format (Sheet 2 of 5)

6045<)420 F

Word
Beta(2)

sfnc

Figure 5-50.
6045Y420 F

Description

Field

System function, set by the caller:
1

Read data. The read data reads data from the tape
and places it into the user's buffer until the
requested amount of data has been read. The read is
stopped if the LRU array is full, the buffer does
not contain sufficient space to hold mpru, a fatal
error is encountered, or an end of group is
encountered. If a PRU exceeds mpru, a DEVICE
CAPACITY EXCEEDED I/O error is returned and the tape
is positioned after the PRU. The EOR flag is only
set in the last LRU entry if the read was stopped at
the end of an LRU.

2

Read skip. The read skip reads data from the tape
and places it into the user's buffer until the
requested amount of data has been read. If a PRU
exceeds mlru, only mlru bytes of data are returned
to the buffer, the excess data flag is set, and the
tape is positioned at the end of the LRU. The read
skip is stopped if the LRU array is full, a fatal
error is encountered, or an end of group is
encountered. The EOR flag is always set in each LRU
entry.

8

Write data. The write data writes data on tape from
the user's buffer until the request has been
completed. The write data is stopped if a fatal
error is encountered. If the LRU size is not a
multiple of the PRU size, an end of LRU is always
written at the end of the LRU. If the LRU size is a
multiple of the PRU size, an end of LRU is written
if the EOR flag is set in the LRU array.

#10

Skip backward PRUs. The skip backward PRUs
backspaces physical records until the count in SC is
completed or until end of LRU, end of group, or
beginning of information is encountered.

#11

Skip backward LRUs. The skip backward LRUs
backspaces LRUs until the count in SC is completed
or until an end of LRU with higher level, end of
group, or beginning of information is encountered.

1112

Skip backward groups. The skip backward groups
backspaces groups until the count of SC is completed
or until a beginning of information is encountered.

1113

Rewind to beginning of information. The rewind to
beginning of information rewinds the tape to the
beginning of information.

#14

Rewind volume. Rewinds the tape to the beginning of
volume. The operation is stopped if a beginning of
information is encountered on the current volume.

TAPE FUNCTION (f=IIF406) Message Format (Sheet 3 of 5)
5-201

I

Word

Field

Beta(2)

sfnc

skc

Description
fl20

Skip forward PRUs. The skip forward PRUs forward
spaces physical records until the count in SC is
completed or until an end of LRU, end of group, or
end of information is encountered.

#21

Skip forward LRUs. The skip forward LRUs forward
spaces LRUs until the count in SC is completed or
until an end of LRU with a higher level, an end of
group, an end of file, or end of information is
encountered.

#22

Skip forward groups. The skip forward groups
forward spaces groups until the count in SC is
completed or until an end of information is
encoun tered •

#23

Skip forward to end of information. The skip
forward to end of information forward spaces the
tape to the end of information.

#30

Reset fatal error or group mark condition. After an
ioer is returned or the group mark flag is set in
the LRU array with grpf set in the call, the tape
subsystem will signal an error to all subsequent
calls for that unit with an ioer=31 until this
system function is issued. A subsequent close of
any backward positioning function also clears this
error.

Skip count. The number of PRUs, LRUs, or logical files for
sfnc. This field is ignored for all other options of sfnc.

Beta( 3)

mlru

Maximum LRU size, in 8-bit bytes. For read skip only, if an LRU
exceeds mlru, only mlru bytes of data are returned, the excess
flag is set, and the tape is positioned at the end of the LRU •
. If mlru=O, mlru is considered infinite. This field is set by
the system to mpru for all data functions except read skip.

Beta(4)

grpf

Group mark flag. If grpf=O, the tape subsystem will stop
reading and terminate the message if a group mark is
encountered. All subsequent calls for that unit will be
returned with an ioer=#31. The user must issue sfnc=#30 to
reset this condition. A subsequent CLOSE or backward
positioning function on this unit will also clear this
condition. If grpf=1, the tape subsystem will stop reading and
terminate the call if a group mark is encountered. However, any
subsequent calls for that unit will be issued.

wo

Word offset. If wo=O, the next LRU begins on a 32-bit boundary,
if the last did not end on one. If wo=1, the next LRU begins on
a 64-bit boundary, if the last did not end on one.

levno

Level number for the skip backward/forward LRU functions. This
field applies only for I, SI, and LB tape formats (0 ~ levno ~
fiE) •

I

Figure 5-50.
5-202

TAPE FUNCTION (f=#F406) Message Format (Sheet 4 of 5)
60459420 F

Description

Word

Field

Beta(6)

ioer

Error number returned by the system. For request type errors 1
through 100, control is returned to the caller. For tape I/O
errors 101 through 200, control is returned to the caller only
if user error processing was selected in the OPEN FILE message.
Refer to appendix B for a complete description of these errors.

rs

Reel swap, returned by the system:

o
1

No reel swap.
Reel swap occurred.

rlru

Number of words in the LRU array completed.
returned by the system for I/O functions.

rskc

Returned skip count.
skipped.

Beta(7)
through
Beta(18)

tt

Tapes table entry, returned by the system. Refer to tapes table
in job management tables for a complete description.

Beta 22
through
Beta(n+22)

lru

Logical record unit array entry, set by the caller for a WRITE
function and returned by the system for a READ or READSKIP
function:
Bit
00-03
04-07
08-10
11

12

13
14

15
16-31
32-63

Figure 5-50.

60459420 F

This field is

The number of PRUs, LRUs, or groups

Description
Unused.
Level number. This field applies only for I, SI,
and LB tape formats (0 ~ lev ~ HE).
Reserved.
Excess data flag. This can occur only on a read
skip. It indicates that data was skipped.
Parity flag; set to 1 by the system when this LRU
has an error. This applies only for read
operations when no retry has been selected. The
data is returned.
End-of-LRU flag; set to 1 by the caller to write
an end of LRU. Returned by the system when an end
of LRU was detected for a read.
End-of-group flag; set to 1 by the caller to write
an end of group after this LRU. This is returned
by the system when an end of group was detected
for a read. This flag is set also if an end of
information is encountered without encountering an
end of group.
End-of-information flag; returned by the system
when an end of information was detected for a
read. This flag is ignored for a write.
Reserved.
LRU size, in 8-bit bytes. This field is set on a
write and returned on a read.

I

TAPE FUNCTION (f=HF406) Message Format (Sheet 5 of 5)

5-203

EXPLICIT flO (f=#FSOO)
The EXPLICIT I/O message is processed by the resident system. It is issued by user mode
programs to initiate transfer of data to and from mass storage files to and from buffers
defined by the message.
This message allows the user to continue processing and give up the CPU until I/O
completion. The resident give-up call (f=#FF02) is issued to check for I/O completion.
The program's minus page contains an I/O connector for each file the user program has
opened; a file's I/O connector number is issued to designate the file on which input/output
is being performed. To perform explicit I/O on a file, the program must first open the file.
The Beta portion of the message contains the buffer definition. The user must set the
buffer address and the buffer length. The buffer cannot scan more than 24 small or large
pages. Therefore, to use the maximum buffer size, the buffer should be on a page boundary.
The Alpha and Beta words must be contiguous and not cross a page boundary. They should not
be modified until all input and output described by the call is completed. The free bit in
Alpha(l) has been defined to help the user determine when input/output is done; the user
sets the bit before the message is issued, and the operating system clears the bit when the
Alpha and Beta words are no longer in use. The resident give-up message (f=#FF02) can also
be used to check for I/O completion.
When the central operating system detects an error before a request is sent to the
peripheral operating system, the cerr field of the EXPLICIT I/O message is filled
appropriately, control passes to the error exit address, and message processing terminates.
A data transfer error detected by the peripheral operating system does not cause control to
pass to the error exit address; however, the serr field of the EXPLICIT I/O message is
filled appropriately.
The format of the Alpha portion of the EXPLICIT I/O message is shown in figure 5-51.
formats of the Beta portion are shown in figure 5-52.

•

5-204

The

60459420 F

Alpha(1 )

ctrl

Alpha(2)

01

16

32

8
ca

00
8

Alpha(3)

#F500

reserved

r
8

48

8
eea

#0015

48

16

Word

Field

Alpha(1)

ctrl

r

Description
Control bits:
Bit

Name

Description

0

free

Cleared when the call is completed.
caller must set the free bit.

2

rsm

Set to 1 if the caller wants to be resumed
immediately. rsm=O if the caller wants to
give up until the I/O completes.

The

Response code returned by VSOS when the message is complete:

o
1
2

No error.
Error occurred before the request was issued to the
I/O device. The error number is returned in CERR.
Request was issued to the I/O device and an error
occurred. The error number is returned in SERR.

Alpha(2)

ca

Address at which execution continues following successful
completion of the call. If 0, execution continues at the
address following the call.

Alpha(3)

eea

Error exit address: virtual bit address to receive control if
an error occurs during message processing (r#O). If this field
is 0 when an error occurs, the task is aborted.

Figure 5-51.

60459420 F

EXPLICIT I/O (f=#F500) (Alpha) Message Format

5-205

•

Beta(1 )
through
Beta (13)

•
••

Beta(14)

fc

Beta(15)

ioe

Beta(16)

fadd

Beta(17)

bien

Beta( 18)

badd

Beta(19)

cerr

Beta(20)

serr

Beta(21 )

pkno

Word

Field

Beta(l)
through
Beta(l3)
Beta(l4)

Description
Used by the resident system to issue a C5lx call.

fc

Function code:
1
2

Beta(l5)

ioc

Input/output connector number for the file on which input and
output are being performed.

Beta(l6)

fadd

Logical block address of the file where data transmission is to
begin.

Beta(l7)

bIen

Length of the virtual range, in blocks, to be associated with
this buffer. The maximum size is 24*n; n is the number of
blocks in a page, large or small. If the maximum length is
used, the buffer mus,t be on a page boundary.

Beta(l8)

badd

Starting virtual block address of the buffer where data transfer
requests will deposit or obtain information.

Figure 5-52.
•

Read data from a disk file to a buffer.
Write data from a buffer to a disk file.

5-206

EXPLICIT I/O (f=#F500) (Beta) Message Format (Sheet 1 of 2)
60459420 F

Word

Field

Beta(19)

cerr

Description
Errors detected by the central operating system before the
request is sent to the I/O device. The values are:
1
2
3
4
5
7
8
9
#B
#C
#F
#10
#12
#14

Beta(20)

serr

Errors detected by the I/O device.
to right, 0 to 23. They are:
0-17
18
19
20
21
22
23

Beta(2l)

pkno

Figure 5-52.

60459420 F

Nonexistent I/O connector.
Buffer size is greater than 24 small pages, is 0, or
is 24 pages and not on a page boundary.
This file is not open for explicit I/O.
Alpha/Beta crosses page boundary or is not
contiguous.
Illegal function code.
No buffer address was given.
File address is out of bounds.
Illegal attempt to access a file.
Buffer size is greater than 24 large pages, is 0, or
is 24 pages and not on a page boundary for a large
page buffer.
Buffer lies on each large and small page.
Buffer is already in use; previous I/O, which uses
the same buffer, is not complete.
Attempt to reuse Alpha before the previous call,
which uses the same Alpha address, is complete.
Attempt to read or write in an unassigned virtual
space (buffer error).
File is not at end of information in append mode.
Bits are numbered from left

No meaning.
No more disk space is available when extending the
file.
Reached end of file. Indicates that the buffer
extends past the end of the file.
Error encountered when extending the file.
Attempted to extend file beyond user's or pool's
file limit.
Fatal device error detected by I/O device.
Illegal message detected by I/O device.

Returned by operating system. Pack number of disk pack on which
fatal device error was detected (SERR bit 22 set).
EXPLICIT I/O (f=t/F500) (Beta) Message Format (Sheet 2 of 2)

5-207

•

ADVISE (f=#FFOO)

The ADVISE message is used by a program to inform the operating system of an anticipated
change in the need for virtual space. The ADVISE message has two purposes:
either to provide execution and input/output overlap to reduce the number of page faults for
a job, or to release pages of memory no longer required by that job. The ADVISE message is
intended for use in improving job execution speed.
The ADVISE message indicates a virtual range (a range of virtual addresses).
message can be used in one of these ways:
•

To page in a virtual range.

•

To page out a virtual range.

•

To replace one virtual range with another.

The ADVISE

The ADVISE in function is initiated without blocking the job from execution. Pages required
to accommodate the ADVISE in request are obtained from the following categories in the
specified order:

I

•

Pages freed as the result of an accompanying ADVISE out function.

•

Unallocated pages.

•

Unmodified pages outside the working sets of connected tasks.

•

Unmodified pages belonging to disconnected tasks.

•

Modified pages belonging to the requestor but outside the requestor's working set.

If insufficient memory is available to accommodate the ADVISE in function, as many pages as
possible are ADVISEd in and the user is informed that only a partial function was
performed. The maximum number of pages that are read into memory by PAGER for any single
ADVISE in function is 16 small pages or 1 large page. If the requestor exceeds the limit,
the maximum number of pages ADVISEd in will be the limit. The user is returned the highest
virtual small page address plus one in the specified virtual range that is in memory after
the ADVISE in function is complete.
The user should be aware of the following points:

I

•

Only a single Beta is allowed for an ADVISE in function in an ADVISE message.

•

If a requested page is already in memory, that page is ignored and the remaining
pages are ADVISEd in.

•

If a page fault occurs for an ADVISE in page prior to its arrival in memory, the
system blocks the job from further execution until the page fault is satisfied.

•

If a job has a machine-size working set, an ADVISE in function is accomplished by
selecting the least recently used pages from within the job's working set as
replacement pages.

•

A virtual bit address that is not defined in any virtual map is considered to be a
definition of new free space. An appropriate entry is made in the drop file map,
and memory space is allocated.

I
5-208

6045Y420 F

The ADVISE out function is used to remove a virtual range from memory and is initiated
without the job being blocked from execution. All unlocked modified pages within the
specified virtual range are written to mass storage. The pages are then deleted from the
page table. The user should be aware of the following restrictions:
•

Only a single Beta is allowed for an ADVISE out function in an ADVISE message.

•

If a page within the specified virtual range is locked or not in memory, that page
is ignored and the remainder of the request is processed. If a locked page is
detected, the user is informed.

•

If a write access occurs for a page being written to disk as the result of an ADVISE
out, the job is page blocked until the input/output is complete.

An ADVISE replace function is the combination of an ADVISE in function and an ADVISE out

function in a single ADVISE message. The function can replace in full, or in part, one
virtual range with another. The system first performs the ADVISE out function and then
initiates the ADVISE in function. At a minimum, the number of pages freed by the ADVISE out
function are then available for the ADVISE in function. If fewer pages are specified in the
ADVISE out function than in the ADVISE in function, additional pages are selected by the
system and paged out to provide sufficient pages to satisfy the ADVISE in function. The
additional pages can be obtained from the following categories in the specified order:
•

Unallocated pages.

•

Unmodified pages belonging to connected tasks but outside their working sets.

•

Unmodified pages belonging to disconnected tasks.

•

Modified pages .outside the requestor's working set.

It should be observed that two Betas are specified for the ADVISE replace function: one for
the ADVISE out specification, and one for the ADVISE in specification, in any order.
The ADVISE message format shown in figure 5-53 is used when an ADVISE is issued directly to
the system.

o

63

Alpha(l)

ctrl

Alpha(2)

num

Alpha(3)

8
8

r

00

len

Beta( 1)

8
8
16

111
Figure 5-53.

60459420 F

I

to

16

from

16

FFOO

ca
eea

16

48
48

vba

I

ADVISE (f=#FFOO) Message Format (Sheet 1 of 3)

5-209

Description

Word

Field

AlphaO)

ctrl

Should be set to O.
to the caller.

r

Response code returned by the operating system after the
specified ADVISE function has been processed. If no error is
detected and the full request is processed, r is set to 0;
otherwise:

2
3
4

Alpha(2)

I

Should be set to O.
to the caller.

KERNEL will set this field to 0 on return

from

Should be set to O.
to the caller.

KERNEL will set this field to 0 on return

num

Number of Betas for this call:
A single ADVISE in or a single ADVISE out message.
ADVISE replace message (that is, an ADVISE in message
and an ADVISE out message with the order being
immaterial).

ca

Completion address for this call.

len

Number of full words for each parameter set.

eea

Virtual bit address to receive control if an error is detected
during message processing (r~O).

Figure 5-53.

5-210

The sts field in the parameter set provides further
status.
Illegal option specified for this message. Multiple
ADVISE in or ADVISE out functions specified in a
single message.
Address vba is out of the virtual address range for a
user program.
Beta length error. Either the first word address of
Beta plus length is out of the virtual address range
for a user program or more than two parameter sets are
specified.

to

2

Alpha(3 )

KERNEL will set this field to 0 on return

Should be set to 1.

ADVISE (f=#FFOO) Message Format (Sheet 2 of 3)

60459420 F

Word
Beta(l)

Field
sts

Description
Status field, which is set to 0 unless r is set to 1. In this
case, the ADVISE function was incomplete and the code in this
field indicates the cause:

2
4
8
p~

Function requested:

o
1

ADVISE in function requested.
ADVISE out function requested.

pct

Page count, in blocks. PAGER determines what size page the
requested virtual range is mapped into. If the request is for
pages mapped into a large page, the entire large page is
ADVISEd. If the request is for more than 16 small pages, PAGER
will only ADVISE 16 pages and informs the requestor of this fact.

vba

Virtual bit address of the start of the virtual range specified
in the ADVISE function. vba is updated to the last page address
plus one processed by an ADVISE in function (unaltered by an
ADVISE out function).

Figure 5-53.

60459420 F

ADVISE function is not complete due to more pages
specified than a single ADVISE function can
accommodate. The system ADVISEd 16 small pages or a
single large page but did not satisfy the total
request. ADVISE in Beta returned to the requestor
contains the first small page address in the specified
virtual range not processed. ADVISE out virtual range
specification is unaltered. The status code 1 can be
combined with any other status. For example, a status
of 3 would indicate that more than 16 small pages or a
single large page was specified in addition to a
locked page within the specified virtual range being
encountered while doing an ADVISE out function.
Partial ADVISE out function performed due to pages
within the specified virtual range being locked.
Partial ADVISE in function performed due to
insufficient memory resources to accommodate the
request.
Page within specified ADVISE in range was found to be
already in core.

I

ADVISE (f=#FFOO) Message Format (Sheet 3 of 3)

5-211

PROCESS SYSTEM PARAMETER (f=#FF01)
The PROCESS SYSTEM PARAMETER system message can change or retrieve the value of one or more
of the following system parameters in the file descriptor block.
Parameter

Description

C RFL

Current working set size limit.

C MLP

Maximum large page limit.

C RLP

Current large page limit.

If the current large page limit is set less than the number of large pages currently
assigned to the task, large pages are purged until the limit is reached.

I

The message format is shown in figure 5-54. The Alpha and Beta portions must be
contiguous. Multiple Betas can be specified.

o

~

Alpha(1)

ctrl

Alpha(2)

num

8

r

Alpha(3)

8
0001

00

Beta(1 )

fc

8

to

161

from

8

ca

16

eea

16

opt 81

sts

161

FF01

16
48
48

val

81

32

Word

Field

Alpha(l)

ctrl

A value specified in this field is not used.
field to 0 on return to the caller.

r

Response code returned by VSOS when message processing is
complete:

Description

o
1
2
4

Alpha(2)

I

No errors.
An error occurred (refer to the sts field in the
Beta(l)] •
Illegal function code or option specified in Beta(l).
Beta buffer length error. Either the first word
address of Beta plus its length is greater than the
maximum virtual user address, or the Beta buffer is
too small for the number of requests and length
specified.

to

A value specified in this field is not used.
field to 0 on return to the caller.

KERNEL sets this

from

A value specified in this field is not used.
field to 0 on return to the caller.

KERNEL sets this

num

Number of parameter sets (Beta portions) for this call.

Figure 5-54.

5-212

KERNEL sets this

PROCESS SYSTEM PARAMETER (f=#FFOl) Message Format (Sheet 1 of 2)

6045Y420 F

Word

Field

Description

Alpha(2)

ca

Address at which execution continues following successful
completion of the call. If 0, execution continues at the
address following the call. If nonzero, execution continues at
the specified address.

Alpha(3)

eea

Error exit address; virtual bit address to receive control if an
error occurs during message processing (r#O). If this field is
o when an error occurs, the task is aborted.

Beta(l)

fc

Function code indicating the DB field value to be set or
returned:
1
2
3

o~

Message option:

o

sts

Maximum large page limit.
Current large page limit.
Current working set size limit.

Change the DB field value specified by fc to the value
in the val field.
Return the DB value specified by fc in the val field.

I

Beta status code:

o
1
2
3
4

No errors.
Requested current large page limit greater than
maximum large page limit.
Requested current working set limit greater than
maximum working set size limit.
Requested current working set limit too small to
accommodate job's current large page limit.
Illegal operation requested.

New system parameter value if opt=O; field in which value is
returned if opt=l.
Figure 5-54.

60459420 F

I

PROCESS SYSTEM PARAMETER (f=#FF01) Message Format (Sheet 2 of 2)

5-213

GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME (f=#FF02)

The GIVE UP call is issued by a user or th~ virtual system when the caller wants to suspend
execution waiting on completion of a resident I/O call. Control is not transferred to the
ca or eea of the I/O call. On completion of the I/O, control is returned to the ca address
of the GIVE UP call or to the next location after the GIVE UP exchange if ca is O. If a
time interval is specified and the call times out before I/O has completed, control is
returned to the eea in the GIVE UP call and the r field is set to 1. The GIVE UP call may
also be used when the caller wants to GIVE UP the CPU waiting on an elapsed time. At the
end of a GIVE UP, control will be returned to the ca address or the address following the
call.
The message (Alpha/Beta) must not cross a page boundary.
this occurs.

,

The system returns an error if

The message format is shown in figure 5-55.

o
Alpha{l)

63
entrl

r

to

8
Alpha(2)

8

16

00

num

8
Alpha(3)

from

16

FF02

16

ca

8

48

len

eea

16

48

Beta(1)

te

64
Beta(2)

dt

64
Beta(3)

00

Ie

16

48

Word

Field

Alpha(1)

cntrl

Set to 0 or #80.
caller.

r

Response code returned by VSOS when message processing is
complete:

Description

No errors.
Call has timed out.
Parameter call error or message crossed a page
boundary.

0
1
2

I

to

Set to

o.

from

Set to

o.

Figure 5-55.
5-214

KERNEL sets this field to 0 on return to the

GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME (f=#FF02)
Message Format (Sheet 1 of 2)
6045Y420 F

Word

Field

Alpha(2)

Description

num

Number of parameter sets for this call is 1.

ca

Completion address for this call.

len

Number of words in Beta.

eea

Virtual bit address to receive control if time out is detected
during message processing. If the address of the outstanding
resident call is not located, it is assumed to have completed
properly.

Beta(1 )

tc

Time GIVE UP was issued, returned by the system.

Beta(2)

dt

Delay time in microseconds. Minimum value is 100,000
microseconds (0.1 second). Maximum value is 59,999,999
microseconds (1 minute).

Alpha(3 )

This will normally be 0.

This should be set to 3.

For GIVE UP on I/O with dt=O, the caller is blocked until the
I/O call completes. When dt#O and the I/O call does not
complete in dt microseconds, control is returned to the eea with
r=l.
For GIVE UP on time with dt=O, control is immediately returned
with no error.
Beta( 3)

lc

Virtual bit address of the resident I/O call if GIVE UP is for
I/O. If Ic=O, then GIVE UP CPU for dt microseconds.
For a GIVE UP on time, the user may be disconnected from the
alternator. If both dt and lc are 0, the call is ignored
without warning.

Figure 5-55.

60459420 F

I

GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR TIME (f=#FF02)
Message Format (Sheet 2 of 2)

5-215

VIRTUAL SYSTEM DEBUG TOOL

6

The virtual system debug tool provides a breakpoint capability to track the execution of the
virtual portion of VSOS. This facility is designed as a tool for the systems programmer who
wishes to stop execution of the operating system at desired virtual system locations. This
debugging aid provides the systems programmer with the capability to temporarily stop
execution of the virtual system by setting execute breakpoints, and then to reset those
breakpoints and continue execution.
VSDT is built as part of the virtual system of VSOS. While the operating system is running,
a debug command can be entered into a reserved shared table (T VSD) by using the maintenance
control unit (MCU) write command. This table is periodically checked by the resident
portion of the operating system for commands. When a command is entered, control is passed
to VSDT for handling. If an attempt is made to set a breakpoint at a paged-out address,
that page will be paged-in by VSDT. All current breakpoint addresses can be found in the
T VSD table.

RESIDENT SYSTEM
The resident system periodically checks the contents of the VSDT input buffer word of the
T VSD table for a nonzero value. Upon detection of a nonzero value, control is passed to
VSDT which examines the input buffer word. If it contains COMMAND, the debug command buffer
is checked for a debug command. Any existing debug command-rs-then processed by VSDT.
If the input buffer word contains CONTINUE (normally entered after a breakpoint has been hit
and appropriate chapters of memory have been displayed), VSDT resumes execution of the
virtual system. The status word of the T VSD table (containing STOP) will be cleared. If
CONTINUE is entered without a breakpoint having been hit, the error message word in the
T VSD table will contain the message ILL COMM (illegal command) and control will return to
the resident system.

VIRTUAL SYSTEM
VSDT handles the setting and resetting of breakpoints, as well as the resumption of virtual
system execution. When control is passed from the resident system to VSDT, VSDT checks the
input buffer word in the T VSD table for either COMMAND, in which case it will process debug
commands, or, CONTINUE, for resumption of virtual system execution after a breakpoint has
been hit.
---If a breakpoint command has been entered, VSDT will put the breakpoint address into the
T VSD table; save the instruction at the breakpoint address; set up the breakpoint jump
instruction; and clear the word COMMAND from the input buffer word. If a command to reset
the breakpoint has been entered, VSDT will restore the original instruction at the
breakpoint address, as well as clear the breakpoint address in the T VSD table.

60459420 E

6-1

USER AND SYSTEM· INTERFACES
The MCU is used as the input device for the VSDT. Debug commands are entered in ASCII
format into the T VSD table by the MCU AS command. To stop the operating system after
system autoload t the user can enter a breakpoint command into the T VSD debug command
buffer. When the execution of the virtual-system is stopped t MCU memory commands are used
for system examination.
This discussion assumes that the user is familiar with the MCU and its commands.
the VSOS 2 Operator's Guide.

Refer to

SHARED TABLE
An additional table (T VSD) appears in the shared table list. The main function of this
table is communication-between the user and the resident system. The structure of the T VSD
table is given in table 6-1.

Table 6-1.
Name

Structure of the T VSD Table (Sheet 1 of 2)

Word

o

W VSDNAME

Description
Contains the name T VSD (left-justified with blank fill) identifying
the table.
System command input buffer.
processed.

W VSDINPUT

Cleared to zeros after command is

COMMAND. Process VSDT debug command which has been entered in the
T VSD debug command input buffer. The word COMMAND is left-justified
with blank fill.
CONTINUE. Continue execution of the virtual system after a
breakpoint has been hit. The word CONTINUE is left-justified with
blank fill.
W VSDBSTAT

W VSDBADD

t

2

Virtual system status word. Contains the word STOP*A or STOP*X
(left-justified with blank fill) when breakpoint is hit. STOP*A
indicates that an access breakpoint had occurred and STOP*X indicates
that an execute breakpoint had occurred. The status word is cleared
to zeros upon continuation of virtual system execution.

3

Contains the last breakpoint address (right-justified with zero fill)
hit by virtual system. For an execute breakpoint, it will be the
address of the instruction causing the breakpoint. For an access
breakpoint t it will be the address of the last executed instruction
which can be up to 35 instructions past the instruction causing the
breakpoint.

tThe upper 16 bits of W VSDBADD contain a value equal to the number of times the
breakpoint has been hit. When the value reaches the count specified by the n option t the
system will halt and the appropriate message will be placed in W_VSDBSTAT.

6-2

60459420 E

Table 6-1.
Name

Structure of the T VSD Table (Sheet 2 of 2)

Word

Description

W VSDERRMES

4

Error messages returned by VSDT, left-justified with blank fill.
Cleared to zeros when next command is entered.

W VSDCl

5

Start of debug command buffer. Commands are entered in ASCII mode
(left-justified with blank fill). Cleared to zeros after a command
is processed. If an error has occurred, the buffer is not cleared to
zeros. The command can then be reentered in its entirety, or edited
in place. In either event, if any extraneous characters remain after
the corrected command has been placed in the command buffer, they
must be blanked out by use of the MCU AS command.

W VSDC2

6

Continuation of debug command buffer.

W VSDC3

7

Continuation of debug command buffer.

W VSDC4

8

Continuation of debug command buffer.

W VSDCS

9

Continuation of debug command buffer.

W VSDC6

A

Continuation of debug command buffer.

W VSDC7

B

End of debug command buffer.

W VSDABI t

C

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDAB2

D

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDAB3

E

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDAB4

F

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDAB5

10

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDAB6

11

Bits 16-63 contain the address of breakpoint which has been set in
the virtual system.

W VSDABA

12

Bits 16-63 contain the address of the read/write access breakpoint.

W VSDREG

13

Bits 16-63 contain the address of the virtual system register file.

tThe upper 16 bits of W VSDABI through W VSDAB6 and W VSDABA contain the value specified
by the n option, which-is the number of-times a breakpoint is to be executed before the
system is stopped.

60459420 E

6-3

COMMANDS
Since all debug breakpoint commands are entered by MCU memory alteration commands, systems
programmers are responsible for entering debug commands into the appropriate locations in
the T VSD table.
The commands supported by VSDT are shown in table 6-2.

Table 6-2.
Command

VSDT Command Summary
Description

-BKPT t

Set execute breakpoint.

COMMAND
-

Process virtual system debug commands.

CONTINUE
-

Continue execution from last user breakpoint.

RBKP
--

Remove all or selected breakpoints.

PAGEIN
-

Bring page containing given virtual address into memory.

t Underscored letters indicate the short form of the command.

COMMAND FORMAT
The following conventions must be observed when entering the breakpoint commands:
•

A blank must be used to separate the command and its first parameter.

•

Brackets are used to indicate an optional parameter. Defaults are assumed for
omitted parameters and are defined in the command descriptions. Either no
parameters or any single parameter can be selected.

•

Underscored letters of each command or keyword parameter indicate the minimum
character string used to specify the command or parameter. Any number of
characters, from the minimum string to the entire word, can be used. For example,
BK, BKP, and BKPT will all result in execution of the BKPT command.

•

All address, count, and number parameters are specified in hexadecimal notation.

•

Commands are entered into T VSD starting with the leftmost byte in the command
buffer.

•

Blanks are not used between subsequent parameters (with the exception of the blank
used to separate the command and its first parameter). Commas are used to separate
all subsequent parameters.

The virtual address parameter for debug commands is assumed to have an offset bit address
COOOOOOOOOOO in hexadecimal notation; that is, COOOOOOOOOOO will be added to the value
entered by the systems programmer to derive the virtual system address.

6-4

60459420 E

DEBUG COMMANDS
Debug commands are entered into W_VSDCl through W_VSDC7.
Up to six execute breakpoints are allowed in the virtual system at any time. These are
software breakpoints and cause the virtual system to stop execution prior to executing the
instruction at the specified virtual address.
The user can specify the number of times a breakpoint is reached before execution of the
virtual system is stopped.
The format of the command to be entered at the MCU is:
AS,(address of T VSD + 5),"command (excluding COMM/CONT) parameters"
AS , (add res s

0

f T VSD + 1), "command (cOMMI CONT) "

The command buffer and input word are cleared upon acceptance of the command.
VSDT commands for setting and resetting breakpoints are shown in table 6-3.
can be removed indiVidually or all together.

Table 6-3.

VSDT Commands for Setting and Resetting Breakpoints

Command

Parameters

BKPT

virtual address (,n)

RBKP

ALL
--

60459420 E

The breakpoints

Description
;I
BKPT sets an execute breakpoint which causes the \
system to stop execution at the specified address. l; .0
six breakpoints can be set at one time. Default is n=l.
~

RBKP allows the user to remove all breakpoints that have
been virtual address set (ALL) or to remove a single
breakpoint set by virtual address. Default is ALL.

6-5

CONTROL COMMANDS
Control commands are entered into W VSDINPUT which allow the user to input debug commands
into VSDT, and continue execution after a breakpoint has been reached.
Table 6-4 shows the command for accessing paged-out addresses.
Debug commands are processed by VSDT by using the MCU command AS to write the word COMMAND
into W VSDINPUT following entry of the debug command into the command buffer. The debug
commands are entered initially into the T_VSD table or after a breakpoint has been hit.
The CONTINUE command allows execution to continue after a breakpoint has been reached.
Execution can be continued by using the MCU A command to write the word CONTINUE into
W VSDINPUT in the T VSD table.
---The user can also obtain breakpoint status information. No specific command is needed.
Since breakpoint addresses are stored in the T VSD table, the MCU D addr command can be used
to check for breakpoints set.

Table 6-4.

VSDT Command for Accessing Paged-Out Addresses

"~".

Parameter

Command
PAGEIN

virtual address

Description
PAGEIN causes the virtual system to access the specified
virtual address causing, in some cases, a page fault.
This command is used to bring a page containing the
specified virtual address into memory.

ERROR MESSAGES
Error messages which are placed in W VSDERRMES of the T VSD table are shown in table 6-5.
The user can input the proper command in its entirety after diagnosing the error message or
edit it in place. W_VSDERRMES is cleared after the acceptance of subsequent commands.

Table 6-5.

VSDT Error Messages

Error Message

6-6

Description

ILL COMM

Illegal command.

ILL PARM

Illegal parameter.

ILL NUM

Illegal number.

TAB FULL

Breakpoint table is full.

ILL ADDR

Illegal address specified in RBKP command.

NO ADDR

No address has been specified in a breakpoint instruction.

60459420 E

ANALYZER

ANALYZER is a tool for extracting information from a system dump.
file containing the following information, in the order listed:

7

It generates an output

•

Time, date, version information, and system options.

•

A listing of TABST, VTABST, the system tables map, and the system dayfile buffer.

•

A hexadecimal dump with ASCII interpretation of resident tables and boat area.

•

Hexadecimal dumps with ASCII interpretation of performance data area, test mode
buffers, and SPY buffers, if defined, and the last location of the resident
operating system.

•

A hexadecimal dump with ASCII interpretation of shared tables.

•

A listing of PAGER internal information, page table dumps, and the lock table.
listings of the page table are provided, sorted by:

Four

Page table bit address
Physical page number
Virtual address and key
Key and virtual address
•

A dump of the history table with entries listed in chronological order.
reported as an installation option.

Time is

•

A dump of the resident operating system dynamic stack.

•

A dump of the virtual operating system minus page, register file, and dynamic stack.

•

A dump of the user's minus page, second minus page, third minus page, and dynamic
stack, for any active user.

•

A hexadecimal dump of any core areas specified with the CORE parameter.

•

A hexadecimal dump with ASCII interpretation of virtual space for a given user as
specified via the VRANGE parameter.

•

A hexadecimal dump with ASCII interpretation of the FILEI.

•

A hexadecimal dump with ASCII interpretation of selected virtual tables as specified
via the VTABLE parameter.

Input for the ANALYZER is constructed by the following steps:
1.

A dump file the size of memory is created.

2.

With the system stopped and the resident operating registers saved, the WCMF MCU
command is used to dump memory to the existing file.

60459420 G

7-1

•

ANALYZER can be used to examine the file after the system has been recovered or autoloaded.
The format of the ANALYZER execute line is shown in figure 7-1.
and order independent.

ANALYZER

All parameters are optional

(INPUT=ifn,LIST=ofn,
CORE=11,h1, ••• ,14,h4,
VRANGE=db,vbitaddl,n1, ••• ,vbitadd32,n32,

~~~{Lilv~ablel,

INPUT=ifn

... ,vtable32'

ifn is the name of the input file containing a dump of
memory.
The default is INPUT=DUMPFILE.

LIST=ofn

ofn is the name of the file to contain ANALYZER output.
The default is LIST=OUTPUT.
Any existing file with the same name as the output file is
destroyed, and a new file with that name is created.

~=11,hl,

••• ,14,h4

...,
vbitadd32,n32

VRANGE=db,vbitaddl,nl,

Additional areas of memory can be dumped. As many as four
li,hi pairs can be specified. Words Ii through hi are
dumped as follows:
Ii

Low hexadecimal bit address of physical memory
to be dumped.

hi

High hexadecimal bit address of physical memory
to be dumped.

Additional areas of virtual space to be dumped.
32 ranges of virtual space may be specified •
db
vbitaddl
nl

Figure 7-1.

• 7-2

As many as

Specifies the DB number associated with the
virtual space to be dumped.
Specifies the virtual bit address of the first
word of a range to be dumped.
Specifies the number of words to be dumped.

ANALYZER Execute Line Format (Sheet 1 of 2)

60459420 G

~LE=vtable1,

••• ,

vtable32

Areas of the virtual operating system to be dumped.
as 32 table names may be specified.
vtablei

As many

Specifies the virtual system table by name
to be dumped.

It may be desirable to suppress certain portions of ANALYZER
output.
The default is LO=*.
standard output.

This condition generates all of the

Specifying LO=S will suppress dumping of the user's registers
and dynamic stack information.
Specifying LO=V will cause only the information requested by
the VRANGE and/or the VTABLE parameters to be dumped. The
options *, S, and V are mutually exclusive.
Figure 7-1.

60459420 G

ANALYZER Execute Line Format (Sheet 2 of 2)

7-3

•

ACCOUNTING

8

The accounting system is that part of the virtual system that gathers system resource usage
statistics and records them at two locations: in a cumulative accounting buffer and in an
active accounting file. The statistics recorded in the cumulative accounting buffer are a
subset of those recorded in the active accounting file. Statistics recorded in the
cumulative accounting buffer can be retrieved by a user or utility program only when the job
for which the statistics are being gathered is running; statistics recorded in the active
accounting file can be retrieved by an installation-defined user at any time after the file
is no longer active.
VSOS provides two units with which to measure resource usage, system time units and system
billing units. As described later in this chapter, the system billing units (SBU)
calculation uses a variable rate accounting factor and a service level index while the
system time units (STU) calculation does not.
The information recorded in the accounting file is designed to be accessed by an
installation-defined accounting program. No VSOS utilities currently exist to use these
statistics.

CALCULAliON OF STUs
A system routine called TCHARGE calculates the number of STUs consumed by a taSK. To
calculate the STUs consumed, it first multiplies each system resource usage quantity by the
weighting factor for that resource and then adds the products.
The system resources and their units of measure are listed in table 8-4. The weighting
factors are specified by installation parameters. A weighting factor of 0 eliminates the
corresponding system resource from the STU calculation.
A system second is 1 million STUs.

STATISTICS ACCUMULATION
Having gained access to the operating system, a user can then execute tasks and jobs.
Statistics are gathered on an event basis and are accumulated over each task or batch job in
both the cumulative accounting buffer and the active accounting file. The buffer statistics
are also provided as information to the user via the USER/ACCOUNTING COMMUNICATION (f=#OOOE)
and MISCELLANEOUS (f=#0024) messages.

60459420 E

8-1

CUMULA liVE ACCOUNTING BUFFER
The cumulative accounting buffer is provided so that resource usage statistics for a task or
job are available during the time that the task or job is actually running. The buffer
contains one 16-word entry for each active task (each descriptor block). The fields in each
entry are updated as the tasks use up vari,ous system resources. When a job has finished,
the entries for that job no longer exist in the cumulative accounting buffer; the entries
exist only for the duration of the job.
A user is given access to the statistics in the cumulative accounting buffer for his or her
running tasks alone via the USER/ACCOUNTING COMMUNICATION message. The virtual system
returns the current accumulation of all statistics in the buffer to a user that issues this
message with the c field set to 3. Based on these statistics, it might be possible to
modify user programs to reduce system resource usage and perhaps reduce charges. This
reduction would be dependent on the installation-defined charge algorithm.
In addition to individual task statistics, total job statistics for all controllee tasks of
a batch job are available from the cumulative accounting buffer. These cumulative job
totals are stored in the batch processor's entry in the buffer. By issuing the
USER/ACCOUNTING COMMUNICATION message with c=3, the batch processor can access the total raw
statistics for the duration of a batch job. These unfactored values can be used as input to
an installation-provided routine that computes the charges for the job. Any of these
charges, raw statistics, or factored charges might then be printed on the job's dayfile.

8-2

60459420 E

ACCOUNTING FILE

The accounting file is a history file of the operating system resource usage, including tape
and disk file usage, task and job execution times, terminal usage, and autoload and recovery
events. Records are written into the file as resources are used. Accounting record types
are listed in table 8-1.

Table 8-1.

Accounting Record Type and Subtype Codes

Record Type Code

Disk
File
3

Magnetic
Tape
4

Login

Open

Logout

Close

Subtype
Task
1

Terminal

0

Begin
task

1

End
task

2

Field
overflow

3

Task
information

notmsg/
notwds
field
overflow

4

Project
information

2

Periodic
System
A

Periodic
Job

-

Periodic
system

Periodic
job

Output
queue
file

Configuration

Periodic
system

-

Output
data
file

Global
channel
usage
data

-

-

-

-

-

-

-

-

Job
6

Assignment

Autoload

Job start

Input
queue
file

Release

Recovery

Job end

Job
change

7

Create

-

New date
entered

Destroy

-

New time
entered

-

Input
data
file

-

Extend

-

-

-

Teletype
entry

-

Channel
Usage
Statistics

Network
Usage

System
5

9

I

I

B

5

-

-

Reduce

-

-

-

Purge
file

-

-

-

6

-

-

Change
user
number

-

-

-

Interactive
session

-

-

-

7

-

-

Change
file
name

-

-

-

-

-

-

-

8

-

-

Change
account
number

-

-

-

-

-

-

-

I

More than one accounting file can exist; all such files are unattached permanent files
belonging to the system user number; however, only one file, named Q5AF, can be active at
anyone time. If during system initialization no active accounting file Q5AF exists, one is
created at that time. A second file, Q5AF2, is also created. When the current active
accounting file becomes full, it is renamed, file Q5AF2 becomes the active accounting file
Q5AF, and a new Q5AF2 is created.
The naming convention used when renaming the *AF file is: Ayydddnn (yyddd is the Julian
date and nn is a number ranging from 00 to 99). File names will be used in sequence if they
do not already exist. The next file name in sequence after Ayyddd99 is AyydddOO.

60459420 H

8-3

The processing sequence of accounting files is determined by information recorded in the
accounting file headers. AyydddOO is normally the start of the sequence for a day and
should be verified by checking that the accounting file header information for the previous
file's name indicates the previous day's date.
After 90 files are recorded for a given day, the system sends the operator a warning message
indicating the accounting system is nearing the maximum number of accounting files. When
100 files exist for a given day, the system sends another warning message to the operator,
indicating that no new accounting files will be written. Recording of accounting
information then stops. The warning message that the information is being lost continues to
be issued periodically.
The size of all accounting files is determined by the system parameter AFSIZE.
The accounting file can be used as follows:

8-4

•

For each task, the accounting system writes a begin task accounting record to the
accounting file. A unique task number is assigned to each task and is placed in all
accounting records associated with the task. Each accounting period, the system
writes a new task field overflow record for the task or updates an existing one.
When the task completes, the system writes an end task accounting record.

•

To accumulate raw statistics for the duration of a task, the installation's program
must locate on the accounting file all task field overflow records for a unique task
number or job name, extract the desired statistics, and sum them for each overflow
record for the task.
.

•

At the start of each batch job, the batch processor issues an option of the
USER/ACCOUNTING COMMUNICATION message (f=#OOOE), and a job start accounting record
is written to the accounting file. The header of this record contains the user
number and job descriptor number (JDN) under which the batch processor is running.
Any controllee of this batch processor runs under this user number and JDN. The
task record headers for these controllee tasks contain these identifiers also. At
the end of a batch job, the batch processor issues another option of the
USER/ACCOUNTING COMMUNICATION message, and a job end accounting record is written to
the accounting file.

•

To accumulate raw statistics for the duration of a batch job, the installation's
accounting program must locate the job start and job end records on the accounting
file, and record the user number and JDN. A search can also be done using the job/
session name. Any task overflow records (between the job start and job end records)
containing this user number and jdn are for tasks of this batch job. An additional
task overflow record is generated for the batch processor clean-up (for example,
close dayfile, change file ownership). This record may not be charged to the user
job depending on the site's accounting program. Statistics can be extracted from
each of these overflow records and summed to get the cumulative batch job
statistics. These totals are equivalent to those extracted from the batch
processor's entry in the cumulative accounting buffer.

•

At the option of the user site, the task information record allows information to be
entered into the accounting file (such as billing type, or queueing time). This
information is entered via message 7 for USER/ACCOUNTING COMMUNICATION (f=#OOOE).

60459420 E

Active Accounting File Blocks
Accounting records are accumulated in a 5I2-word memory buffer (this buffer is not the
cumulative accounting buffer). The buffer is written to the accounting file when the buffer
is full, or when an entry is made in the buffer after more than 5 minutes have elapsed since
the previous buffer was written to the accounting file. The format of the buffer and,
therefore, of the accounting file record blocks, is shown in table 8-2.

Table 8-2.

Active Accounting File Block Format

Word

Contents

0

Master clock time and date information at the time that the first entry is
written to the buffer.

1

Microsecond central processor clock reading at the time that the first entry is
written to the buffer.

2

Reserved for system use.

3

Master clock time and date information at the time that the last entry is
written to the buffer.

4

Microsecond central processor clock reading at the time that the last entry is
written to the buffer.

5

Cumulative system CPU overhead in microseconds.
virtual system CPU times.

6

Cumulative USER CPU time in microseconds.

7

Cumulative WAIT time in microseconds. The CPU is available for user execution
but all user tables are waiting for I/O completion.

8

Cumulative IDLE time in microseconds. The CPU is available for user execution
but no user tasks are waiting for the CPU.

9-/11 FE

Filled sequentially with accounting records.

ilIFF

This word is set to contain all hexadecimal 2's when the buffer is full.

60459420 E

The sum of KERNEL, PAGER, and

Unused words contain binary O.

8-5

I

The master clock entries in words 0 and 3 of an active accounting file block are eight
decimal numbers indicating the year, month, day, hour, minute, second, millisecond, and an
installation-defined machine designator. The entries are represented as 16 digits in
hexadecimal form within one word, as shown in figure 8-1. For example, the date
November 6, 1985, the time 9:10:20.623, and the machine designator 1 would appear as shown
in figure 8-2.

o

63
hh

8

I

Figure 8-1.

Master Clock Format

Figure 8-2.

Master Clock Example

I
Table 8-3 lists the information kept in the first block of *AF, including the name to which
the name *AF is to be changed when the file becomes full, and the address of the block in
which space is currently available. Accounting records are written sequentially into *AF
beginning with the second block. The record type and length are indicated by the first word
of each record, as shown in figure 8-3.

8-6

60459420 F

Table 8-3.

Active Accounting File Format (First Block)

Word

Contents

o

Ayydddnn, the name to be given to this file when it is deactivated. yyddd
is the year and day number computed when the file is activated; nn is a
sequence number, modulo 100.

I

Name of the last accounting file, in the form Ayydddnn. At autoload, this
field contains binary 0 if no *AF file exists at that time.
2

Name of the next accounting file, Ayydddnn.

3

Relative block address of the most recently created block in the file, where
the header block is block O.

4

Reserved for system use.

5

Reserved for system use.

6

Microsecond central processor clock value when this file is deactivated.

7

ASCII date when this file is deactivated, in the form mm/dd/yy
(month/day/year).

8

ASCII time when this file is deactivated, in the form hh:mm:ss
(hours:minutes:seconds).

9-lFF

Unused.

o

1

63
type

al

sUbtyp

eal,en9th al
Description

Field
type

Accounting record type:
1
2
3
4
5
6
7
9
#A
#B

Task record.
Terminal record.
Disk file management record.
Tape record.
System record.
Job record.
Network usage record.
Channel usage statistics record.
Periodic system record.
Periodic job record.

subtype

Subtype code for the accounting record type indicated in the type field
(refer to table 8-1).

length

Total word length of this record.
Figure 8-3.

60459420 H

Accounting Record Format (First Word)
8-7

Task Records

Task accounting (type 1) records are written in the accounting file whenever a task is
started or ended, or when task accounting information is available and no task field
overflow record exists in the current accounting file block. A task record consists of a
six-word header plus additional words, depending on the record subtype. The header format
is shown in figure 8-4.
When the subtype code is 0 (begin task), the additional record words are as shown in
figure 8-5. When the subtype code is 1 (end task), only the record header is used. All
task accounting information is accumulated in task field overflow records before an end task
record is written.
A task field overflow (subtype 2) record contains raw accounting statistics accumulated for
the duration of a task. When the operating system calls the accounting system with task
accounting information, the accounting system searches for a task field overflow record
within the current 512 word buffer pertaining to th~ specified task. If such a record is
found, its fields are updated with the new information. If no task field overflow record
exists for the specified task, such a record is created and filled with the current
information. The record words are shown in figure 8-6.
Each task field overflow record field (except for the ferr and wssiz fields) is cumulative
over the accounting periods for the task until potential overflow is detected. For
cumulative values for an entire task, the appropriate field should be summed over all of the
task's task field overflow records in the accounting file. The values for the ferr and
wssiz fields for the entire task are in the last record for the task.

8-8

60459420 E

ctrle

0
01

length S

subtypesl

S

2

-,r proj

63

III

job .1 I
unused
Ivl 4 41
charge number

151

jdn

64

master clock

3
4

16

S

t

jce

task number

reserved

121jc 4

64
unused

os_lev

7

S

24

user number

5

64
job/session name

6

t Reserved.

Word

Field

1

subtype

Description
Subtype code:

o
1
2

3

4

Begin task.
End task.
Field overflow~
Task information.
Project information.

length

Total word length of this record.

job lvl

Job level (1 through 15).

ctrle

Controllee level (1 through 9).

proj

Project accounting flag.

jdn

Job descriptor number.

jc

Job class:
1
2
3
4
5

Standby.
Batch.
Interactive.
High priority.
System.

2

charge
number

Account identifier from login line or job statement; identifies
account to which the task is being charged.

3

master
clock

Value of the master clock when this record was created.

Figure 8-4.

60459420 H

Task Record Header Format (Sheet 1 of 2)

8-9

•

I

Description

Word

Field

4

task
number

Number assigned when the begin task record is written. All subsequent
accounting records pertaining to this task contain this number. (The
accounting system assigns task numbers sequentially.)

jce

Job category entry number (0 through 65).

os lev

Operating system version level.

o through 7, where

o

1
2
3-7

I

2.0 or earlier.
2.1, 2.1.5, or 2.1.6.
2.2 or later.
Undefined.

5

user
number

Binary user number.

6

job/
session
name

Job or interactive session name associated with this task.

Figure 8-4.

o

78

Task Record 'Header Format (Sheet 2 of 2)

63

19 20
poolname

64

--------------busernum

7

44

fname
64

Word

Description

Field

6

poolname,
ajdn
busernum

Name of the pool in ASCII, if this file is a pool file member.
Job description number of user which has private file attached.
Binary user number of the task file owner, if this is a private or
public file.

7

fname

Name of the task file in ASCII, left-justified with blank fill.
Figure 8-5.

8-10

Task Record Format, Subtype 0

60459420 H

o

63
ucpu

vscall

6

syscpu

ferr

7

32

32

48

16
8

wssiz

memu

48

16
9

Ipaccx

10

spaccx

Ipacci

32

32

spacci
32

32
spseci

spsecx

11

32

32
12

Ipflt

spflt
32

32
13

tpacc

tpwds

32

32
tpfn

14

32
15

sbu

16

II pc

sli

vri
16

16

64
Ispc

17

64
18

ws2sml

·32

unused

ufsbu

19
20
19~'~

chan(1 )
chan(n-1 )

32
64

32

chan(2)

32
64

32

chan(n)

32

Word

Field

6

vscall

Number of virtual system user calls made.

ucpu

User execution CPU time, in microseconds.

ferr

Error number of the fatal error condition, transferred from word 139
of the user's minus page. This field is 0 if there is no error.

7

Description

Figure 8-6.
60459420 E

Task Record Format, Subtype 2 (Sheet 1 of 2)
8-11

Word
7

syscpu

Virtual CPU time, in microseconds, for user program execution.

8

wssiz

Average working set size, in small pages.

memu

Memory usage [at the end of each accounting period, (current working
set size)]*[user CPU time for current accounting period is computed.]

Ipaccx

Number of disk accesses (I/O requests issued) for large page explicit
reads and writes.

lpacci

Number of disk accesses (output requests issued) for large page
implicit writes.

spaccx

Number of disk accesses (I/O requests issued) for small page explicit
reads and writes.

spacci

Number of disk accesses (output requests issued) for small page
implicit writes.

spsecx

Number of disk sectors transferred for explicit reads and writes.

spseci

Number of disk sectors transferred for implicit writes.

lpflt

Number of disk accesses (input requests issued) that resulted from
large page faults (large page implicit reads).

spflt

Number of disk accesses (input requests issued) that resulted from
small page faults (small page implicit reads).

tpwds

Number of 16-bit bytes transferred to or from tape files.

tpacc

Number of tape accesses (I/O requests issued) for reads and writes.

tpfn

Number of nonread and nonwrite tape functions, such as read hardware
status.

sli

Service level multiplying index used for variable rate accounting.

vri

Variable rate index used for variable rate accounting.

15

shu

Floating point summation of task's system billing units (summation of
MVAL's returned from MCHARGE), or floating point summation of task's
system time units (summation of TVALs returned from TCHARGE).

16

llpc

Number of large pages lost to other tasks.

17

lspc

Number of small pages lost to other tasks.

18

ws2sml

CPU time, in microseconds, that the task's working set size appeared
to be too small.

19

ufsbu

Number of nonfactored standard billing units or system time units.

20

chan(i)

Task channel usage for channel i.

9

10

11

12

13

14

I
I

Description

Field

Figure 8-6.
8-12

Task Record Format, Subtype 2 (Sheet 2 of 2)
60459420 F

The number of disk sectors transferred for large page implicit reads can be readily computed
from the value of the lpflt field.
A task information field (subtype 3) allows a task t privileged or nonprivileged t to send
records to the account file that contains billing information.
A project information record (subtype 4) allows a project number to be written to the
account file. There are three formats for the project information record. The first format
is for an interactive job (figure 8-7). The other two formats are for batch jobs. The
first of the two batch formats occurs when the CHARGE statement is the first CHARGE executed
in the job stream. The SBU/STU amount accumulated since the beginning of the job is put in
word 10. If the CHARGE statement is the first executable statement in the job stream t the
SBU/STU amount will be zero (figure 8-8). The second of the two batch formats occur~ when
the CHARGE statement is the second through the last CHARGE statement executed in the job
stream (figure 8-9).
o

63
project number

7

64
project number

8

64
unused

project number

9

32

32

Word

Field

7-9

proj ect
number

Description
I-to 20-character project number t in ASCII t left-justified with blank
fill.
Figure 8-7.

Task Record Format t Subtype 4 Interactive Job

o

~

7

project number

64
project number

8

64
unused

project number

9

32

32
sbu/stu

10

64
old account

11

64

Word

Field

Description

7-9

project
number

I-to 20-character project number t in ASCII t left-justified with blank
fill.

10

sbu/stu

SBU/STU amount accumulated since the beginning of the job. This field
is set to zero if the CHARGE statement is the first executable
statement.
Figure 8-8. Task Record Format t Subtype 4 Batch Job
With First CHARGE Statement (Sheet 1 of 2)

60459420 E

8-13

. Word
--

Field

11

old
account

Description
I-to 8-character old account identifier, left-justified with blank
fill.

Figure 8-8. Task Record Format, Subtype 4 Batch Job
With First CHARGE Statement (Sheet 2 of 2)

o

63

new project number

7

64

8

new project number

64
new project number

9

unused
32

32

sbu/stu

10

64
11

old account number

64
12

old project number

64
13

old project number

64
old project number

14

unused
32

32

Word

Field

Description

7-9

new
project
number

I-to 20-character new project number, in ASCII, left-justified with
blank fill.

10

sbu/stu

SBU/STU amount generated by the old project number/old account
combination (real).

11

old
account
number

I-to 8-character old account identifier, left-justified with blank
fill.

12-14

old
project
number

I-to 20-character old project number in ASCII, left-justified with
blank fill.

Figure 8-9. Task Record Format, Subtype 4 Batch Job
With Second Through Last CHARGE Statement
8-14

60459420 E

Terminal Records

Terminal accounting (type 2) records are entered into the accounting file whenever a user
logs on or off a terminal, or when the notmsg or notwds fields in the user table are about
to overflow. A terminal record consists of a six-word header plus one additional word. The
format of the header is the same as for the task record header, except that the type field
is 2, the subtype field can be 0 (login), 1 (logout), or 3 (notmsg or notwds field
overflow), and the controllee level, jdn, job category, job descriptor number, and task
number fields are unused.
When the subtype code in the record header is 0 (login), the sixth word in the record is as
shown in figure 8-10.
When the subtype codes are 1 (logout) and 3 (notmsg/notwds field overflow), the sixth word
in the record is as shown in figure 8-11.
0

I

6

Word

binary 0

tterm

Field

6

8

I

63
ternum

Description

tterm

Reserved for operating system use.

ternum

Reserved for operating system use.
Figure 8-10.

Terminal Record Format, Subtype 0

o
6

63
notmsg

notwds

8
Word
6

ttime
12

Field

ternum

tterm
20

8

16

Description

notmsg

Number of messages to or from the terminal since login or since a
previous overflow record.

notwds

Number of words transferred to or from the terminal since login or
since a previous overflow record.

ttime

Time the terminal has been in use, in seconds, since login or since a
previous overflow record.

tterm

Reserved for operating system use.

ternum

Reserved for operating system use.
Figure 8-11.

60459420 F

Terminal Record Format, Subtypes 1 and 3

8-15

I

Disk File Management Records

Disk file accounting (type 3) records are issued whenever there is nondata transfer activity
for a file. Disk file records consist of a six-word header plus additional words, depending
on the record subtype. The format of the header is the same as for the task record header
(figure 8-4), except that the type field is 3, and the subtype field can be 0 (open),
1 (close), 2 (create), 3 (destroy), 4 (extend), 5 (reduce), 6 (change user number),
7 (change file name), or 8 (change account number).
The format of the additional words (words 6 and 7) when the subtype codes are 0 (open),
1 (close), and 2 (create) is the same as the format of a task record of subtype 0
(figure 8-5), except that the file named can be a data file as well as a code (executable)
file.
Three additional words are required (words 6,7, and 8) when the subtype codes are
3 (destroy), 4 (extend), and 5 (reduce). The first two words are the same as words 6 and 7
for subtypes 0, 1, and 2. The third word consists of two 32-bit fields. The leftmost field
gives the number of 512-word blocks in the file at the time that the destroy, extend, or
reduce record is written. The rightmost field gives the number of seconds that this file
existed under the user number, file name, account number, and size specified.
The format of the additional words when the subtype codes are 6 (change user number),
7 (change file name), and 8 (change file account number), is the same as words 6,7, and 8
for subtypes 3, 4, and 5. Word 9 contains the new binary user number for subtype 6, the new
file name for subtype 7, and the new account number for subtype 8.

8-16

60459420 E

Tape Records

Tape accounting (type 4) records are entered into the accounting file whenever a tape is
assigned to, or released from, a task. Tape records consist of a six-word header, plus
additional words depending on the record subtype. The format of the header is the same as
for the task record header (figure 8-4), except that the type field is 4, and the subtype
field can be 0 (assignment), or 1 (release).
When the subtype code is 0 (assignment records), the record word is shown in figure 8-12.
When the subtype code is 1 (release records), the record words are shown in figure 8-13.

63

0

I

6

Word

vsn

device

Field

6

Description

device

Device number of the tape unit.

vsn

Volume serial number.
Figure 8-12.

Tape Record Format, Subtype 0

o

63
device

vsn

16
rre

wre

7

48
dtce

stce

16

16

16

8

16

time

64
Word

Field
device

Device number of the tape unit.

vsn

Volume serial number.

wre

Total accumulation of write recoverable errors.

rre

Total accumulation of read recoverable errors.

stce

Total accumulation of single-track, hardware-corrected errors.

dtce

Total accumulation of double-track, hardware-corrected errors.

time

Tape hook-up time, in seconds.

6

7

Description

8

Figure 8-13.
60459420 E

Tape Record Format, Subtype 1
8-17

System Records

System accounting (type 5) records are entered into the accounting file when the system is
autoloaded or recovered, or when new date or time information is entered. A system record
consists of a six-word header, plus additional words depending on the record
subtype. The header consists of:
•

The first is as shown in figure 8-3, where the rightmost 40 bits are unused, and the
subtype codes are 0 (autoload), 1 (recovery), 2 (new date entered), and 3 (new time
entered).

•

The second word is unused.

•

The third word is the value of the master clock at the time this record was created.

•

The fourth, fifth, and sixth words are unused.

When the subtype code is 0 (autoload records), four additional words are used:
•

The seventh word contains the current date, eight ASCII characters in the format
mm/dd/yy, where mm, dd, and yy are decimal numbers signifying the month, day, and
year.

•

The eighth word contains the current time, eight ASCII characters in the format
hh:mm:ss, where hh, mm, and ss are decimal numbers signifying the hour, minute, and
second.

•

The ninth word contains the current central processor clock time in microseconds.

•

The tenth word contains the number of small pages currently available for subtypes
1, 2, or 3, and is unused for subtype 0.

Job Records

Job accounting (type 6) records are entered
of jobs. Job records consist of a six-word
and two to six additional words for subtype
as for the task record header (figure 8-4),
field can be
(job start), 1 (job end), or

°

8-18

into the accounting file for the start and end
header plus two additional words for subtype 0,
1 and 2. The format of the header is the same
except that the type field is 6, and the subtype
2 (change job).

60459420 H

The format of the job records is shown in figures 8-14, 8-15, and 8-15.1. The last word for
subtype 0 (job start) will be zeroes for any jobs not generated by BATCHPRO. If there is no
project number active for the job, the last four words of the subtype 1 (job end) record
will not be present.

o

I

63

7
64

8

do~

48

16

Word

Field

7

job name

Job or interactive session name associated with this job (in ASCII,
left-justified with blank fill).

8

dorg

Date when the job entered the input queue.

Description

yy
ddd
torg

The last two digits of the year (left 7 bits).
The number of days since the beginning of the year (right 9
bits).

Time when the job entered the input queue. Format is an integer
representing system clock, in seconds, since midnight.
Figure 8-14.

60459420 H

Format is yyddd:

Job Record Format, Subtype 0

8-19

I

o

63

7

job name

64
job sbu/stu

8

64
9

project number

64
project number

10

64
11

project number

unused

32

32
project sbu/stu

12

64

Description

Word

Field

7

job name

Job or interactive session name associated with this job (in ASCII,
left-justified with blank fill).

8

job sbu/
stu

SBU/STU amount accumulated for the total job.

9-11

project
number

1- to 20-character project number active for this job, left-justified
with blank fill. These three words will not be present if a project
number is not active for this job.

12

project
sbu/stu

SBU/STU amount accumulated for the listed project number. This word
word will not be present if a project number is not active for this
job.
Figure 8-15.

Job Record Format, Subtype 1

o

~

7

newjdn

8

jobname

64

Word

Field

Description

7

newjdn

The changed new value of jdn for the job.

8

jobname

Job name (ASCII, left-justified).
Figure 8-15.1.

8-20

64

Job Record Format, Subtype 2
60459420 H

Network Usage Records

Network usage (type 7) records are recorded in the system accounting file whenever RHF
receives or sends a file. The format is shown in figure 8-16.

o

o

63
07

length

subtype

8

8

nbs

unused

dd

4

20

16

8
account number

64
master clock

2

64
unused

nblks

st

3

16

24

24
4

user number

5

job/session name

64
64

6

fiic

netblks

nchars

24

36

4

file name

7

64
cpu

unused

8

32

32
Word

Field

o

subtype

Description
File:

o
1
2
3
4
length

Number of words in the record.

dd

Data declaration type:
C6
C8
US
UU

nbs

File character set < 64.
ASCII file and ASCII separators (file character set> 64).
Structured binary.
Unstructured binary.

Network block size indicator:

o
1
2
3
Figure 8-16.
60459420 F

Input queue file.
Output queue file.
Output data file.
Input data file.
Purge file.

Null
2880
3840
4064

transfer.
bytes.
bytes.
bytes.

Network Usage Record Format (Sheet 1 of 2)
8-20.1/8-20.2

I

Word

Description

Field
account
number

Account to be charged. For input files, the account is from the job;
for output files, the account from the file.

2

master
clock

Value of the master clock at the time the record was created.

3

st

Logical ID which identifies the CYBER front-end.

nblks

Number of 512-word blocks transferred to and from disk.

4

user
number

Binary user number.

5

job/
session
name

Job or interactive session name associated with this task.

6

nchars

Number of characters transferred on the network.

netblks

Number of network blocks transferred (number of C700/C701/C702
messages).

fiic

Internal format, subtype=l:

o
1

ASCII carriage control.
ANSI carriage control.

7

file name

Name of file on the CYBER 200 (name of job if QTFS).

8

cpu

CPU time, in microseconds.
Figure 8-16.

60459420 E

Network Usage Record Format (Sheet 2 of 2)

8-21

Channel Usage Statistics Records
Configuration (type 9, subtype 1) records are written to the account file at system
initialization time and whenever a new account file is started. The format is shown in
figure 8-17.
Global channel usage data (type 9, subtype 2) records are recorded at a periodic rate which
is set at system autoload time. The format is shown in figure 8-18.
IOLOG turns on and off the writing of these statistics to the accounting file. LOGINT sets
the time interval of collection. Refer to the VSOS 2 Operator's Guide for more information
about these parameters.

o
o

63
01

09

length

8

8

reef

8

nzips

unused

4

28

8

master clock

64

I

3

pu

devid

2

12
ponad

5,

8

pu

type

16
chan port

4

3

sonad

•
pu

devid

12
ponad

0

1

chan port

4

sonad

8
Word

3

reserved

5

unused

sinad

8

8
reserved

16

8

8

pzip

8

16

Field

pinad

szip

8
type

status bits

8

8
unused

8

sinad

8

8

reserved

8

16

Description

length

Total word length of this record.

recf

Multiple record flag.
record follows.

nzips

Number of zip codes.

master
clock

Value of the master clock at the time the record was created.

Figure 8-17.

8-22

pinad

8

•

6
7

16

•

•

I

8

reserved

szip

type

16

8

sinad

8

8

8

status bits

8

unused

pzip

8

pinad

8

8

reserved

5

szip

8

status bits

12
ponad

pzip

reserved

5

8

devid

4

3

sonad

8

I

chan port

4

If this field is set to 1, a continuation

Channel Usage Statistics Record Format, Subtype 1
(Sheet 1 of 3)

6045~420

F

Word

2, 4,
6

Description

Field
devid

Unique three-digit device number (hexadecimal):

oOI-lIoFF
1I100-1I1FF
11300-113FF
11500

RHF.

Maintenance control unit (MCU).

pu

Physical unit number.

chan

Channel number:

o

This field is used for disk only.

I

If no SCEX.
If on SCEX.

1-4

3, 5,

Disk.
Tape.

port

Port number for pzip (1 to #IU).

channel

Channel number.

pzip

Primary zip code for this device.

szip

Secondary zip code for this device.

pinad

Primary inboard (C2UU) network access device (NAD) number.

sinad

Secondary inboard (C200) NAD number.

ponad

Primary outboard (device) NAD number.

sonad

Secondary outboard (device) NAn number.

status
bits

Bits from SCTFILE describing the device status such as up/down or
on/off. This field is used by disk and tape only.

7

Disk status bits:
Description

Hit
16-19

Type installed on disk drive:

o
1
2
3
2U

Indicate whether disk drive is up or down (specified by
the operator) for use by the system:

o
1
21

1

60459420 F

Disk drive is down.
Disk drive is up.

Indicates whether or not disk contains a track fault
map:

o

Figure 8-17.

System pack.
Private pack.
System/drop pack.
Private/drop pack.

Disk does not have a track fault map.
Disk has a track fault map.

Channel Usage Statistics Record Format, Subtype 1
(Sheet 2 of 3)
8-23

Word

3, 5,
7

Description

Field
status
bits

Tape status bits:
Bit

Description

16
17
18
19
22

Primary NAD down bit.
Backup NAD down bit.
TAD1 down bit.
TAD2 down bit.
Single-access bit; set to 1 if TAD2 does not exist.
Unit assigned to the user.
Unit is read only.
Status down bit.
Use off bit.

28
29
30
31

Bits 16 through 19 are normally set to 0, unless the respective TAD
NAD is configured through the USE,NUM,NO command. If all TCD or TAD
NADs are down, the unit should be down and off.
type

NAD type:
1
2
3
4
8
9
A
H-F

Figure 8-17.

8-24

MCU interface NAD (MID).
Disk I/O channel NAD (DCD).
Tape I/O channel NAD (TCD).
RHF I/O channel NAD (RCD).
Disk controller NAD (DAD).
Tape controller NAD (TAD).
RHF remote system NAD (SHD).
Reserved.

Channel Usage Statistics Record Format, Subtype 1
(Sheet 3 of 3)

60459420 E

o
o

63
02

09
8

length

8

reserved

reef

8

36

4
master clock

64
2

number of boats

64

•
•

•
number of boats

2n

3

unused

devid

12
4

64
sumio

4

48

read/write requests

data units transferred

32
5

32

function requests

data patterns

32
6

devid

7

unused
12 4

32
sumio

48

read/write requests

data units transferred

32
8

32

function requests

data patterns

32

32

•
••
9

unused

devid

12
10

sumio

48

4

read/write requests

data units transferred

32
11

function requests

32
data patterns

32

32

•

••
Figure 8-18.

60459420 F

Channel Usage Statistics Record Format, Subtype 2 (Sheet 1 of 2)

8-25

•

Word

Field

Description

length

Variable length is dependent on the number of devid entries containing
data.

recf

Multiple record flag.
record follows.

1

master
clock

Value of the master clock at the time the record was created.

2-2n

number of
boats

Number of boats on the corresponding positional zip code.

3, 6,
9

devid

Unique three-digit device number (hexadecimal):

0

IIOOI-IIOFF
11100-1/1 FF
11300-113FF
11500

4, 7 ,
10

If this field is set to 1, a continuation

Disk.
Tape.
RHF.
MCU.

sumio

Summation of I/O requests to completion times, in microseconds, for
this device.

read/write
requests

Number of read/write requests on this device.

data units Number of data units transferred for this device unit.
transferred
32 768 bits for 819 disk.
32 bits for tape.
32 bits for RHF.
16 bits for MCU.
5, 8,
11

function
requests

Number of nonread/nonwrite requests for this device.

data
patterns

Number of data pattern written (819 disk only).

Figure 8-18.

8-26

Channel Usage Statistics Record Format, Subtype 2 (Sheet 2 of 2)

60459420 E

Periodic System Records
Periodic system (type A) records are recorded at a periodic rate that is set at system
autoload time. This is done at the same periodic rate as that of channel usage records.
The time and counters in the periodic system record are accumulative since the last
autoload. The format is shown in figure 8-1Y.

o

63
0

A
8

unused

len

8

40

8

2

hhmmss

3

kernel

64
64

pager

4

64
5

vscpu

64
user

6

64
7

wait

8

idle

64
64

9

uspf

ulpf

32
A

32

sspf

slpf

32
Word

Field

32
Description

1

len

Length of the periodic system record (which is a mlnlmum of 10, plus
the number of disk drives divided by two, plus the number of tapes
that are currently configured).

2

hhmmss

Value of the master clock at the time the record was created.

3

kernel

KERNEL time, in microseconds.

4

pager

PAGER time, in microsecond,s.
Figure 8-1Y.

6045Y420 F

Periodic System Record Format (Sheet 1 of 2)

~-27

Word

Field

Description

5

vscpu

Virtual system time, in microseconds.

6

user

User time, in microseconds.

7

wait

I/O wait time, in microseconds.

8

idle

Idle time, in microseconds.

9

uspf

User small page faults.

ulpf

User large page faults.

sspf

System small page faults.

slpf

System large page faults.

A

Figure 8-19.

•

8-28

Periodic System Record Format (Sheet 2 of 2)

60459420 F

Periodic Job Records
Periodic job (type B) records are recorded at a periodic rate which is set at system
autoload time. This is done at the same periodic rate as that of channel usage records.
This record is not written to the accounting file if there are no jobs currently in the
system. The format is shown in figure 8-20.

o

63
len

0

B

8

8

unused

8

nopage

16

8

2

maxws

16

jobname

64
tcpu

3

mws

cws

cbc

4

clp

16

16

ws2sm

5

16
task

16

16
level

32

Word

mlp

16

32

Field

userno

24

8
Description
This value is 1 + 4

*

len

Total word length of this record.
jobs currently in the system).

nopage

Count of committed memory blocks.

maxws

Maximum allowable working set.

2

jobname

Job name.

3

tcpu

User execution CPU timet in microseconds.

mws

Maximum working set.

mlp

Maximum large page.

cbc

Current block count.

cws

Current working set.

clp

Current large page count.

task

Task number.

ws2sm

CPU time the task was confined to its maximum working set limit.

level

Level of task.

userno

User number.

4

5

If level=lt this task entry is the batch processor.

Figure 8-20.

60459420 E

(number of

Periodic Job Record Format

8-29

STANDARDIZED ACCOUNTING ENHANCEMENTS
This chapter describes the set of standardized accounting enhancements (SAE) for use on
VSOS. It includes the algorithm for computing SBUs and also describes the variable rate
accounting (VRA) feature.
Accounting calculations are a part of the virtual system. At the end of each accounting
period on VSOS, the SBUs used for a task are computed and entered into accounting records.

CALCULA YION OF SBUs

The formula for calculating SBUs is based on usage, system resource variable rate factor
(VRF), and service level factor. The algorithm used in standardized accounting enhancements
is shown in figure 8-21.
(W(I),I=I,19) is the set of weighting factors associated with the set of system resources
(SR(I),I=I,19). A set of installation parameters representing these factors is maintained
by the system.
SBU=PF(SL)*(VRF(VRI)*W(I)*SR(I)+SUM(W(I)*SR(I),
1=2,19»
PF

Weighting factor for priority or
service level.

SL

Service level index.

VRF

Variable rate factor.

VRI

Variable rate index.

Figure 8-21.

Algorithm for SBU Calculation

System resources are described as shown in table 8-4. The value for each system resource is
determined by the system, dependent on the user task activity in the current accounting
period.

8-30

60459420 E

Table 8-4.

System Resources

SR(I)

I

Description

1

UCPU

User CPU execution time (microseconds) used during this accounting
period.

2

SCPU

System CPU time (microseconds) used during this accounting period.

3

MEMU

Memory usage during this accounting period:
time.

4

LPACCX

Number of disk accesses (I/O requests issued) for large page explicit
reads and writes during this accounting period.

5

LPACCI

Number of disk accesses (I/O requests issued) for large page implicit
writes during this accounting period.

6

SPACCX

Number of disk accesses (I/O requests issued) for small page explicit
reads and writes during this·accounting period.

7

SPACCI

Number of disk accesses (I/O requests issued) for small page implicit
writes during this accounting period.

8

SPSECX

Number of disk sectors transferred for explicit reads and writes
during this accounting period.

9

SPSECI

Number of disk sectors transferred for implicit writes during this
accounting period.

10

LPGFLT

Number of large page faults (accesses,
during this accounting period.

11

SPGFLT

Number of small page faults (accesses for faults) during this
accounting period.

12

TAPWDS

Number of 16-bit bytes transferred to or from tape during this
accounting period.

13

TAPACC

Number of tape accesses, one for each read or write during this
accounting period.

14

TAPFNT

Number of tape functions (other than read or write) during this
accounting period.

15

AVWSS

Average working set size during this accounting period.

16

VSCALLS

Number of virtual system user calls made during this accounting period.

17

LLPC

Number of large pages lost.

18

LSPC

Number of small pages lost.

19

WS2SML

CPU time (microseconds) that task's working set size limit appeared to
be too small.

60459420 E

i/o

working set size

*

CPU

requests issued) for faults

8-31

VARIABLE RATE ACCOUNTING

Private control lee files running on the system have a standard rate at which the SBUs they
consume during execution are charged. Certain other controllees, such as public utilities
or applications packages, can be charged at a different rate whose relation to the standard
rate is determined by the variable rate f?ctor and service level factor.
The set of defined VRFs is maintained in a virtual system table known as the variable rate
table, T VRF. The set of service level factors, which control job cost dependent on job
class (high priority, priority, interactive, batch, or standby), are located in the virtual
system table T PF. SAE makes provisions for the maintenance and use of these two tables.

Variable Rate/Service Level Tables

The variable rate table (T VRF) is the image of the variable rate chapter of the Q5VRF file
as it existed at autoload time. Similarly, the service level table T PF is the image of the
service level chapter of the Q5VRF file at autoload time.
The variable rate index assigned to an executing controllee (refer to EDITPUB and Dynamic
Variable Rate Accounting Call in Chapter 4, Volume 1 of the VSOS Reference Manual) provides
an offset into T VRF. The user CPU component of SBUs for this controllee is directly
proportional to the variable rate factor pointed to by the VRI. A variable rate factor of
1.0 represents a rate equal to the standard installation charge. It is suggested that the
installation enter some default value (such as 1.0) in the first entry of the variable rate
chapter of Q5VRF, because all system files will be initially created with a default VRI
setting of O.
The service level or priority of a job provides an offset into T PF. The SBU calculation
for this job is directly proportional to the service level factor pointed to by the SL.

Variable Rate File

The variable rate file is partitioned into two chapters, a set of variable rate entries and
a set of service level entries. The format of the file is shown in figure 8-22.
A variable rate entry consists of two fields, a variable rate factor and a password. The
variable rate factor is one word containing a 6'4-bit, floating-point number. The password
is one word containing eight ASCII characters, left-justified and blank-filled. If no
password is desired for this entry, the field may be set to binary O.
A service level entry is one word containing a service level factor.
floating-point number.

8-32

This is a 64-bit,

60459420 E

o
0

63
variable rate factor (0)
64

1

password (0)
64

2

variable rate factor (1)
64

3

password (1)
64

•••
403 0

I

variable rate factor (2015)
64

403 1

password (2015)
64

403 2

service level factor (1)
64

I

••
•

409 5

service level factor (64)
64

Figure 8-22.

60459420 F

Q5VRF File Format

8-33

Virtual System Table Definition

If an installation allows variable rate processing (determined by installation parameter IP
F VR), the following steps are taken at autoload time. If the installation parameter IP F
VR is set to 0, meaning that variable rates are not valid at this installation, the vari~ble
rate table is never allocated, and no variable rate processing is done. Also, the service
level table is not allocated, and no service level factoring of SBUs will be done.
AUTOCON locates the PFI entry for the mass storage file which contains the set of entries
for the variable rate table and the service level table.
The file name Q5VRF and the system user number are used as defaults by AUTOCON. Refer to
the configuration table display for AUTOCON in the VSOS 2 Operator's Guide for more
information. An alternate file can be specified by entering the line:
VR = file name, user number
at AUTOCON execution time.

If the file is not found, AUTOCON displays the message:

VARIABLE RATE FILE NOT FOUND
and allows the operator to either correct the file name or continue without retrying.

File Maintenance

Q5VRF is maintained as a private file under the system user number 999998. The LOOK utility
can modify or display the contents of Q5VRF. If the file entries are changed, an autoload
must be done to load the new values into the virtual system variable rate table.

8-34

60459420 E

SYSTEM DAYFILE
The system dayfile is a record of all significant system events, including job dayfile
entries. (A job dayfile records the processing of a single batch job.) The following
paragraphs describe the general dayfile entry format and the specific formats of each entry
type.
The system dayfile is a printable file, owned by the system user number, that contains the
following types of entries:
•

Dayfile entries

•

System entries

•

Label entries

•

Diagnostic entries

Dayfile entries include user dayfile entries, all interactive commands, errors from the
batch processor, privileged system task errors, and errors from the terminal input processor.
System entries include all operator commands, all messages sent to the operator, and all
illegal terminal 10gins.
A label entry is written when the file is created. It includes the name of the current
system dayfile, the name of the previous system dayfile, and the name of the next system
dayfile.
Diagnostic entries are written by customer engineering diagnostics.
The current active dayfile has the name specified by installation parameter IP_SDF_¢NAME.
The value used at system release is Q5SDF. If no active dayfile exists during system
initialization, the system creates one. The system also creates a second file named
according to installation parameter IP_SDF2_¢NAME. The resulting release value is Q5SDF.
When the current active dayfile becomes full, the system performs the following steps.
1.

Changes the name of the current primary file to Q5Ddddnn, where ddd is the day
number computed when the file was activated and nn is a sequence number, modulo
100. The system detaches the file.

2.

Changes the name of the current secondary file to the primary file name (determined
by installation parameter IP_SDF_¢NAME).

3.

Creates a new secondary file. (The size of this file is determined by the
installation parameter IP_SDFSIZE.)

All users can make system dayfile entries. Only privileged/authorized users can do so
without also putting the message into the job dayfile. All users are able to make job
dayfile entries without putting the message into the system dayfile.

60459420 F

8-35

I

GENERAL FORMAT OF SYSTEM DAYFILE ENTRY
The general format of the system dayfile entry is as follows:
hh.mm.ss xxxx text
or
text
*
hh.mm.ss

Master clock at the time the entry was made.
column 2 and is preceded by a space.

This field starts in

xxxx

Entry type. This field starts in column 11, is preceded by a space, and
is four characters long. This field can have one of the following
values:
USER
SYST
LABL
DIAG

text

String of characters as defined for the entry type (refer to the entry
type format description). This field starts in column 16, is preceded
by a space, and is up to 2020 characters long.

*

An asterisk in column 6 indicates that this line is a continuation of
the previous line.

The dayfile is an SIL R format file where each entry line is terminated by a #IF character
code. The last entry line is terminated by character codes #IF and #le. All fields in the
text are separated by one or more blanks.

8-36

60459420 E

USER ENTRIES

A USER type system dayfile entry is written as a result of the following system events:
•

The system writes an entry in a job dayfile.

•

The user enters a control statement at a terminal.

•

The terminal input processor returns an error to a terminal.

•

The batch processor returns an error to a job dayfile.

•

A privileged system task returns an error to the user.

•

A task calls QSSNDMDF with either BOTH or SDFUSER specified.

I

The format of the system dayfile entry resulting from a job dayfile entry is as follows:
hh.mm.ss USER un jdn jn message
or
message
*
un

User number for this entry (six decimal digits).

jdn

Job descriptor number of the job (four decimal digits).

jn

Batch job file name.

message

First 2000 characters of the job dayfile entry, starting in column 34.

I

The format of the system dayfile entry when the user enters a control statement from the
terminal is as follows:
hh.mm.ss USER un jdn message
or
message
*
un

User number for this entry.

jdn

Job descriptor number of the job (four decimal digits).

message

First 2000 characters of control statement, starting in column 34.

I

The format of the system dayfile entry for privileged system task errors, errors from the
terminal input processor, and errors from the batch processor is as follows:
hh.mm.ss USER un jdn message
or
message
*
un

User number for this entry.

jdn

Job descriptor number of the job (four decimal digits).

message

First 2000 characters of error message, starting in column 34.

60459420 H

I
8-37

SYSTEM ENTRIES
A SYST type system dayfile entry is written as a result of the follwing three events:
•

The operator enters a command.

•

The user task sends a message to the operator.

•

The user enters an illegal login.

The format of the system dayfile entry when the operator enters a command:
hh.mm.ss SYST message
or
message
*
message

First 2000 characters of the operator command, starting in column 34.

A system dayfile entry is written when a user task sends a message to the operator.

It is
not written when the message to the operator is a system error condition and the dayfile has
been turned off (refer to the TMSF operator command description in the VSOS 2 Operator's
Guide). The format of this type of system dayfile entry is:
hh.mm.ss SYST un jdn tn message
or
message
*
un

Task user number for this entry.

jdn

Job descriptor number.

tn

Task name.

message

First 2000 characters of the message being sent to the operator.
message starts in column 34.

The

The. format of the system dayfile entry when a user enters an illegal login command is as
follows:
hh.mm.ss SYST message
or
message
*
message

8-38

First 2000 characters of the illegal login command, starting in column
34.

6045Y420 E

LABEL ENTRIES
The header label is written when a new system dayfile is started.

The format is:

I

hh.mm.ss LABL fn If nf dd/mm/yy rs vs sysid mid ps
fn

Name of this file will be given when it is deactivated; eight characters
in the format Q5Ddddnn.

If

Name of last file; eight characters in the format Q5Ddddnn.
blank if there was no previous file.

nf

Name of the next file to be started; eight characters in the format
Q5Ddddnn.

dd/mm/yy
rs
vs
sysid
mid
ps

This is

Current date.
Resident system version; eight characters in the format RSxxxxxx.
Virtual system version; eight characters in the format VSxxxxxx.
System ID/pool; eight characters.
Machine ID; one character.
Page size; two characters.

DIAGNOSTIC ENTRIES
The format of diagnostic entries written by customer engineering diagnostics is:
hh.mm.ss DIAG message
or
message
*
message

60459420 F

First 2000 characters of the diagnostics message, starting in column 34.

8-39

9

COMMON EXECUTE LINE SUPPORTING ROUTINES

This chapter contains information for a system programmer who is interested in developing an
application or utility.

CONVENTIONS
A control lee execute line is entered for processing by VSOS either as a batch processor
control statement or as an interactive terminal type-in. An execute line can occur as one
or more physical records representing card images or terminal lines. From the point of view
of the common execute line supporting routines, an exact correspondence exists between batch
commands and terminal commands, including continuation of the command text to more than one
card or terminal line. (From the point of view of the user, however, this correspondence
does not exist.)
Standard processing is done on five types of linguistic expressions called tokens.
tokens are:
•

Alphanumeric identifiers.

•

Decimal numeric constants.

•

Hexadecimal numeric constants prefixed by the character

•

Character or string constants delimited by the character ".

•

The special characters, which are / II

II

& • )

The H character is referred to in text as a hash mark.

,

The

H.

= and blank.
The & character is an ampersand.

Execute line options are defined by means of positional or keyword-identified values.
Standard diagnostics are issued if abnormal syntax or conditions are encountered.
A set of four system library routines are to be used to guarantee adherence to the
conventions previously stated. The routines are:
Routine

Description

Q7ENVIRN

Determines the program environment.

Q7KEYWRD

Processes the text of an execute line.

Q7MODE

Determines if the task's controller is a terminal.

Q7PROMPT

Provides interaction with the controller; collects parts from several input
records, and builds the complete character string for processing by Q7KEYWRD.

60459420 H

9-1

When a controllee execute line requires more than one terminal line, an ampersand must be
used to designate continuation to the subsequent line. Card image continuation is performed
automatically during batch processing if a terminator character has not been encountered.
The ampersand signals a logical end of record and can be followed by comments. The text of
the execute line consists of two or more tokens: the first is alphanumeric and identifies
the task name, while the last is a special character called a terminator. The terminator
characters are a period and right parenthesis. An implicit terminator occurs at the end of
a terminal line that does not contain an ampersand. Comments can be placed immediately
following a terminator character or an ampersand. The following execute lines are
equivalent:
SAMPLE ,A.

optional comments

SAMPLE&,A.

optional comments

SAMPLE A
A parameter list can follow the task name but must precede the terminator character.
Order-dependent parameters must be in the order specified; key-dependent parameters can
appear in any order. Parameter formats depend on the control statement specified, but they
always follow the same general guidelines.
Consecutive parameter list items are separated by level-l separator characters comma and
blank. In addition, the left parenthesis acts as a level-l separator between the task name
and the parameter list. A parameter list item can be defined by a list of user numbers or
file names. These values are also separated by the level-l parameter separators. A file
name can be followed by attributes of disposition code or length, with attributes separated
from each other by the level-2 separator character slash.
Blank is a special character and only performs a separator function when not used with other
separators or terminators. Any level of separator can be preceded or followed by blanks,
which serve only to highlight the separator; in a similar fashion, the terminator characters
can be preceded by highlighting blanks.
System utilities or tasks provide default settings for all on/off options. In addition, the
input, output, and binary file options have the default names INPUT, OUTPUT, and BINARY.
Where tasks create files for the user, the task can determine the necessary file size or the
user is allowed to submit an estimate of an adequate size. Tasks that create files also
determine the disposition of the file upon task completion. The user has the opportunity to
specify file disposition.
The task name is constructed of one to eight letters and digits. Except where reference is
made to a drop file, the first character must be a letter. The task name is bound on the
left by the start of the command and on the right by a level-l separator or a terminator.

9-2

60459420 E

Order-dependent parameters are strings of nonseparator, nonterminator characters. Their
interpretation is strictly a function of the particular product. An order-dependent
parameter list is ended by a terminator or by the occurrence of a key-dependent parameter.
The following are examples of execute lines using order-dependent parameter lists:
COPY(FILEA,FILEB)
PURGE,FILE1,FILE2,FILE3.
A key-dependent parameter has the general structure shown in figure
an example of an execute line using a key-dependent parameter list:

9~1.

The following is

FTN(I=COMPILE,L=OUTPUT,B=BINARY/PU/#240)

key=defns
key

A string of letters and numbers, 1 to 255 characters, delimited to the left
by a level-1 separator and on the right by an = character, a separator, or a
terminator.

defns

Strings of nonseparator, nonterminator characters whose interpretation is
strictly a function of the particular product and the key identifier.
Figure 9-1.

Key-Dependent Parameter Format

Examples of the use of both parameter forms are:
WXYZ(FILE1,FILE2,OU=MAPFILE)
To ensure that ambiguities do not arise, the programmer calling the keyword word processors
must not allow the following:
•

A parameter resembling a file name to follow a file name list unless that parameter
has a key.

•

A parameter resembling a user number to follow a user number list unless that
parameter has a key.

•

A parameter resembling a text string to follow a text string unless that parameter
has a key.

60459420 E

9-3

Parameter values can be strings of letters and digits, decimal digit strings, hexadecimal
digit strings, and character strings delimited by quotation marks. In some cases, the
alphanumeric string can occur as two decimal digits followed by one to six letters and
numbers. This exception is provided to accommodate drop file names. Decimal digit strings
are normally interpreted as decimal constants; a hexadecimal constant is normally preceded
by a hash mark. Values that must be virtual bit addresses are always hexadecimal values
even if the hash mark is not present. In some cases, such as the GROS option of the loader,
a hash mark is required to distinguish the address from identifier data in the same list.
Some examples are:
WXYZ(EN="! FILE!" ,OU=MAP/f/lO)
WXYZ(FILE,OU=MAP/16,LI=SYSLIB,MYLIB)
PURGE,12DROP,JUNK.
COPY,42DROP,SAVEDROP.
Lists of values are as order-flexible as the values permit; the user is normally given
maximum flexibility consistent with the task requirements. The following equivalent
parameter strings illustrate this flexibility:
B=FILE/IO/PR
B=FILE/PR/IO
All key-dependent parameters have on and off settings where appropriate, and can be turned
on and off. Turning on keys can be accomplished by means of a key=l parameter, or by use of
the key name only; these keys can also be turned off by means of a key=O parameter. File
identification keys should be turned off with key=O. Where the option is normally off, a
parameter of the form key=filename turns the option on for a specific file, while use of .the
key name only turns the option on for a default file.
The following execute lines are equivalent, and illustrate the on/off ability:
IMPL,X.
IMPL,I,X=l.
IMPL,X,I=INPUT,B=BINARY/#40.

9-4

60459420 E

SUPPORTING ROUTINES
Common execute line standards are supported by four subroutines from the system library.
The subroutines, which are callable from FORTRAN, META, and IMPL, are:
Subroutine

Description

Q7ENVIRN

Determines the program environment of the calling task. The task may be in
one of three environments: batch, interactive, or no level-1 controller.

Q7MODE

Determines whether the parent controller of the calling task is a terminal
or another task. A batch job falls into the latter category.

Q7PROMPT

Inputs parameters to be passed to Q7KEYWRD for syntax checking. It prompts
terminal users for input if no parameters are specified in the execute
line. It also strips the trailing period or matching outside parenthesis
characters from the parameter text before calling Q7KEYWRD.

Q7KEYWRD

Examines a character string, checks its syntax, and converts data to
internal format. In the case of a detected error, it prints error messages
and requests; in interactive mode, it permits error correction by accepting
reinput of an execute line parameter. Also, in interactive mode, Q7KEYWRD
can be set to request and input each parametric keyword through the use of
an appropriate prompting message.

Assembly language routines call any of these subroutines by using the FORTRAN or IMPL type
of calling sequence, while FORTRAN and IMPL programs access the routines using CALL
statements.
If the main program is coded in FORTRAN, the original execute line is processed by FORTRAN
initialization for run-time file substitution. In interactive mode, the program may
subsequently call Q7PROMPT or Q7KEYWRD for other lines.

Q7ENVIRN

The function of this subroutine is to determine a task's program environment and to return
the information in a full word whose variable name is supplied as the only parameter to the
Q7ENVIRN routine. A full word is defined as a 64-bit word that is aligned on a word
boundary. The call statement format of Q7ENVIRN is shown in figure 9-1.1.

Q7ENVIRN (environ)
environ

A full-word variable in which one of the following values is returned:
0

The task is executing from within a batch job.

1

The task is executing from within an interactive session.

2

The task does not have a level-1 controller (for example, QTF,
PTFS, or QTFS).

Figure 9-1.1.

60459420 H

Q7ENVIRN Call Statement Format

9-5

•

Q7MODE

I

The function of this subroutine is to determine if a task's controller is a terminal and to
return the information in a full word whose variable name is supplied as the only parameter
to the Q7MODE routine. A full word is defined as a 64-bit word that is aligned on a word
boundary. The call statement format of Q7MODE is shown in figure 9-2.

CALL Q7MODE (mode)
mode

A full-word variable in which one of the following values is returned:

o

Controller is not a terminal.

1

Controller is a terminal.
Figure 9-2.

9-6

Q7MODE Call Statement Format

60459420 H

Q7PROMPT

This routine serves as an interface between a calling routine and the Q7KEYWRD subroutine.
It inputs user parameters into an input buffer, then passes the text to Q7KEYWRD for syntax
checking. If no text is specified on the execute line, Q7PROMPT can prompt the interactive
user for parameters, using the message PLEASE SPECIFY PARAMETERS or a message provided by
the calling routine; otherwise, if no text is specified on the execute line, it can proceed
with a call to Q7KEYWRD, optionally setting bit 60 in the options parameter, which causes
Q7KEYWRD to prompt for individual keywords.
An input buffer can either be supplied by the calling routine or allocated by Q7PROMPT.
Delineator characters, such as matching outside parentheses or a trailing period, are
deleted from the input text prior to the call to Q7KEYWRD.
Input text can be continued on succeeding lines in interactive mode, provided that an
ampersand (continuation character) is appended to each line.
The call statement format of Q7PROMPT is shown in figure 9-3. The opt, r, rbuf, rlen, and
ti parameters are not used by Q7PROMPT, but are passed to Q7KEYWRD for use in syntax
checking. If a text string is not specified in the controllee execute line and the
p parameter is not negative, Q7PROMPT prompts for parameters and saves them in a buffer with
the name specified as the buf parameter.
CALL Q7PROMPT (txt,p,opt,r,buf,blen,rbuf,rl~n,t1, ••• ,tn)t
txt

Text string to be passed to Q7KEYWRD.
carriage control characters.

p

Indicates whether prompting is desired:
)0
0

The string must contain any desired

Number of character bytes in txt.

Use txt to prompt for parameters.

Use the text string PLEASE SPECIFY PARAMETERS to prompt for
parameters.

-1

Do not prompt for parameters.

The value of the variable bIen is O.

-2

Do not prompt for parameters.

Options bit 60 should be O.

-3

Do not prompt for parameters.

Wait for message.

buf

Name of buffer file into which the parameters are to be read. If the bIen
field is 0, the buf field is the name given to a buffer provided by Q7PROMPT.

bIen

Name of a full-word variable whose nonzero value indicates the number of
character bytes in buf. If the value of bIen is 0, no buffer is provided by
the caller; in this case, Q7PROMPT allocates a 4096-character buffer named
buf. A count of the number of characters actually read is returned by the
system into the bIen field.

tThe opt, r, rbuf, rlen, and ti fields are described under the Q7KEYWRD call statement.
Figure 9-3.

60459420 H

Q7PROMPT Call Statement Format

9-6.1/9-6.2

I

Q7KEYWRD
The keyword subroutine scans a line of text, checks syntax, and converts data to internal
formats. It prints error messages and inputs replacement expressions as required. Q7KEYWRD
processes text containing both positional and keyword type parameters. The calling routine
provides Q7KEYWRD with syntax tables that completely describe the general format of the
input parameters. Q7KEYWRD uses the tables to interpret the specific parameters in the
execute line test. These input parameters, called keyword expressions, are written as
follows:
keYl keY2 keY3 • • •
Each keYi is separated from other keyword expressions by one or more blanks or by commas,
and has one of the following formats:
lhs

=

rhs

lhs
rhs
The syntax
expression
cases, lhs
Each keYi,

tables for each keYi keyword relate the valid left-hand sides (lhs) of the
to valid right-hand sides (rhs). This includes specifying whether the degenerate
and rhs, are to be treated as having no left-hand side or no right-hand side.
then, can be anyone of the following possibilities:

lhs(l )

rhs( 1 ,1)

lhs(l)
Ihs(2)

rhs(l,n1)
rhs(2,l)

Ihs(m)

=

rhs(m,nm)

m is the number of possible left-hand sides for the expression, left-hand side k having nk
possible right-hand sides.

60459420 E

9-7

The syntax tables also specify positional relationships among the keyword expressions. A
given expression, keYi, can be flagged as positional, meaning that it must appear after
expressions keY1, • • • , keY(i-1) but before the expressions keY(i+1) • • • If an
expression (keYi) is not flagged as positional, it can appear in any order with preceding
or succeeding nonpositional expressions; so, if keYi, keY(i+1), and keY(i+2) are
nonpositional, any of the following are v~lid:
key(i), key(i+1), key(i+2)
key(i), key(i+2), key(i+1)
key(i+1), key(i), key(i+2)
key(i+1), key(i+2), key(i)
key(i+2), key(i), key(i+1)
key(i+2), key(i+1), key(i)
The syntax tables also indicate which keYi parameters are required in the execute line
text. If a parameter flagged as required is not encountered in its required location, an
error message is issued.
Left-hand sides for an expression include:
•

None (the degenerate case, lhs).

•

A literal character string, 1 to 255 characters long.

Right-hand sides for an expression include:
•

None (the degenerate case, rhs).

•

A literal character string, 1 to 255 characters long.

•

An arbitrary character string, 1 to 255 characters long.

•

Any remaining unscanned text, up to 255 characters maximum.

•

A number in the range 0 to 247-1 (table setting indicates whether the number can
be decimal, hexadecimal with a leading # character, or an address in hexadecimal
with no leading # sign required; table settings can also indicate the range of the
number if the default range is not sufficiently restrictive).

•

A user number.

•

A file name (table settings indicate whether a drop file name can be specified and
whether the length, print, and punch attributes can be specified).

Lists of numbers, user numbers, and file names separated by slashes, blanks, or commas can
be allowed as right-hand sides. A field in the syntax tables indicates that lists are to be
allowed and specifies the maximum number of elements permissible.

9-8

60459420 E

The entry point Q7KEYWRD is used for both FORTRAN and IMPL calling sequences. The call
statement format of Q7KEYWRD is shown in figure 9-4. The lhs table pointers are illustrated
in figure 9-5. Each entry in an lhs table points to an rhs table (also full-word-aligned)
that describes valid right-hand sides for the given left-hand side and specifies the format
in which information is returned in the return buffer to the calling routine.

CALL Q7KEYWRD(opt,r,buf,blen,rbuf,rlen,ti, ••• ,t n )
opt

Name of a full-word variable, the rightmost 5 bits of whose value indicate the
following options:
Bit

r

Description

59

If 0, send error message to the terminal.
message to the caller.

60

If 0, scan the input for keyword expressions. If set to 1, prompt
for each keyword listed in the tables ti, ••• ,t n •

61

If 0, or if user enters "cancel" in response to interactive prompt,
abort on syntax error. If set to 1, return to caller on either
condition.

62

If 0, prompt for replacement on syntax error.
prompt for replacement.

63

If 0, send error messages to program controller for output.
to 1, do not output error messages.

Name of full-word variable to contain return codes.

°
1

2
3
4
5
6
7
8

If set to 1, return error

If set to 1, do not

If set

Return codes are:

Text scanned successfully.
Internal error; or parameters processed did not match any left-hand
side or right-hand side tables; or user entered "cancelli in response
to interactive prompt.
Return buffer too small.
Incorrect number of parameters in Q7 PROMPT/Q7 KEYWORD call line.
Invalid type field in lhs table entry.
Invalid type field in rhs table entry.
Invalid flags field in rhs table entry.
Words field for return buffer entry exceeds 255.
Options field bit 60 is 1, and prompt message length or address in
lhs table header is 0.
Code 1 is returned only if bit 61 of opt field is 1.

Figure 9-4.

60459420 E

Q7KEYWRD Call Statement Format (Sheet 1 of 2)

9-9

buf

Virtual bit address of string to be scanned for keyword expressions.
field is not used if prompting is requested (options bit 60 is 1).

bIen

Name of full-word variable whose value specifies the number of characters in
the string indicated by buf~ This field is not used if options bit 60 is 1.

rbuf

Virtual bit address of the full-word-aligned buffer (the return buffer) in
which reformatted keyword information is to be returned.

rlen

Name of full-word variable whose value specifies the number of characters in
the return buffer.

ti

Virtual bit address of full-word-aligned lhs table (figure 9-5) that describes
acceptable syntax constructs and specifies formats for the returned
information. The number of addresses varies with the syntax of the line being
scanned.
Figure 9-4.

This

Q7KEYWRD Call Statement Format (Sheet 2 of 2)

Ihs
tablej

••
•
-

L

rhs
tablej1

rhs
tablej2

•
•
•
rhs
tablejn

Figure 9-5.

9-10

lhs Table Pointer Configuration

60459420 E

Ihs Table
An lhs table consists of contiguous, variable-length, full-word-aligned
valid keyword expressions. The entries describe the left-hand sides of
turn, point to tables whose entries describe valid right-hand sides. A
positional and existence requirements of ,the keywords described by this

entries describing
expressions and, in
header relates
table.

The lhs table format is shown in figure 9-6. The table header contains two words in the
format shown in figure 9-7. Each lhs entry has the format shown in figure 9-8.

table header
Ihs entry

Ihs entry

1.

i..,

7

o entry

Figure 9-6.

60459420 E

type=O entry marking the
end of the table

lhs Table Format

9-11

63

o

o

flags

8

count

prompt_len

Word

Field

o

flags

8

table

8

unused

prompt

16

40
48

Description
Bits that are set to describe keywords:
Bit

Description

6

If 0, entries describe a keyword that is not positional (that
is, the keyword described can appear in any order with
preceding or succeeding nonpositional keywords); if set to 1,
entries describe a positional keyword.

7

If 0, entries describe an optional keyword; if set to 1,
entries describe a required keyword (if no match is found, an
error message is issued).

count

A value that specifies the maximum number of times this table can be
used to effect a keyword match.

table

A value set by the caller and returned in a return buffer entry on a
successful lhs and rhs match. (The return buffer is described later
in this chapter.)

prompt_len A value that specifies the number of characters in a message whose
address is given in the prompt field; valid only when the options bit
60 is set to 1.
prompt

Address of the text to be output as a prompt to request keywords
associated with this table; valid only when the options bit 60 is set
to 1. Any ASCII carriage control characters desired must be embedded
in the text of the prompting message.
Figure 9-7.

9-12

lhs Table Header Format

60459420 E

o
o

63
type

pointer

left

8
min

48

8
keyword

chars

8

8
1.,

1.,

(0 to 7 blanks for alignment
on word boundary)

Word

o

Field
type

Description
Entry type.

o
1
2

The values are:

End of the table.
There are no left-hand sides.
The keyword expression contains a left-hand side.

I

I NOTE I
Where both a literal character string and an
arbitrary character string may be used as
parameters, the arbitrary character string
must follow the literal character string for
the parameters to be interpreted correctly.

1

left

A value set by the caller and returned in the return buffer entry upon
a successful left-hand side and right-hand side match.

pointer

Address of the table describing right-hand sides that are valid with
this particular left-hand side.

min

Minimum number of characters needed in the left-hand side before
attempting a substring match against the keyword (type=2).

chars

The number of characters in the keyword if the type field is 2; must
be 0 if the type is 1.

keyword

Text to be used in validating the left-hand side of the expression
(type=2).
Figure 9-8.

60459420 G

lhs Table Entry Format

9-13

rhs Table
The rhs table contains contiguous, variable-length, full-word-aligned entries that describe
valid right-hand side expressions. The table format is shown in figure 9-9. The first word
of each rhs entry has the format shown in figure 9-10.
When the type field is 0, the rhs table entry is one word having the format shown in
figure 9-10, but with the right, flags, and count fields unused. When the type field is 1,
the rhs table entry is one word having the format shown in figure 9-10, but with the flags
and count fields unused. When the type field is 2, the format of the rhs table entry is as
shown in figure 9-11. When the type field is 3, the format of the rhs table entry is as
shown in figure 9-12.

rhs entry

rhs entry

i..,

1.

o entry
Figure 9-9.

9-14

7

}

Type=O entry marking
the end of the table

rhs Table Format

60459420 E

16

0
type

1

81

flags

right

63

23

81

81

count

unused

81

Field
type

321

Description
Entry type number. The format of each entry and the meaning of its
flags and count fields vary according to the entry type. The types
are:

o
1
2
3
4
5
6
7
8
9

End of the table.
No right-hand side in the expression.
Literal; the right-hand side of the expression must match the
initial substring of the literal.
Element list.
Arbitrary character string is returned in the return buffer.
All remaining text (255 characters maximum) is returned in
the return buffer.
Numbers in the range of -2 47 -1 to 247-1 are returned in
the return buffer.
File names are returned in the return buffer.
User number.
Ignore the keyword.

I NOTE I
Where both a literal character string and an
arbitrary character string may be used as
parameters, the arbitrary character string
must follow the literal character string for
the parameters to be interpreted correctly.

right

A value set by the caller and returned in the return buffer entry on a
successful left-hand side and right-hand side match.

flags

Flag bits, which are set to describe valid right-hand sides of
expressions. Bit meanings depend on entry type.

count

Maximum number of elements in the right-hand side for those entry
types that allow lists.
Figure 9-10.

60459420 G

rhs Table Entry Format (First Word)

9-15

o

63

o

48

8

8
min

literal

chars

8
J.

unused

right

2

8

7

7

(0 to 7 blanks for alignment
on word boundary)

Word

Field

Description

o

right

A value set by the caller and returned in the return buffer entry on a
successful left-hand side and right-hand side match.

1

min

Minimum number of characters needed in the right-hand side before
attempting a substring match against the literal.

chars

Number of characters in the literal.

literal

Text to be used in validating the right-hand side of the expression.
Figure 9-11.

rhs Table Entry Format, Type 2

o

63
3

right

8

I

flags

81

Field

count

81

unused

Description

right

Value set by the caller and returned in the return buffer entry on a
successful left- and right-hand side match.

flags

Maximum length of a list element.
the range of one to eight bytes.

count

Maximum number of elements in the list.
Figure 9-12.

9-16

The length of the this field is in

rhs Table Entry Format, Type 3

60459420 F

When the type field is 4, the format of the rhs table entry is as shown in figure 9-13,
except that the flags field is not used. The right-hand side of the expression contains
or more literal character strings (255 characters maximum per literal string are returned in
the return buffer). Quotes may be embedded within the literal string by using the double
quotation mark character to indicate the presence of a quote. During processing, the string
will be appropriately edited. Enclosing quotes are required only if special characters
defined in table 9-1 are part of the text.

o
o

16
4/6

right

flags

8

63

23

32

8
minimum

unused

48

16
2

I

unused

count

8

8

maximum

unused

48

16
Word

Field

o

right

A value set by the caller and returned in the return buffer entry on a
successful left-hand side and right-hand side match.

flags

Flag bits. If bit 20 is 0, the second and third words are not
present. When set to 1, bits 20 through 23 select the following
options:

Description

20
21
22
23

Range check is desired; the number specified must be greater
than or equal to minimum and less than or equal to maximum.
Hexadecimal number valid with a leading hash mark.
Address valid (hexadecimal number without a leading hash
mark) •
Decimal number valid.

Two or more of bits 21, 22, and 23 can be set at one time; however, a
potential identification problem exists if bits 22 and 23 are both
set: if the field contains digits U to ~ only, the number is treated
as decimal; otherwise, it is assumed to be hexadecimal.
count

Maximum number of values that can appear in the right-hand side.

1

minimum

Lower boundary for a valid number (integer).

2

maximum

Upper boundary for a valid number (integer).
Figure 9-13.

I

rhs Table Entry Format, Type 4/6

When the type field is 5, the format of the rhs table entry is as shown in figure 9-10,
except that the flags and count fields are not used. When the type field is 6, the format
of the rhs table entry is as shown in figure ~-13.

60459420 G

9-17

When the type field is 7, the format of the rhs table entry is as shown in figure 9-10.
Four of the individual bits in the flags field can be set to 1, in which case they have the
following meanings:
Bit

Description

20

Punch attribute (PU) is valid.

21

Print attribute (PR) is valid.

22

Length attribute can be specified.

23

Drop file name can be specified.

Two or more of the bits can be set at one time. The count field contains the number of file
names that appear in the associated return buffer entry.
When the type field is 8, the format of the rhs table entry is as shown in figure 9-10.
of the individual bits in the flags field can be set to 1, in which case they have the
following meanings:
Bit

Two

Description

22

Return an ASCII value.

23

Return a binary value.

One or both of the bits can be set at one time.
When the type field is 9, the format of the rhs table entry is as shown in figure 9-10,
except that the right, flags, and count fields are not used. For this type, no entry is
made in the return buffer and processing continues with the next keyword expression.

9-18

60459420 E

Return Buffer

This buffer is used to contain reformatted keyword information that is returned. The end of
the returned information is indicated by a fu~l-word binary O. The return buffer format is
shown in figure 9-14.

returned entry

retu rned entry

i. 7

I.,

~

Full word 0 marking,
} end of buffer

binary 0

Figure 9-14.

Return Buffer Format

The format and length of each return buffer entry depends on the type field of the right-hand
side table entry that successfully matched the right-hand side of the keyword expression.
Common to all entries is the first full word t whose format is shown in figure 9-15.

o

63
table

left

8

right

8

Field

chars

8

count

8

unused

8

16

Description

table

Value from the header of the lhs table (ti) that provided the leftand right-hand side entries affecting the keyword match.

left,
right

Values from the left field of the particular lhs table
entry and the right field of the rhs table entry
affecting the left and right-hand side matches.

words

Total number of words in this particular entry.

chars

The meaning of this field varies with the type of the right-hand
side. It is the length of the returned information or the length of
an element of a returned list t such as a list of file names.

count

Number of returned elements if returned data consists of a list of
items.
Figure 9-15.

60459420 E

words

8

Return Buffer Entry Format (First Word)
9-19

When the rhs table entry types are 1 and 2, the format of the return buffer entry is as
shown in figure 9-16. The words field is always 1.

°
1

I

table

left

~

.

8

I

right

Figure 9-16.

8

I

I

1

unused

Return Buffer Entry Format, Types 1 and 2

When the rhs table entry type is 3, the flags field is used to specify the maximum allowable
length of a list element. The allowable range of values is 1 through 8. The format of the
return buffer is shown in figure 9-17.

o

63'

table

right

left

8

8

words

8

chars

8

count

8

unused

8

16

textstring 1

64
textstri ng 2

64

64
textstring n

64
Description

Field
table

Value from the header of the lhs table (ti) that provided the leftand right-hand side entries affecting the keyword match.

left,
right

Values from the left field of the particular lhs table
entry and the right field of the rhs table entry affecting the left
and right-hand side matches.

words

Total number of words in this particular entry.

chars

The meaning of this field varies with the type of the right-hand
side. It is the length of the returned information or the length of
an element of a returned list, such as list of file names.

count

Number of elements returned.

text
string i

Returned elements, ASCII left-justified and blank-filled.
Figure 9-17.

9-20

Return Buffer Entry Format, Type 3
60459420 E

When the rhs table entry type is 4, the format of the return buffer entry is shown in figure
9-18. Since the multiple literal strings will likely be variable in length, the format of
the return buffer returned for type 4 differs from the format of all other return buffers.
A header word will precede each literal string returned.

o

63
right

left

table

char

words

8

8

8

unused

8

8

24

textstring 1

7

(0 to 7 blanks for alignment
on word boundary)
right

left

table

words

8

8

8

char

unused

8

8

24

textstring 2
(0 to 7 blanks for alignment
on word bou ndary)

••
•
left

table

8

right

8

unused

char

words

8

8

8

24

textstri ng n
(0 to 7 blanks for alignment
on word boundary)

Description

Field
char

Number of characters returned in text.

text
string

The right-hand side of the expression.

Figure 9-18.

60459420 E

24

Return Buffer Entry Format, Type 4

9-21

When the rhs table entry is 5, the format of the return buffer is as shown in figure 9-19.

o

63
table

left

8

right

chars

words

8

8

unused

8

8

24

text

J. F

.

J.,

(0 to 7 blanks for alignment
on word boundary)

Description

Field
chars

Number of characters returned in text.

text

The remaining text (type=5).
Figure 9-19.

Return Buffer Entry Format, Type 5

When the rhs table entry type is 6, the format of the return buffer entry is as shown in
figure 9-20. The chars field is always 8.

o

63
table

right

left

8

8

0

8

words

8

unused

count

8

8

8

number1

48

16

J. 7

1. 7

number n _1

0

48

16

Field

Description

count

The number of digits returned.

numberi

Binary form of the number specified.
Figure 9-20.

9-22

16

Return Buffer Entry Format, Type 6

60459420 E

When the rhs table entry type is 7 with flag bits 20, 21, and 22 all set to 0, the format of
the return buffer entry is as shown in figure 9-21. The chars field is always 8.

o

63
table

left

8

right

8

words

8

8

8

count

unused

8

8

16

filename1

64

J. 7

7

filename n _1

Field

64

Description

count

Number of files listed, equal to n-l.

filenamei

Logical file name, in ASCII.

Figure 9-21.

I

Return Buffer Entry Format, Type 7 with Zeroed Flags

When the rhs table entry type is 7 with flag bits 20, 21, or 22 set to 1, the format of the
return buffer entry is as shown in figure 9-22. The chars field is always 16.

o

63
table

left

8

right

8

words

8

16

8

count

8

unused

8

filename1

length 1

attribute1
16

64
unused

16

32

i. 7

1.'7

filename p
length p

Figure 9-22.

60459420 G

16

16

attributep

64
unused

16

32

Return Buffer Entry Format, Type 7 with Set Flags (Sheet 1 of 2)

9-23

Description

Field
count

Number of files listed; has the value (n-l)/2.

filenamei

Name of the file specified, left-justified with blank fill.

length i

Length of the file in small pages.
returned.

attributei

File attribute: ASCII punch (PU) or print (PR).
specified, blanks are returned.

Figure 9-22.

If not specified, binary 0 is
If not

Return Buffer Entry Format, Type 7 with Set Flags (Sheet 2 of 2)

When the rhs table entry type is 8 with only one of flag bi~s 22 and 23 set, the format of
the return buffer entry is as shown in figure 9-23. The chars field is always 8.

o

63
table

left

8

right

8

0

words

8

8
8

count

8

unused

8

user number 1
16

48

1. 7

1. 7

0

user number n-1
16

Field

48
Description

count

Number of user numbers listed.

user number

ASCII or binary user number, depending on the flags set.

Figure 9-23.

9-24

16

Return Buffer Entry Format, Type 8 with One Set Flag

60459420 E

When the rhs table entry type is 8 with both flag bits 22 and 23 set, the format of the
return buffer entry is as shown in figure 9-24. The chars field is always 16.

o

63
table

right

left

8

8

words

8

0

16

8

count

8

unused

8

16

user1
16

0

4R

usernum1

48

16

J.

~7

0

7

userp
16

0
16

Field

48
usernum p

48

Description

count

Number of user numbers returned, equal to (n-1)/2.
Binary user number.

usernumi

User number of the user; interpreted as ASCII characters.

Figure 9-24.

60459420 E

Return Buffer Entry Format, Type 8 with Two Set Flags

9-25

Special Characters
The Q7KEYWRD subroutine scans for special characters in the execute line text to extract
keyword expressions. These characters and their meanings (under given conditions) are
described in table 9-1.

Table 9-1.
Character

Execute Line Special Characters
Description

"

Delimits a literal character string on the right-hand side of the
expression. An embedded quote within a literal character string must be
represented by the double quotation mark character; for example, "AB""C""DE"
would be the representation of the literal string AB"C"DE. Each string of
the right-hand side must be enclosed in quotes if it includes a special
character of table 9-1. Q7KEYWRD will not perform concatenation of a literal
in quotes and other character strings.

blank

Delimits a keyword expression unless it occurs within a literal character
string.
Delimits a keyword expression unless it occurs within a literal character
string.
Separates the left- and right-hand sides of keyword expressions unless they
occur within a literal character string.

9-26

60459420 E

10

LOADER CONVENTIONS

This chapter contains formats for the following loader tables:
Module header table
Code block table
Code relocation table
External/entry table
Interpretive data initialization table
Interpretive relocation initialization table
Transfer symbol table
Debug symbol table
Symbol definition table
Pseudoaddress vector table
The following loader tables are used by the system during error processing:
Module header table
Code block table
External/entry table
Debug symbol table
Symbol definition table
Pseudoaddress vector table
Error processing information is provided for every object module loaded to produce a
controllee file. This includes object modules of user-specified files and required object
modules for system library files.
The loader initializes the following registers in the 0 (zero) page of the controllee:
Register

Description

1105

SHRLIH version.

1106

Entry address (origin+8000).

1107

USERLIB owner.

1108

Origin (for C runtime).

1I0y

Length of error processing information.

IIOA

Version (from VR parameter).

IIOB

Date.

II0c

Time.

IIOD

Address of the error processing information.

IIOE

Contains SHRLIB if controllee requires the system shared library; otherwise,

/tOE = O.
IloF
60459420 F

dorg and torg (from PFI) for SHRLIB.
10-1

Description

Register

I

1110

The rightmost 48 bits contain the bit address of the system shared library
if the control lee requires the system shared library; otherwise, 1110 = O.

1111

ULIB name.

1112

dorg and torg for ULIB.

1/13

Origin of ULIB.

1114

Constant 1120.

1115

Constant IlIA.

1116

Constant 1.

1I1B

Dynamic stack address.

IIIC

Current register save area descriptor (length=6, address=dynamic stack
address - 11180).

tilE

Length and address of main data base.

II1F

Entry address.

Other registers are initialized to 0, but can be initialized to other values, as necessary.

GENERAL TABLE STRUCTURE
The loader works with files that are composed of one or more object modules. Each object
module consists of a number of standard tables; each table begins with a standard two-word
header. The format of the table header is shown in figure 10-1.

o

63

o

tabname
length

64

address
16

Word

Field

o

tabname

48

Description
Name of the table, in ASCII.
~MODULE~

REL ~CODE
EXT ~ENTR

INT ~RELO
XFER ~SYM
SYMB ~TAB
SYMB ~DEF

INT~DATA

~~PAV~~

~~CODE~~

1

length

Length of the table, in fU'11 words. For the debug symbol table, this
field includes the length of the symbol definition table.

address

Bit difference between the first word of the respective table and word
1 of the module header table; that is, back pointer (bits) + address
of the first word of the respective table (bits) = address of word 1
of the header table (bits).
Figure 10-1.

10-2

The table names are:

Loader Table Header Format

60459420 F

MODULE TABLES
The module tables described here are the header, code block, code relocation, and
external/entry tables.

MODULE HEADER TABLE
The module header table contains general information concerning the object module and
provides a linkage to all the other tables in the module. The format of the module header
table is shown in figure 10-2.
Words 7 through n of the module header each contain a table type and an address pointer to a
table of that type. The pointer contains a bit address relative to the first word address
of the header. By convention, the first table described is the code block table and the
second is the external/entry table.
Table types are listed in table 10-1. Only types 1, 2, 6, and 301 appear in the error
processing information area of an object module.

o

63

o

~MODULE~

64
length

0

16

48

modname

64
tdcreate

3
4

tlen

5

clen

6

type1

16

64
proc

48
dblen

16
16

48
point1

48
~

n

type(n-5)

16

Figure 10-2.

60459420 E

point(n_5)

48

Module Header Table Format (Sheet 1 of 2)

10-3

Description

Word

Field

1

length

Length of the table, in full words.

2

mod name

Name of the module, in ASCII; eight characters, left-justified with
blank fill.

3

tdcreate

Date and time the module was created; 15 digits (in hexadecimal form)
and a positive sign. The format is +yymmddhhttssccc, where yy
expresses the year, mm the month dd the day, hh the hour, tt the
minute, ss the second, and ccc the millisecond.

4

tlen

Word length of tables, excluding the code.

proc

ASCII name of the processor that created the module.

clen

Length of the code, in words.

dblen

Length of the data base area, in bits.

typei

Table type (refer to table 10-1).

pointi

Address pointer to a table of the type indicated in the type field.
If the hexadecimal type is 4, the pointer contains the bit address of
the next module header table.

5

6 to n

Figure 10-2.

Module Header Table Format (Sheet 2 of 2)

Table 10-1.
Type

t

Module Header Table Types

Module Name

Description

1

t:..t:..CODE~t:..

2

EXT t:..ENTR

External/entry table.

3

REL t:..CODE

Code relocation table.

5

XFERt:..SYM

Transfer symbol table.

6

SYMBt:.. TAB

Debug symbol table.

101

INT t:.. DATA

Interpretive data initialization table.

201

INTt:..RELO

Interpretive relocation initialization table.

301

~t:..PAVt:..t:..t:..

-

Code block table.

Pseudoaddress vector table.

t These types appear in the error processing information area of an object module.
CODE BLOCK TABLE
The code block table contains the executable code. The table consists of the two-word
loader table header (figure 10-1), followed immediately by one or more words of executable
code. The table name is CODE. When the code block table is loaded in the controllee, the
code block table has a pointer in the error processing information area. In this capacity,
the table contains the program name (in ASCII) in word 1 rather than the character string
t:..t:..CODE t:..b..

10-4

60459420 E

\

CODE RELOCATION TABLE
This table describes relocation in the code. The format of the code relocation table is
shown in figure 10-3. When this table is processed, the bit base address of the code is
added to the 4S-bit fields pointed to by the indexes in the bit string. If this table has a
type of S003; it means that SLGEN has preprocessed this table by adding the addresses at
which this library is to be placed in the 4S-bit field.

o

63

o

RE~CODE

length

2

nbi

address

16

ni

16

3

base

4

indexes1
J.

64

48

48
64

1.,

T

n

indexes(n-4)

Word

Field

1

length

Length of the table, in full words.

address

Bit difference between the first word of the respective table and word
1 of the module header table.

nbi

Number of bits per index in the bit strings that start in word 5.

ni

Number of indexes in the string.

base

Current bit address to which this module is relocated.

indexesi

Bit string of indexes, each nbi bits long. Each index references a
half-word of code to be relocated relative to the base address of the
code.

2

3

4 to n

Description

Figure 10-3.

60459420 E

Code Relocation Table Format

10-5

EXTERNAL/ENTRY TABLE

The external/entry table contains definitions for all entry points, external symbols, and
common blocks. These definitions consist of lists of entry point names, external names,
entry point descriptors, and external descriptors. The format of the table is shown in
figure 10-4. In words 3+n and 3+2n, the quantity n-m is the number of external names in the
table.
Each descriptor in the external/entry table has the form shown in figure 10-5.

10-6

60459420 E

o

63

o

EXTb.ENTR

64
address

length

48

'6
n

m

2

48

'6

3

entry point name,

4

entry point name2

64

-i. 7

64
J.,.

3+m

entry point name m

4+m

external name,

64
64

external name2

5+m

64
1. 7

1.,.

external name(n_m)

3+n

64
entry point descri ptor,

4+n

64
entry point descriptor2

5+n

64
1. 7

1.,

entry point descriptor m

3+m+n

64
external descriptor,

4+m+n

64
external descriptor2

5+m+n

64
J.

"7

7

external descriptor(n_m)

3+2n

64

Figure 10-4.
60459420 E

External/Entry Table Format (Sheet 1 of 2)
10-7

Word

Field

1

length

Length of the table, in full words.

address

Bit difference between the first word of the respective table and word
1 of the module header table.

m

Number of entry point names in the table.

n

Total number of names in the table.

2

Description

Figure 10-4.

External/Entry Table Format (Sheet 2 of 2)

o
type

value

Field
type

I

Description
Symbol type:
1
2
3
1114

filS
fl16
value

Depends on the type field. If type is 14 or 15, value is 0; otherwise,
if type is 1 to 2, value is the entry point's relative bit address in
the code or data block; if type is 3, value is a 48-bit constant; and
if type is 16, value is the bit length of the common block.
Figure 10-5.

10-8

Entry point in code.
Entry point in data.
Constant entry point.
External procedure.
External data.
Common block.

Descriptor Format for Externals and Entry Points

60459420 G

The symbol types are defined as follows:
Entry point
A named value defined in the procedure; it is to be referenced as an external by an
external procedure. It can be an address in the code block, an address in the data
base, or a constant value.
Common block
A named alterable space referenced by one or more procedures. A common block can be
initialized with relocatable data. A blank common is a common block with a name of
eight blanks.
External procedure
An external that is referenced in a call. Having a symbol doubly defined as a
common block and external procedure is specifically allowed. All external procedure
names are eight characters, left-justified with blank fill.
External data
An external that is referenced by a method other than a procedure call.

INTERPRETIVE OAT A INITIALIZATION TABLE
When the loader processes information in the interpretive data initialization table, areas
of static space are initialized. The table consists of the two-word loader table header
(figure 10-1), followed immediately by one or more variable-length entries. The table name
is INT A DATA. Each entry contains a one-word descriptor and a two-, three-, four-, or
six-word data item.
Data item and item descriptor pairs in the interpretive data initialization table are
formatted as shown in figures 10-6 through 10-9. The first word in each figure is the data
item descriptor. The remainder of each figure describes the data item proper, which is
stored in the formats shown.

o

o

63
ord 1

. type

ord 2
16

1£>

length

mode

8

chain

8

16

rba
48

16

2

value
64

Figure 10-6.

60459420 F

Data Item Format 1 (Sheet 1 of 2)

10-9

Word

Description

Field

o

Pseudoaddress vector table ordinal of static space to be initialized.
ord2

Pseudoaddress vector table ordinal of space relative to which
relocation is to be performed (relocation base).

type

Type of data item that follows:
1
2
3
4

Full-word
Half-word
Full-word
Half-word

broadcast.
broadcast (not defined if the mode field is 1).
vector transmit.
vector transmit (not defined if the mode field is

9
A

Byte string.
Bit string.

1) •

mode

Mode flag:

o
1
2

When the mode flag is 0, the values in the item are stored directly
into the destination field (specified by the ord 1 field), and the
ord2 field is ignored. When the mode flag is 1, the relocation base
is added to the values before they are stored in the destination
field; for this case, the result is always on a word boundary. When
the mode flag is 2, the relocation base is added to the destination
field; in this case, the value field is absent in the data item.

I

I

Value to destination.
Value plus relocation base to destination.
Destination plus relocation base to destination.

1

2

chain

Full-word count to the next data item descriptor in the table (same as
a count of the number of full words in the data item).

length

The length of the vector in words for data item types 1, 2, 3, and 4;
the number of bytes of information in the value field, for data item
type 9; and the number of bits of information in the value field, for
data item type A.

rba

Relative bit address.

value

A string or a vector value, depending on the data item type, as
follows:
•
•
•
•
•
•

A full word to be stored in consecutive full words, starting
at the relative bit address in the rba field (type 1).
A left-justified half-word to be stored in consecutive
half-word locations, starting at the relative bit address in
the rba field (type 2).
A full-word vector to be transmitted to the relative bit
address in the rba field (type 3).
A half-word vector to be transmitted to the relative bit
address in the rba field (type 4).
A left-justified byte string to be stored at the address in
the rba field (type 9).
A left-justified bit string to be stored at the address in
the rba field (type A).

Figure 10-6.
10-10

Data Item Format 1 (Sheet 2 of 2)
60459420 G

o

63

o

ord 1

ord2

16

type

mode

16

8

length1

chain
8

16

rba
16

48

2

value
64

3

length2

string
16

Word

Field

o

48

Description
Pseudoaddress vector table ordinal of static space to be initialized.

ordZ

Pseudoaddress vector table ordinal of space relative to which
relocation is to be performed (relocation base).

type

Type of data item that follows:
5
6

mode

Full-word sparse vector.
Half-word sparse vector (not defined if the mode field is 1).

Mode flag:

o
1
2

Value to destination.
Value plus relocation base to destination.
Destination plus relocation base to destination.

The meaning of this field is the same as that of the mode field in
figure 10-6.
chain

Full-word count to the next data item descriptor in the table (same as
a count of the number of full words in the data item).

length1

Number of I-bits in the order vector specified in the string field.

rba

Relative bit address of the location to which the sparse vector is to
be transmitted.

2

value

Value part of the vector to be transmitted; contains a full-word of
values (type 5), or a left-justified, half-word of values (type 6).

3

length2

Length of the control vector specified in the string field.

string

A left-justified bit control vector (an order vector).
Figure 10-7.

60459420 F

Data Item Format 2

10-11

o

o

63
ord 1

ord 2

16

type

mode

8

16

length

chain
8

rba
16

2

16
48'

value
64

3

nbi

ni
16

48
string

4

64

Word

o

Description

Field
ordl

Pseudoaddress vector table ordinal of static space to be initialized.

ord2

Pseudoaddress vector table ordinal of space relative to which
relocation is to be performed (relocation base).

type

Type of data item that follows:
7
8

mode

Full-word index list.
Half-word index list (not defined if the mode field is 1).

Mode flag:

o
1
2

Value to destination.
Value plus relocation base to destination.
Destination plus relocation base to destination.

The meaning of this field is the same as that of the mode field in
figure 10-6.
chain

Full-word count to the next data item descriptor in the table.

length

Number of values in the item.

rba

Relative bit address of the location to which the indexed elements of
the vector are to be transmitted.

2

value

A vector; contains a full-word of values (type 7), or a
left-justified, half-word of values (type 8).

3

nbi

Number of bits per index.

ni

Number of indexes.

string

A bit string of ni indexes. Each index is nbi bits long and contains
a full-word count (for type 7), or a half-word count (for type 8).

1

4

Figure 10-8.
10-12

Data Item Format 3
60459420 F

o

63

o

ord 1

ord 2

16

8

length1

chain1

mode

type1
16

16

8

rba
48

16
2

niter

ni2

3

16

chain2

init

unused

ni 1

4

48

16

16

length2

8

24

unused
48

16

5

value
64

6

chain3

ni3

48

16

Word

Field

o

Description
Pseudoaddress vector table ordinal relative to the data area to be
initialized.
Pseudoaddress vector table ordinal of space relative to which
relocation is to be performed (relocation base).
D (nested list).

mode

Mode flag:

o
1
2

~alue to destination.
Value plus relocation base to destination.
Destination plus relocation base to destination.

The meaning of this field is the same as that of the mode field in
figure 10-6.

1

chain1

Full-word count to the next data item in the nested list.

length1

Number of nested item types that follow.

rba

Relative bit address of the vector.

2

Nested iteration start item.
niter

Number of times the data item and items associated with this iteration
start item are to be repeated.
Figure 10-9.

60459420 F

Data Item Format D (Sheet 1 of 2)

10-13

Word

Field

3

Description
Nested data item identifier.

init

Any initialization data type. If there is more than one data item in
an iteration, types cannot be mixed.

chain2

Length of the data item in number of words.

4

length2

Half-word vector length.

5

value

A left-justified half-word to be stored in consecutive half-word
locations, starting at the relative bit address in the rba field.

6

Nested iteration end item.
chain3

Nested item designator:

o
1

No nested item types follow.
More nested item types follow.

Figure 10-9.

10-14

Data Item Format D (Sheet 2 of 2)

60459420 E

INTERPRETIVE RELOCATION INITIALIZATION TABLE
The interpretive relocation initialization table consists of the two-word loader table
header (figure 10-1), followed immediately by one or more relocation items, one word per
item. Item formats are similar to data initialization table formats but do not contain
values. The name of the table is INTARELO.

TRANSFER SYMBOL TABLE
The transfer symbol table consists of the two-word loader table header (figure 10-1),
followed immediately by one word containing the transfer symbol. The table name is XFER
SYM. The transfer symbol is the symbolic name of the entry point to which control is to be
transferred at the start of execution; the name is left-justified with blank fill.

DEBUG SYMBOL TABLE
The debug symbol table, which contains the ASCII representation of symbols that appear in a
program, allows a symbol to be referenced by name rather than by address. This table
appears in the error processing information area if the compiler or assembler used is
capable of generating the table, and if the appropriate option.is selected and used during
compilation or assembly. The format of the table is shown in figure 10-10. The length
field in word 1 is the total length of the debug symbol table and the symbol definition
table.

60459420 G

10-15

I

o

63

o

SYMBb.TAB
64
length

address

16

2

48

nsym

0

16

48

3

symbol 1
64
symbol 2

64

~7

~7

n

Word
2

3

symbol n

Field
nsym

Description
Number of symbols in this table.
A symbol, which can be any of the following:
•
•
•

Variable or array name, in ASCII; must be left-justified with
blank fill.
Statement line number, in ASCII; must be a hexadecimal value,
right-justified with binary zero fill.
Statement label, in ASCII. Labels that are symbolic names
are stored left-justified with blank fill; labels that are
statement numbers are stored right-justified with ASCII zero
fill. A statement line number of #FFFF is used to indicate
code moved out of logical position by extended basic block
optimization (EBBO).
Figure 10-10.

10-16

64

Debug Symbol Table Format

60459420 E

SYMBOL DEFINITION TABLE
The symbol definition table is an extension to the debug symbol table. It provides further
definition to the debugging symbols, including the type of symbol, address, and mode. The
table consists of the two-word loader table header (figure 10-1), followed immediately by
one or more two-word entries in the format shown in figure 10-11. The table name is
SYMB6DEF.

o

63

o

type

location

48

16

0

mode

ordinal

32

16

Word

o

Field
type

Description
Symbol type:
Unknown.
Half-word register variable name.
Variable or array name.
Variable or array name.
Line number.
Label.

type=O
type=l
type=2
type=3
type=4
type=5
location

Location field for the symbol type:
1
2
3
4
5

1

mode

Half-word address within the register file; because half-word
values can be stored in full-word registers, the location can
range up to hexadecimal 1FF.
Full-word register number.
Bit address relative to the start of the data base.
Bit address relative to the start of the code base.
Bit address relative to the start of the code base.

Symbol mode, consisting of three parts as shown below; in the case of
a descriptor, p and dtype describe the contents of the reference
vector:
desc

1PII

dtype

31

Subfield
p

Figure 10-11.

121

Description
Precision base indicator:
0
1

60459420 G

16

Precision base is 32-bit or irrelevant.
Precision base is 64-bit.

Symbol Definition Table Entry Format (Sheet 1 of 2)

10-17

I

Word
1

Description

Field
mode

Description

Subfield
desc

Descriptor indicator:

o
1
2
4
S
dtype

Type of the referenced vector:

o
1
2
3
4
S
6
10

I
I

ordinal

Unknown.
Logical.
Integer.
Real.
Double precision.
Complex.
Character.
Bit.

Ordinal of the pseudoaddress vector table of the data base or common
block (described under Pseudoaddress Vector Table, next).

Figure 10-11.

10-18

Not a descriptor.
Vect~ descriptor.
Vector descriptor array.
Sparse vector descriptor.
Sparse vector descriptor array.

Symbol Definition Table Entry Format (Sheet 2 of 2)

60459420 G

PSEUDOADDRESS VECTOR TABLE

The table pointed to by the ordinal in the symbol definition table is the pseudoaddress
vector table of the data base or common block. The table consists of the two-word loader
table header (figure 10-1), followed immediately by two words giving a code address and data
base address, and one or more two word entries in any of the formats shown in figure 10-12.
The table name isD.D. PAVD./).D..

For common:

o

63

0

16

0

16

address

48

bit length

48

For an external symbol, referencing the entry point in code:

o

63

0

entry address in code

16
data base length

48

data base

16

48

For an external symbol, referencing the entry point in data:

o

63

0

entry in data base

16
data base length

48

data base

48

16
For an external symbol, referencing a constant entry point:

o

~

0

constant entry value

16
data base length

data base

16

Figure 10-12.

60459420 E

48
.

48

Pseudoaddress Vector Table Entry Formats

10-19

CHARACTER SET

A

The ASCII character set is shown in table A-I. Aids for hexadecimal-to-octal and
hexadecimal-to-decimal conversion are given in tables A-2 and A-3.

60459420 E

A-I

:r

Table A-I. ASCII Character Set with Punched Card Codes and EBCDIC Translation

N

0
0

b8
b7

btl

0

0

0

0

0

0

0

0

0

0

0

1

1

1

0

0

1

1

0

0

1

0

1

0

1

0

1

0

~

0

1

NUL
12-0-9-8-1
NUL
00

OLE
12-11-9-8-1
OLE
10

SP

SOH
12-9-1
SOH

01

DCl
11-9-1
DCl

02

OC2
11-9-2
OC2

03

DC3
11-9-3
TM

37

DC4
9-8-4
DC4

5

ENO
0-9-8-5
ENQ
2D

NAK
9-8-5
NAK

6

ACK
0-9-8-6
ACK
2E

SYN
9-2
SYN
ETB
0-9-6
ETB

16

CAN
11-9-8
CAN

05

EM
11-9-8-1
EM
19

0

1

2

STX
12-9-2
STX

3

ETX
12-9-3
ETX

4

EOT
9-7
EOT

1

1

1

7

1

0

0

0

8

BS
11-9-6
BS

9

HT
12-9-5
HT

0

1

1

2

11

12

no-punch

0
0

SP

40

0

!
12-8-7
I
4F

1

.
.8-7

7F

#
8-3
7B

3
4

3C

%

0-8-4
%
6C

5
5
5

&

6

3D

&

8-5
26

7D
(

18

8

)

9

11-8-5
50

)

25

VT
12-9-8-3
VT
OB

ESC
0-9-7
ESC

12
(C)

FF
12-9-8-4
FF
OC

FS
11-9-8-4
IFS
lC

13
(D)

CR
12-9-8-5
CR
00

GS
11-9-8-5
IGS
10

14
(E)

SO
12-9-8-6
OE
SO

RS
11-9-8-6
IE
IRS

12-8-3
4B

15
IF)

SI
12-9-8-7
OF
SI

US
11-9-8-7
1F
IUS

/
0-1
/

1

1

1

LEGEND

0

1

12-11-7
97

11-0-9-8-1
20
DS

12-11-0-9-8-1
30

12-0-9-1
41

12-11-9-8

p

0-9-1
SOS

9-1

12-0-9-2
42

11-8-1

31

11-{)-9-2

lA

12-0-9-3
43
12-0-9-4
44

11-0-9-3

33

12-0-9-5
45

11-0-9-4

34

11-0-9-5

R
11-9
R D9

b
12-0-2
82
b

r

F2

B
12-2
B C2

S
0-2
S E2

c

s

F3

C
12-3
C C3

c

12-0-3
83

s

T
0-3
T E3

d
12-0-4
84
d

t

F4

0
12-4
o C4

U
0-4
U E4

e
12-0-5
e
85

u

F5

E
12-5
E C5

V
0-5
V E5

f

v

F6

F
12-6
F C6

F7

G
12-7
G C7

W
0-6
W E6

9
12-0-7
87
9

X
0-7
X E7

h

F8

H
12-8
H C8

F9

I
12-9
I C9

12-8-2
Ii 4A

ASC II Character

8

9
9

.

79
12-0-1
81

a

12-9-6
LC

9-6
UC

36

12-0-9-7
47

11-0-9-6

06

11-0-6
w
A6

11-9-7
IL

08

12-0-9-8
48

11-0-9-7

17

12-9-8
GE

12-0-8
h
88

x
11-0-7
x
A7

0-9-8

12-8-1

11-{)-9-8

Y
0-8
Y E8

I

Y

i

y

Z

j

z

0-9
Z E9

12-11-1
j
91

11-0-9
z
A9

0-9-8-2
SM
2A

9-8-2

[

I
k
12-11-2 :12-0
k
92 \
CO

0-9-8-3
CU2
2B

9-8-3
CU3

0-9-8-4
2C

12-0-9
89

0-8-2
\ EO

=

M
11-4
MD4

I

m

7E

11-8-2
! 5A

>
0-8-6
> 6E

N
11-5 11-8-7
N D5 ..., 5F

?

0
11-6
OD6

0

0-8-7
?
6F

0-8-5
6D

-

t

11-0-4
u
A4

v
w

11-0-8
A8

If-II
6A

12-11-5
95

n

12-11-6
96

0

-

11-0-1
Al

-

DEL
12-9-7
DEL 07

64-Character

ASCII Subset

-..........

~

96-Character
ASCII Subset
Q'I

o

+l'VI

EBCDIC
Character

~

+l'N

o

tz:j

".L~"

.....;-~

EBCDIC
Code
(Hexadecimal)

58

(0)

15
(F)

12-11-0-9-6
76

12-11-8-7
9F

12-11-0-8
B8

12-11-9-8-4
DC

12-11-0-9-7
77

11-0-8-1

59

AO

12-11-{)-9
B9

12-11-9-8-5
DD

62

12- ~ 1-0-9-8 .11-0-8-2
78
AA

12-11-{)-8-2
BA

12-11-9-8-6
DE

12-0-8-1

AB

12-11-{)-8-3
BB

12-11-9-8-7
DF

12-11-{)-8-4
BC

11..Q-9-8-2

AC

11-0-9-8-3

AD

12-11-{)-8-5
BD
12-11-0-8-6
BE

11-0-9-8-4

AE

11-0-9-8-5

8D

AF

12-11-{)-8-7
BF

9-8

12-{)-9-8-2
CA

11-{)-9-8-6

8E

12-11-{)-8-1
BO

28

12-11-0-1

11-{)-8-5

12-0-8-3
8B
12-0-8-4

11-0-8-6

66

8C
11-0-8-7

12-0-8-5
67
12-{)-8-6

68

12-11-9-1
51

0-8-1

39

12-11-0

3A

12-11-9-2
52

3B

12-11-9-3
53

"12-9-4
PF

04

12-11-9-4
54

12-9-8-1
RLF
09

11-9-4
RES

14

12-9-8-2
SMM
OA

9-8-6
3E

9-8-1

8A

65

49

29

11-{)-8-4

12-0-8-2
64

38

0-9-8-1

11-{)-8-3
80

12-{)-8-7

EA

EB

rl

EC

ED

EE

Bl

12-{)-9-8-3
CB

11-0-9-8-7

8F

70

90

12-11-0-2
B2

12-0-9-8-4
CC
J'

12-11-0-9-8-2
FA
I(LVM)

12-11-0-9-1
71

12-11-8-2
9A

12-11-{)-3
B3

12-{)-9-8-5
CD

12-11-0-9-8-3
FB

12-11-0-9-2
72

12-11-8-3
9B

12-11-0-4
B4

12-{)-9-8-6
CE
Y

12-11-0-9-8-4
FC

12-11-9-5
55

12-11-0-9-3
73

12-11-8-4
9C

12-11-0-5
B5

12-{)-9-8-7
CF

12-11-0-9-8-5
FD

12-11-9-6
56

12-11-0-9-4
74

12-11-8-5
9D

12-11-0-6
B6

12-11-9-8-2
DA

12-11-0-9-8-6
FE

12-11-9-8-3
DB

EO
12-11-0-9-8-7
FF

69
12-11-8-1

EF

I
I

12-11-4 }11-0
94 }
DO

m
n

A

--------------61

0-9-4
BYP

11-0-5
A5

12-0-6
86

f

<
12-8-4
< 4C
=

(e)

1

14
(E)

63

35

0-8-3

8-6

9-3
23

15

I
12-11-3
I
93

60

0-9-3

12-0-9-6
46

\

11

11-0-3
A3

22

11-9-8-2
CC

9-5
RS

L
11-3
L 03

-

11-0-2
A2

0-9-2
FS

11-9-5
NL

K
11-2
K 02

-

13

1

i

,

12-11-9
r
99

9-4
PN

7A

6B

21

24

11-8-6
5E

+
27

8-1

12-8-6
4E
+

8-2

1

12

1
1
1
0

p

J
11-1
J 01

11-8-4
5C

11
(B)

1
1

1
0
0

q
12-11-8
q
98

Fl

8

11
(B)

3F

7
7

12-8-5
4D
I

1

1

6

1

10
(A)

6

1
1
0

1

9

a

7

1

1

1

0

1

1
0
1
0

8

Q
11-8
o D8

6
50

0

1

4
4

12
32

1

1

1
0
0

7

A
12-1
ACI

3

#

10
(A)

0

2

$
11-8-3
$
5B

0

1

1

FO
1

1

13

1

1

0

P
11-7
P 07

3

0

0

1

1
0
0

1

@
8-4
@7C

2

1

0

0

1
0

1
1

0

5

2

SUB
9-8-7
SUB

1

1

1

4

3

LF
0-9-5
LF

1

0

0

0
1
0

1

ROW

0

0

0
0

1
0

1

BEL
0-9-8-7
2F
BEL

1

0
0

0
0

b5

b4 b3 b2 b1

0

0
0
0

~

11-9-8-3
CUI
lB

11-0-9-1
El

12-11-9-7
57

12-11-0-9-5
75

12-11-8-6
9E

12-11-0-7
B7

Table A-2.

~
Second

Hexadecimal-to-Octal Conversion Aids

First Hexadecimal Digit

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0

000

020

040

060

100

120

140

160

200

220

240

260

300

320

340

360

1

001

021

041

061

101

121

141

161

201

221

241

261

301

321

341

361

2

002

022

042

062

102

122

142

162

202

222

242

262

302

322

342

362

3

003

023

043

063

103

123

143

163

203

223

243

263

303

323

343

363

4

004

024

044

064

104

124

144

164

204

224

244

264

304

324

344

364

5

005

025

045

065

105

125

145

165

205

225

245

265

305

325

345

365

6

006

026

046

066

106

126

146

166

206

226

246

266

306

326

346

366

7

007

027

047

067

107

127

147

167

207

227

247

267

307

327

347

367

8

010

030

050

070

110

130

150

170

210

230

250

270

310

330

350

370

9

011

031

051

071

111

131

151

171

211

231

251

271

311

331

351

371

A

012

032

052

072

112

132

152

172

212

232

252

272

312

332

352

372

B

013

033

053

073

113

133

153

173

213

233

253

273

313

333

353

373

C

014

034

054

074

114

134

154

174

214

234

254

274

314

334

354

374

D

015

035

055

075

115

135

155

175

215

235

255

275

315

335

355

375

E

016

036

056

076

116

136

156

176

216

236

256

276

316

336

356

376

F

017

037

057

077

117

137

157

177

217

237

257

277

317

337

357

377

Hexadecimal
Digit

Octal

040 -

000 037

60459420 E

077

137

240 -

200 -

140 -

100 -

177

237

340 -

300277

337

377

A-3

Table A-3.

Hexadecimal-to-Decimal Conversion Aids
Exponent for Base 16

5
Hexadecimal
Number

-f-

4

3

2

1

0

0

0

0

0

0

0

0

1

1048576

65536

4096

256

16

1

2

2097152

131072

8192

512

32

2

3

3145728

196608

12288

768

48

3

4

4194304

262144

16384

1024

64

4

5

5242880

327680

20480

1280

80

5

6

6291456

393216

24576

1536

96

6

7

7340032

458752

28672

1792

112

7

8

8388608

524288

32768

2048

128

8

9

9437184

589824

36864

2304

144

9

A

10485760

655360

40960

2560

160

10

B

11534336

720896

45056

2816

176

11

C

12582912

786432

49152

3072

192

12

D

13631488

851968

53248

3328

208

13

E

14680064

917504

57344

3584

224

14

F

15728640

983040

61440

3840

240

15

j16 x 16

i

=

ml0

To find E16 x 16 3 ; look at row E, column 3 and find 57344

A-4

60459420 E

B

DIAGNOSTICS

This appendix describes the meanings of the system error codes and tape error codes.
Privileged system task error codes are documented in the VSOS 2 Operator's Guide. System
dead codes and NAD disaster codes are now documented in the VSOS Troubleshooting Guide. RHF
connect reject codes are documented in the RHF Application-to-Application Interface
Specification.

SYSTEM ERROR CODES
The error codes listed in table B-1 are returned in word #8B of the minus page. The errors
signified by the codes terminate the task that generated the error. The KERNEL, RESTART,
and RECOVERY tasks are part of the resident operating system; the AOK and SCAT tasks are
part of the virtual system.
Table B-1.

System Error Codes (Sheet 1 of 2)

Hexadecimal
Code

Significance

Issued By

5

Illegal instruction; the instruction is not in the CYBER 200
instruction set.

KERNEL

6

The exit force instruction does not have a pointer to a
system message to be executed.

KERNEL

7

Illegal request.

KERNEL

8

Parity error in data transfer between the CPU and central memory.

RESTART

A

A CSOx request did not contain a file segment table ordinal.

Resident
system

B

Illegal C504 request.

Resident
system

22

Disk I/O error occurred for read/write of a drop file.

PAGER

24

Large page limit exceeded.

PAGER

25

Page size conflict in drop file.

PAGER

26

Virtual address duplicate direct fault.

PAGER

27

Write violation in system call.

PAGER

60459420 F

B-1

•

Table B-1.

System Error Codes (Sheet 2 of 2)

Hexadecimal
Code

•

B-2

Significance

Issued By

28

Write violation occurred while the system was swapping in a page
referenced by the job.

PAGER

29

The job referenced a page within the virtual system address range.

PAGER

2A

The drop file map is full; the job can define no more vitual
regions.

PAGER

2B

This job class is not allowed large pages.

Virtual
system

2C

The job referenced a page in the shared library reserved area.

PAGER

2D

Drop file space overflow; no more virtual space can be mapped into
the drop file.

PAGER

2E

Page was not mapped because the drop file map is full.

PAGER

2F

Drop file overflow was caused by a call to the virtual system.

PAGER

30

No time available for this task.

PAGER

31

The paging routine received an I/O error.

PAGER

40

Bound implicit map anomaly.

Virtual
system

51

File segment table is full.

GETSEG

209

No source file exists.

AOK

210

No drop file exists.

AOK

212

The pointer to the system.message Alpha does not exist.

SCAT

213

The pointer to the system message Alpha was out of bounds.

SCAT

215

No error exit address exists.

SCAT

Bxx

File is already extended to maximum.
number.

Cxx

Attempted to read past the end of file on a file.
connector number.

Dxx

No segment space in FILEI left for extension.
connector number.

Exx

No space left on the disk for extension.
number •

xx is an I/O connector
xx is an I/O

GETSEG
REXTEND

xx is an I/O

GETSEG

xx is an I/O connector

GETSEG

60459420 F

TAPE ERROR CODES
The system returns a tape error to the caller in the ioer field of the call. The errors
that range from 1 to 100 return control to the caller when one of these errors is detected.
The errors that range from 101 to 200 are tape I/O errors. These errors can be fatal or
require operator action unless the caller selected user error processing in the OPEN system
message. The codes listed in table B-2 are in decimal notation.

Table B-2.

Tape Error Codes (Sheet 1 of 4)

Tape Errors
Code

Significance

001

Call not in user range.

002

Illegal subfunction code (sfnc).

003

Nonexistent I/O connector (ioc).

004

Buffer size greater than 48 pages.

005

Tried to write zero-length logical tape record (V tape format).

007

PRU read is longer than MPRU.

008

LRU is greater than MPRU.

009

WRITE attempted a zero-length PRU.

010

User WRITE buffer went minus.

011

HDR1 label not in label buffer.

012

Non-numeric file sequence number.

013

Section 1 is not in VSN list.

014

Cannot swap backwards, no previous VSN.

016

File accessibility characters do not match.

017

Position not found in multifile set.

019

Next VSN was not given.

020

Tape file does not have proper access.

021

Read or skip forward after write (illogical sequence).

030

Attempt to reuse call before previous, call is complete.

031

Previous call for this unit had a fatal error.

032

Call crosses page boundary.

033

IOC is not for a tape file.

034

Tape not assigned to this user.

037

For write operation, sum of LRU sizes is greater than buffer length.

60459420 F

Device capacity exceeded.

B-3

•

Table B-2.

Tape Error Codes (Sheet 2 of 4)
Tape Errors

Code

Significance

039

Forward motion attempted when end of information has been detected on this file.

040

End of tape encountered. (This number is returned to the user only if the user
selected end-of-tape processing in the Q50PEN call.)

041

Load point encountered on tape from backward motion.

042

Tape format mismatch.

043

EOI encountered while positioning to HDR1.

044

Illegal user labels in label buffer.

045

Small and large pages exist in the buffer.

046

System tables full, try again.

047

I/O request currently outstanding for this buffer.

048

Length of LRU array less than or greater than 255.

049

Attempted to write over unexpired label.

050

Buffer size smaller than MPRU for read data function.

051

Tried to write two consecutive tape marks.

052

Data in LRU array after end of group.

053

Buffer length is less than MPRU.

054

Tape unit not assigned to any user.

055

All hardware paths to tape unit are down.
Tape I/O Errors

Code

•

B-4

Significance

101

Tape that is unlabeled should be labeled.

102

Tape that is labeled should be unlabeled.

105

Write parity error irrecoverable.

106

Unrecognizable label group.

107

Header label fields do not match.

108

Record fragment encountered.

109

ATS software error.

110

Unexpected load point detected.

111

Read parity error unrecoverable •
60459420 F

Table B-2.

Tape Error Codes (Sheet 3 of 4)
Tape I/O Errors

Code

Significance

112

Unrecognizable trailer label.

113

Cannot read label group.

115

ATS hardware error, see hardware status.

116

Position uncertain, ready dropped.

117

Unrecoverable erase parity error.

118

Unrecoverable tape mark parity error.

120

Unit reserved by other controller.

122

Tape mark write verify failure.

123

Blank tape encountered during read.

125

Tape repositioning error; block ID mismatch.

126

Tape repositioning error; invalid block ID.

128

Channel malfunction I/O suspended by driver.

129

Multifile position uncertain.

131

Dev ID burst fault.

132

Dev tape cleaner fault.

135

Tape unit switched offline.

136

No write enable ring in reel.

137

Controller not capable of requested density.

138

Unexpected error returned by ATS controller.

139

Software interface error between NADs.

140

TAD hardware error.

141

Write verify error.

142

Unit remained busy after rewind.

143

Unit dropped ready during rewind.

145

Illegal user level number.

60459420 E

Remount on any unit.
Remount on any unit.

B-5

Table B-2.

Tape Error Codes (Sheet 4 of 4)
Tape I/O Errors

Code

B-6

Significance

146

Label reposition error.

147

Unit reset status active, position uncertain.

148

Tape label not multiple of 80 characters.

149

Unit is not ready at reserve time.

150

No file mark after EOF1.

151

Missed file mark.

152

No label block after file mark.

153

VOL1 not detected after load point.

160

Encountered two tape marks in reverse.

170

No current block count given for fund position.

171

No file mark or load point on latest block ID.

172

No label found on labeled tape.

173

Can~ot

174

Tape mark encountered, position found.

175

Compare count is over block ID count.

find position in find position.

60459420 E

c

GLOSSARY

Access

Batch Processor
A system utility that initiates and
controls batch jobs. Control statements
that are file names cause the files
named to be executed as controllees of
the batch processor. Other control
statements result in actions taken by
the batch processor alone.

A parameter that specifies the read,
write, append, modify, and/or execute
access desired for a file at the time
the file is opened or created. The
system grants access only if the
appropriate field of the file index
table allows such access.
Account Block

Block

The amount of system resources
accumulated per charge number.

A contiguous 512-word quantity starting
on an even 512-word boundary. The block
is the unit used for expressing file and
memory lengths.

Account Identifier
One to eight characters indicating who
is to be charged for system resource
usage attributable to a user number.

Bound Implicit Map

Abnormal termination control.

Byte

Part of the minus page of an executing
file that relates virtual addresses with
physical mass storage addresses.

ATC

ATS

A sequence of ~ bits that is a
subdivision of a word and represents a
single character.

Advanced tape system.
Batch Dayfile
A file produced by the batch processor
for a batch job that gives a history of
the job. Information on the file
includes the time various control
statements began execution and any error
or status information produced by system
utilities. The dayfile is printed as
the last part of job output.

CAT
Currently active table (T CAT) used by
RHF processing. This is
virtual
system table.

a

Central Processing Unit (CPU)
The computational facility of VSOS.
Charge Number

Batch Job
A series of tasks that is executed as
controllees of the batch processor.

60459420 F

Combination of the account identifier
and project number that is to be charged
for system resources.

C-l

Checkpoint
A system feature that captures a task
and any of its controllees at some point
in execution so that the task can be
restarted from that point. In a FORTRAN
program, checkpoint is called by the
file name CHKPNT.

DB
Descriptor block table.
Data Base
The constants and variables used by a
routine, not including entities declared
to be in common.

Controllee
Default Project Number
A task called into execution by a
controller.
Controllee Chain
A linked series of tasks that results
when one task brings another task into
execution. That task can, in turn,
initiate another task. As many as nine
levels of tasks can be involved. The
highest level is level 1; the lowest is
level 9.

A project number that is assigned to a
user number as default. Whenever a user
executes a job or interactive session,
the system resources accumulated will be
charged to the default project number if
in existence, unless the user supplies a
charge number within the job or
interactive session.
Descriptor Block Number

The tasks in the chain are not run
concurrently_ When a controller starts
a controllee, the controller is suspended
until the controllee returns control to
it.
Controllee File
Refer to Virtual Code File.
Controller
A task that produces another task.
A relative term that indicates that a
member of a controllee chain that has a
controllee task attached. A controller
might be a control lee of another task.
The batch processor is one controller
that has no controller (that is, a
level-1 task).

A unique number associated with the
program until it terminates or is
disconnected. This number is the key
link between the operating system and an
executing program.
DFBM
Data flag branch manager.
Drop File
A file created by the system for
modified pages of an executing task,
free space, and write-temporary files.
Drop file names are formed by the system
shifting the controllee file name right
one character and prefixing it with a
digit that identifies the level (1
through 9) in a control lee chain.

CPU
Drop File Map
See Central Processing Unit.
CRT
Currently running table (T CRT) used by
RHF processing. This is a-virtual
system table.

C-2

Part of the minus page of an executing
file that relates virtual addresses with
physical mass storage addresses. An
entry is made in the drop file map every
time a free-space reference is made by
the executing code.

60459420 G

Dynamic Stack

File Type
A category that defines file structure
from a system standpoint. File types
are physical, virtual data, and virtual
code.

The stack that resides in free space.
All registers are saved on subroutine
calls in the dynamic stack.
EBCDIC

Free Space
Extended binary coded decimal
interchange code.

Space in memory available for use that
gets paged to and from the drop file.
The range for free space is #4000 up to
#7FFFFFFFFFFF.

EOF
End of file.
FST
EOG

File segment table.

I

End of group.
Implicit Input/Output
EOI
A means of accessing a mass storage file
in which the system brings a page of the
file into main memory in response to a
reference on that page. Contrast with
Explicit Input/Output.

End of information.
Epilogue

I

A set of instructions executed at the
exit of a subroutine that restores
registers and resets conditions.

Input/Output Connector (IOC)
An entry in a minus page that links a
file with a task for input/output
purposes.

ERS
Efficient run size.

Invisible Package
Explicit Input/Output
A means of accessing a mass storage or
tape file in which data is buffered
under program control. Contrast with
Implicit Input/Output.

A hardware feature that contains the
current address and control information
for a task.
IOC

I

See Input/Output Connector.

F~E

File access directory entries.

IQM

File

Input queue manager.
A collection of data that can be
accessed by file name. In the absence
of an adjective such as terminal or
tape, all references to files in this
manual imply mass storage files.

JDN
Job descriptor number.
JDT

File Index Table
A system table that holds all
information relating to active user's
files and their characteristics.

60459420 F

Job descriptor table.
Job
Refer to Batch Job.

C-3

Job Block

Local File
A private file that is destroyed by the
system after termination of the batch
job or interactive terminal session that
creates it.

The amount of resources accumulated for
the duration of the job.
Labeled Tape

A magnetic tape with labels conforming

LRU

to American National Standard
X3.27-1978, Magnetic Tape Labels for
Information Interchange.

Logical record unit.
Main Memory

Large Page
Memory associated with the central
processing unit from which instructions
can be executed. Also called MCS.

128 small pages; 65,536 contiguous words
of 64 bits.
Last-Group-File

Map
Refer to Bound Implicit Map or Drop File
Map in chapter 2; also MAP system
message (chapter 5).

Identifies the member of an
output-file-family which contains
disposition information for QTF.

Mass Storage File

LCN

A file management category that indicates

Loosely coupled network.

no special processing after task
termination. In a general sense, mass
storage indicates disk-resident files,
as opposed to magnetic tape or terminal
files.

Level
Depending on context, can refer to the
security level of a file, the level of a
file in the controllee chain, the level
of a routine involved in an interrrupt,
or the level of protocal in RHF. For
the first and second meanings, refer to
Security Level and Controllee Chain.

Master Project Number

With respect to interrupt processing,
level 0 refers to the normally executing
routine. Level 1 refers to the
interrupt routine when it is in
execution.

Master User

One to three characters (the first three
nonspecial characters of a project
number) to be assigned to a mass storage
file.

A user who has been designated to be able
to audit any user files with a specific
account identifier.

Library

A file of modules, in a format produced

I

MCS

by the system utility OLE, that can be
used to satisfy external references
during loading.

See Main Memory.
MCU

LID

I
C-4

Maintenance control unit.
Logical identifier. The name specified
by a user to designate a remote host to
be accessed through the Remote Host
Facility.

MDI
Marginal drive indicator.

60459420 F

Message

Output-File-Family

Refer to System Message.

A set of files residing on User-6 that
was generated as the output of a batch
job or as the output of an MFQUEUE.

Minus Page
The first page of a virtual file used by
the system to hold items such as the
invisible package, input/output connector
information, and maps of defined virtual
space. Drop files can also have a second
minus page containing overflow input/
output connector and map information.

Ownership
The term for the type of permanent file
catalog to which a file belongs.
Ownership indicates whether a file
belongs to a private user, a pool, or
the system (public).

MODDROP
Pack File Index (PFI)
A management category for implicitly
opened files that indicates a file is
read-only on mass storage. Modifications
to the file are retained in the drop
file (write-temporary) and do not alter
the file image.

I

A table
entries
control
on that

of 16-word file index table
which exists on each pack to
and describe the files located
pack.

PAD
NAD
Pool access directory.
Network access device.
Page
Nonprivileged
User number which does not have the
privileged attribute. Refer to
Privilege.

The unit by which main memory is
managed; a block of contiguous 512
64-bit words. Can be a large page of
128 blocks or a small page of 1, 4, or
16 blocks.

Object Code File
Page Fault
A file generated by compilation or
assembly of a source language program
that can be used by the loader to
produce an executable file. Contrast
with Virtual Code File.
OLE

Reference by virtual address to a page
not currently in main memory, causing a
program interrupt and paging in.
Paging In

System utility that creates and modifies
a file in library format or modmerge
file format.

Operation to move a page from auxiliary
memory to main memory.
Paging Out

Output File
A file management category that
indicates a file is destined for print
or punch equipment.
Also, a generic term for a file being
written, as opposed to an input file
being read.

60459420 F

Operation to move a page from main
memory to auxiliary memory.
Permanent File
A private file that remains in the
system after termination of the batch or
interactive session that creates it.

C-5

I

Prologue

Physical Data File

A set of instructions executed at the
entry to a subroutine that swaps
registers and sets initial conditions.

A file type that indicates a file
containing nonexecutable data only.
Physical Memory Address
PRU
Address of a page in main memory.
called physical address.

Also

PID

Physical record unit.
Public Files

Physical identifier. The unique name
used by the Remote Host Facility to
designate an individual host system.

I

I

Files considered to be system owned.
They belong to user number 000000.
Public files are accessible to all users.

Pool
Register File Block
One mechanism for file sharing on VSOS.
A pool is a file set created and
maintained by a pool boss. More than
one user number can access a pool as
determined by the PACCESS request for
the pool.

The second block of a virtual code file
which contains register contents when a
task is not executing in the cPU.
RHF

Pool File
An ownership category that indicates a
file can be accessed by any privileged
task and, after PATTACH, by any task
running under a user number the pool
boss authorizes by using PACCESS.

Remote Host Facility.
RHFMT
Remote Host Facility mainframe table
(T_RHFMT) •
RHFT

PP
Remote Host Facility table (T_RHFT).
Peripheral processor.
SAE
Private File
Standardized accounting enhancements.
An ownership category that indicates a
file can be accessed either by a task
running under the user number under
which the file is stored, by a
privileged user, or by another user who
has been given permission by the owner.
Privilege (User)
An attribute granted a user number which
allows access to all permanent files in
the system and to some operating system
functions.

Scratch File
A management category that indicates a
file is to be destroyed upon termination
of the task that created it.
Security Level
Attribute of a file, task, job, or user
number used to prevent unauthorized data
access. The eight security levels are
numbered 1 through 8, from least to
greatest security.

Project Number
SHRLIB
1 to 20 alphanumeric characters
(including the special characters
* and -) indicating to which project,
within the account identifier, the
system resources are to be charged.

C-6

The area of point F virtual memory
reserved for shared library routines
(virtual bit address #800000000000 IIBFFFFFFFFFFF) •
60459420 F

I

SIT

System Message
The means by which the operating system
and user tasks communicate with each
other. System messages are calls to the
virtual and resident systems.

System intialization table.
Small Page
One, four, or sixteen blocks, where a
block is 512 contiguous 64-bit words.
Source File
A generic term for a file containing
information used by a utility or other
task whose specific meaning depends on
the context of its use: the control lee
file associated with a drop file, for
instance, is termed the source file.
In an UPDATE utility context, a file
produced by UPDATE that would allow
recreation of a new program library on a
subsequent creation run. In the FORTRAN
context, the input program text ~s
called the source.

System Time Unit (STU)
An installation-defined unit used for
allocating system resources. The unit
might incorporate tape use/access,
number of tape functions, number of disk
accesses, number of pages transferred to
or from disk, and CPU usage in
microseconds. An example of STU is time
in microseconds of CPU use. Refer to
System Billing Unit.
Task
An executable program.
TTY
Teletypewriter terminal unit.

SPT
System processor table.
virtual system table.

This is a

UAT
User activity table.

System Billing Unit (SBU)
An installation-defined unit used for
charging of system resource usage. The
unit may incorporate tape use access,
number of tape functions, number of disk
accesses, number of pages transferred to
or from disk, and CPU usage in
microseconds, depending on installation
parameter settings. An example of SBU
is the time in microseconds of CPU use.
Refer to System Time Unit.
System Dayfile

I

A file of all significant events in the
system, including user dayfile entries,
interactive commands, batch processor
errors, privileged system task errors,
and login errors.
System Interface Language (SIL)
Set of subroutines callable by user
programmers. Each subroutine formats
and issues one or more system messages.

60459420 F

UEP
User error processing.
User Number
Six digits that identify a file owner or
user of system resources. One task can
be in execution for a given user number
for each suffix at one time.
User Project Control
A user attribute, if set for a user
number, the charge number must be
specified for the executing job or the
user must have a default project number
assigned.
Virtual Address
Address that refers to virtual memory
and is translated, through the page
table, into a physical address.

C-7

I

Virtual Address Space

VSDT
Virtual system debug tool.

The set of virtual addresses that belong
to a specific active task.
VSN
Virtual Code File

Volume serial number.
A file type that indicates an executable
file having a minus page as its first
page and a page 0 as its second page.
The file must be created by the loader.
A virtual code file is also called a
controllee file. Contrast with Object
Code File.
Virtual Memory
A concept by which memory can be
addressed as if it were as large as
needed. The system manages
correspondence between the user memory
addresses and physical main memory.
Virtual Range
Range of virtual addresses.
Virtual Address Space.

VAA
Variable rate accounting.

Same as

VSOS
Virtual Storage Operating System.
Word
A 64-bit division of main memory or mass
storage. Bits are numbered 0 through
63, from left to right (most significant
to least significant).
Working Set
Basis for managing the amount of
physical memory available to a task. It
is the portion of a task's virtual
addresa space that is referenced most
frequently during a window of the
execution of the task.
Working Set Size
Number of 512-word blocks in the working
set.

V~

Variable rate factor.
VRI

Write-Temporary
Variable rate index.

C-8

Refer to MODDROP.

60459420 F

I

REGISTER FILE CONVENTIONS

D

The VSOS assumes some conventions regarding the handling of the register file, an area
containing 256 registers numbered from #0 to #FF. Some of the registers are used by the
operating system for specific purposes, and others are available solely for the purposes of
the user. One register file area of particular importance is the register save area, which
is saved and restored each time an external procedure call is made.

REGISTERS
The register file is subdivided into five major areas, as shown in figure D-l. The
environment register area and the working register area are jointly referred to as the
register save area, registers that are saved on calls to external procedures.

MACHINE REGISTERS
These registers include registers #0, #1, and #2. Register #0 contains machine zero
(machine zero is described in the CYBER 200 Computer System Hardware Reference Manual).
Registers #1 and #2 are used by Data Flag Branch Manager. When a data flag branch occurs,
the hardware sets register #1 to contain the address of the next instruction that would have
executed had the data flag branch not occurred. The data flag branch causes transfer of
control to the address contained in register #2. This address is set by the user (most
likely, a software product such as DEBUG or FORTRAN runtime).

TEMPORARY REGISTERS
A user program can utilize two areas for temporary storage, addresses, or data. The two
areas are from register #3 to #13, and from #20 to the end of the register save area.
The lower area (#3 to #13) is large enough for execution of short subroutines that do not
call other subroutines (such as SIN and COS) completely within the temporary space,
eliminating the need for saving and restoring the register save area when short modules are
needed by a program. The upper area (#20 to an upper limit specified by the caller), which
is large enough to hold a variety of user procedures, cannot be modified by the callee. If
the callee needs to use registers in the range of #20-#FF, it must save and restore the
caller's copies of those registers.

60459420 E

D-l

GLOBAL REGISTERS
The contents of the global registers are universal to all programs including VSOS.
contents can be assumed by all modules.

The

The global registers contents are as follows:
Contents

Register

1114

The constant #20.

1115

The constant #lA.

1116

The constant 111.

1117

The parameter descriptor. The number of parameters being
passed during a call is contained in the leftmost 16 bits; the
virtual bit address of the parameter list is stored in the
rightmost 48 bits. Figure D-2 illustrates how parameters are
passed to routines. The parameters are passed by address.

f118, 1119

Function results obtained from a called function. For
example, the result of a trigonometric or exponential function
would be placed in register 1118. Register 1119 could be used
when a result has two components (for example, the imaginary
part of a complex number whose real part is returned to
register 1118).

Registers 1114 and #15 are used to swap the register file in/out at prologue/epilogue time.

D-2

60459420 E

o

63
\

o

machine 0
64
Machine
Registers

data flag branch exit address
64
2

data flag branch entry address

64

3

.1.

Temporary
Registers

I.,

7

13
.

14

20 16
64

15

1A 16
64

16

1

64
number of
parameters

17

16

18

pointer to list of parameter addresses
(parameter descriptor)

Global
Registers

48

function result register 1
64

19

function result register 2
64

1A

return address

64
1B

undefined

1C

register
count

1~

register
count

1D

1E

16
16

undefined

16
1F

address of top of stack
(dynamic stack pointer)
address of current program's register
save area (current stack pointer)
address of caller's register save area
(previous stack pointer)
address of first word of callee's data base
(link register)

4R

48

Environment
Registers

48
48

data flag table pointer for DFBM
64

20
i. 7

J. 7

Working
Registers

FF

Figure D-l.

60459420 E

Register File

D-3

o

63
number of
parameters

Register

#17

16

~

pointer to list of parameter addresses
(parameter descriptor)
./

---

length
(in words/bytes) 16

address of parameter 1

48

length

2

address of parameter 2

48

16

3

length

address of parameter 3

48

16
7

n

48

:
length

address of parameter n

48

16

Figure D-2.

List of Parameter Addresses

I NOTE I
Only descriptors or type character parameters
have meaningful values in the length field in
the parameter list.
If the parameter is an address, then this
address is in the parameter list; for
example, an array.

D-4

60459420 E

ENVIRONMENT REGISTERS
The environment registers consist of the minimum set needed to support the sharing of code
in a virtual system and the general requirements of recursive, reentrant execution. These
registers, along with a number of working registers, are the register save area. Each time
a caller releases control to a callee, a new environment register/working area is
established for the callee. A stack structure is used for this. The environment registers
include:
Register

Description

lilA

Return register. Contains the virtual bit address of the
location in the caller's program to which the callee's program
normally returns.

1IlB

Dynamic stack pointer. Contains the relative bit address of
the next available free location in the dynamic stack. It is
the caller's responsibility to leave the address of the
dynamic stack pointer on a double-word boundary. The dynamic
stack pointer is always advanced prior to storing data into
that region or before addresses pointing to that region are
calculated.

If IC

Current stack pointer. Contains the length and relative bit
base address of the region (the stack frame) in the dynamic
stack where a caller wants its registers to be saved. The
length of that region is the number of environment registers
(6) plus the number of work registers (possibly none) needed
for dynamic working storage for the program. Before making an
external call, the caller must set the length portion of the
current stack pointer to the number of registers to be saved
by the callee. The current stack pointer is set by the
caller, but it is the callee that establishes the new stack
frame. A minimum of six registers must be saved (the number
of environment registers).

If I D

Previous stack pointer. Contains the number of registers and
the relative bit base address in the register file where the
caller's register save area has been saved. The callee's
previous stack pointer is an exact copy of the caller's
current stack pointer.

If IE

Link register. At subroutine entry contains the virtual bit
address of the data base allocated to the module by the
loader. The caller passes to the callee the address of the
callee's data base in the link register.

If IF

Pointer to the data flag table for the data flag branch
manager (DFBM), for further information refer to the FORTRAN
reference manual.

The environment registers are used and modified by program prologues and epilogues. An
assembly language programmer must write an appropriate prologue/epilogue. Compilers will
automatically generate the necessary prologue/epilogue. Compilers will automatically
generate the necessary prologue/epilogue to ensure that the caller's register save area is
saved when an external routine is called.

60459420 G

I

D-5

REGISTER SAVE AREA
The register save area is only those register resident variables that are saved/restored.
Many permanent variables/addresses are not register resident, but are memory resident.
Nothing must be done to preserve these. When an executing program has called an external
program, the instructions of the conventional prologue of the called program save the
caller's register save area. (See discussion below about prologues.) The register save
area is stored and saved as an element of a conventional chained stack in the register
file. A stack element, called a stack frame, is diagrammed in figure D-3.

I

environment registers
working registers
temporary/dynamic
work space

}
}

}
Figure D-3.

register #1 d
-

previous
stack frame

-

current
stack frame

-

next
stack frame
(available dynamic space)

register #1 c

register #1 b

Stack Frame

The initial size of a frame, defined by the difference of the values of the current stack
pointer (the stack frame base) and the dynamic stack pointer, does not include temporary
work space. Any time temporary work space is needed, the program can increment the dynamic
stack pointer and in this way obtain space. Dynamic space use increases (frames are pushed
onto the stack) until the lowest level called program has been executed; then, as the
returns are encountered, the space is made available again in reverse order to the calls
(frames are popped from the stack).

D-6

60459420 E

EXTERNAL PROCEDURE CALL SEQUENCE

The standard sequence of an external procedure call is one of the following:
RTOR
BSAVE

ZZ, filE
filA, YY

Load data base address.
Jump to subroutine.

LOD
IS
LOD
BSAVE

[XX,JJ] ,YY
JJ, 1
[XX,JJ] ,filE
filA, YY

Load subroutine address.
Enter length
Load database address.
Jump to subroutine.

LOD
BSAVE
STO

[XX,JJ] ,filE
filA, YY
[XX,QQ] ,YY

Load subroutine address.
Jump to subroutine.
Store address of subroutine.

LOD
ELEN
BSAVE
STO

[XX,JJ] ,filE
fllC,pp
filA, YY
[XX,QQ] ,YY

Load database address.
Enter length.
Jump to subroutine.
Store address of subroutine.

Where the register number for YY is one less than the register number for ZZ. YY is the
external subroutine address register, ZZ is the external subroutine data base register, and
XX is a register containing an address within a data base or common block.

PROLOGUE SEQUENCE

There are basically at least three types of prologues:
1)

The traditional prologue approaches the one shown earlier in this chapter in figure D-3
in that it does swap out/in the register file. However, only one swap is used.

2)

A zero swap sequence (the FORTRAN compiler may generate such a prologue if optimization
is selected) can be used if no registers in the range UIA to UFF are to be used by the
callee.

3)

An in between sequence whereby stores are used to save a few registers and loads to
initialize them for the callee. This is a special case of 1), but may be used for
performance reasons instead of using the SWAP instruction.

60459420 G

D-7

I

The prologue of the called procedure includes the following instructions: (type 1)
Instruc tion

Description

2AIEOOxx

Set the number of registers to be loaded in register HIE.

78IBOOIO

Save callers dynamic stack pointer.

78IFOOI2

Save callers data flag table pointer.

781COOll

Save callers current stack pointer.

7DIE15IC

Swap: saving caller's registers, loading callee's registers.

3EIBxxxx

Set new dynamic space required.

7811001D

Move callers current stackpointer to callee's previous
stackpointer.

7810001C

Move callers dynamic stackpointer to callee's current
stackpointer.

63IBIOIB

Update dynamic stack pointer.

78I200IF

Restore contents of data flag pointer.

2AICOOxx

Set number of registers to be saved on subroutine call.

Another example of a prologue follows:
Instruction

D-8

Description

781A0005

Save return address.

78IB0006

Save dynamic stack pointer.

781C0007

Save current stack pointer.

781E0008

Save address of callee's data base.

3E09XXXX

Number of words (xxxx) to be reserved.

6309IEOA

Reserved xxxx words to callee's data base.

2AOAOOYY

Set number of registers to be saved (yy).

781FOOOB

Save data flag table pointer.

7DOAI5IC

Swap restored yy registers from the callee's current stack
starting with register IIA.

780500IA

Update the return address.

3E0500YY

Set number of registers saved (yy).

7B0506IC

Update current stack pointer yy in the length field dynamic
stack; pointer's address becomes current stack pointer's
address.

30050605

Change words (yy) to bits.

60459420 F

Instruction

Description

6305061B

Reserved (yy) bits to dynamic stack pointer.

7808001E

Update callee's data base.

78070010

Put current stack pointer to previous stack pointer.

7BOOOB1F

Update data flag table pointer.

781B0024

Save dynamic stack pOinter (temporary register).

78170021

Save parameter descriptor address.

Some programs can perform their subroutines entirely within the temporary registers, and do
not make external calls. Such routines need not contain a prologue and can be assembled or
compiled to omit it.

EPilOGUE SEQUENCE
The epilogue of the called procedure should be as follows; however, instructions 7E1F0005
through 3B060000 are required only when using the DFBM:
Instruction

Description

70101500

Using the length and address of the previous stack pointer,
restore the register file from the callee's current stack,
starting with register #lA (the environment registers).

7E1F0005

Load word 0 from the data flag table to which register #1F
points (ON_UNIT).

BE03180100000800

Enter the data flag register constant with the SFT, JIT,
BKP, and enable bits set.

3B030004

Load and store the data flag branch register.

BE03180100000FEO

Enter the data flag register constant for an AND operation,
which ensures that previously set free and monitor flags
remain set.

20030406

Perform a logical conjunction (AND) of the current data
flag register with the constant for free flags and monitor
flags.

2E060506

Perform a logical disjunction (Inclusive OR) of the current
data flag register plus any free or monitor flags with word
o from the data flag table containing the data flag
settings for the caller.

3B060000

Load the data flag register with the setting.

3340001A

Jump to the return address specified in register #lA.

60459420 F

D-9

I

E

CYBER 205 INVISI8LE PACKAGE

The invisible package is a hardware convention that contains the address and control
information required to begin a new job or to continue a job that was interrupted during
execution. Each job is associated with an invisible package. When the CPU switches from
monitor mode to job mode, the invisible package for the corresponding job is automatically
loaded from main memory, beginning at the addre$s assigned by the monitor. The invisible
package data is loaded into the appropriate registers in the CPU. When the CPU switches
from the job mode back to the monitor mode, as in the case of an interrupt, the contents of
the corresponding registers are automatically stored in main memory as the invisible package
for that job.
The contents of the invisible package are shown in figure E-l. For a description of fields
not described in figure E-l, refer to the CYBER 200 Model 205 Computer System Hardware
Reference Manual. Because the fixed portion of the absolute word address is divided within
the hexadecimal character, bits 52 through 55 are shown as their binary equivalents.

o

63

o

t

t

program address

t

Op IWRP

breakpoint
43

16

2

S~ RI
p

key 0

sP ....

WRI

I\J~ RI

key 1

12

O~ RI

key 2

12

VEX microcode

3

5

43

16

4

key 3
12

12
t
40 2

VFJ1

t
10 2

VFJ2
10

data flag register
64
JFL 1

5

64

6

F

G

8

t

vector program address
43

8

5

JFL2

7

64

8

job interval timer

job/vector instruct status
32

32

JFL3

9

64
current instruction

A

64
JFL4

B

64
tUndefined (must be set to 0).

Figur-e E-l.
60459420 H

Invisible Package Contents (Sheet 1 of 4)
E-l

,

0

63
string partial data or function codes

C

link instruction

32

32

JFL5

D

64
access interrupt
cause

E

access interrupt address

16

48
JFL6

F

64
TFOO

10

TF10
16

11

48

TF01

TF11
16

12

48

TF02

TF12
16

13

48

TF03

TF13
48

16
14

TF04

TF14
16

15

48

TF05

TF15
16

16

48

TF06

TF16
16

17

48

TF07

TF17
16

48

18

partial sum or ninth IC

64
19

partial sums

1A

pipes function control for link instruction

18

partial sums

J.

7

27

partial sums

Figure E-l.

E-2

Invisible Package Contents (Sheet 2 of 4)

60459420 E

Word
1

Description
Breakpoint usage bits:

o
W
R

2

Not used and must be O.
Check for breakpoint compare on write operands.
Check for breakpoint compare on read operands.

Usage lockout bits for each key:
SP

Bits 0 and 16 together define a small page size for all
small pages; bits 32 and 48 are not used and are set to 0:
Bit 0

Bit 16

0
0

0
1
0
1

1
1
W
R

I

3

All small pages are 512 words.
Undefined.
All small pages are 2048 words.
All small pages are 8192 words.

Lockout CPU write operations.
Lockout CPU read operations.
Lockout CPU instruction references.

Vector execution microcode conditions:
0-31
32
33
34
35
36
37
38
39
Figure E-1.

60459420 E

De,scription

Not used and must be set to O.
Interrupt FF (signal to pipes).
Link instruction in execution.
Link instruction R bit 3.
Link instruction R bit 4.
CC instruction in execution.
Not used and must be set to O.
Vector block scalar use of load/store registers.
Flag 1.
Invisible Package Contents (Sheet 3 of 4)

E-3

Word

8

Description
Job/vector instruct status bits:

o
1

2-11
12
13
14
15

16
17
18-19
20
21
22-25
26
27
28
29
30,31
C

Link instruction codes:
0-15

16-31

E

,

Link (56) instruction F and R codes.
Link Fl instruction F and G codes.

Access interrupt cause bits:
0-11
12
13
14
15

18

Vector restart.
Not parallel operation.
Undefined and must be set to O.
Stall bit (set for no data processed).
D8 or D9 execution started.
Undefined and must be set to O.
EBCDIC when set, ASCII when clear.
SCR code bit 3 (exit at vector instruction termination).
Select force of extension field length.
Vector instruction register file update disable bits.
D8 and D9 multiple match flag.
String restart bit (old data flag).
Undefined and must be set to O.
R-record FF.
DA-DC toggle code bit O.
DA-DC toggle code bit 1.
DA-DC toggle code bit 2.
Undefined and must be set to O.

Not used and must be set to O.
Associative work not in page table.
Write operand violation attempted.
Read operand violation attempted.
Read instruction violation attempted.

Partial sum or ninth IC:t
0-63
0-15
16-63

Partial sum for DX instruction or special broadcast
quantity for link or CC instruction.
Output item count for AX or C8 to CB instruction.
C base address for AX instructions.

tThese bits are undefined in all other applications.
Figure E-1.

E-4

Invisible Package Contents (Sheet 4 of 4)

60459420 E

PROGRAM S1 A1ES

F

The current disposition of a program is indicated by a number that is carried in the
descriptor block for the program. This code can be gained by the privileged EXECUTE
OPERATOR COMMAND message (f=#0021).
Codes having specific definitions are shown in table F-l.
have these general descriptions:

Codes not defined in the table

Description

Code
III

119

Task is in the alternator.

IIA

IIF

Task is not in the alternator, but is partially in memory.

1110

IIlF

Task is not processing a message and is waiting.

1120

112F

Task is processing a message and is waiting.

1130 - 113F

System is performing functions for a program.

1140 - 1/4F

Miscellaneous.

IIB9 - IIBF

State is indicated by subtracting #80. Tasks in a terminal or nonterminal
dump state have 1180 added to their original state when they are being dumped
to disk; for example, 113D + 1180 = #BD.

Table F-l.

Program State Codes (Sheet 1 of 2)

Code

Description

1

Task put in an alternator slot from the descriptor block load queue.

5

Task alternator unblocked after new slot time.

7

Outstanding explicit I/O requests and interrupts have completed.

11

Waiting for an alternator slot.

13

Waiting for entry in the explicit I/O buffer.

14

Waiting for the mainframe.

16

Waiting for nine-track tape assignment.

17

Waiting for system call completion.

60459420 E

F-l

Table F-l.

Program State Codes (Sheet 2 6f 2)

Code

F-2

Description

18

Waiting for I/O completion.

IE

Waiting for the controllee to get on disk.

IF

Waiting for the controllee to get on disk.

20

l-laiting for a message from the controller.

21

Waiting for a message from the controllee.

22

Reserved for installation use.

23

Waiting for a message from the operator.

24

Waiting for an operator type in.

26

Waiting to send a message to the controllee.

27

Waiting to send a message to the controllee.

28

Reserved for installation use.

29

Waiting to send a message to the operator.

2A

Waiting to send a message to the teletypewriter.

30

Execute line in, descriptor block and keys assigned; message sent to load
file management.

38

Waiting for termination of controllees at lower chain levels.

39

Terminate and kill all pages.

3A

Nonterminal dump. Suspend in state = #41 after completion.

3B

Program dump, accounting finished; cleanup done; code + 80 16 accounting
done; dump I/O.

3C

Dump finished, clean up to go.

3D

Terminal dump error.

3E

Terminal dump scheduled, no error.

3F

Nonterminal dump scheduled.

40

Suspend for a time period.

41

Suspended by the operator or the system.

60459420 E

TAPE FORMATS

G

The online tape subsystem supports NOS and NOS/BE internal tape formats I and SI,
respectively. It supports V, a variable PRU tape format, and NV, which is equivalent to
lower CYBER S or L. In addition, a new tape format, large block format LB, is supported.
For tape formats I, SI, and LB, a physical structure is superimposed over the user-declared
SIL logical file structure (RT) by the operating system.
When the user issues a write, the user supplies a logical record unit array. Each entry in
the array specifies the length of the logical tape record (LRU) and whether an end of file
should also be written. After a read operation, the system returns information to the
logical record unit array: number of bytes read, logical tape record status, end-of-group
status, and end-of-information status. Observe that end of LRU, end of group, and end of
information may have different meanings, based on the different tape formats. The
characteristics of each of the tape formats follow.

I (INTERNAL) FORMAT
Figure G-l shows the characteristics of the I tape format.

Characteristic

Description

Header

Labeled or unlabeled.

PRU size

Actual data block size that can range from 8 to 3840 bytes. All PRUs
except those containing labels include a 48-bit PRU terminator
formatted as follows:

o

I

63
byte cau nt

121

In

PRU number

Description

Field
byte count

Total number of bytes in the PRU, including the PRU
terminator.

PRU number

Number of PRUs since the last HDRI label.

In

Leve 1 numbe r:

o
F

End of LRU.
End of group.

User-specified maximum PRU size (MPRU) has no meaning.
Figure G-l.
60459420 E

I Tape Format (Sheet 1 of 2)

G-l

Description

Characteristic
Beginning of
Information

For labeled tapes, a tape mark preceded by a beginning-of-volume or
beginning-of-file label group is considered the beginning of
information. For unlabeled tapes, load point is considered the
beginning of information.

End of LRU

Any PRU with fewer than 512 CYBER 170 central memory words of data is
considered an end of LRU. During a write operation, the level number
field of the PRU terminator contains the level number obtained from the
logical unit array; during read operations, the system returns an
end-of-LRU status and the contents of the PRU terminator level number
field. If the level number is 17 (octal), the system also returns an
end-of-file status. Some PRUs may consist only of a PRU terminator.

End of group

Any PRU consisting of a PRU terminator only, with a level number of 17
(octal) is considered an end of group. The system ensures that an end
of LRU always precedes an end of group by writing, if necessary, a PRU
terminator with a level number of 0 prior to the end of group.

End of
information

A tape mark followed by an EOFI label is considered the end of
information. This trailer sequence is generated by the system on
labeled and unlabeled I, SI, and LB format tapes. The system issues a
label content error if it encounters a tape mark without a valid label
following it.

End of reel

If, during a write operation, the system senses the end of tape, it
writes a trailer sequence following the PRU on which the EOT was
sensed. This trailer sequence consists of a tape mark followed by an
EOVI label followed by three tape marks. The next PRU is written on
the next reel. During a read operation, the EOT is observed and the
system transfers to the user the PRU on which the EOT was sensed plus
all following PRUs until a trailer sequence is recognized. Reading
resumes on the next reel.

Noise

Not applicable.
Figure G-l.

G-2

I Tape Format (Sheet 2 of 2)

60459420 E

SI (SYSTEM INTERNAL) FORMAT
Figure G-2 shows the characteristics of the SI tape format.

Description

Characteristic
Header

Labeled or unlabeled.

PRU size

The PRU size can range from 8 to 3840 bytes. Any PRU smaller than the
maximum size except those containing labels contain a 48-bit special
terminator. This terminator has the following format:

552335522754 (octal)

Field
In

Description
Level number:
O-E
F

End of LRU.
End of group.

Beginning of
information

For labeled tapes, a tape mark preceded by a beginning-of-volume or
beginning-of-file label group is considered the beginning of
information. For unlabeled tapes, load point is considered the
beginning of information.

End of LRU

Any PRU containing fewer than 512 CYBER 170 central memory words
represents an end of LRU. If an LRU consists of an exact multiple of
512 central memory words, the PRU that denotes the end of LRU consists
solely of a special terminator. During write operations, the level
number field of the special terminator contains the level number
obtained from the logical record unit array; during read operations,
the system returns an end-of-LRU status and the contents of the special
terminator level number field. If the level number is 17 (octal), the
system returns an end-of-file status.

End of group

Any PRU consisting of only a PRU terminator with a level number of 17
(octal) is considered an end of group. The system ensures that an end
of LRU always precedes an end of group by writing, if necessary, a PRU
terminator with a level number of 0 prior to the end of group.
Figure G-2.

60459420 E

SI Tape Format (Sheet 1 of 2)

G-3

Characteristic

Description

End of
information

A tape mark followed by an EOFI label is considered the end of
information. This trailer sequence is generated by the system on
labeled and unlabeled I, SI, and LB format tapes. The system issues a
label content error if it encounters a tape mark without a valid label
following it.

End of reel

If, during a write operation, the system senses the end of tape, the
system writes a trailer sequence following the PRU on which the EOT was
sensed. This trailer sequence consists of a tape mark followed by an
EOVI label followed by three tape marks. The next PRU is written on
the next reel. During a read operation, the EOT is observed and the
system transfers to the user the PRU on which the EOT was sensed plus
all following PRUs until a trailer sequence is recognized. Reading
resumes on the next reel.

Noise

Not applicable.
Figure G-2.

G-4

SI Tape Format (Sheet 2 of 2)

60459420 E

LB (LARGE BLOCK) FORMAT
Figure G-3 shows the characteristics of the LB tape format.

Characteristic

Description

Header

Labeled or unlabeled.

PRU size

Actual data PRU size that can range from 0 to 32768 bytes. All PRUs
except those containing labels include a 48-bit PRU terminator
formatted exactly like the 1 tape format terminator.
User-specified maximum PRU size has no meaning.

Beginning ot
information

For labeled tapes, a tape mark preceded by a beginning-of-volume or
beginning-of-file label group is considered the beginning of
information. For unlabeled tapes, load point is considered the
beginning of information.

End of LRU

Any PRU with fewer than 4096 central memory words of data is considered
an end of LRU. During a write operation, the level number field of the
PRU terminator contains the level number obtained from the logical
record unit array; during read operation, the system returns end-of-LRU
status and the contents of the PRU terminator level number field.
If
the level number is 17 (octal), the system also returns end-of-file
status.
Some PRUs may consist only of a PRU terminator.

End of group

Any PRU consisting of only a PRU terminator with a level number of 17
(octal) is considered an end of group. The system ensures that an end
of LRU always precedes an end of group by writing, if necessary, a PRU
terminator with a level number of 0 prior to the end of group.

End of
information

A tape mark followed by an EOFI label is considered the end of
information. This trailer sequence is generated by the system on
labeled and unlabeled I, SI, and LB format tapes. The system issues a
label content error if it encounters a tape mark without a valid label
following it.

End of reel

If, during a write operation, the system senses the end of tape, the
system writes a trailer sequence following the PRU on which the EOT was
sensed. This trailer sequence consists of a tape mark followed by an
EOVI label followed by three tape marks. The next PRU is written on
the next reel. During a read operation, the EOT is observed and the
system transfers to the user the PRU on which the EOT was sensed plus
all following PRUs until a trailer sequence is recognized. Reading
resumes on the next reel.

Noise

Not applicable.

Figure G-3.

60459420 E

LB Tape Format

G-5

V AND NV (VARIABLE) FORMAT
Figure G-4 shows the characteristics of the V and NV tape formats.

Characteristic

Description

Header

Labeled or unlabeled.

PRU size

No explicit multiple of frames is required. The maximum PRU size may
be specified in the MPRU field of the CHANGE FILE system message. If
no PRU size is specified in the MPRU fleld t it is assumed to be 32 768
bytes. The maximum PRU size for V format is 48 pages.

Beginning of
information

For labeled tapes t a tape mark preceded by a beginning-of-volume or
beginning-of-file label group is considered the beginning of
information. For unlabeled tapes t load point is considered the
beginning of information.

End of LRU

On a READ or READSKIP request t each PRU is considered an end of LRU.

End of group

Tape mark. Observe that this is valid only for the NV format since it
is non-ANSI.

End of
information

If the tape is unlabeled t double tape marks located before the
end-of-tape reflective marker denote end of information. If the tape
is labeled t the end of information is a tape mark followed by an EOFI
label.

End of reel

1ft during a write operation t the system senses the end of tape t the
system writes a trailer sequence following the PRU on which the EOT was
sensed. This trailer sequence consists of a tape mark followed by an
EOVI label for labeled tapes and tape marks for unlabeled tapes. The
next PRU is written on the next reel. During a read operation t the EOT
is observed and the system transfers to the user the PRU on which the
EOT was sensed plus all following PRUs until a trailer sequence is
recognized. Reading resumes on the next reel.

Noise

Any PRU containing fewer than the specified number of noise size frames
is considered noise and is therefore ignored.
Figure G-4.

G-6

V and NV Tape Formats

60459420 E

INDEX

Abnormal termination control (ATC)
2-17; 5-97; C-1
Access
C-1
ACCESS CONTROL system message
5-165
Access permissions
5-46
Account block
C-1
Account identifier
C-1
Accounting
8-1
File
8-3
Record format
8-7
Record type and subtype codes
8-3
System messages
5-4
Accumulating statistics
8-2
Active accounting file
Blocks
8-5
Format
8-5,7
ADVISE system message
1-7; 5-1,208
Alpha word conventions
5-2
Alternator table
1-2
ANALYZER
7-1
Execute line format
7-2
ANSI labels
4-2
ATC (see Abnormal termination control)
ATTACH PERMANENT FILE system message
5-68
*AF file
8-3

Batch
Dayfile
C-1
Job
C-1
Processor
C-1
Beta word conventions
5-2
Block
C-1
Bound explicit map
Directory
2-25
Entry format
2-26
Bound implicit map
Directory
2-25
Entry format
2-27

Calculating
SBUs (system billing units)
8-30
STUs (system time units)
8-1
Call sequence external procedure
D-7
CFO command
5-88
CHANGE FILE ATTRIBUTES system
message
1-7; 3-1; 5-53; G-6

60459420 F

Changing
Accounting rate
5-149
File characteristics
5-53; 6-6
Channel usage statistics records
format
8-22
Character set
A-I
Charge number
C-1
Checkpoint
C-2
CLOSE FILE system message
1-7; 2-30; 3-3,4;
5~32,38

Closing files
5-32
Code
Block table
10-4
Relocation table
10-5
Continuation lines
C;I-1,2
Control commands
6-6
Controllee
C-2
Chain
C-2
Processing system messages
5-3
Execute line
9-1
File
C-3
Controller
C-2
Conventions for applications
9-1
Core dump
7-1
CPUQ (CPU scheduling queue)
1-3
CREATE FILE system message
1-5,7; 5-8
CRT (see Currently running table)
C-2
Cumulative accounting buffer
8-2
Currently running table (CRT)
C-2
C5xx calls
1-5

Data flag branch manager (see DFBM)
Data item formats
10-9,11,12,13
Debug commands
6-5
Debug symbol table
10-15
Format
10-16
Defining parameters for files
5-8
Descriptor block
1-2
Number
C-2
Descriptor format for externals and entry
points
10-8
DESTROY FILE system message
1-7; 3-1; 5-14
DFBM (data flag branch manager)
C-2; D-1,8
Pointer
D-5
Diagnostic entries
8-39
Diagnostics
B-1
Diagnostics entries 8-39
Disabling ATC
5-97

Index-1

Disconnecting controllees
5-90
Discontinuous virtual address ranges
Disk file accounting records
8-16
Drop files
3-4
Map
2-28; C-2
Entry formats
2-28,29
Dump analysis
7-1
Dynamic stack
C-2
Dynamic stack pointer
D-5

I

2-27

EDITUD
1-4,5
ENABLE/DISABLE ATC system message
5-97
End-of-file labels
4-15
End-of-volume labels
4-16
Environment registers
D-5
EOFI
4-9
Format
4-10
EOVI
4-12
Format
4-13
Epilogue
C-3; D-9
Sequence
D-9
Error codes
B-1
EXECUTE IQM REQUEST system message
1-7;
5-189
Execute line
9-2
Special characters
9-26
Supporting routines
9-1
EXECUTE OPERATOR COMMAND system
message
1-4,7; 5-99; F-l
EXECUTE PROGRAM FOR USER NUMBER system
message
1-7; 5-126.1
Exit force instruction
1-1; 5-1
Explicit input/output
1-5; 2-18; 3-5;
5-26,7; C-3
EXPLICIT I/O system message
1-5,7; 3-5;
5-1,204
10-6
External/entry table
Format
10-7
D-7
External procedure call sequence

2-1

FADE
File

Access
3-2
Characteristics specifications
2-15
Concepts
3-1
Disposition specifications
2-1,14
Extendability
1-5
Management
Categories
3-3
System messages
5-3
Map
2-25
Names
3-2
Ownership
3-1
Space allocation
5-4

Index-2

FILE DISPOSITION system message
5-38,61
File header labels
4-15
File I/O
3-5
File index table (FILEI)
1-5; 2-1; 3-1,2;
C-3
Entry
1-4
Fields that affect file ownership
3-2
Formats
2-2,9
File segment table (FST)
1-5
File type
C-3
Files connected to a terminal
3-4; 5-27,38
First end-of-file label
4-9
First end-of-volume label
4-12
First file header label
4-6
Free space
1-2; C-3
Attachments
2-28
FST (see File segment table)

GCR tapes
4-1
GET MESSAGE FROM CONTROLLEE system
message
5-83
GET MESSAGE FROM CONTROLLER OR OPERATOR
system message
5-27,78,80
GET PACK LABEL AND PFI system
message
5-70
GIVE FILE system message
1-7; 3-1; 5-38,43
GIVE UP CPU ON OUTSTANDING RESIDENT I/O OR
TIME system message
1-7; 5-1,214
Global registers
D-2

1-1
Hardware modes
HDRI
4-2,6; 5-168,178
Format
4-7
Hexadecimal conversion tables

A-I

I (internal) tape format
G-l
I/O connector (IOC) (see Input/output
connector)
2-19; 5-27,204
I/O operation system messages
5-3
Implicit input/output
1-5; 3-5; 5-26; C-3
Information retrieval system messages
5-4
INITIALIZE CONTROLLEE CHAIN system
message
5-94
INITIALIZE OR DISCONNECT CONTROLLEE system
message
5-90,94
Input/output connector (IOC)
2-19;
5-27,204; C-3
Format
For mass storage files opened
for
2-19,21
For tape files
2-23
Input/output operation system messages
5-3

60459420 H

IQM
1-1,3,4,7; 5-42; C-3
Input Queue Manager (see IQM)
Interpretive data initialization table
Interpretive relocation initialization
table
10-15
Interrupt
System messages
5-3
Interrupting programs
5-92
Invisible package
2-16; C-3
Format
E-1
IOC (refer to Input/output connector)

Job

I

10-9

C-3
Accounting records
8-18
Block
C-3
Descriptor number (JDN)
5-51; 8-4; C-3
Management tables
2-1
Mode
1-1
Records
8-18
Formats
8-19,20

KERNEL
1-1,2,5; 5-214
Key-dependent parameter format

9-3

5-182·
LABEL system message
Labeled tape
C-4
Labels
4-2
Optional
4-15
Reading
4-2
User
4-16
Writing
4-2
Large page
3-5; C-4
LB (large block) tape format
G-5
Left-hand side table (refer to Ihs table)
Level
C-4
Ihs table
9-11
Formats
9-11,12,13
Pointer configuration 9-10
Library
C-4
LINK system message
5-147
LIST CONTROLLEE CHAIN system message
5-74
LIST SYSTEM TABLE system message
5-8,12,
22,26,47,70,72
LIST FILE INDEX TABLE system message
5-22,
40,70
Loader
Convention
10-1
Table header format
10-2
Local file
C-4
LRU
G-1

60459420 H

Machine registers
D-1
Magnetic tape files (refer to Tape files)
Main memory
C-4
Map
C-4
Map directories
2-25
MAP system message
2-26; 5-28
Mapping in a file
5-28
Mapping out a file
5-28
Mass storage files
2-1; 3-3; 5-26,38; C-4
Master
Clock entries
8-6
Project number
C-4
User
C-4
Maximum working size
1-3
MCU
6-2
Memory
Access interrupts
1-2
Allocation
1-2
Dump analysis
7-1
Overcommitment
1-3
Message
Communication
1-1
Communication system messages
5-4
Function codes
5-5
Messages
5-5; C-3
Minus page
1-2; 2-16; C-5
File maps
2-26,27
Format
2-17
MISCELLANEOUS system message
5-134; 8-1
MODDROP
C-5
Files
3-3,4
Modifying system table
1-2
Module header table
Format
10-3
Types
10-4
Module tables
10-3
Monitor mode
1-1

NAD (see Network access device)
Network access device (NAD)
1-1
Network usage records
8-20.1
Nonprivileged
C-5
Users
3-1,2
Nonstandard labels
4-2

Object code file
C-5
Object module
10-3
OPEN FILE system message
1-5,7; 2-30;
3-2; 4-2; 5-17,26,27,178
Opening files
5-17
Operator command execution
5-99
OPERATOR system routine
1-4

Index-3

9-2,3
Order-dependent parameter format
9-4
Order-independent parameter format
Output files
3-4; C-5
Ownership
C-5

I

2-10; C-5
Pack file index (PFI)
Page
C-5
Fault
C-5
Swapping
1-1
PAGER
1-1,2,3
Paging in
C-5
Paging out
C-5
D-4
Parameter addresses
9-3
Parameter formats
Periodic job records
8-29
8-27
Periodic system records
Periodic table
1-2
Periodic virtual system tasks
1-2
Peripheral operating system
1-1
Permanent file
C-5
PFI (see Pack file index)
Physical data file
C-5
Physical files
3-5
Physical identifier (PID)
C-6
Physical memory address
C-5
PID (see Physical Identifier)
Pool
C-6
Pool boss
3-2
Pool file
3-1,2; C-6
POOL FILE MANAGER system message
3-1; 5-143
Private file
C-6
Privilege flag
1-5
Privilege (user)
C-6
Privileged
Resident system calls
1-1,5
Status
1-5
System tasks
1-1,2,4
User numbers
1-4
Users
3-1,2
Virtual system calls
1-7
PROCESS SYSTEM PARAMETER system
message
1-7; 5-1,212
Processing execute line
9-1
Production files
3-2
Program execution system messages
5-3
PROGRAM INTERRUPT CONTROL system
message
5-92
Program states
F-l
Project number
C-6
Prologue
C-6; D-5
Sequence
D-7
Pseudoaddress vector table
10-19
Entry formats
10-19
Public files
3-1; C-6

Index-4

Queuing
1-2
Q5VRF file
8-33
Q7ENVIRN routine
9-1,5
Format
9-5
Q7KEYWRD routine
9-1,5,7,26
Format
9-9
Q7MODE routine
9-1,5
Format
9-6
Q7PROMPT routine
9-1,5
Format
9-6.1
Read-only file access
3-4
RECALL system message
5-142
Recovery
4-1
PRU
4-1
User error
4-1
Register file
Conventions
D-l
Format
D-3
Register file block
C-6
Register save area
D-6
1-4,6
Remote Host Facility (RHF)
REMOVE CONTROLLEE FROM MAIN MEMORY system
message
5-86
Required labels
4-2
Resetting breakpoints
6-5
Resident system
1-1
Calls
1-5
Resource usage statistics
8-1
Retrieving
Accounting statistics
5-64,134
File index table entry
5-40
Formatted system table copy
5-47
Pack label and file index
5-70
Return buffer
9-19
Formats
9-19,20,21,22,23,24,25
RETURN FROM INTERRUPT system messge
5-92,
153,194
RHF
(see Remote Host Facility)
RHF CALL system message
1-7; 5-153
RHFMT (Remote Host Faciliy mainframe
table)
5-153
RHFT (Remote Host Facility table)
5-153
rhs table
9-14
Formats
9-14,15,16,17
Right-hand side table (refer to rhs table)
SAE (standardized accounting enhancements)
8-30
Save table
5-88
SBUs (system billing units)
8-30
Scanning text lines
9-7
Scheduler
1-3,4

60459420 H

I
I

Scratch files
3-3; C-6
Security level
C-6
SEND A MESSAGE TO CONTROLLEE system
message
5-78
SEND A MESSAGE TO CONTROLLER system
message
5-27,76
SEND A MESSAGE TO OPERATOR system
message
5-88
SEND MESSAGE TO DAYFILE system
message
5-151
SEND MESSAGE TO JOB SESSION system
message
5-192
Service level factors
8-30
Setting breakpoints
6-5
Shared table
6-2
SHRLIB ALTER OR RESTORE system message
5-196; 6-5
SI (system internal) tape format
G-3
SIL (see System interface language)
Small page
3-5; C-7
Source file
C-7
5-4
Special functions system messages
Stack frame
D-6
Standard processing
9-1
Standardized accounting enhancements
(refer to SAE)
Starting and ending program execution system
messages
5-3
Statistics accumulation
8-1
STU (system time unit)
8-1; C-7
Swapping controllee to mass storage
5-86
Symbol definition table
10-17
Entry format
10-17
System
Accounting records
8-17
Dayfile
8-35; C-7
Entries
8-36
Error codes
B-1
Library routines
9-1
Records
8-18
Table modification
1-1,2
System billing units (refer to SBUs)
Dayfile
8-35; C-7
System interface language (SIL)
5-1; C-7
Subroutines
5-1
System label processing
4-2
System messages
1-1; 5-1; C-7
Execution
5-1
Function codes
5-2
System resources
8-31
System time unit (refer to STU)

Tape
Tape
Tape
Tape

assignment
4-1
error codes
B-3
files
3-4; 5-27,38
formats
G-l

60459420 F

1-7; 2-30;
TAPE FUNCTION system message
3-5; 5-1,178,198
Tape label
Format
4-3
Tape management
4-1
TAPE MANAGEMENT beta
4-4
5-168
TAPE MANAGEMENT system message
5-3
Tape management system messages
Tape records
8-17
Formats
8-17
2-30;
TAPE SWITCH VOLUME system message
5-178
2-30
Tapes table
2-30
Format
Task
C-7
Accounting records
8-8
Name
9-2
Records
8-8
8-9,10,11,13,14
Formats
TCHARGE routine
8-1
Temporary registers
D-1
Terminal accounting records
8-15
Terminal records
8-15
Format
8-15
TERMINATE system message
3-3,4; 5-39
Terminating execution
5-39
Time-slicing
1-1,2
T JCAT system table format
5-125
Transfer symbol table
10-15
Transferring file ownership
5-43
T VRF table
8-32
T-VSD table
6-2
Structure
6-2

udtrust field
1-5
UEP (user error processing)
4-1
UPDATE USER DIRECTORY system message
USER/ACCOUNTING COMMUNICATION system
message
1-7; 5-64,143; 8-1,2,4
User and system interfaces
6-2
User error recovery
4-1
User number
3-1; C-5
000000
3-1
User project control
C-7
USER REPRIEVE system message
5-187

V and NV
Variable
VARIABLE
5-149
Variable
Variable
Variable

5-128

(variable) tape format
G-6
rate accounting (refer to VRA)
RATE ACCOUNTING system message
rate index (see VRI)
rate factor (refer to VRF)
rate/service level tables

8-32

Index-5

Virtual address
C-7
C-7
Space
Virtual code file
C-8
Virtual files
2-26; 3-5
Virtual memory
C-8
Virtual paging
1-1
Virtual range
C-8
Virtual system
1-2; 6-1
Calls
1-7; 5-1
Tasks
1-1,2,3,4
Debug tool (refer to VSDT)
Table definition
8-34
Volume header label (VOL1)
4-4
Format 4-5
VOL1 (see Volume header label)

I

Index-6

VRA (variable rate accounting)
2-8; 8-30,32
VRF (variable rate factor) 8-30,32
VRI (variable rate index)
2-8; 8-30
VSDT (virtual system debug tool)
6-1
Commands
6-4
Error messages
6-6
2-12; 4-1; 5-168
VSN (volume serial number)

Wait queue
1-3
Word
C-8
Working set
C-8
Working set size
C-8
Write-temporary
3-4; C-8

60459420 F

COMMENT SHEET
MANUAL TITLE:
PUBLICATION NO.:

CDC VSOS Version 2 Reference Manual, Volume 2 of 2
REVISION:

60459420

H

NAME: ________________________________________________________________________
COMPANY: _____________________________________________________________________
STREET ADDRESS: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __
CITY: _ _ _ _ _ _ _ _ _ _ _ _ _ _ STATE: _ _ _ _ _ _ _ ZIP CODE: _ _ _ _ _ _ __

This form is not intended to be used as an order blank. Control Data Corporation welcomes your evaluation of
this manual. Please indicate any errors, suggested additions or deletions, or general comments below (please
include page number references).

o ptease

Reply

[J No Reply Necessary

w

z

::;,

NO POSTAGE STAMP NECESSARY IF MAILED IN U.S.A.
FOLD ON DOTTED LINES AND TAPE

FOLD

LD

NO POSTAGE
NECESSARY
IF MAILED
IN THE
UNITED STATES

BUSINESS REPLY MAIL
FIRST CLASS

PERMIT NO. 8241

MINNEAPOLIS. MN

UJ

Z

::::;

POSTAGE WILL BE PAID BY ADDRESSEE



u

CORPORATE HEADQUARTERS P.O. BOX 0 MINNEAPOLIS. MINNESOTA 55440

~~

CONT"OL

DATA



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Create Date                     : 2014:07:02 09:44:50-08:00
Modify Date                     : 2014:07:02 09:48:22-07:00
Metadata Date                   : 2014:07:02 09:48:22-07:00
Producer                        : Adobe Acrobat 9.55 Paper Capture Plug-in
Format                          : application/pdf
Document ID                     : uuid:f1fdc2fe-d744-4a41-8de1-fc163a77d682
Instance ID                     : uuid:a00f0dce-87f6-7d43-823d-0d2ecbd3186c
Page Layout                     : SinglePage
Page Mode                       : UseNone
Page Count                      : 456
EXIF Metadata provided by EXIF.tools

Navigation menu