0% found this document useful (0 votes)
101 views329 pages

WSS System Programming For College 2022 Edition

Society intensities of tropical storms and hurricanes from 1851 to the present needs reliable information as to the frequency and severity of past catastrophic events to best plan for the future. Therefore, it is crucial that accurate historical accounts of Comrnandrejected (The peripheral subsystem did not accept the canmand.) the characteristics of all tropical cyclones be obtained.

Uploaded by

freddo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
101 views329 pages

WSS System Programming For College 2022 Edition

Society intensities of tropical storms and hurricanes from 1851 to the present needs reliable information as to the frequency and severity of past catastrophic events to best plan for the future. Therefore, it is crucial that accurate historical accounts of Comrnandrejected (The peripheral subsystem did not accept the canmand.) the characteristics of all tropical cyclones be obtained.

Uploaded by

freddo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 329

A REANALYSIS OF

HURRICANE ANDREW’S
INTENSITY
BY CHRISTOPHER W. LANDSEA, JAMES L. FRANKLIN, COLIN J. MCADIE, JOHN L. BEVEN II,
JAMES M. GROSS, BRIAN R. JARVINEN, RICHARD J. PASCH, EDWARD N. RAPPAPORT,
JASON P. DUNION, AND PETER P. DODGE

Hurricane Andrew, one of the United States’ worst natural disasters, is upgraded to a
Saffir-Simpson Hurricane Scale category 5—the highest intensity category possible

“The sound of the wind, that’s what you never forget. intensities of tropical storms and hurricanes from 1851
The initial whisper. to the present (Landsea et al. 2004). Wind estimates
The growing mewing that turns into a howl. from Atlantic basin tropical cyclones are recorded in
Then the cry of glass shattering. HURDAT in 6-hourly intervals as the maximum 1-min
The snap of trees breaking. surface (10 m) wind speed (in 5-kt increments; note that
The grumbling of a roof peeling apart.” 1 kt = 0.515 m s–1) within the circulation of the tropical
—ANA VECIANA-SUAREZ cyclone. HURDAT is utilized in a wide variety of ways,
September 11, 2004, Miami Herald including climatic change studies, seasonal forecasting,
Remembering Hurricane Andrew as 2004’s Ivan threatens risk assessment for emergency managers, analysis of
potential losses for insurance and business interests,
and the development and verification of official

T
he Atlantic basin hurricane database (HURDAT; National Hurricane Center (NHC) and computer
Jarvinen et al. 1984) reanalysis project is an ongo- model predictions of track and intensity.
ing effort to extend the database back in time, and While the Atlantic hurricane database has wide-
to revisit and revise, if necessary, the official tracks and spread and varied uses, HURDAT contains many

AFFILIATIONS: LANDSEA AND DODGE—NOAA/AOML/Hurricane CORRESPONDING AUTHOR: Dr. Christopher W. Landsea,


Research Division, Miami, Florida; FRANKLIN, MCADIE, BEVEN, GROSS, NOAA/AOML/Hurricane Research Division, 4301
JARVINEN, PASCH, AND RAPPAPORT—NOAA/NWS/TPC/National Rickenbacker Causeway, Miami, FL 33149
Hurricane Center, Miami, Florida; DUNION—CIMAS, University of E-mail: chris.landsea@noaa.gov
Miami, and NOAA/AOML/Hurricane Research Division, Miami, DOI:10.1175/BAMS-85-11-1699
Florida
In final form 2 May 2004
©2004 American Meteorological Society

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1699


C55 Doc. 1101- TM059
Progrmng. Ref. Manul~ (DT55)
10/31/79

System Programming Reference Manual

This document contains information necessary for system


programming on the rt.rSS. Topics include Executive
services and JobjExecutive Interface.

Pub. 1059 31 OCT 79


systematic and random errors that need to be corrected Currently, reanalysis efforts are underway for the
(Landsea 1993; Neumann 1994). Additionally, as our period from the 1910s through the 1990s. Although
understanding of tropical cyclones has advanced, sur- Hurricane Andrew was originally slated to be exam-
face wind speed estimation techniques have changed ined sequentially under this project in 2005, in the
over the years at NHC (e.g., Franklin et al. 2001), lead- summer of 2002 NHC requested that the re-evaluation
ing to biases in the historical database that have not of this storm be addressed more promptly. This deci-
been addressed. Finally, efforts led by J. Fernández- sion was driven by recent findings on the surface wind
Partagas (Fernández-Partagas and Diaz 1996) to structure within the eyewall of major hurricanes and
uncover previously undocumented hurricanes from by the (then) upcoming 10-yr anniversary of this sig-
the mid-1800s to early 1900s have greatly increased our nificant landfalling event. Hurricane Andrew caused an
knowledge of these past events. Based on Fernández- enormous amount of destruction in southeastern
Partagas’ work, an extension from 1851 to 1885 has Florida: over 25,000 homes were destroyed and more
been incorporated into HURDAT and substantial re- than 100,000 homes damaged, 90% percent of all mo-
visions have been made for the period of 1886–1910. bile homes in the region of landfall were leveled, over
These changes were based upon quality-controlled $1 billion in damage was done to local agriculture, and
assessments and digitization of Fernández-Partagas’ total direct losses exceeded $26 billion (Rappaport
work and consideration of other original data sources 1994). More than 10 yr later, the region still feels the
and studies (Landsea et al. 2004; see the sidebar on “The effects from this hurricane. For example, there has been
Atlantic Basin Hurricane Database Reanalysis Project”). a nearly tenfold increase in average property insurance

THE ATLANTIC BASIN HURRICANE DATABASE REANALYSIS PROJECT


The Hurricane Research Division new tropical cyclones and revisions evaluate and better predict interannual,
(HRD) of NOAA’s Atlantic Oceano- made to another 185 of the 456 total decadal, and interdecadal variability in
graphic and Meteorological Laboratory tropical storms and hurricanes that are Atlantic basin tropical cyclone activity,
is engaged in an effort to extend and in the latest version of the database as well as better standards to evaluate
improve the quality of NHC’s original between 1851 and 1910. While and validate models for track and
North Atlantic best-track and intensity Hurricane Andrew’s changes reported intensity of tropical cyclones. However,
database, HURDAT, from 1851 to the here were expedited for special a changing database does present
present (online at www.aoml.noaa.gov/ reasons, current work is focusing upon somewhat of a “moving target” for
hrd/data_sub/re_anal.html). Employing the reanalysis of the remainder of the studies that utilize HURDAT. For
consistent analysis methods and twentieth century and will be included example, as tropical cyclone tracks and
modern interpretations, the HRD into HURDAT in sequential order. It is intensities are altered, official and
HURDAT reanalysis project is helping anticipated that alterations and model-based errors from past years
to correct multiple errors and biases, additions to the database will be will also change. Moreover, even the
determine better landfall attributes, and needed even up through the 1990s, due benchmarks for assessing skill in
provide additional track and intensity to changes in our understanding of the tropical cyclone track and intensity
data for tropical cyclones included in structure of tropical cyclones, better predictions [i.e., the “no skill” models
the database (Landsea et al. 2004). analysis tools that are available today, of climatology and persistence (CLIPER;
Through inspection of historical and the uncovering of meteorological McAdie and Lawrence 2000) and
meteorological records and accounts, observations not available or utilized statistical hurricane intensity forecast
previously unknown tropical cyclones operationally or in previous poststorm (SHIFOR; DeMaria and Kaplan 1999),
are also identified and considered as analyses. respectively] will need to be rederived
candidate storms to be added to the The implications of a changing “best once a stable database exists after the
database. All recommended changes to track” dataset are multifold. In the reanalysis is complete. In the meantime,
HURDAT are subsequently submitted societal aspect, eventual benefits of an researchers in the field should be
to NHC’s Best Track Change improved meteorological record of aware that the officially assessed track
Committee for approval. tropical storms and hurricanes include a and intensity of storms that they are
As of early 2004, an extension of more accurate assessment of extreme studying may be changed in the near
HURDAT from 1851 through 1885 was event risk for insurance interests, future. While such changes may be
added to the database, and a reassess- building code designers, and emergency somewhat problematic in the short
ment was conducted for tropical managers. For tropical meteorologists, term, a uniformly analyzed, improved-
cyclones already in HURDAT for the a more complete, consistent, and quality tropical storm and hurricane
period of 1886–1910. These alterations reliable HURDAT will provide, for database will be beneficial in the long
resulted in the addition of over 262 example, a homogeneous record to run for all users of HURDAT.

1700 | NOVEMBER 2004


costs for hurricane wind damage in some coastal loca- 1-min surface winds of 128 kt impacted the southeast-
tions and limited availability of privately underwritten ern Florida coast. However, two recent studies by
insurance (Chandler and Charles 2002). Franklin et al. (2003) and Dunion et al. (2003) provide
Society needs reliable information as to the fre- strong evidence that the methodology originally used
quency and severity of past catastrophic events to best to assess the maximum 1-min surface wind in the
plan for the future. Therefore, it is crucial that accurate poststorm analyses of Hurricane Andrew (Rappaport
historical accounts of the characteristics of all tropical 1994; Mayfield et al. 1994; Powell and Houston 1996)
cyclones be obtained. This is of particular importance resulted in winds too low for a substantial portion
for significant landfalling hurricanes like Andrew. (~5 days) of the lifetime of the storm. (See the sidebar
Recently, our understanding of the surface wind field on “New understanding of eyewall structure since
in hurricanes has advanced dramatically (Franklin et al. Hurricane Andrew” for details that have led to these
2003; Dunion et al. 2003). New global positioning sys- changes in the methodology for determining intensity,
tem (GPS) dropwindsonde observations in hurricane and for discussion about the adjustment factor.)
eyewalls—first collected in the eastern North Pacific Aircraft reconnaissance flights have been standard
from Hurricane Guillermo in 1997—suggest that the operating procedure since the 1940s for tropical storms
intensities of all of the hurricanes in the aircraft recon- and hurricanes threatening land in the Atlantic basin.
naissance era up through 1998 should be re-examined In the absence of contradictory evidence, current op-
when the primary method for estimating surface winds erational practice at NHC is to estimate the surface
was from flight-level wind adjustments. maximum 1-min wind intensity of a hurricane at about
In August 2002, NHC’s Best Track Change Com- 90% of the peak 10-s wind present at the 700-mb level
mittee, chaired by C. J. McAdie, with members J. L. (i.e. the “90% rule,” Franklin et al. 2001, 2003). Such a
Beven II, J. M. Gross, B. R. Jarvinen, R. J. Pasch, and methodology likely will remain a primary tool for as-
E. N. Rappaport, with H. Saffir serving as a noncom- sessing intensity in Atlantic basin hurricanes for at least
mittee observer, met to consider proposed revisions the next few years.
to the official intensity of Hurricane Andrew both over
the open ocean and at landfall. Complete documenta- ESTIMATING ANDREW’S INTENSITY. Aircraft
tion of the presentations given by E. N. Rappaport, J. L. reconnaissance data. As Hurricane Andrew approached
Franklin, M. D. Powell, P. G. Black, and C. W. Landsea, Florida in late August 1992, it was monitored almost
e-mail exchanges on the issue, the committee’s full continuously by U.S. Air Force reconnaissance aircraft
decision, and the revised database can be found online measuring flight-level winds at 700 mb and obtaining
(www.aoml.noaa.gov/hrd/hurdat/index.html). The minimum sea level pressure data. At 0810 UTC, about
purpose of this paper is to provide a more permanent an hour prior to Andrew’s landfall in mainland
summary of the evidence and issues considered by the southeastern Florida, an Air Force reconnaissance
committee, to record the outcome of the reanalysis, and aircraft at 700 mb measured a 10-s-average wind of
to discuss some of the implications of these changes. 162 kt. Application of a 90% adjustment factor to this
flight-level wind produces a surface wind estimate of
ASSESSING MAXIMUM SURFACE WINDS 146 kt. Similarly adjusted 10-s-average flight-level winds
IN HURRICANES. The original NHC estimates of at 0809 and 0811 UTC yield surface values of 140 and
Hurricane Andrew’s intensity for most of its over-water 141 kt, respectively. During the aircraft’s subsequent
life cycle were based primarily upon an adjustment of pass through the hurricane, an additional 10-s report
aircraft reconnaissance flight-level winds to the surface. at 0918 UTC yields a surface value of 137 kt using the
In particular, Hurricane Andrew’s intensity at landfall same reduction. The importance of these additional
in southeastern Florida was largely determined shortly observations is that they indicate that the flight-level
after its passage by adjusting the peak U.S. Air Force observation at 0810 UTC was not an isolated condition.
reconnaissance aircraft 700-mb flight-level winds of Analyses from the current Hurricane Wind Analy-
162 kt to 125 kt at the surface—an adjustment factor of sis System (H*Wind) surface wind algorithm (Dunion
77%.1 An analysis of Andrew by Powell and Houston and Powell 2002) provide a marine exposure surface
(1996) came to a similar conclusion—that maximum wind estimate of 153 kt, or 94% of the flight-level ob-

1
NHC’s operational estimate of Hurricane Andrew’s intensity at landfall in southeastern Florida was slightly lower—120 kt. The
operational wind speed and position estimates of all Atlantic basin tropical storms and hurricane are reanalyzed soon after the
event for a poststorm “best track” assessment, which may differ slightly from that given in real time.

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1701


NEW UNDERSTANDING OF EYEWALL STRUCTURE SINCE HURRICANE ANDREW
A key issue confronting both operational et al.’s (2003) study provide a way to infer new changes to H*Wind produces
estimates and postanalysis assessments of winds at one level from those at another. substantially higher (10%–20%) analyzed
hurricane intensity is the most appropriate This adjustment assumes a similar averaging maximum 1-min surface winds for major
way to adjust flight-level winds typically at time at both levels, but is not constrained hurricanes, particularly when based on
700 mb down to surface wind values. Ten- to any particular averaging time. For the reductions of aircraft reconnaissance data
second averages of the flight-level wind in stronger (right hand) side of the eyewall, from 700 mb. For major hurricanes, the
the inner core of hurricanes are assumed to they found that the mean surface-to- new H*Wind methodology provides
represent a 1-min-averaged wind (Powell 700-mb ratio was between 86% and 90%. surface wind analyses with marine exposure
et al. 1991). Longer averaging of the flight- Thus, without additional information, from extrapolated flight-level wind
level winds would tend to underestimate estimates of the surface maximum 1-min observations that generally agree to within
the true maximum 1-min wind speeds wind intensity of a hurricane at the 5% of the Franklin et al. (2003) estimates.
because the aircraft does not remain long National Hurricane Center are assessed to Such agreement between the two
in the peak gradient region on a radial flight be about 90%SB1 of the peak 10-s wind methods may not be surprising, because
track, especially in relatively small hurricanes observed at the 700-mb level from an they are both based upon new formula-
like Andrew. The best method for adjusting aircraft. tions from the nearly identical sets of
these winds to the surface had previously Recent work by Dunion and Powell archived GPS dropwindsonde data. It is
been unclear, because the most thorough (2002) and Dunion et al. (2003) also worth noting, however, that both
study of flight-level winds to surface wind supports a revised flight-level-to-surface- methodologies had limited data available in
observations (i.e., Powell and Black 1990) wind adjustment in the context of the the extreme high-wind range typical of that
contained mainly tropical storm–force Hurricane Research Division’s H*Wind found in Hurricane Andrew’s eyewall,
maximum winds and few observations in surface wind analyses of tropical cyclones. though both schemes included
the eyewall region. H*Wind is an analysis tool that can dropwindsondes from Hurricane Mitch
A new understanding of the surface assimilate a variety of observations within a when it was a SSHS Category-5 system.
wind structure in hurricanes was made tropical cyclone to produce a storm- Another consideration is that the
possible by an advance in technology, the centered few-hour composite of the dropwindsondes had a higher failure rate in
GPS dropwindsonde (Hock and Franklin surface wind field (Powell 1980; Powell providing winds near the surface under
1999), which provided the first detailed et al. 1996, 1998). Given sufficient extreme conditions. This limitation was
wind profile in a hurricane’s eyewall from observations, the analyses can be used to partially overcome by filling in the profile
the flight level to the ocean surface. Near- make estimates of the maximum 1-min down to 10 m with mean conditions from
surface data from individual dropwind- winds, as well as radii of tropical storm– hurricane eyewall dropwindsondes that did
sondes have compared favorably with force or hurricane-force winds. provide wind data to the ocean’s surface,
concurrent observations from moored Using information from the GPS as long as the filled-in dropwindsonde
buoys and C-MAN stations (Houston et al. dropwindsondes, techniques were reported winds down to no higher than
2000) and collocated Stepped Frequency developed to improve H*Wind’s adjust- 30 m (Dunion et al. 2003; Franklin et al.
Microwave Radiometer data (Uhlhorn and ment of aircraft flight-level winds to the 2003). This technique to maximize surface
Black 2003), although both of these studies surface. Dunion and Powell (2002) and wind observations was likely conservative in
have limited observations from the core of Dunion et al. (2003) utilized the drop- its surface wind estimates because of the
major hurricanes. While individual GPS windsonde data to revise the H*Wind observed tendency for the surface winds to
dropwindsondes provide only a momentary algorithms in a two-step process. First, increase relative to the boundary layer
slice of data (which is not even a vertical analyses of the dropwindsondes show that average winds in higher wind regimes.
profile because of the inflowing and swirling the original H*Wind assumption that
flow that the drop encounters in the 700-mb flight-level winds were equivalent
hurricane eyewall), a judicious partitioning to mean boundary layer (0–500 m) winds
and averaging of the dropwindsondes can produced an underestimation of the true
provide useful wind mean wind conditions boundary layer winds. Second, the
within the hurricane. dropwindsondes showed that the over-
SB1
Franklin et al. (2003) examined several ocean surface-to-mean-boundary-layer- This factor is at the high end of the range
hundred over-ocean GPS dropwindsonde wind ratio reached a minimum at mean established by the dropwindsondes (86%–
profiles in the hurricane eyewall and have boundary layer wind speeds of 100–110 kt. 90%), in part because of simple rounding
shown that the mean ratio of surface-to- This ratio was found to increase with of the midpoint of this range, but also to
700-mb winds is about 90% in the eyewall stronger winds, in contrast to an assumed account for the likelihood that the
region. Franklin et al. recommended a set of steadily decreasing ratio with stronger cyclone’s highest 700-mb wind speed was
adjustment factors for the interpretation of boundary layer winds previously utilized in not sampled during the typical “figure 4”
tropical cyclone flight-level data. The results H*Wind (Dunion et al. 2003; Powell et al. tracks routinely flown through hurricanes
from the drop profile analyses in Franklin 2003). The combined effect of these two by reconnaissance aircraft.

1702 | NOVEMBER 2004


servations from the 0810 UTC reconnaissance data reported agreement with 700-mb flight-level winds to
(Fig. 1). This result is in reasonable agreement with the within 10%, though the radar-derived winds have a
recommended adjustment from the Franklin et al. relatively noisy signal and must be quality controlled
(2003) methodology. before use. The three highest feature speeds found in
Assuming that the 162-kt flight-level aircraft wind the Andrew data were 171 kt at 700 m at 0739 UTC,
was representative of the peak 700-mb winds that were 176 kt at 400 m at 0839 UTC, and 180 kt at 1100 m at
present in Andrew’s circulation, a surface adjustment 0730 UTC (Fig. 2), with heights based upon the radar
factor of 77% is required to diagnose Andrew at 125 kt tilt and distance from the radar site. The strongest of
was originally assessed. Of the 17 hurricanes examined these velocities does not appear consistent with nearby
by Franklin et al. (2003), none were observed with GPS radar feature tracks. Making the assumption that the
dropwindsondes to have a mean adjustment factor this average of the remaining two observations (174 kt) rep-
low in the eyewall. The lowest observed ratio of 83% resents the maximum eyewall winds near the bound-
was found in Hurricane Bonnie—a weakly convective ary layer top (BLT), we can adjust this wind to the
storm with a large eye.2 Furthermore, the adjustment surface using mean dropwindsonde profiles. Applying
factor to provide surface winds appears to increase the Franklin et al. (2003) eyewall mean profile for the
when the boundary layer winds are very
high (Dunion et al. 2003; Franklin et al. 2003)
and when vertical motions are particularly
vigorous (at least 1.5 m s–1 absolute vertical
velocity between the ocean’s surface to
2000 m; Franklin et al. 2003). Andrew likely
satisfied both of these conditions at its land-
fall in southeastern Florida. Thus, there is
little evidence from the dropwindsondes
datasets to support Andrew having a lower-
than-normal adjustment factor in the
eyewall region.

Radar-derived wind vectors. Low-altitude ra-


dar feature tracking presented by P. Dodge
to the committee suggested surface winds
similar to those implied by applying a 90%
adjustment factor to the flight-level data.
Figures 2 and 3 show vectors based on
feature tracking from the Miami, Florida,
Weather Surveillance Radar-1957 (WSR-57)
outside and within Andrew’s eyewall just
prior to landfall in southeastern Florida (see
a loop of this radar reflectivity data online
at www.aoml.noaa.gov/hrd/hurdat/
andrew_cells.mpg). This technique has
been demonstrated to provide lower-tro-
pospheric wind vectors in the circulation of
a hurricane that are comparable to those
measured by aircraft. Tuttle and Gall (1999) FIG. 1. H*Wind 1-min surface wind analysis for Hurricane Andrew
at landfall in southeastern Florida around 0900 UTC 24 Aug 1992
from the revised methodology of Dunion et al. (2003) and Dunion
2
and Powell (2002), which takes into account the vertical structure
However, hurricanes with stable boundary layers
of the horizontal winds as demonstrated from recent GPS
moving north of the Gulf Stream over cool wa- dropwindsonde data. Winds at the coast show a discontinuity due
ters, such as Gloria in 1985 (Powell and Black to increased roughness length as one goes from over open-ocean
1990) and Bob in 1991, were analyzed to have sur- conditions to overland open-terrain conditions. Numbers in the
face-to-flight-level wind ratios as low as 55% upper-left corner indicate quadrant-based radii of 34-, 50-, and 64-
based on buoy observations. kt surface winds.

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1703


FIG. 2. Hurricane Andrew low-altitude radar feature FIG. 3. WSR-57 radar reflectivity image of Hurricane
tracks (kt) from the Miami WSR-57 radar before the Andrew at 0759 UTC. The center of the diamond indi-
radar was destroyed by the hurricane. cates the position of the Fowey Rocks C-MAN station
relative to the location of the eyewall. The three “plus”
symbols indicate reflectivity features that were tracked
strongest BLT wind speeds in their sample (135–155 kt, between successive radar sweeps to provide low-level
their Fig. 12) gives an 82% adjustment factor and a sur- wind vectors. The radar reflectivity scale is red (46),
face wind estimate of 143 kt. purple (39), orange (33), dark green (27), black (20), and
The Dunion and Powell (2002) methodology was dark blue (14 dBZ).
also applied to these new radar-derived wind vectors.
Their analysis system suggests that these low-altitude tion with the location of the station relative to
radar feature tracks correspond to winds of 148 kt at Andrew’s eyewall (Fig. 3) provides strong evidence that
the ocean’s surface, again in close agreement with the the surface winds at that location had not yet leveled
estimates from the Franklin et al. (2003) methodology. off and would likely have continued to increase to sub-
stantially higher values had it survived for at least a
Surface observations. The NHC Best Track Change few more minutes. [Typically, the surface radius of
Committee reviewed the available surface observa- maximum wind occurs at the inner edge of the eyewall
tions from Andrew’s landfall to determine whether or even just inside the eye when viewed by radar in
they were consistent with the dropwindsonde-based the lower troposphere (Marks et al. 1992).] Based
adjustments of flight-level and radar winds discussed upon the position of the Fowey Rocks station, the
in the previous two sections. In particular, they focused movement of Hurricane Andrew, and an estimate of
upon two key observations: Fowey Rocks, Florida, and the surface radius of maximum wind for that portion
R. Fairbanks (an amateur weather observer located in of the storm, it is calculated by J. Beven that the sta-
Perrine, Florida) data (Rappaport 1994; Mayfield et al. tion would likely have encountered the peak winds in
1994; Powell et al. 1996). The Fowey Rocks Coastal the northern eyewall at about 0820 UTC, about 20 min
Marine Automated Network (C-MAN) weather sta- after its final report. Assuming a linear increase of
tion (elevation 44 m) reported a peak 2-min mean wind winds during this time (a conservative estimate), the
of 122 kt at its last hourly transmission before it failed peak 10-min mean station wind may have reached
after 0802 UTC. This adjusts to approximately 111 kt 145 kt. After adjusting for both station height and av-
for a maximum 1-min surface (10 m) wind valid for eraging period, this converts to approximately 148 kt
over open-water exposure. At this station, the winds for a maximum 1-min surface (10 m) wind valid for
increased dramatically in the last hour of reporting. over open-water exposure.
In particular, an 18 kt increase in the 10-min mean wind R. Fairbanks noted a peak gust of 184 kt (corrected
between 0749 and 0759 UTC (not shown) in conjunc- to 154 kt after adjusting for the overestimation bias of

1704 | NOVEMBER 2004


this type of instrument) from his home-based an- winds in Fig. 1 were spread out too far radially, making
emometer just before it failed. This observation was direct comparisons of extrapolated flight-level winds
believed to be consistent with a 1-min open-terrain from H*Wind analyses and in situ surface observations
surface wind of about 119 kt, after employing typical problematic. Finally, because of the turbulent and tran-
gust factors (Powell et al. 1996). R. Fairbanks’ observa- sient nature of the hurricane wind field, it is not
tion had no wind direction associated with it and only straightforward to make direct comparisons between
an approximate time (0830–0900 UTC). The strongest a storm-centered composite of the adjusted flight-level
winds experienced at the location of R. Fairbanks’ home winds and a small number of in situ observations. It
were probably not earlier than 0900 UTC, based upon would take a systematic discrepancy over many obser-
Miami, Florida, radar imagery extrapolated to the time vation points to determine that the standard 90%
that the inner edge of the eyewall and the surface ra- flight-level adjustment factor was invalid for a particu-
dius of maximum winds would have encountered the lar storm.
home (Powell et al. 1996).
As a result, C. Landsea argued that both the Fowey Winds at the coastline and over land. While there was
Rocks and R. Fairbanks instruments appeared to have unanimous agreement among the presenters and
failed before the strongest winds of Andrew arrived, committee members that Andrew’s intensity was
because these observations were taken in the north- underanalyzed during its open-water approach to
west portion of the eyewall3 outside of the surface southeastern Florida, there was lengthy discussion
radius of maximum winds. The peak winds were likely whether these strong winds were also felt along the
closer to the storm’s center in the northern portion of coastline and over land. The current understanding is
the eyewall (Fig. 1). Thus, neither of these observations that the well-developed hurricane boundary layer is
seem to represent the maximum winds of Hurricane different over land than it is over water and that there
Andrew at landfall in southeastern Florida. must be a transition zone at or near the coastline be-
Inspection of these surface observations in compari- tween these two regimes. It was suggested (Powell et al.
son with surface-reduced flight-level data in Fig. 1 did 2003) that the winds in the northern eyewall were weak-
not suggest a large inconsistency, though it is difficult ened by increased roughness presented by shoaling and
to directly compare them for three reasons. First, the breaking waves in the shallow waters between the fring-
flight-level data primarily were in radial legs running ing reefs, Biscayne Bay, and the coastline before the
north–south and east–west, which did not coincide well storm made landfall. In this case, Biscayne Bay may
spatially with the Fowey Rocks and R. Fairbanks ob- not have represented a typical marine exposure with a
servations near the time of landfall after compositing small roughness length, but instead may have been
the data with respect to the hurricane’s center. Second, more consistent with conditions experienced in an
the Powell and Houston (1996) methodology for esti- overland environment with open-exposure terrain.
mating the surface radius of the maximum wind (which However, recent analyses of ocean waves within
was used in Fig. 1) appears to be too large [11 n mi Hurricane Bonnie at landfall in North Carolina show
(20 km) versus 8–9 n mi (15–17 km)] compared with that waves do not generally increase in height from
the observed location of the wind center and the high- shoaling in shallow waters, but instead show a large
est storm surge, which was thought to coincide with decrease from offshore (8–10-m mean wave heights)
the peak surface winds.4 Thus, the strongest surface to the coastal locations (4–5 m) (Walsh et al. 2002).

3
The Fairbanks observation may instead have been in the north eyewall if it occurred around 0900 UTC, but the time of the
measurement and, thus, its storm-relative location at the time of the peak measured gust are uncertain.
4
The location of the peak storm surge caused by a hurricane can be influenced by a number of factors in addition to the radius of
the maximum wind, including coastline shape, local offshore bathymetry/inland topography, astronomical tides, wave setup,
inflow angle, etc. (i.e., Jelesnianski 1993). However, for the specific case of Hurricane Andrew’s landfall in southeast Florida, these
factors appear to be secondary in comparison to the surface radius of maximum winds (RMW) for forcing the peak storm-surge
location along the coast. Sensitivity testing using the Sen, Lake, and Overland Surges from Hurricanes (SLOSH) model run with
the observed Hurricane Andrew characteristics (track, central pressure, environmental pressure) and varying the RMW
demonstrates the primary influence of RMW for this specific case. These runs suggest that only with a smaller RMW [8–9 n mi
versus Powell and Houston’s (1996) 11 n mi] does one match the observed storm-surge pattern and location of the peak surge
value. (It is, however, possible that the open exposure to the ocean east of the area of the peak storm surge may have allowed for
additional wave impacts, which are not explicitly modeled by SLOSH and may somewhat complicate the RMW analysis.)

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1705


TABLE 1. Revisions in the 6-hourly HURDAT and at landfall in the Bahamas and the United States for Hurricane
Andrew, 16–28 August 1992. Changes are listed in bold, original best rack is in parenthesis. Note that the landfall
indicated for Elliott Key had not previously been described explicitly. Note also that the continental U.S. hurricane
impacts for HURDAT are changed from “CFL4BFL3 LA3” (southeastern Florida as Category 4, southwestern
Florida as Category 3, and Louisiana as Category 3) to “CFL5BFL4 LA3” (southeastern Florida as Category 5,
southwestern Florida as Category 4, and Louisiana as Category 3).

Date/Time Latitude Longitude Central Maximum Storm


UTC °N °W pressure (mb) wind speed (kt) status

16/1800 10.8 35.5 1010 25 Tropical depression


17/0000 11.2 37.4 1009 30 “
17/0600 11.7 39.6 1008 30 “
17/1200 12.3 42.0 1006 35 Tropical storm
17/1800 13.1 44.2 1003 35 “
18/0000 13.6 46.2 1002 40 “
18/0600 14.1 48.0 1001 45 “
18/1200 14.6 49.9 1000 45 “
18/1800 15.4 51.8 1000 45 “
19/0000 16.3 53.5 1001 45 “
19/0600 17.2 55.3 1002 45 “
19/1200 18.0 56.9 1005 45 “
19/1800 18.8 58.3 1007 45 “
20/0000 19.8 59.3 1011 40 “
20/0600 20.7 60.0 1013 40 “
20/1200 21.7 60.7 1015 40 “
20/1800 22.5 61.5 1014 40 “
21/0000 23.2 62.4 1014 45 “
21/0600 23.9 63.3 1010 45 “
21/1200 24.4 64.2 1007 50 “
21/1800 24.8 64.9 1004 50 “
22/0000 25.3 65.9 1000 55 “
22/0600 25.6 67.0 994 65 (60) Hurricane
22/1200 25.8 68.3 981 80 (70) “
22/1800 25.7 69.7 969 95 (80) “
23/0000 25.6 71.1 961 110 (90) “
23/0600 25.5 72.5 947 130 (105) “
23/1200 25.4 74.2 933 145 (120) “
23/1800 25.4 75.8 922 150 (135) “
24/0000 25.4 77.5 930 125 “
24/0600 25.4 79.3 937 130 (120) “
24/1200 25.6 81.2 951 115 (110) “
24/1800 25.8 83.1 947 115 “
25/0000 26.2 85.0 943 115 “
25/0600 26.6 86.7 948 115 “
25/1200 27.2 88.2 946 120 (115) “
25/1800 27.8 89.6 941 125 (120) “
26/0000 28.5 90.5 937 125(120) “
26/0600 29.2 91.3 955 120 (115) “
26/1200 30.1 91.7 973 80 “
26/1800 30.9 91.6 991 50 Tropical storm
27/0000 31.5 91.1 995 35 “
27/0600 32.1 90.5 997 30 Tropical depression
27/1200 32.8 89.6 998 30 “
27/1800 33.6 88.4 999 25 “
28/0000 34.4 86.7 1000 20 “
28/0600 35.4 84.0 1000 20 “

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1707


TABLE 1. Continued.

Date/Time Latitude Longitude Central Maximum Storm


UTC °N °W pressure (mb) wind speed (kt) status

23/1800 25.4 75.8 922 150 (135) Minimum pressure


24/0905 25.5 80.3 922 145 (125) “
23/2100 25.4 76.6 923 140 (130) Eleuthera landfall
24/0100 25.4 77.8 931 130 (125) Berry Island landfall
24/0840 25.5 80.2 926 145 Elliott Key, FL, landfall
24/0905 25.5 80.3 922 145 (125) Fender Point, FL, landfall
[8 nmi (13km) east-
northeast of Homestead, FL]
26/0830 29.6 91.5 956 100 (105) Pt. Chevreuil, LA

DISCUSSION OF UNCER-
TAINTIES. The purpose of the
reanalysis efforts is to ensure
the most accurate historical
hurricane record possible—
one that is consistent with
contemporary science. It has
been suggested that the record
in the case of Andrew should
not have been changed, in part
because of the uncertainty sur-
rounding the maximum surface
wind. However, the committee
recognized that no storm’s inten-
sity can be determined with
complete accuracy; the surface
observations are almost never
sufficiently comprehensive, and
FIG. 5. A portion of the track for Hurricane Andrew with an emphasis on where indirect measures of surface
changes were made in its intensity. wind must always be used.
Uncertainty in a wind speed
estimate should not be an ob-
this period and there were limited in situ surface ob- stacle to revising an earlier estimate that is inconsistent
servations indicative of the maximum 1-min surface with the observations, especially if it has benefited from
winds. The revisions made Andrew a Saffir–Simpson new advances in science and understanding.
Hurricane Scale (SSHS; Saffir 1973; Simpson 1974) Powell et al. (1996) indicated an estimate of ±20%
category-5 (i.e., maximum 1-min surface winds of at procedure error in assigning surface winds from
least 136 kt) hurricane at landfall in both Eleuthera flight-level aircraft reconnaissance wind data in their
Island, Bahamas, and in southeastern Florida. The original methodology. For the maximum 1-min sur-
maximum 1-min surface wind for Hurricane Andrew face winds in Andrew that they analyzed, this ranges
at landfall in mainland southeastern Florida near from 103 to 153 kt, reflecting the large uncertainty in
Fender Point [8 n mi (13 km) east of Homestead, the analysis methodology at that time. Franklin et al.’s
Florida] at 0905 UTC 24 August was officially estimated (2003) examination of several hundred over-ocean
to be 145 kt. (The original 1992 NHC best-track land- hurricane eyewall dropwindsondes indicates that while
fall intensity estimate was 125 kt.) The peak intensity the mean ratio of surface to 700-mb winds was about
of Andrew, originally assessed at 135 kt, was reasoned 90%, the standard deviation was about 19%. This value
to be 150 kt at 1800 UTC 23 August just east of the is similar to the variability suggested by Powell et al.
northern Bahamas. (1996).

1708 | NOVEMBER 2004


However, this does not mean that the uncertainty cussion above. It should be noted that these category-
in estimating peak surface winds from flight-level data 5 conditions likely occurred on land only in a small re-
is necessarily about 20%. It is important to distinguish gion in south Dade County, Florida, close to the coast
between the following two questions: 1) given a wind in Cutler Ridge. Most of the region in the country south
observation taken at 700 mb somewhere in the hurri- of Kendall Drive (25.7°N) received category-4 or cat-
cane eyewall, what is the underlying concurrent wind egory-3 hurricane conditions. Peak gusts over oceanic
at the surface; and 2) given a storm’s maximum wind conditions and over land were likely to be on the order
at 700 mb, what is the storm’s maximum sustained wind of 160–170 kt, based upon typical gust factors utilized
at the surface? The 19% standard deviation is directly (e.g., Powell and Houston 1996). (See the sidebar on
applicable only to the first question posed above. This “Implications of Hurricane Andrew’s reanalysis in the
variance is not appropriate for estimating the variabil- United States.”)
ity in the ratio of the storm’s maximum surface to While this reanalysis does not preclude revisiting
maximum 700-mb winds. The variance of the latter Hurricane Andrew’s intensity in the future if needed, it
quantity is not known, but should be less than 19%, as is the official estimate at this time. We are working within
illustrated by the following example. the bounds of the state of the science to interpret sur-
Imagine a steady-state storm in which the maxi- face wind conditions in hurricanes. The violent inner core
mum 1-min wind at the surface is 90 kt, while the maxi- of major hurricanes has always been an area with a dearth
mum 1-min wind at 700 mb is 100 kt. Over time, the of in situ measurements of the peak winds. Numerous
precise location of the maxima at both the surface and uncertainties remain (e.g., how representative was the
700 mb may vary, but the peak values present at each 162-kt flight-level winds of the peak winds in Andrew
level remain constant. By assumption, the variance of at 700 mb?; how much intensification to Andrew’s wind
peak surface to peak 700-mb wind is zero. Even so, if field occurred after the reconnaissance plane left the
the eyewall of this storm was to be sampled by GPS north eyewall?; how are surface winds in hurricanes
dropwindsondes, the dropwindsonde surface-to- altered in general at the ocean–coast interface?; how
700-mb-wind ratio would still have a large variance, may further stratifications to the dropwindsonde data
because a) the wind distributions are not necessarily provide better surface wind estimates for various right
the same at the two levels, so a dropwindsonde that versus left asymmetries and flight-level wind speed,
samples the maximum at 700 mb will not necessarily convective, or stability regimes?). Continued data col-
sample the surface maximum, and vice versa; and lection and research are strongly encouraged to help
b) the dropwindsondes do not measure a 1-min wind, clarify these important issues. However, it is realized
but measure whatever turbulence through which they that despite progress in scientific uncertainties, the exact
happen to fall during a 0.5-s interval. These factors wind speeds caused by Hurricane Andrew in south-
contribute to the high variance in adjustment-factor eastern Florida and elsewhere will never be known
ratios computed from individual dropwindsondes, but with complete accuracy and confidence.
it has very little to do with the relationship between
peak winds from level to level. While a precise mea- SUMMARY.
sure of the procedure error in applying the 90% rule • Hurricane Andrew in 1992 originally was assessed
may not be obtainable currently, mean eyewall pro- to have reached a peak intensity and Bahamian/U.S.
files from different storms (Franklin et al. 2003) suggest landfall intensity of SSHS category 4, based prima-
that it may be near 10% (i.e., that the actual surface wind rily upon adjustment of flight-level winds to the
to 700-mb-flight-level ratio for Hurricane Andrew surface.
would have been between about 80% and 100%). • Research using GPS dropwindsondes in the late
It is acknowledged that the reanalysis presented 1990s and early 2000s has demonstrated that stron-
here of Andrew’s intensity at landfall in southeastern ger winds exist at the surface in the hurricane eyewall
Florida (and elsewhere in its lifetime) is not known with than originally had been believed.
exact certainty, nor will it ever be. However, it is con- • A reanalysis of Hurricane Andrew’s intensity,
cluded here that Hurricane Andrew’s intensity is very considering this new understanding, indicates that
likely to be in the range of 136–155 kt for the maxi- Andrew’s maximum 1-min surface winds for much
mum 1-min surface winds that impacted the coast at of its lifetime were substantially stronger than was
landfall in mainland southeastern Florida, with a best analyzed earlier. In particular, Hurricane Andrew
single estimate of 145 kt. It is quite unlikely that Andrew is now estimated to have reached category-5 status
was a 125-kt hurricane at landfall (category 4) as was at its landfall in both the northern Bahamas and in
originally thought, consistent with the uncertainty dis- southeastern Florida.

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1709


IMPLICATIONS OF HURRICANE ANDREW’S REANALYSIS IN SOUTH FLORIDA
One example of a practical aspect of the This conclusion may be somewhat statistics for more localized regions,
outcome of Andrew’s reanalysis is the counterintuitive at first, but is more including average return periods for
potential impact on building codes and understandable if one puts Andrew into various thresholds of wind speeds of
insurance rates. Previously, Hurricane context with the other catastrophic interest. For the original and revised
Andrew was estimated to be a SSHS south Florida hurricanes of the assessed intensities of Andrew at
category-4 hurricane at landfall in south twentieth century. Previously, with landfall, the return periods for various
Florida (comprising Pinellas, Andrew considered a category-5 intensity hurricanes passing within
Hillsborough, Manatee, Sarasota, hurricane at landfall, it was considered 50 n mi (93 km) are quite different:
Charlotte, Lee, Collier, Monroe, as a strong as, and roughly as damaging 36 yr at ≥ 125 kt (original Andrew best-
Miami–Dade, Broward, Palm Beach, as, the 1919, 1926, 1928, 1947, and track intensity) and 82 yr at ≥ 145 kt
Martin, St. Lucie, Indian River, and 1960 hurricanes. But elevating Hurri- (revised Andrew best-track intensity).
Brevard counties). During the twenti- cane Andrew to a category 5 means that However, the return periods for
eth century, there are relatively it is unlikely that these other five various wind speed thresholds do not
complete records for this region category-4 hurricanes could cause the themselves change significantly near
(Landsea et al. 2004). Prior to same type of extreme destruction that Miami–Dade County, with the alter-
Andrew’s reclassification, six category- the 1992 hurricane caused, if these ation of one data point (i.e., Andrew’s
4 and one category-5 hurricanes struck systems were to hit today’s southeast estimated intensity), as one would
southeastern Florida: the 1919 Key Florida. It is noted though that the expect from a large database of over
West hurricane, the 1926 Great Miami 1926, 1928, and 1947 hurricanes were 100 yr of tropical storms and hurri-
hurricane, the 1928 Lake Okeechobee substantially larger in size than 1992’s canes to impact this region.
hurricane, the 1935 Labor Day Andrew, so that they might cause more For the public, government agencies,
(category 5) hurricane, the 1947 widespread, though locally less severe, insurance companies, wind engineers,
Broward hurricane, 1960’s Hurricane damages if they were to hit today. building code designers, and others
Donna in the Florida Keys, and [Moreover, it appears unlikely that any interested in the return period of
Hurricane Andrew (updated from of these five remaining category-4 extremely devastating hurricanes, the
Jarrell et al. 1992). This gave an average hurricanes that struck south Florida category assigned is quite important.
return period for “Andrew like” will be reanalyzed at a higher category The implication of the above calcula-
hurricanes (i.e., category 4 or 5) of based upon Dunion et al. (2003) and tions is that originally an Andrew-like
about 15 yr for the south Florida other preliminary assessments.] Thus, impact could be expected about every
region, though these occur rather the new classification alters the 35 yr in Miami–Dade County (every
unevenly in time during the twentieth assessed odds of having an Andrew-like 15 yr for all of south Florida), while the
century. However, with Andrew being hurricane impact from being an reclassification means that an Andrew-
reclassified as a category 5, it becomes uncommon occurrence to a rare event. like event is now expected to strike
one of two such tropical cyclones to This rough assessment agrees with Miami–Dade County about once in
strike the area in 100 yr. Thus, the specific calculations from the Hurricane 80 yr (every 50 yr for all of south
return period is equal to or greater Risk (HURISK) analysis program Florida). Such information should be of
than 50 yr for a direct strike on the (Neumann 1987). This program use for those involved with long-range
region by an Andrew-type hurricane synthesizes information from the entire planning for the region.
(now upgraded to category 5). HURDAT database to provide detailed

• Continued research is needed to better understand authors wish to thank Mike Black and Krystal Valde for their
the surface winds in strong hurricanes in a variety contributions toward better understanding of the hurricane’s
of differing environmental conditions and at the violent inner-core wind structure. Additional thanks go to
ocean–coast boundary, in particular. Pete Black and Mark Powell for their presentations of surface
• Because of this reclassification, the return period of pressure gradients/surveys of wind-caused damage and
catastrophic hurricanes like Andrew increases from surface wind estimation, respectively, for the NHC Best
about 15 to at least 50 yr for south Florida. Thus, Track Change Committee’s deliberations. Lenworth
the risk from Andrew-like hurricanes at that Woolcock provided support for both figure preparation as
location is significantly less than previously had been well as Web site development and maintenance. Kind
estimated. suggestions and recommendations for this reanalysis and
paper were also provided by several additional people: William
ACKNOWLEDGMENTS. The first author acknowledges Bredemeyer, Steve Feuer, John Gamache, Paul Hebert, Jeff
the support of NOAA NASA Grant GC02-093—The Atlantic Kepert, Paul Leighton, Charlie Neumann, and Hugh
Hurricane Database (HURDAT) reanalysis project. The Willoughby.

1710 | NOVEMBER 2004


——, and Coauthors, 2004: The Atlantic hurricane
REFERENCES database re-analysis project: Documentation for
Chandler, M., and J. Charles, 2002: Hurricane insurance the 1851-1910 alterations and additions to the
stirring a fight. The Miami Herald, 19 February, sec. HURDAT database. Hurricanes and Typhoons: Past,
A, morning edition. Present and Future, R. J. Murnane and K.-B. Liu,
DeMaria, M., and J. Kaplan, 1999: An updated Eds., Columbia University Press, in press.
Statistical Hurricane Intensity Prediction Scheme Marks, F. D., R. A. Houze Jr., and J. F. Gamache, 1992:
(SHIPS) for the Atlantic and eastern North Pacific Dual-aircraft investigation of the inner core of
basins. Wea. Forecasting, 14, 326–337. Hurricane Norbert. Part I: Kinematic structure. J.
Dunion, J. P., and M. D. Powell, 2002: Improvements Atmos. Sci., 49, 919–942.
to the NOAA Hurricane Research Division’s surface Mayfield, M., L. Avila, and E. N. Rappaport, 1994:
reduction algorithm for inner core aircraft flight- Atlantic hurricane season of 1992. Mon. Wea. Rev.,
level winds. Preprints, 25th Conf. on Hurricanes and 122, 517–538.
Tropical Meteorology, San Diego, CA, Amer. Meteor. McAdie, C. J., and M. B. Lawrence, 2000: Improvements
Soc., 581–582. in tropical cyclone track forecasting in the Atlantic
——, C. W. Landsea, S. H. Houston, and M. D. Powell, basin, 1970–98. Bull. Amer. Meteor. Soc., 81, 989–
2003: A reanalysis of the surface winds for 998.
Hurricane Donnna of 1960. Mon. Wea. Rev., 131, Neumann, C. J., 1987: The National Hurricane Center
1992–2001. Risk Analysis Program (HURISK). NOAA Tech.
Fernández-Partagas, J., and H. F. Diaz, 1996: Atlantic Memo. NWS NHC 38, 56 pp.
hurricanes in the second half of the nineteenth ——, 1994: An update to the National Hurricane Center
century. Bull. Amer. Meteor. Soc., 77, 2899–2906. “Track Book.” Minutes of the 48th Interdepartmental
Franklin, J. L., L. A. Avila, J. L. Beven, M. B. Lawrence, Conf., Miami, FL, NOAA Office of Federal
R. J. Pasch, and S. R. Stewart, 2001: Atlantic Coordinator for Meteorological Services and
hurricane season of 2000. Mon. Wea. Rev., 129, Supporting Research, A-47–A-53.
3037–3056. Powell, M. D., 1980: Evaluations of diagnostic marine
——, M. L. Black, and K. Valde, 2003: GPS boundary layer models applied to hurricanes. Mon.
dropwindsonde wind profiles in hurricanes and their Wea. Rev., 108, 757–766.
operational implications. Wea. Forecasting, 18, 32– ——, and P. G. Black, 1990: The relationship of hurricane
44. reconnaissance flight-level measurements to winds
Hock, T. R., and J. L. Franklin, 1999: The NCAR GPS measured by NOAA’s oceanic platforms. J. Wind
dropwindsonde. Bull. Amer. Meteor. Soc., 80, 407–420. Eng. Ind. Aerodyn., 36, 381–392.
Houston, S. H., P. P. Dodge, M. D. Powell, M. L. Black, ——, and S. H. Houston, 1996: Hurricane Andrew’s
G. M. Barnes, and P. S. Chu, 2000: Surface winds in landfall in South Florida. Part II: Surface wind fields
hurricanes from GPS-sondes: Comparisons with and potential real-time applications. Wea.
observations. Preprints, 24th Conf. on Hurricanes Forecasting, 11, 329–349.
and Tropical Meteorology, Ft. Lauderdale, FL, Amer. ——, P. P. Dodge, and M. L. Black, 1991: The landfall of
Meteor. Soc., 339. Hurricane Hugo in the Carolinas: Surface wind
Jarrell, J. D., P. J. Hebert, and M. Mayfield, 1992: distribution. Wea. Forecasting, 6, 379–399.
Hurricane experience levels of coastal county ——, S. H. Houston, and T. A. Reinhold, 1996: Hurri-
populations from Texas to Maine. NOAA Tech. cane Andrew’s landfall in South Florida. Part I:
Memo. NWS NHC 46, 152 pp. Standardizing measurements for documentation of
Jarvinen, B. R., C. J. Neumann, and M. A. S. Davis, 1984: surface wind fields. Wea. Forecasting, 11, 304–328.
A tropical cyclone data tape for the North Atlantic ——, ——, L. R. Amat, and N. Morisseau-Leroy, 1998:
Basin, 1886-1983: Contents, limitations, and uses. The HRD real-time surface wind analysis system. J.
NOAA Tech. Memo. NWS NHC 22, 21 pp. Wind Eng. Indust. Aerodyn., 77–78, 53–64.
Jeslesnianski, C. P., 1993: The habitation layer. Global ——, P. J. Vickery, and T. A. Reinhold, 2003: Reduced
Guide to Tropical Cyclone Forecasting, World drag-coefficient for high wind speeds in tropical
Meteorological Organization Tech. Doc. 560 4.1– cyclones. Nature, 422, 279–283.
4.29. Rappaport, E. N., 1994: Hurricane Andrew. Weather,
Landsea, C. W., 1993: A climatology of intense (or 49, 51–61.
major) Atlantic hurricanes. Mon. Wea. Rev., 121, Saffir, H. S., 1973: Hurricane wind and storm surge. Mil.
1703–1713. Eng., 423, 4–5.

AMERICAN METEOROLOGICAL SOCIETY NOVEMBER 2004 | 1711


Simpson, R. H., 1974: The hurricane
disaster potential scale.
Weatherwise, 27, 169, 186.
Tuttle, J., and R. Gall, 1999: A single-
radar technique for estimating
the winds in tropical cyclones.
Bull. Amer. Meteor. Soc., 80, 653–
668.
Ulhorn, E. W., and P. G. Black, 2003:
Verification of remotely sensed
sea surface winds in hurricanes.
J. Atmos. Oceanic Technol., 20,
99–116.
Walsh, E. J., and Coauthors, 2002:
Hurricane directional wave
spectrum spatial variation at
landfall. J. Phys. Oceanogr., 32,
1667–1684.

1712 | NOVEMBER 2004


While the bathymetry of the waters offshore of south from the WSR-57 radar in Tampa, satellite intensity
Florida where Andrew hit is somewhat different from estimates, storm-surge modeling runs, and surveys of
North Carolina, if such decreased wave heights did wind-caused damage. These measures (discussion of
occur, it is not clear what these would imply when com- these parameters can be found online at www.aoml.
bined with breaking waves for changes to the roughness noaa.gov/hrd/hurdat/index.html) were mainly consis-
length relative to the open ocean. tent with the revised surface wind estimates discussed
J. Franklin presented the committee with an analy- in earlier sections, though they were of secondary im-
sis of available GPS dropwindsondes near shore (within portance to the final NHC Best Track Change Com-
10 km) and offshore (10–60 km) in the right eyewall of mittee decision.
hurricanes making landfall in the United States. This
preliminary study suggested that there could be some BEST-TRACK CHANGES. After considering the
reduction in surface winds along the immediate coastal presentations regarding various recommendations for
waters. A very limited sample of 19 dropwinsondes in the revisions of Andrew’s best-track intensities, the
the eyewalls of weak to moderate hurricanes shows an NHC Best Track Change Committee made alterations
apparent 5%–10% reduction of surface wind as the to the winds in HURDAT for Hurricane Andrew
coastline is approached. Using this alteration to the (Table 1 and Fig. 4) for 22–26 August. These changes
Franklin et al. (2003) surface wind methodology gives were made to Hurricane Andrew’s intensity data for
maximum 1-min winds at the coast of roughly 130 to the time while the storm was over the Atlantic Ocean
140 kt. However, given the extremely small sample of just east of the Bahamas, over the Bahamas and south
dropwindsondes (i.e., 10 near shore and 9 just offshore) Florida, over the Gulf of Mexico, and at landfall in
and lack of any major hurricanes in this coastal analy- Louisiana (Fig. 5). Neither the best-track positions nor
sis, such results were considered by the Best Track the central pressure values of Andrew were adjusted.
Change Committee to be too speculative to be applied The alterations in wind intensity were based upon the
at this time.5 Clearly, more dropwindsonde data are Franklin et al. (2003) methodology, which is consistent
needed both in the transition zone between land and with the work of Dunion et al. (2003) and Dunion and
water, as well as in the hurricane boundary layer over Powell (2002) as discussed earlier. The changes to
land, to properly assess the degree to which a hurricane’s HURDAT were applied for these dates as aircraft re-
surface winds over open water reach the coastline. connaissance observations were available throughout

Other evidence for Andrew’s intensity.


While the primary pieces of evi-
dence for altering Hurricane
Andrew’s intensity came from re-
vised extrapolations of flight-level
winds and radar feature track data,
other information on the intensity
was also available and considered
in the reanalysis. These were the
continued central pressure drop
after the measurement of the peak
aircraft wind report, pressure–
wind relationships, surface pres-
sure gradients, high-altitude radar
reflectivity eyewall core velocities

5
The National Hurricane Center’s opera-
tional estimates, as well as the
poststorm best-track assessments, have FIG. 4. Selected wind observations and original (solid)/revised (dashed)
historically made the assumption that best-track maximum 1-min surface wind speed curve for Hurricane
an otherwise steady-state hurricane’s Andrew, 20–27 Aug 1992. Aircraft observations have been adjusted for
maximum winds over water do survive elevation using 90%, 80%, and 75% reduction factors for data collected at
to the coastline. 700 mb, at 850 mb, and near 450 m, respectively (Franklin et al. 2003).

1706 | NOVEMBER 2004


title System Programming Reference Manual

authors S. Garland
A. Dwyer .
E. Pet:Per
A. Colvin
N. Bourbaki

publication number 1059

date 31 OCT 79 (revision 1)

category System Management - Programming

supersedes DTSS Programming Reference Manual,


'IM059 (1 OCT 74)

related dccuments ~ Reference Manual, Pub .. 1077

File Access and Protection, Pub.l102

Description of File System and Job Trees,


Pub. 1335

System Managa~t Publications List, Pub.1350

A FOstage-paid remarks form is included at the end of· this manual


for your convenience. Information aOOut publications may be
found in the Publication Price List and Publication Abstracts, of
which single copies may be obtained free of charge.

The named authors ~ldlike to thank the many 1 many p:cple who
have au~,ored, prepared, or worked on the various parts of t.~is
manual. Large portions of this manual cane directly fran the
superseded edition by S. Garland an::1 A. Dwyer.

Copyright @ 1979, orss Incorporated


SYSTEM PRCGRAMMING REE'ERENCE MANUAL

Contents

Chapter 1 - JobjExecutive Interface • • • 9

1.1 Running in Slave Mode • • 10


1.1.1 Base Address Register 10
1.1.2 Timer Register • 10
1.1.3 Input and Output (I/O) 10
1.2 Job to Executive ••• 11

1.2.1 Leaving Slave Mode • • • • • 11


1.2.2 Transparent Interrupts • 11
1.2.3 MME Faults; Executive calls 12

1.3 Slave Fault Vector 13


1.3.1 Slave Fault Procedure • • • • 14
1.3.2 Slave Faults • • . • • • • 14
1.3.3 Sirrulated Slave Faults • 15
1.3.4 Special Lccations • • • 15
1.3.5 Parity Faults; Execute Faults 15

1.4 Executive to Job 16


1.4.1 Traps 16
1.4.2 Special Interrupts. • • • • • • 17
1.4.3 Special Interrupt Stack 17
1.4.4 Special Interrupt Procedure • • • • 18
1.4.5 Saved Special Interrupts. • 19
1.4.6 Bouncing Special Interrupts 19
1.4.7 Special Interrupt Pair Format 19
1.4.8 Types of Special Interrupts 20
1.4.9 Simultaneous Traps and Special Interrupts 22
1.4.10 Typical Trap-Handling Code
(Non-MUltiprogramrned) • • • • • • • • • • • 23

Pub. 1059 Page 3


1.4.11 Ordering of Simultaneous Traps 24
1.4.12 Traps fran Squeezed M:Xie 24

Chapter 2 - Specifications for Executive Commands 25


2.1 Nontrapping Executive Ccnunands 27

2.2 Trapping Executive Commands 28


2.3 Trap Block Format 29

2.4 SllIIlIIarY of Status Returns 30

Chapter 3 - Nontrapping Executive Commands 35


CLCCK 36
MTE 37
ENABLE 38
JOB TIME 40
I.al; PAUSE 41
MEMJRY REOOEST 42
PAUSE 43
PURE 44
RtNNING TIME 45
SET TIMER • 46
SClJEEZE 47
TERMINATE 48
TIME OF DAY • 49
TTh1E S:m:::E BCOrI.OAD 50

Chapter 4 - Trapping Executive Commands 51


ALTER ACCESSES 53
CATAI.CG 55
CEAN:;E CATAI.CG ENTRY 59
CEAN:;E CATAI.CG MAX 62
C!.CSE 64
CCNrThlJE 66
COPY 68
DRIVE 74
DUPLlCAT8 79
ERASE 81
EXECL"T.E 84

Page 4 Pub. 1059


reG • 92
OLD ERASE • 94
OLD READ CATAI.CG AND OPEN FILES 96
OLD REPLACE • 97
OPEN 100
OPEN SCRAroI 106
GVEm.AY • 109
PASS III
PROVIDE DEVICE ADDRESSES 114
READ 116
READ CATALCG • 120
READ CATALCG AND OPEN FILES 124
REPLACE • 131
RECUEST STATUS 136
RESEr STATUS 141
RW • 143
SCPATal • 144
SET POINrER • 146
TALLY CATAI.CG • 148
TALLY ERASE 152
TALLY OPEN 156
TAILY REPlACE • 162
TRUNCATE 167
ONCATALCG • 169
WRITE • 171

Chapter 5 - Ccmmunication Files 175


5.1 COPYCcmmands • 175
5.1.1 Slave End copy Ccmmands 175
.5.1.2 Master End COPY ·Ccrnmands 177
5.1.3 The "No-Tr aplt Cption • 178
5. 2 Non-OJPY Ccmmands 178
5.2.1 RECUEST STAWS· (Master End) 179
5.2.2 RECUEST STATtJS (Slave End) 179
5.2.3 DRIVE (~.aster End) 180
5.2.4 DRIVE (Slave Em) 181
5.2.5 TRI..u.""'1CATE, SCRA'ICE, and SET FOINrER
(Slave End Only) 181
5.2.6 PASS and CLCSE • 182
5.2.7 RESEr STATtJS • • 182

Pub. 1059 Page 5


5.3 Creation and Destruction • 182
5.4 Reserving the File • • 184
5.5 Busy States and Reset Status • 186
5.5.1 Slave End States •. • • 187
5.5.2 Master End States • • 189
5.6 Usage Example • • • • • • • .. 191
5.6.1 Creating a Ccmmunication File • 191
5.6.2 REQUEST STATUS from a Slave End • 192
5.6.3 PASS at a Slave End . . . . . . . . . . . . . 192
5.6.4 COPY Conm3nd with No-Trap Option • • • • 193
5.6.5 Aborted COPY and Break Drive • • • • • • 194
5.6.6 Slave End Reservation; Local Operations ... 194
5.6.7 Master End DRIVE • • • • • . • • • • 196
5.6.8 Illegal Actions • • • • • • • • • • 196
5.6.9 Destroying the File • • • • • • • • 197
5.6.10 Passing Back a CcmmunicationFile • • 197

Chapter 6- Device Files ............ • 199


6.1 General Information and Restrictions 199
/
6.2 Device Drives .. • • • • • •• 204
6.2.1 Single Action Drives • • • 205
6.2.2 Drive with LCd's. • • 207

6.3 Device Status Returns . • • 210


6.3.1 Console • 211
6.3.2 Card Reader • 212
6.3.3 Card. Punch • .... • 213
6.3.4
6.3.5
Printer ...... • • 214
Tat:e • • • • • • • • • • • • 215
6.3.6 Disk • • • . • 217
6.3.7 Microprogrammed Peripheral Controller 219
6.3.8 716 Front End Processor • 220
6. 4 S imula ted Status Returns 221
6.5 Special Programming Considerations · 222

Page 6 Pub. 1059


SYS'IEM PRCGRAMMING REEERENCE MANUAL

6.6 Executive Error Recove~l • • • . • • . • . • • . . 225

Chapter 7 - Shared Files . . . . . . . . . . . . . . 227


Chapter 8 - Tally Operations 229

8.1 General Parameters • 230


8.2 Scanner Conventions • • 231
8.3 Status Returns • • 235

Chapter 9 - Catalog Structure 237


9.1 Introduction 237
9.2 Definitions •. • • 238
9.3 Physical Organization • • 240
9.3.1 Device Addresses (DA'S) . • • • • • • 240
9.3.2 catalogs • • • • • • • • 242

9.4 Slave Accessible I~orrnation • • 244


9.4.1 catalog headers ••• 244
9.4.2 Logical Descriptors • 247
9.5 Quotas and Storage Limi tations • 252
9.5.1 catalog quotas • • 252
9.5.2 Job quotas . • • • • 253

Index • • • • . . . . . . . . . . . . . . . . . . . . . . . 255
~

Pub. 1059 Page 7


Page 8 Pub. 1059
Chapter 1

JobjExecutive Interface

wl1en a slave job is in execution, it has full control of a


processor in slave rrode and may perform any legal slave nx:de
operations, as described in the "Honeywell 600/6000 Programming
Reference Manual II • Whenever a prccessor leaves slave m:::;de, the
Executive gains control.

A slave job may enter the Executive in various ways: it may


request service from the Executive, it may execute an instruction
that faults, or sane external event (such as a physical I/O
operation completing or timer running out) may cause the
Executive to suspend the job. Executive entries that are not
caused by a job are invisible to a job; when it resumes
execution, nei ther its merr.ory nor its environment will be
changed.

The Executive conveys information to a slave job by the following


means:

faults indicating that the job e..xecuted an


instruction ~,at faulted

traps indicating that asynchronous operations have


completed

interrupts usually indicating that another slave job


wishes to carmunicate wi th this job

This sketchy description covers the entire interface be~Heen the


Executive and a slave job, wi th the exceptiqn of special
considerations in the case of job 1 (the Slave Loader) having to

Pub.1059 Page 9
SYS'lEM PRCGRAMMING REEERENCE MANUAL

do with system startup). We now consider this interface in more


detail.

1.1 Running in Slave MOde

A job actually running (executing instructions) is not affected


by. the Executive I except as noted here.

1.1.1 Base Address Register

The base address register (BAR) limits memory references by the


slave job. The base p:>rtion of the register is set according to
the location of the job in main rnenory, and may be reset by the
Executive at any tim: that the job is interrupted (is not
actually executing instructions). The length p:>rtion is set
according to the length of the job, and changes only when the job
issues a MEMJRY _REQUEST call (on a MME faul t, as descri1:ed
below) •

1.1.2 Timer Register

The timer register is set according to the needs of the


Executive, and may change any tine the job is interrupted. The
slave job &,ould not t.~erefore dep:nd on the setting of the timer
register.

1.1.3 Input and Output (I/O)

An I/O activity requested by the jcb may proceed concurrently


with its execution. (I/O is requested with Executive calls, as
described eelow.) A slave job should not re-use an I/O buffer
until it has been notified by the Executive (by means of a trap)
that the previously requested I/O has t:e€n canpleted on that
Cuffer.

Page 10 Pub. 1059


1 - JCE/EXEaJrIVE INIERFACE

1.2 Job to Executive

1.2.1 Leaving Slave Mode

The Honeywell 600/6000 hardware provides two general methods for


leaving slave mode: I/O interrupts and faults. I/O interrupts
cannot be generated by a prccessor in slave nx:de. Certain types
of faults can be generated deliberately by a slave job; other
types are due to outside causes. The action taken by the
Executive will depend on the type of interrupt or fault, and
FOssiblyon the state of the job's registers "and main meIOOry when
the faul t cccurs.

1.2.2 Transparent Interrupts

Certain types of interrupts are normally transparent to a slave


job. That is, the job is restarted after the interrupt wi th all
its memory and working registers (including the instruction
counter or IC) preserved, so that it need not even 1:e aware that
the interrupt cccurred. Included in this category' are all
connect faults, timer runcut faults, and startup and shutdown
faults. These events are not completely undetectable by the
slave jcb, though. Any tim: a job is interrupted, including
transparent interrupts, the Executive may take advantage of its
opportunity to give a pending trap, slave fault, or special
interrupt (cf. Section 1.4). It may also m:dify the BAR or timer
register as previously described.

If it is imperative to the slave job that not even these events


cccur, it may prevent all transparent interrupts by the use of
the inhibit bit. This hardware feature prevents any of the
transparent interrupts fran occurring. care shoold be taken,
however, to insure that the inhibit bi t is not used Irore than is
absolutely necessary • Excessive use of the inhibi t bi t has the
following disadvantages:

(1) If the slave job executes inhibited cede for too long,
a lockup fault is generated. This fault may cccur in
the middle of the execution of one machine instruction I
making it iJnt:ossible for the slave job to continue.

Pub. 1059 Page 11


SYS'IEM PFCGRAMMING REEERENCE MANUAL

(2) Excessive use of the inhibit bit prevents the Executive


from recognizing I/O interrupts as quickly as possible,
thus slowing down the rate of I/O activity am reducing
the total eff~ciency of the time-sharing system.

1.2.3 MME Faults; Executive Calls'

A slave job may request certain services from the Executive by


generating a MME (master mode entry) fault.' The address field of
the instruction causing the fault contains a code for the type of
call,. and the job's registers and merrory contain any additional
parameters necessary. The specifications for the valid calls are
contained in Chapter 2, IISpecifications for ExecutiveCormnands n •

Executive calls are of three types: nontrapping, trapping I and


tra~ing with autanatic pause. The action requested by a
nontrapping call is performed tefore ~,e slave job regains
control. From the point of view of .the slave job, its action is
instantaneous. This action may include modification of the slave
job's registers or memory, as described in the specifications.
Except for such modifications, a nontrapping call is essentially
a transparent interrupt.

Trapping calls also function as transparent interrupts. However,


after a trapping call has been issued and the. slave job has
regained control, the action mayor may not be complete. A
trapping call must specify a trap address in X6 at the time of
the MME fault. wnen the action is complete, a trap (described in
Section 1.4) occurs to that address in the slave job's rnerrory
area.

Trapping calls wi~~ the automatic pause feature share features of


trapping and nontrapping calls. The calls are set up much like a
trapping calli e.g. a trap address is necessary, but a pause for
one interrupt is assumed at the tirr.€ of the' call. This feature
may make the call look much like a ncntrapping call. It is
considered geed prcgr arnming technique, however, to check to make
sure that the particular trap for the current MME was returned,
even after the autanatic pausing type of Executive calls.

Page 12 Pub. 1059


1 - JCB!EXECtJI'IVE INrERFACE

If a, jcb is in squeezed m::de, or if the address field of the MME


instruction does not specify a valid call, or if the trap address
for a trapping call is zero, negative, or out of munds, the MME
fault is returned to the slave job as a slave fault (see below) .
The upper three bits of the cede for a valid Executive call are
always 101 to reduce the chance of an undebugged job accidentally
generating and issuing a valid Executive call.

1.3 Slave Fault Vector

The first 40 (octal) words of a slave job l s rnerrory form its slave
fault vector. This area is divided into two-word fault cells,
one for each of the sixteen types of faults described in the
, "Honeywell 600/000 Programming Reference Manual". Sane of these
cells are used for special purposes by the Executive, while
others are used for slave faults. The position of the individual
cells within the slave fault vector corresponds to ~he hardware-
defined locations in the master m::de fault vector. They are·:

Lccaticn Use

o initial entry poin~special interrupt tally


2 memory fault
4 MME fault
6 fault tag fault
10 CRIJ tim:r runcut fault
12 ccmmand fault
14 DRL fault
16 lockup fault
20 special interrupt
22 unused (reserved)
24 illegal procedure fault
26 incomplete op fault
30 unused
32 overflow/truncation fault
34 divide check
36 real time timer runcut fault

Pub.1059 Page 13
SYS'IEM PFCGRAMMING REE'EREl'l:E MANUAL

1.3.1 Slave Fault Procedure

When certain faults occur, they are returned to the slave job
which generated them as slave faults. To give a slave fault, the
Executive stores the job's Ie (instruction counter) and IR
(indicator register) registers at the time of the fault in the
first word of the appropriate fault cell in the slave fault
vector. The job's Ie is reset to point to the secor:d word of the
fault cell.

If the first ~rd of the fault cell was zero before the IC/IR
were stored, then control is transferred to the second word of
t.~e fault cell. However, if it was nonzero, the job had a "di~ty
fault vector ff and is al:orted; that is, it is suspended, and the
job which ran it is notified by a trap that the job had a dirty
fault vector. The supra job then has the option of continuing or
terminating the aborted slave job. This feature is intended to
prevent an undebugged job fram looping indefinitely due to a
fault in its fault precessing routine.

1.3.2 Slave Faults

w'"henever a memory, fault tag I DRL, lockup, illegal precedure


(IPR) , incomplete cp (OOC), overflow/truncate, or divide check
fault occurs, it is returned as a slave fault4 Command faults
are normally returned as slave faults. However, if the job in
question is highly privileged (enabled) it may use a corrmarrl
fault to request an al:::ort of the entire system (see ENABLE MME) •
This feature is to allow certaL~ high-level slave jobs to request
a system aJ:ort in case they detect a serious error. Camnand
faults are generated when a privileged (master mode) instruction
is executed in slave rrxXie.

~ faults normally indicate Executive calls. However, if the


job generating t.~e MME is in squeezed roc:de (entered by the
Executive call SQUEEZE) I if the address field of the instruction
causing the fault does not specify a valid Executive call, or if
the trap address specified for a trapping call is zero, negative,
or out of tourrls, the MME fault will be returned as a slave
fault.

Page 14 Pub.I059
1 - JCB/EXEaJrIVE lNIERFACE

1.3.3 Simulated Slave Faults

~ software-simulated timers are available to a slave job. A


run-time timer is set by the Executive call SET TL~, and a
real-time (elapsed time) timer is set by the Executive call
CLCCK. Both these calls are nontrapping.

As soon as possible after either of these timers has counted down


to zero, the timer is disabled and a slave fault is given. A
timer runcut fault is returned if the run-time timer counts to
zero, and an execute fault is given if the real-time timer runs
out. Either of these simulated faults may cause the job to be
amrted for a dirty fault vector. The s imula ted faults are the
only slave faults given in these fault cells; neither the
hardware timer runout nor execute faults are returned as slave
faults.

1.3.4 Special Lccations

The shutdown and connect fault cells have special uses in the
slave fault vector. 1N:>rd 0 (the first word of the shutdam fault
cell) is the ini tial entry FOint to the job. When the job is
first run, its Ie is set to zero. Word 1 (the secorrl word of the
shutdown fault cell) is the job's special interrupt tally word.
The co~nect fault cell is used as the special interrupt cell.
Special interrupts are descri1:ed in detail in Section 1.4.

The pari ty fault cell is not currently used, and is reserved for
future use. The startup fault cell is not used by the Executive 1
and is available to the slave job, if it wishes to use it ..

1.3.5 Parity Faults; Execute Faults

When a job generates a pari ty fault, the job is terminated. '" The
supra job is notified in the trap that the job was terminated due
to an error detected by the Executive (recoverable error status
400). In case of an execute fault, the system is aborted. An
exeoJte fault can be generated only by the or:erator at the
processor centrol panel, and it is never a slave fault.

Pub.IOS9 Page 15
1.4 Executive to Job

In addition to slave faults, the Executive also communicates with


the slave job by using traps and special interrupts.

1.4.1 Traps

A trap occurs whenever the action requested by a trapping


executive call is canpleted, or when it is terminated prematurely
by an error or invalid parameter. A trap address is specified
when the call is issued. This address is the start of a block of
at least four words in the slave job J s merrory. wl'len the trap is
ready to "spring", the Executive, at its first opportunity,
stores two words of status information in the first two words of
this block. The job's current IC and IR are stored in t.'e third
word of the trap block (the return MJrd) , and its IC is reset to
point to the fourth ~rd. (This procedure should be compared
wi th the similar procedure used to give a slave fault.) The
fourth ~rd shculd contain the 1:eginning of the.slave job's trap
proc"essing routine. Bits 9-17 of the first status word always
contain a status code indicating whether the operation was
completed successfully, and if not, why not. Ot.i1er fields give
rrore detailed information. A precise description of the ~~
statusfMJrds is given in Section 2.3.

The following sequence of events cccurs when a slave job is


trapped upon completion of a trapping command:

(1) Execution of the slave job is suspended;

(2) Two words of status information are stored in the first


two words of the trap block pointed to by the slave
job IS X6-register when the command was issued;

(3) The Olrrent value of the slave job's instruction


counter (Ie) and indicator register (IR) are stored in
the third word of t.~e trap block; and

(4) The slave job is restarted at the fourth word of the


trap block.

Page 16 Pub. 1059


1 - JCB/EXECUl'IVE INTERFACE

A trap block may contain any sequence of instructions starting in


the fourth ~rd. This trap routine should end with an RET
instruction whose address field points to the third word of the
block in order to resume execution of the code interrupted by the
trap.

It is possible for the time between the issuance of a command and


the resulting trap to vary considerably. Sane traps may occur
irmnediately and m:>re than one trap may occur at once. A prcgram
which exi ts frem each trap routine by a RET instruction will
encounter all traps in·the order in which they cccurred; it will
also encounter all traps before encountering any special
interrupt which cccurred at the same time as the traps. Note,
however, that ccmnands are not necessarily trapped in the same
order in which they were issued.

1.4.2 Special Interrupts

A special interrupt is used by the Executiv~ to notify a job of


some event o~,er than the completion of a trapping Executive
call. A job will receive special interrupts only if its special
interrupt tally ~rd (~rd one) is not zero. If the word is
zero, the job is not accepting specials. In this case, any
special interrupts which would be given to the job are either
discarded or l:ounced to a job higher in the job tree, depending
on the origin of the special interrupt (see Section 1.4.6).

1.4.3 Special Interrupt Stack

If a job is accepting specials, the special interrupt tally word


(word l) contains a tally p::>inter to the job I s special interrupt
stack. The tally word is typically generated by using the ~
pseudo-operation TALLYD, as in:

SPTAL:TALLYD S~..CK,NlJMEER,2 SPECIAL INrERRUPT TALLY

Here STACK is the symbolic location of the area in the slave job
set aside as the special interrupt stack; NtJM3ER is the nu:ml:er of
2-'NOrd, special interrupt data entries (special interrupt pairs)

Pub. 1059 Page 17


which will fit in the stack, and the "2ft refers to the length of
a special interrupt pair. The last field need not be set, but
most programmers find it convenient to do so.

1.4.4 Special Interrupt Procedure

At its first opportunity after a special interrupt is generated


(caused), the Executive will do the following:

(1) If the job is not accepting Sl=€Cials (the special interrupt


tally ~rd is zero), the special is discarded or J1 oounced" ,
an::l the procedure is canplete. A special interrupt on a
slave end of a canmunications file can be "oounced" to a
higher slave end which is accepting special interrupts.

(2) Otherwise, any p:n::1ing roadblocks on the job are released


(see the description of the PAUSE call in c.'apter 3).

(3) If the tally field (bits 18-29) of the special interrupt


tally ~rd is zero, indicating ~~at the special interrupt
stack is full, the special interrupt is "saved" (see below) ,
and the procedure terminates.
(4) Otherwise, if the address field (bits 0-17) of the special
interrupt tally ~rd points out of bourrls (outside the job's
rnem.::>ry) , the special is discarded, and the prccedure ems.

(5) Two words of special interrupt data (special interrupt pair)


are stored in the special interrupt stack. The address
field of the tally ~rd is incrertented by two, and the tally
field is decremented by one.

(6) If v.ord 20 (the first ~rd of the slave connect fault cell)
is zero, a slave connect fault is simulated. If word 20 is
nonzero, no fault takes place. No dirty fault vector aborts
are generated. This feature can be used to prevent a slave
job from receiving a special interrupt (connect fault) while
it is executing its special interrupt service routine, if
the slave job dces not clear word 20 until the erd of its
special handling routine.

Page 18 Pub. 1059


1 - JOB!EXEa1I'IVE INTERFACE

1.4.5 Saved Special Interrupts

If the jcb I s special interrupt stack is full (the tally field of


the tally word is zero) in step 3 above, the special interrupt
pair will be saved by the Executive ar:d given to the job as scan
as the tally field becomes nonzero. The order of the special
interrupts is preserved when each pair is saved. However, once a
special interrupt pair has been saved, the special interrupt
cannot be oounced. If the job stops accepting special interrupts
(clears the special interrupt tally word to zero) l:efore making'
ream in the special interrupt stack, all saved special pairs will
Ce discarded.

1.4.6 Bouncing Special Interrupts

Only special interrupts which are generated by a DRIVE ccrnmand at


the master eoo of a camnunication file are l::ounced. The methcd
by which the Executive determines which job will recsi ve the
SI=€Cial interrupt is covered in detail in Section 5.2.

1.4.7 Special Interrupt Pair Format

The ~ data words which are placed by the Executive in the


special interrupt stack have ~,e following format:

o 13 14 17 18 35

TYPE

DATA

RSVD - Reserved for future use. These bi ts may contain garbage.

TYPE - Special interrupt type (see below for a list of typ:s) .

Pub. 1059 Page 19


FRN - Depending on the type of the special interrupt, this field
may contain a file reference number. On specials generated
by a DRIVE on a communication file, this field contains the
FRN of the em of the ccrnrnunication file held by the job
receiving the special. On passed file and returned file
specials (types PF and RF), the Fm of the file passed .or
returned is given here. On file closed specials (type
FCLO) I the FRN of the former communication file end is given
here.

DATA - The use of this field depends on the type of the special
interrupt. If the special was generated by a DRIVE or CLOSE
on a communication file, the lower half of the DATA field
always contains the drive function data (fran the lower half
of the issuing job I sA-register). Other uses of the DATA
field are listed below.

1.4.8 ~rees of Special Interrupts

~ Mnemonic Use
o Set rrode - used to notify the master end
job that a slave end jcb issued a set rrcde
drive (see DRIVE-slave end in Section
5.2). The lo.--"'€r half of DATA contains ~'e
mcde.
1 RCF Read communication file - used to notify a
slave end job that the master eoo job -
wishes the slave to issue a READ. By
convention the lower half of DATA contains
the length to read. (See DRIVE-rnaster
end, Section 5.2.)
2 Slave issued reset - notifies the master
end job that a slave end job issued a
RESET S"rATOS on a COPY to which the master
em job had rot yet respJooed. (See RESET
STATUS, Section 5.2.)

3 BRK Break - notifies a slave end job that G,e


master end job has issued a break drive.
(See DRIVE-master end, Section 5.2.)

Page 20 Pub. 1059


1 - JCB/EXECUl'IVE Th""TERFACE

4 PF Passed File - notifies the job that a file


has been passed to i t ~7ia the PASS
cannand. This special interrupt is not
caused by the implici t PASS ccrnrrand in the
RON ccrnnand. If DATA is nonzero, the
passed file special is due to a "passback"
fran an :irran:diate infra-job, and the lower
half of DATA contains the FPN of the job
file from which the file was passed.

5 RF Returned file - notifies the job that a


file which it passed with the return bit
set has rt:JW been returned to it. The
10\a;er half of DATA contains the FRN of the
job file to which t.~e file eeing returned
was passed.

FCLO File closed - notifies t.~e job that a


ccmnunication file of which it held an em
has been destroyed because a CLOSE was
issued at another er..d. DATA contains the
contents of the A-register of ~~e job
requesting the close at the time of the
close MME.

7 Reserved for future use.

10 ITA. Illegal trap address - notifies a job that


the Executive attempted to give it a trap,
but discovered that the trap address was
outside the job's rnemJry. The lower half
of rATA contains the illegal trap address.
This condi tion can ar ise if Il1E:Irory
containing the trap block is released with
a MEMORY ~ ccmrand l:efore the trap
cccurs.

11 Reserved for future use.

12 D Slave issued drive - notifies the master


end job that a slave end job issued a
device drive. The lo~r half of VATA
contains the device ccrmnand (MJDE). (See
DRIVE-slave end.)

Pub.1059 Page 21
SYS'IEM POCGRAMMING REE'EREl.'rn MANUAL

13 R Slave issued read - notifies the master


end job that a read-type command was
issued at a slave end. DATA contains the
requested length. (See slave end COPY
commands, Section 5.1.)
14 w Slave issued wr i te - noti'fies ~,e master
end jcb that a write-type command was
issued at a slave errl. DATA contains the
requested length. (See Slave end COpy
commands, Section 5.1.)
15 PS Slave issued request status - notifies ~~e
master end job that a REQUEST STATUS was
issued at a slave em. DATA. contains the
requested length of the status block.
16 T Slave issued truncate - potifies the
master end, job that a TRIJ"NCATE or SCRATCH
command was issued at a slave end. DATA
contains the requested truncation length
(zero for SCRATCH). (See TRL~TE-slave
end only I Section 5.2.)
17 SP Slave issued set pointer - notifies the
master end job of a SET POINTER ccrnmand
issued at a slave end. DATA contains the
requested pointer setting. This special
is automatically given to a master end job
when a copy be or fram a slave end
specifies a starting location pointer (see
copy tt!r1E) •

1.4.9 Simultaneous Traps and Special Interrupts

It is possible for more than one trap, special interrupt, or


slave fault to be given to a job each tiIre that job is inter-
rupted. In this case, the traps are linked, with the Ie in the
return ~rd of one trap fXJinting to the next trap. It is thus
important that a job be programmed so as always 'to return from
its traps, special interrupts, and slave faults by issuing a RET
instruction to the appropriate return word. This ensures that if
nore than one trap 1 or if a trap and a special interrupt cccur
sim.ll taneously, both will be serviced by the slave jeb. Even if

Page 22 Pub. 1059


1 - JCB;EXECUrIVE INTERFACE

the programmer believes ~~e situation cannot occur, it is still a


good practice to return from all traps through the return word.
It typically simplifies program design and increases readability
to do so.

1.4.10 Typical Trap-Handling Code (Non-Multiprogrammed)

The following sequence of instructions is a typical way for a


nonmultiprogrammed slave job to handle a trapping Executive call ..
It illustrates the use of the return word.-

EAX6 TRAP PJint to trap blcck


STZ TPAP+2 clear return word as flag
MME (type) issue trapping Executive call
INHIB SAVE,ON inhibi t pause routine
CHECK: SZN TPAP+2 check return ~rd
TNZ SPRUNG if not zero, trap has sprung
LDXS 1,DU load pause count
MME PAUSE wait for one trap or interrupt
INHIB RES'IDRE reset inhibit bit to normal
TFA CHECK cheek flag again
SPRONG: LDXO TRAP pick up status word 1
ANXO =D777,DU mask to status field
(MlXO GCOD,IXJ check for expected status
TNZ ERROR go analyze error
remainder of program
TFAP: BSS 2 ~NO status w~rds
BSS 1 return wurd
RET *-1 return immediately from trap

This routine always waits after issuing an Executive call. Note


that the trap routine returns immediately through the return
~rd, and the main routine checks the status words. The return
~rd is also used as a flag, since the Executive will not put the
IC/IR into this word until it springs the trap. If Executive
calls are issued in many places in a program, it is usually
profitable in terms of memory size to place portions of the above
routine, such as the pause loop I in a camron subrcutine.

Pub.1059 Page 23
SYS'IEM PRCGRAMMING REE'EREl\K:E MANUAL

1.4.11 Ordering of Simultaneous Traps

The Executive will link simultaneous traps and specials in such a


way that a job which returns through the appropriate return words
(as all jobs normally should) will encounter first all traps and
simulated slave faults in the order in which they actually
occurred, then the connect fault (special interrupt) if any, and
then any slave fault other than simulated slave faults. The job
will thus process all traps before specials. The return word in
a slave fault cell will always point to the location where the
fault actually occurred.

1.4.12 Traps from Squeezed MOde

When a job running in squeezed rrcde (see SQUEEZE, MME 500007 in


Chapter 3) receives a trap, special interrupt, or slave fault, it
is unsqueezed. The trap or interrupt takes place normally,
except tL,at the saved IC/IR is relative to the squeezed BAR, and
has bi t 35 (the squeeze bi t) set on to indicate this fact. Note
that the above sample trap-handling routine cannot be used by a
job which expects to be trapped fran squeezed m::x:1e, since the RET
instruction .will not "resqueeze" the job.

Page 24 Pub. 1059


Chapter 2

Specifications for Executive Ccmmands

The specifications for Executive commands are divided into three


sections:

a brief summary of the parameters for and the status


returns from each ccrnmand;

o detailed specifications for the nontrapping


ccrnmands;

o detailed specifications for the trapping camrnands.

As descril:ed in Section 1.2, a slave job issues an Executive


carmand by executing a MME (master rrcde entry) instruction with
an address field specifying a legitimate ccrnmand; execution of a
MME instruction whose address field does not specirz a legitimate
canrnand will result in a MME fault., (A jcb receives a ",!ME fault
by having the current value of its IC/IR stored in location 4 of
its job me.'OC>ry and then having its IC reset to location 5.)
There is one exception to this rule: if the address field of the
MME instruction is exactly 100 (octal) greater than a ~lalid
trapping MME nt.m1ber I this is equivalent to issuing that MME
followed immediately by a PAUSE MME wi~~ a pause count of one.
Such MME I S are called 200 series, or pausing MME I s. The contents
of the slave job I S registers ufOn execution of a MME instruction
specify parameters relevant to the ccmrand.

Except in the case of a SQ:JEEZE or a ~ cararand, a slave


job will regain control at the location following a MME
instruction unless a fault, trap, or special interrupt was
generated as the Executive was precessing the camrnand. In the
case of nontrapping ccrnmands, the Executive will have ccrnpleted
processi.."'lg t.~e ccrnmand by t..l-}e time t..~e slave job regains control.

Pub. 1059 Page 25


SYS'IEM P:ocGRAMMING RE]iERE:Ol'X:E MANUAL

In the case of trapping commands, the Executive may not have


completed processing the command; instead, execution of the
corrrnand and of the slave job may continue in parallel, with the
slave job being trapped upon ccmp1etion of the command.

Numbers occurring in the specifications of this section can be of


tYtO types: octal and decimal. In general, numbers which can
occur as the contents of a register are in ectal; thus,
addresses, status returns, or special interrupt numbers are in
octal. Numbers which do notcccur as the contents of a register
are in decimal; for example, bit numbers and fractions of
milliseconds are given in decimal.

Page 26 Pub. 1059


_~.!.! __ t10!l~~"~I!~Hi_~!~~~~!.~c!_ Co 111111 !!!!1:!
~

}-J
COIllIIICl'ld I1HE '1.0 Xl '1.2 Xl XII )(5 '1.6 '/.', A Q Return
0
lJ1
1.O
Terminate 50nOOt) Acce!J3
Set Timer SOOOot Time A = old
Running TltRC 500002 bin. A
Time of nay 50000] ASCII AQ
Oale 50000 11 ASCII AQ
Puu!le 500005 II
Hellwl~y Ilcque:Jt 500006 llound X5::0 if ok
S'I'ICCZC 50U001 Ie/lUI nAn Ueg:J'
T 1me Slllet! Bootload 5QOO H) bin. A
Pm"e 500011 Fil HI X'/::O if ok
Job Tillie 500012 hi n . A
l. 0 III! PaU3C 500013 U
C loclc 500011i Time A :: old
Unu3cd 500015
lJllu!Jcd 500016
Enable 500011 'fy pe Ma:ll! A :: rC:lult
C
,';'-.~'" ;I.,;:~,.

~-.r¥G:~.,

m;~al

b'L'(

L.,
.1.~

"0
~
(l)

N
00
,2 . ~ ___![~~P_!.')lLJ~~£~t:.~~_~01ll1~~~1:!

Command HHE

500100
XO Xt X2 X3 ' X'I
Access
X5
Pref
X6
Trap'
X1 A/Q

.. at HAX
;
Ul

Open Scratch
Open 500101 I'll Cal Hamel Pass· Access Trap' H Slave trap 1. D.
Old [raBe 500102 I'll Cat Hame' Pass' Trap' Slave trap 1. D.
Catalog 50010] fR Cat UaUle l FR I)as!}· Access' Date l Trap'
Uncatalog 'j00 1011 I'll Trap·
Close 50010'j FR Trap· Com file special
Ove"lay 500106 I'll Fl as btts Trap· neg'
Truncate 50010'1 fU Trap' length

~
Scratch 500110 FU Trapl
Change Catalog Entry 5001 11 fll Uame' Pas::}' Access· Oate" Trap·
Era!lc 500112 I'll Cat tj;uIle • Zero fa!}3" Trap ma3k Zero Trap' N Slave trap 1.1>.
Set Po inter 500111 fll Trap' Po1nter
IlHad Catalog 500 I 11, Fll Cat HI' H2' Trap' UI
Ileclucst Statu!} 500115 fU H2· 'TI'ap" N'
Replace 500' 16 Fit Cat Hamel fit Pass· Trap masle Zero Trapl N Slave trap l.ll.
Execute
lIun
500111
500120
I'll
FU
Sur
S<}J'
Typo
Type
L1m i Ls
l.lmits
l.lsl·
list'
Trap'
Trap'
neg' Timel Acc
neg l Timel Acc ~
Continuu
Pass
500121
500122
fR Job
I'll Job H:3g 1 I'll
llrnlts
Access Pref
Trap·
Trap· HI
Time
~
Alter Accesses 50012] fll Aocess Trap'
Change Catalog HAX 50012 1, I'll Cat It'ap' Cat HAX
Old Reud Cat & Open 500125 Fil Cat HII H211 Aoce:}s Cod Date Trap' U' Slave tral) I. o.
Provide DAs 500126 FR H21 Trap' U·
Head Catalog & Open 500127 I'll H11 Ze,"o ti21 Access Date' Trap· N' Slave trap 1. D.
Old Replal:e
Copy
5001]0
5UU1Jl fnl
FU Cat
H ,I
Uame l fR Pa.3s 1
fll2 H21 flag bits
Trap'
Trap' U'
Slave trap I. D.
Drive 5001J2 FU Flag bits T.. ap· function
Head 500t13 I'll H2· Flag h1ts Trap' NI
\Jr'l ta 50011 " H 1· FII 1'1 ag bits T.'ap· U'
lle:Jet Status 5001]5 Fn flag bits Trap'
Tally Opeu 5001]6 I'll Cat Tally' Zero FIl Alt Cat Access last Name' Trap· Zero Slave trap I. D.
Tally E.'ase 50013'1 . Fn Cat Tally· Zel"o r:n Alt Cat Trap mask last Name l Trap' Zero Slave trap 1.0.
Tally lleplace 500t'I0 fll Cat Ta 11 y. f"U Fit Alt Cat Trap lOask last Name' Trap· ZtH'O Slave trap I. l) •
Tally Cat.alog 5001'11 fll Cilt Ta 11 Vi Fil fll All Cal Auce3s' last NLime l Trap· nate l
·u Log 5001112 Zero HP Zero le,'o flag hit:} Zcr'o Trap· NJI
§. Iluplicate 5001'1"1 FIf lCI'o Ztll'O Z~ro Acoes!l Ze.'o l,'ap· Zer'o
•~
0
U1
\.D • lndleate~ pOillter to \-10,'<1 containing pa.' amete,'
2 - SPECIFICATICNS FOR EXEOJI'IVE (X'tylMANLS

2.3 Trap Block Format

o 8 9 17 18 3S
Status ~rd 1 (Access) Status (File Reference Number)
Status ~rd 2 (Length or Counts)
Return ~rd Ie IR

Trap Routine

Access (bi ts 0-8 of status word 1)

(1) On access error (status 100), gives the access bit


needed for successful completion of the ccmmand.

(2) On OPEN, ALTER ACCESSES, DUPLICATE, and REPLACE,


gives the access wi~~ the file is open or could
have teen opened.
(3) On RUN, EXEaJI'E and CCNrINtJE, gives termination
access of infra job.
(4) On DRIVE with ocw' s, gives record count residue.

(5) Zero in all other cases.

Status (bits 9-17 of status word 1)

. rA.ajor status (see individual trapping EXecutive camnard


descriptions) •

Pub.lOS9 Page 29
2.4 Summary of Status Returns

ALTER ACCESSES

o Successful
1 Partial success
2 File closed
$i2= Length of file

o Successful
1 Illegal trap protection
2 Duplica te entry in catalcg
3 File not a scratch file
4 File preference too low
13 Illegal usage or dates

o Successful
1 Illegal trap protection
2 Duplicate entry in catalcg
3 File r~t found
4 Protection violation
6 Bad tree name
7 Fetch error
12 Format error
13 Illegal usage and dates
14 File preference too low
SW2= Substatus/character count and position {if status is 12}

o Successful
1 File not cataloged
2 DL~licate file name fourd in catalog
3 Illegal trap bi ts
13 Illegal usage and dates

Page 30 Pub. 1059


2 - SPECIFICATIONS FOR EXEC!.1rIVE ~

o Successful
1 Rejected: specified MAX is less than current MIX:,

CLCSE

o Successful
6 Communication file busy

COPY/READ/WRITE/READ CATALCG/REQUEST STATUS/READ CATALCG Al'ID OPEN

o All words transferred


1 Source file exhausted
2 Destination file exhausted
3 Command inappropriate for state of ccrnmunication file
4 Source file pointer out- of bounds
5 Destination file pointer out of bounds
6 Communication file busy
7 Master end of communication file not accepting special
interrupts
14 State vector full (REll..D CATALCG AND OPEN only)
SW~= Number of words transferred - number requested

DRIVE

o Successful
1 Not all data transferred
2 Destination file exhausted
3 Command inappropriate for state of communication file
6 Communication file bUS1·
7 Other end of cornrnunication file not accepting special
interrupts
10 Bad CCW (Drive Type 24 only)

SW2= Device status on device file drives

Pub.1059 Page 31
LCG

o Successful
1 Rejected: log already outstanding
2 No log buffer available
3 Escape sequence error

OPEN~RASE/REPLACE/rALLY OPEN/l'ALLY ERASE!rALLY REPLACE


o Successful
1 Partial success
2 Lockout
3 File not found
4 Protection violation
5 Fail
6 Bad tree name
7 Fetch error
10 Off-line file
11 Rejected: specially cataloged files (device files) 'cannot
be renoved fran catalcgs (ERASE arrl REPLACE only)
12 Format error (TALLYMMEfs)
S'W2=' Length of file or catalog ~!AX (zero on ERASE) or
substatus/character count and position
(if status is 12 on TALLY Mo1Es)

OVERLAY

1 Rejected: operation outstar.ding


2 Rejected: file teo long ,

PASS
o Successful: message, if any, was read
2 Message not read

SW2= Number of words read - number of words in message

Page 32 Pub. 1059


2 - SPECIFICATIONS FOR EXECU"TIVE CG1MANI:S

RESET srAWS

o Successful
1 Reset status already in progress
6 Communication file busy
7 Master end of communication file not accepting special
interrupts

o Job terminated
1 CRU limit exhausted
2 Job at:orted
5 Error in run list
6 Swap error; job terminated
SW2= CRDs constnned by jcb

TRIJNCATE/SET POINTER/SCRATCH

o Successful
1 Length teo long or f:Ointer out of l:our:ds
6 Communication file busy
7 Master end of ccrnmunication file not accepting special
interrupts
SW2= Length of file - length requested (if status is 1
on TRUNCATE)

o Successful
1 File not cataloged

Pub. 1059 Page 33


Page 34 Pub. 1059
Chapter 3

Nontrapping Executive Ccmmands

This chapter contains detailed specifications for all nontrapping


commands (in alphabetical order; for a list sorted by number, see
Section 2.1).

CIcek •• MME 500014


Date MME 500004
Enable MME 500017
Job Time ~lME 500012
Long Pause MME 500013
Memory Request MME 500006
Pause • • . • MME 500005
Pure • . • • . MME 500011
Running TiTre MME 500002
S~t. Timer • MME 500001
Squeeze . • •. MME 500007
Terminate ••• MME 500000
Time of Day •• MME 500003
Time Since Bcoticad • MME 500010

Pub. 1059 Page 35


3 - NCNI'RAPPnK; EXEct7I'IVE CQ.1MANDS

MME 500014: CLOCK

A Tim:

The CLOCK ccmrnand enables a job to receive an execute fault


(real-time timer runout fault) after a specified amount of real
time has elapsed. If no CLOCK canmand is issued, or if a CLOCK
conmand with an argument of zero is issued, then no real tim:
timer runout fault will cccur. A CLOCK canmand with a nonzero
argument sets a real-time timer for the issuing job; ~'is timer
decrements continually, and a real time timer runout fault occurs
when it reaches zero (if the issuing job happens to be road-
blocked at this time it will be unroadblocked to receive the
fault). After a real ti.rre timer runout fault has occurred, the
real-time timer is disabled, and no further such fault will occur
until a new CLOCK canmand is issued.

Tirre is a 36-bi t integer which is decremented 64 times per


millisecond, thus accurate to the nearest 15.625 microseconds.

Since it is r:cssible for a job to be swapp:d out of rne.rrory when


its real-time timer reaches zero, the Executive cannot guarantee
that a job will be restarted as scan as its real-time timer runs
out. It can guarantee only that the job will receive an execute
.fault the first time it regains control ,after its real-tL~ timer
runs out.

A job receives an execute fault by having its current Ie and IR


stored in location 36 of its job rne.rnory and then having its Ie
reset to 37.

w11en a CLOCK carmand is issued, the old value of the job J S


real-t~~ timer is returned to the A-register.

Note: A CLOCK canrrand with a zero argument will not prevent an


execute fault from cccurring if a previously set CLOCK has
already run dcwn.

Page 36 Pub.I059
SYS'IEM PRCGRAMMING REF. ~.NUAL DATE

MME 500004: DATE

No argtnnents

DATE loads the ASCII date in the standard format "m:>nth/day/year"


into the AQ-registers, e.g. 03/13;73.

Pub.1059 Page 37
ENABlE 3 - NONrRAPP:m:; EXECUTIVE CCM-1A..1\lDS

~ 500017: ENABLE

A Desired setting for job type bits rrasked by Q (bi ts 0-8)

Q Mask for job type bits to set or reset (bits 0-8)

The job type of a running job consists of tv;o 9-bit quantities:


the perrrdssions allowed for the job and the permissions for which
the job is currently enabled.. These permissions are as follows:

Bit Function

o Monitor permission (affects scheduling only)

1 Core Residence permission

2 Large State Vector permission (permits a state


vector with nore than 64 files)

3 Special Catalcg· pennission (allows a job to


specify infinite catalog MAXes, and to estimate
the number of entries when creating a catalog)

4 Load-Dump permission (allows preallocaticn of


scratch files)

5 Priori ty Scheduling (PW)

6 Crash (allows slav~ job to abort system)

7 leg (allows job to do MME reG)

In addition the load-dump permission suppresses quota checks


involving catalcg MAXes, enables the PIDlIDE DEVICE ADDRESSES
carmand, ar.dprovides device addresses in the ~.D CATALCG AND
OPEN FILES canmand ..

When a jcb is run, bits 0-8 of index register X3 on the PJJN


comnand are ANDed with the job type bits allowed to the issuing
job to form the permissions allcwed to the infra job. The only
permissions which are enabled on the run are Large State Vector

Page 38 Pub.1059
SYS'IEM P~.MMING REF. Mn.NUAL ENABLE

permission, Priority Scheduling, Crash, and Leg; all other


permissions must be enabled by the ENABLE ccmrand.

When an ENABLE canrnand is issued, only those permissions


corresponding to bits for which there are ones in the Q-register
are affected. Each such permission is enabled if it is allowed
for the job. wnen the job regains control, the correSFQnding bit
in the A-register contains the current state of all permission
bi ts that were affected.

Pub.I059 Page 39
JCB TIME 3 - NONTFAPP:m; EXECUrIVE CCM-1ANDS

MME 500012: JOB TIME

No argt.nnents

The total running tine (CRU's) for the issuing job is loaded
right-justified in the A-register; running times for jobs running
below the issuing job are not included in the total. The running
tim: is in timer units of 1/64 milliCRIJ. (See also ~'NING
TIME. )

Page 40 Pub. 1059


SYS'IEM PRCGRAMMING REF. ~..NUAL r.ax; PAUSE

~ 500013: LONG PAUSE

xs Number of traps

LC't-X3 PAUSE is identical in effect to PAUSE. LONG PAUSE should be


used in place of PAUSE when the issuing job does not expect to be
. restarted while residing in main m:rrory. For example, it should
be used when awaiting a wake-up special interrupt or when pausing
after issuing a READ on a terminal carnmunication fi1e~ .

Pub. 1059 Page 41


MEMORY REQUEST 3 - NCNTFAPP:rn:; EXECUTIVE CClwMl.NDS

r+!E 500006: MEMORY REQUEST

XS Upper tremory limit

MEMORY REQUEST causes the BAR for the issuing job to be extended
or compressed so as to allow a maximum valid address of N-l,
where N is the least nonzero multiple of 1K (1024 words) greater
. t.~an or equal to the specified upper meIlX)ry limit. The new BAR
will be in effect when the job regains control. Memory obtained
will be zeroed out; memory released is lost.

If the command is successful, then XS will be zero on return. If


the requested memory is not available, t.'1en the amJunt that is
available will be returned in XS and another MEMORY REQUEST can
be issued to obtain this amount. If a job has previously issued
a PURE cannand, then any MEMJRY REQUEST which would release
memory containing pure procedure will be rejected, and the least
amount of memory for which a memory request will succeed will be
returned in Xs.

If the job's Ie is no longer wi ~,in the range of the new BAR


after memory is released, then a ma~ry fault will occur.

The axrount of rneIIOry that can be requested by a job is lirni ted by


the Olrrent system lirni t on rnaxim..nn rnerrory length and by the
memory limit imposed by the supra job in X4 of the RUN or
CCNI'INUE ccmnand which ini tia tea the job.

Page 42 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL PAUSE

MME 500005: PAUSE

X5 Number of traps

PAUSE causes the issuing job to be roadblocked until N traps, one


special interrupt, or one real-time timer runout fault has
occurred. If an N greater than the number of outstanding
trawing executive connnands is specified, then an N equal to the
number of outstanding trapping executive commands will be
asst.nned. If N is zero, the job will be roadblocked and will
restart as scan as there is an interrupt, trap, or fault. The
job will be restarted in a fault cell or trap block with the
location after the PAUSE command in the return address.

Pub. 1059 Page 43


PURE 3 - N:NTRAPPING EXECtJrIVE C~

MME 500011: PURE

XO File reference number of source file for pure procedure

XJ Points to length N

A segment of job rnerrory is said to contain "pure procedure"if no


location in that segment is ever altered during -the execution of
the job. The PURE comnand indicates that the issuing job
consists of pure procedure from word 100 to word N-l if X7 is
nonzero ,or that the issuing job contains no pure procedure if y;]
is zero. This PURE facility is designed to avoid the necessity
of swapping and restoring common packages of code.

Any error in the parameters for ~~e PURE command will cause the
carrnand to be rejected and X7 to be nonzero on return. The
length N must be a multiple of 100 and must be less than or equal
to l:oth the current length of the issuing job and the length of
the source file specified in XO. The file specified in XO must
be q::en wi~~ Read permission.-

If a PURE carrnand with a nonzero value in X7 is successful, then


a zero will be returned in X7. On subsequent swaps of the job,
words 100 to N-l will not be swapped, but will be restored fran
the source file specified in Xo. This file will remain busy as
long as the PURE command is in effect.

If a job does not issue a PURE ccmmand, it will be assumed to


contain ro pure procedure. A job which is running with pure
procedure can at any fOint declare itself impure by issuing a
PUBE cannand wi th XJ zero or by issuing a RESET STATUS on the
source file for the pure procedure. Ei ther of these two actions
will cause subsequent swaps to occur normally and will allow
access to the source file for pure procedure.

Copies to and fran the pure region of a job file will be al:orted
if they occur TNhen that job file is swapped out of main rnerrory.

Page 44 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL RUNNING TIME

~ 500002: RUNNING T~

No arguments

The total running tirre (CRO's) for the issuing job and all jobs
running i::elow it is loaded right-justified in the A-register.
The running tirre is in timer units of 1/64 milliCBIJ. (See also
JOB TIME.)

Pub. 1059 Page 45


SET TIMER 3 - NCNI'PAPP:m3 EXECGTIVE CCMMANDS

MME 500001: SET TIMER

A Tirre

The SEI' TIMER command enables a job to receive a timer runout


fault after a specified amount of precessing. This timer
decrements only when ~,e job is actively running or doing I/O,
and a tim:r runout fault occur s when this timer reaches zero or
beccm:s negative. If no SET TIMER caTnlEI1d is issued, or if a SET
TIMER carmand wi th an argument of zero is issued, then no timer
runout fault will occur. A SET TIMER command with a nonzero
argument sets a timer for the issuing job. After a timer runout
fault has cccurred, the timer is disabled, and no further timer
runout fault will occur until a new SET TIMER command is issued.

When a SET TIMER canmand is issued, the old value of t..~e job IS
tirner is· returned in the A-register.

When a SET TlMER camnand is issued, the old value of t..i1e job t s
t~~r is returned in the A-register.

A job receives a timer runcut fault by having its current Ie and


IR stored in locationlO of its job memory and then having its IC
reset to li.

Page 46 Pub.1059
SQUEEZE

MME 500007: SQUEEZE

X4 Points to IC/IR

X5 BAR

X7 Points to registers

The SQUEEZE command enables a slave job to simulate a master mode


prcgram by setting a pseudo base address register. SQUEEZE
causes the BAR for the issuing job to be changed to resemble the
BAR specified in XS, where the format of the BAR in XS is as it
~uld t:e if the slave job were l:eing executed in master m::de.
For example, to squeeze a job so that address 2000 becanes a and
the upper memory limit is 6000 (i.e. 6000 above the base of
2000), ~~e BAR in X5 would be 002006.

After the BAR has been changed, the registers are loaded by an
LREG instruction from the location pointed to by X7, and a RET
instruction is executed through the' specified IC/IR. If a fault,
trap, or special interrupt occurs while tl1e job is in the
squeezed m:de, the BAR is unsqueezed and the fault, trap, or
special interrupt takes place no~ally with bit 35 of the saved
IC/IR in the trap or fault cell set to 1.. Thus a. squeezed job
can r:ever call the Executive since all MME faults will Ce
returned to the unsqueezed job. All Inem:)ry outside of the
squeezed BAR is retained and beccrnes available again after the
BAR is unsqueezed.

If any of the parameters in a SQUEEZE command are out of range,


then .the command will be igoored and the next instruction in
sequence will be executed.

Pub.I059 Page 47
3 - NCNrRAPPnx; EXECUrIVE Ca.t1ANDS

Mt1E 5 00000 : TEFMINA'IE

X4 Termination access

~TE causes the termination of the issuing job and all jobs
running l:elow it. All files open for the job are closed and, if
the return bit is set in their access, returned to the supra job.
If the supra job is accepting specials, then a special interrupt
type 5 (returned file) is generated for each returned file. Upon
termination, a job's remaining scratch and catalog word
allotments are added to the corresponding allotments for the
supra job.

On a roonal pro:;rarn, the termination access specified in X4 is


returned in bits 0-8 of status word 1 in the trap for the RUN or
CCNTINUE corrmand which ini tiated the job. On a trap pro:;rarn
protecting a catalcged file, the access in X4 will t:e t.~e access
permi tted for tJ.'e opened file. .

Page 48 Pub. 1059


SYSrrEM PRCGRAMMING REF. MANUAL TL~ OF DAY

~ 500003: TrnE OF DAY

No arguments

The ASCII tim: of day in the stamard format


"hours:minutes:seconds" is loaded into the AQ-registers, e.g.
20:15:45.

Pub. 1059 Page 49


· TIME SINCE EO::1rLOAD 3 - NONTRAPPm:; EXECOI'IVE CCM-1ANDS

lvf.1E 500 010 : TIME S:m:::E BcortOAD

No arguments

The time since system boatload is loaded tight-justified into the


A..;.register in timer· uni ts of 1/64 millisecond. This time is not
affected by the operator I s entering, the. time of day.

Page .50 Pub. 1059


Chapter 4
Trapping Executive Commands

This chapter contains detailed specifications for all trapping


commands (in alphabetical order; for a list sorted by number, see
Section 2.2) •

Alter Accesses MME 500123


catalog • • • • • • • • r-!ME 500103
c.'1ange catalcg Entry • • MME 500111
Change catalog Max MME 500124
Close •• MME 500105
Continue • • • • MME 500121
Copy •• MME 500131
Drive •• MME 500132
Duplicate • MME 500143
Erase •• MME 500112
E!xecute • • • • • • • • • MME 500117
~ .... MME 500142
Old Erase • MME 500102
Old Read catalog ar:d Open Files • • MME 500125
Old Replace • • MME 500130
OE=en · · · · • • • · MME 500101
Op:n Scratch MME 500100
OVerlay • • • • • • • MME 500106
Pass •• • • M-1E 500122
Provide Device Addresses • • • • MME 500126
Read • • • • • • • • • • • MME 500133
Read Catalog • • • • • • • MME 500114
Read catalcg and Open Files • MME 500127
Replace • • • • • • • • • MME 500116
Request S ta tus • • • • MME 500115
Reset Status MME 500135
~ ..... MME 500120
Scratch ••• MME 500110
Set Pointer • • MME 500113
Tally catalog • MME 500141

Pub. 1059 Page 51


Tally Erase . .. .. MME 500137
Tally Open .... MME 500136
Tally Replace .. . MME 500140
Truncate MME 500107
Uncatalcg ........ MME 500104
write .. • .. .. .. . MME 500134

Page 52 Pub. 1059


ALTER ACCESSES

MME 500123: AL'IER ACCESSES

xo File reference number of cataloged file/catalog


X4 Access to retain on file/catalog (bits 0-8)
X6 Trap location

Any accesses present on the specified file/catalog which are not


sp:cified in X4 are relinquished. Any accesses specified in X4
and not present on the file/catalog will be granted if they fHQuld
have b:en allo"Wed at the time the file/catalog was opened, and if
they do not conflict with accesses currently held by other jobs
having the given file/catalog open. If all accesses present on
the file/catalog are relinquished, then the file/catalog THill be
closed; i.e. its file reference number will became invalid (cf.
CLCSE) •.

Upon completion of the ccmmand, a trap occurs to the location


specified in X6. Bits 0-8 of status w-ord 1 contain the access
bits remaining on the file/catalog.

Status word 2 contains the current length/MAX of ~~e file/


catalog. Note that this may not be the same as the length given
when the file/catalog was originally opened if another job has
modified ~~e file/catalog.

Status Returns

o Successful: the accesses in bits 0-8 remain and are


the same as those requested.
1 Partial success: the accesses in bits 0-8 remain but
differ fran those requested. This status return can
occur if X4 contains an access bi t I"'~t previously
present or if bit a of X4 is a (is l)·and the
file/catalog is a catalog (is a file).
2 File closed: all accesses present were relinquished.

Pub. 1059 Page 53


ALTER ACCESSES 4 - TRAPPTh:'G EXECCJrIVE CCMMANDS

120 Busy: another operation is outstarrling on the


file/catalcg.
200 XO parameter error: XO does not contain the file
reference number of a cataloged file/catalog. .

Page 54 Pub. 1059


SYSTEM PRCGRAMMING REF. ~ CATALCG

~ 500103: CATALCG

xO File reference number of catalog

Xl Points to name of scratch file/catalog to be cataloged

X2 File reference number of file/catalog to be cataloged

X3 Points to password or to narr~ of trap program

X4 Points to access word

X5 Points to usage information or is zero (load-dt.m1p enabled


jobs only)

X6 Trap location

The scratch file/catalog specified in X2 is entered in the


catalog indicated in XO with the specified name and protected by
the specified password or trap program. If bi t 18 of the access
~rd is 0, then X3 t=Oints to a password; ot.'ertlise X3 r:oints to
the name of a trap program. The catalog specified in XO must be
open with Append permission. The scratch file/catalog must not
have the return bit set in its access word.

If the job issuing t..'e CATALCG MME is enabled wi th Load-DUmp


permission, and if XS is non-zero, then X5 points to two wurds of
usage information to be placed in the catalog entry. The first
of these ~NO words contains an integer in the up;:er half, which
is used to set the file I s days-used counter (see Chapter 9). The
lower half of the first word contains type information or is
zero. Type information has the following format:

Bits Meaning

18-20 Must be zero

21-28 Variable information, not checked by Executive


29-31 Must be zero

32-35 File type

Pub. 1059 Page 55


CATALCG

There is currently only one allowable file type, which is


"off-line" (14 octal). Files to be cataloged with this type must
have ro physical storage asscciated with them (zero length; no
device addresses) .

The upper half of the s€o:)nl word contains a coded date used to
initialize the file's Date Last Used attribute. The lower half
of the same word contains a coded date used to set the filers
Date Last Mooified attribute. If the job is not Load-Dump
enabled, or if XS is zero, then the days-used count is set to
zero, and the date-last-used and date-last-meXiified are set to
the Olrrent date. A ceded date contains in bits 0-8 the binary
representation of the year (modulo 100), in bits 9-12 the binary
representation of the rront.' (JAN=l, DEC=12) '" and in bits 13-17
the binary representation of the day of the month.

The Executive sets bi t 0 of the access word to zero if the


file/catalog eeing catalcged is a file and to one if it is a
ca talog. (For further details on the catalog access word consult
the p.lblication "File Access arrl Protection".) The catalog
structure is described in rrore detail in Chapter 9.

A job which successfully catalogs a scratch file/catalog has its


scratch word allotment incremented by the leng~, of the file or
of the catalog header. At the same time its catalog word
allotment is decrerrented by ~,is quantity and also by the le~th
of the entry created in the catalog.

Upon completion of the ccmmand a trap occurs to the location


specified in X6.

Status Returns

o Successful.

1 Illegal trap protection request: a master trap


protection bit which is not allowed to the issuing job
has been specified.

Page 56 Pub. 1059


SYS'IEM PFCGRAMMING REF. MANUAL

2 An entry wi th the given name is already in the catalcg.

3 The file/catalog is already catalcged; i.e. it is not a


scratch file/catalcg.
4 The file/catalcg specified inX2 has a preference of 0,
1, 2, or 4, and may be catalcged only in a core
catalcg.

13 Illegal usage an:1 dates: illegal type or extraneous


bits specified in usage word pointed to by XS.

40 Quotas exceeded: ei ther

(1) catalcging the file/catalcg would cause the


destination catalog's allocated storage to a~ceed
the permissible MAXi or

(2) The length of t..l,e file or of the catalog header to


1::e catalcged exceeds the job r s remaining catalcg
~rd allotment.

60 OUt of storage, for one of three reasons:

(1) The catalcg is full:

(a) It already has 4095 entries; or

(b) It is not possible to append to the catalog


since it either is a main-merrory catalo; or
is already allocated in twelve fragments; or

(2) The Executive could not allocate sufficient


storage for a required expansion of the catalog;
or

(3) The Executive r s table of opened files is full.


100 Access error: the catal~ is not. open wi th Append
p:rmission; bits 0-8 of status word 1 contain the
missing permission bit.

120 Busy: another camnand is outstarrling on ei ther the


catalcg or the file/catalog to be catalcged.

Pub.lOS9 Page 57
CATALCG 4 - TPAPPING EXEC!1rIVE CCMMANDS

200 XO parameter error: XO is zero or does not contain the


file reference number of the catalog.
220 Xl parameter error: the pointer to the name is out of
l:our:ds.

240 X2 parameter error; either:

(1) X2 does not contain the file reference number of a


scratch file/catalog,

(2) The scratch file/catalog had the return bit set in


its access word (see the description of the
EXEcorE ccrnrnand), or

(3) X5 points to usage info~ation specifying a file


type of off-line but the file has device addresses
allocated (see Chapter 9).

300 X4 parameter error: ei ther t..~e p::>inter to the access


word is out of rounds or the access word contains
extraneous bi ts.
320 xS parameter error: the job is er.abled with load-dtnTlp
permission, and the pointer to the coded dates is out
of rounds.

400 Recoverable error: an error occurred in reading the


catalog.

420 Unrecoverable error: information in the catalog has


eeen destroyed.

Page 58 Pub. 1059


SYSTEM PRCGR..n.MMrNG REF. MANUAL CHANGE CATALCG ENTRY

~ 500111: CHANGE CATAI.CX; ENTRY

xO File reference number of cataloged 'file


Xl Points to new name or is zero

X3 Points to new password or is zero

X4 Points to new accesses or is zero

X5 Points to new usage infot1lE tion or is zero (load-dump


enabled jobs only)

X6 Trap location

The crn MME attempts to alter information in the catalog entry


(file Q:)ntrol block) of a cataloged file. XO contains the file
reference number of the file whose entry is to be changed. The
file rust be catalcged, and the job must be able to obtain Read,
Wr i te, and Append permission on the file us ing the ALTER ACCESS
MME. .

catalog e.'1tries are descri1:ed in sore detail in Chapter 9.

If XC contains a valid file reference number, the Executive


attempts the followdng changes to the catalog entry of ~~e file:

(1) If Xl is nonzero am t=Oints to b¥O valid merrory


locations, the b¥o ~rds FOinted to will beccme the new
name of the file. If the first nine-bi t character is
not a null, all lowercaSe alphabetic characters will be
rnafPed to uppercase.
(2) If X3 is nonzero ar.d .points to two valid rnemJry
loca tions, the t~ words FOinted to will beccme the new
password or slave-trap prcgrarn name. If the first
nine-bit character is not a null, all lowercase
alphabetic characters will be mafPed to uppercase.
(3) If.X4 is nonzero and points to a valid memory location,
the ~rd in that location will beccme the access word

Pub. 1059 Page 59


4 - TRAPPING EXECUI'IVE C~

for the file. If this word contains trap bits which


the issuing job does not possess, the MME is rejected
with a status of 3. The file/catalog status of an
entry cannot be changed, and any attempt to do so will
be ignored.

(4) If a jOb is Load-CUmp enabled, and if XS is nonzero and


p:>ints to two valid IIlelrory locations, those t~ words
contain the new usage information for the file. The
format of these two words is exactly the same as those
pointed to by XS of the CATALCG MME.

Upon completion of the ccmmand, a trap occurs to the location


specified by X6.

Status Returns

o Successful: the catalog ent~J for the file reflects


all changes indicated.

1 File not cataloged: the file specified by xO is a


scratch file or has been uncataloged.

2 Duplicate file name: the catalog in which t..,is file is


located contains an entry whose name is equivalent to
the one pointed to by Xl.

3 Illegal trap bits: the access word pointed to by X4


Sf:€Cifies trap bi ts which the job does not possess.

13 Illegal usage am dates: illegal· type or extraneous


bits specified in usage word p:dnted to by XS. Either:
(1) The date last used was zero,

(2) The file is not a regular cataloged file/catalog I

(3) The file was passed with the return bit set (see
the description of the EXECUTE camrnand) and is
being changed to an off-line file, or

Page 60 Pub. 1059


CHANGE CAT..~ ENTRY

(4) The variable information 'Has sp:cified in bits


21-28 of the first word pointed to by XS, but the
file is not being changed to an off-line file.

100 Access error: job could not have altered access for
RWA.

200 XO parameter error: XO does not contain the file


reference number of a cataloged file or catalog. This
status is also returned if XO specifies a file which
has a nonzero length or which has storage allccated to
it arrl X5 feints to a type word specifying a typ: of
"off-line" •
220 Xl parameter error: pointer is out of bour~s.

260 X3 parameter error: E=Ointer is out of rounds.

300 X4 parameter error: X4 is out of rounds or feints to


access word containing unrecognized bits.
320 X5 par2ITleter error: pointer is out of rounds ..

400 Recoverable error: an error Cccurred in reading the


catalC9.
420 Unrecoverable error: the file was being uncatalO:ted
during the MME.

Pub. 1059 Page 61


M4E 500124: mANGE CATALCG MAX

xo File reference number of catalog


X6 Trap location

A New MAX for catalog

XO cootains the file reference nLUnber of a catalog for which the


job would t:e able to obtain Read, Wr i te, and Append accesses via
the ALTER ACCESS MME. The previous MAX for the specified catalcg
is replaced by the new value, which becomes the new maxinn..tm
number of w:)rds which can l::e cataloged in that catalog. A
negative MAX sets this maxim.lm to infinity and can t:e sp:cified
only by those jobs enabled with the special catalog permission.
Likewise only such jobs may set the MAX for a catalog below its
current AI.J:X:,.

AJ.JX:.' s and MAX's are descri1:ed in Chapter 9.

Upon completion of the command a trap occurs to the location


specified in X6.

Status Returns

o Successful.

1 Unsuccessful: the specified MAX is less than the


current AT..IX:, for the catalog and the job is not enabled
with the Special catalog permission.

40 CUotas exceeded: the catalog is cataloged elsewhere


and the new MAX would cause the supra catalog's storage
(ALCC) to exceed its MAX. .

100 Access error: the maxirrum accesses which the job could
obtain on b.'e catalog do not include Read I. Wr i te, and
Append. .

120 Busy: another operation is outstar.ding on the catalog.

Page 62 Pub. 1059


CHANGE c.~TALCG MAX

140 A-register parameter error: the job is not enabled


wi th the Sp:cial Catalog permission and is specifying a
negative MAX.

200 XO parameter error: XO does not contain the file


reference number of the catalog.

400 Recoverable error: an error cccurred in reading or


writing the catalog or the one in which it is
catalcged.

420 Unrecoverable error: information in the catalog or in


the one in which it is cataloged has teen destroyed.

Pub. 1059 Page 63


MME 500105: CLOSE

xo File reference number of file/catalog to close


X6 Trap location

.A Special word for canrnunication file

The command CLOSE closes the file/catalog and invalidates the


file reference number assigned to it.

If the return bi t is set in the access word of the file/catalog,


then the file/catalog is returned to the job which passed it,
generating a special interrupt nlm11:er 5 (returned file). If it
is a scratch file/catalog ar.d the return bi t is not set in its
access ~rd, then it disappears from the system and the job's
sera tch storage allotment is incremented by the len9th of the
file or of the catalog header which disappeared.

If the master end of a camrnunication file is closed, or if a


slave end to which the communication file was passed wi~,out the
return bit is closed, then a special interrupt of type 6 (file
closeei) is generated at all other ems of the file. The data
word of this special interrupt is equal to the contents of the
A-register of the closing job at the time of the CLCSE MME. The
file reference number at the end issuing the CLOSE becomes
invalid, and the file reference numbers at all other ends became
invalid parameters for all MME's except CLOSE and RESET STATUS.

If a suspended job file is closed I ~~en that job and all jobs
below it are terminated (see the description of the EXECUTE
ccmnand for a description of suspended jobs). All files OJ;En for
these jobs are closed; if the return bi t is set in the access
word of a file/catalog open for any job being terminated then the
file/catalog will Ce passed back up to the terminating job IS
supra job. If the supra job is accepting specials, each returned
file will generate a special interrupt number 5 (returned file) .
The job issuing the CLCSE will also have its scratch and catalog
word allotments incremented by the remaining allotments for the
jobs being terminated. Status word 2 on the trap of the CLCSE
will contain the CRU usage accumulated by the closed job file and

Page 64 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL

all jobs which ran below it, in uni ts of 1/64 rnilliCRIJ. (See the
description of the ~ command.)

If a terminated job file is closed, no special action is taken,


but status word 2 will contain the CRU usage for that job and all
jobs which ran below it.

Upon completion of the command a trap occurs to the location


specified in X6.

Status Returns

o Successful.
6 Communication file busy: the file is a communication
file on which an operation is outstanding.
120 Busy: ei ther a command is outstan:1ing on the
file/catalcg or the file/catalcg is passed to another
job ..
200 XO parameter error: either XO is zero or it dces not
contain a valid file reference number.

Pub .. 10S9 Page 6S


CONrINOE 4 - TRAPPING EXECUI'IVE Ca.1MAJ.'1I:S

~ 500121: CCNTINUE

xo File reference number of job file .

X4 New memory limits or zero

X6 Trap location

A Additional CRU limit for job

This ~ restarts and runs jobs which have been suspended


because:

(1) The job exce€ded its allotted CRr.J usage;

(2) The job encountered a fault vector al:ort; or

(3) The job was stopped by a RESEr STAWS.

The A-register will contain ~,e amount of additional CRUs that


the jcb can consume (in 1/64 milliCRO). A negative value
indicates there is no limit on CRIJ usage. Any jobs which were
rurning below the supra job and whose execution was suspended as
a result of the supra job's being suspended, are also restarted.

If X4 is ronzero, then the maximum artX)unt of main rnem:>ry that t.'1e


spawned job can request is reset to the minimum of the arrount
specified in X4 and the arrount allowed to the spawning job. If
X4 is zero, this limit remains the same as it was before.

A trap occurs to the location specified in X6 whenever the


addi tional CRUs allotted to the job are exceeded, when status are
reset en the job file, or when the job 'terminates or al::orts.
Status word 2 on this trap contains the total CRU usage
accumulated by the spawned job and any jobs which ran below it.

If. the trap cccurred because the job was suspended (for the
reasons listed al:ove) , the job may be restarted by another
CCNI'INUE ccmnand. If the job terminated, however, anot.'er

Page 66 Pub. 1059


SYSTEM PFCGRAMMING REF. MANUAL CCNTINUE

QJNTINOE may not be issued. A program can reccgnize a terminated


file by its length, which is always zero, (this can be verified
by a REQUEST STATUS CC£11It'a!1d), whereas the length of a suspended
job is never zero.

Status Returns

o Job terminated sucessfullYi bits 0-8 of status word 1


ccntain the access bi ts specified by the spawned job in
the TERMINA-rr:E canmand.

1 Time limit exceededi the job may be continued.

2 Job al:crted for receiving a fault whose return word was


nonzero. All jobs running below this one are suspended
also. The job may be continued.

6 Job terminated due to an error on while swapping out.

20 Status was reset; the job may be continued ..


120 Busy: another operation is outstarrling on the job
file.
200 XO parameter error: XO does not contain the file
reference number of a nonterrninated job file.

300 X4 parameter error: the new memory limits specified


are less than the current leng~ of the job file.
400 Recoverable error: this is a catch all status
indicating an abnor.mal termination.. It may indicate
any of the following:

(1) I/O error swapping in the job

(2) Parity error while the job is running

(3) Unsuccessful overlay ~1E

(4) Job has scmehow grown larger than slave Ine.wry

(5) Job J S state vector hasgrcwn larger than 3K and .


job has not enabled large state vector permission.

Pub .. 1059 Page 67


COpy 4 - TRAPPING EXECrJrIVE CCMMANDS

MME 500131: COpy

xo File reference number of source file


Xl Points to pointer to starting location M1 in source file or
pointer to logical record number of device file
X2 File reference number of destination file-
X3 Points to pointer to starting location M2 in destination
file or pointer to logical record number of device file
X4 Flag bits
X6 'Trap location
X7 Points to number of words N to copy

N contiguous words are copied from the source file (starting at


word Ml) to the destination file (starting at word M2). All
other words of the destination file are unaffected.

Read permission is required on the source file; write permission


is, necessary on the destination file if the copy will alter any
existing data in the destination file, and apperrl permission is
required if the copy will make the destination file longer. In
any case, ~~e destination pointer M2 must not be greater than the
destination file's length.

During the actual copy, if the end of the source file is reached,
an end-of-file cotrlition occurs and data transmission stops. If
any of the words transferred to the destination file are outside
the range- of that file, the file is extended if it is open with
Apperrl permission. Otherwise, an end-of-file condition cccurs
and data transmission stops. L'1;:On canpletion of the copy, a trap
occurs to the location specified in X6.

If XC (X2) is zero, then ~~e source (destination) file is assumed


to i:e the issuing job IS rrerrory wi th Read and Wr i te permission
set. If Xl (X3) is zero, then the current fOsition of the source
(destination) file's read/write pointer is used. This option

Page 68 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL copy

cannot be used with core, which has no implici t read/write


pointer. Ut=an ccmpletion of a copy, the read/write I;Ointers for
roth files are up:1ated to point to the word following the last
word accessed.

A copy issued at a slave end of a ccmmUnication file will


generate a special interrupt number 11 (slave end issued READ) or
12 (slave end issued ~mTE) at the master em. The secooo word
of the interrupt will contain the length of the copy. (See COPY
canmand in Chapter 5.) No data will be transferred until the
master end issues a corresponding copy. If the communication
file is busy, either because another end has an operation
outstarrling on it, or because another em has reserved it, the
slave end issuing the COPY carmand will be trapp:d with a status
of 6. If the jet> at the master errl of a camumication file is
r~t accepting special interrupts when a slave end issues a copy,
then that slave end will be trapp:d wi~, a status of 7.

The slave em will be trapp:d with a 20 status (status reset) if


the master end chooses to al:ort the copy by issuing a RESET
STATUS command on the communication file.

The master errl jcb will recei ve a slave issued SEr POIN.r.ER
special interrupt if:

(1) A job issues a COPY to the slave end of a communication


file, and X3 is nonzero; or

(2) A job issues a COPY fran the slave em of a ccrornunica-


tion file, and Xl is nonzero.

The pointer spec if ied by the slave errl is placed in the secor:d
word of the special interrupt pair. This special interrupt will
immediately precede the slave issued READ or slave issued WRITE
special received by the master errl j<?b.

The flag bits in X4 are divided into two 9-bit fields. Bits 0-8
are flags referring to the scurce file (specified in XO). Bits
9-17 refer to the destination file (specified in X2). They have
the following meanings:

Pub.10S9 Page 69
aJPY 4 - TRAPPING EXECrJrIVE ~.NDS

Bit Function
0(9) If the source (destination) file is a master
cammunication file, trap the corresponding slave
end only if a nonzero status return occurs or if
this bit is zero. This bit must be zero if the
source (destination) file is not a master
communication file.
1(10) If the source (destination) is a slave communica-
tion file, reserve that file for this end if this
bit is 1. Release any prior reservation by this
end if this bit is zero.
If the source (destination) file is opened in
shared m::de, do not allow any copy-type op:rations
to be initiated on this file after this copy
operation completes, except for op:rations by ~,is
job on this file reference number.
If the file is neither a ccmmunication file nor a
shared file, this bit must be zero.

2(11)
Reserved. for future use. These bits must
be zero.
8 (17)

A copy in which both the source and destination files are


communication files is not allowed. If the source (destination)
file in a COPY is a device file, then the destination (source)
file I!1.lSt t:e a core file, the issuing job's core, or a communica-
ticn file whose other erd is being copied to or frem a core file
or scm: job's core. If the source (destination) file is opened
in shared m:de, then the destination (source) must be the issuing
job's nerory.

Upon initiation of a COPY into a scratch (cataloged) file which


is cpen with apper:d permission, the job's scratch (catalcg) word
allot:m2nt is decremented by the arra.mt by which the destination
file rray t:e exterKied. At the canpletion of the COPY, the job l s
scratch (catalog) ~rd allotment is increrrented by the nurnl:er of

Page 70 Pub. 1059


SYS'IEM PRCGRAMMING REF. ~ COpy

~rds charged to this allotment but not appeooed to the


destination file.

If the status return in status word 1 is not bebNeen 100 and 360
on completion of the COPY, then status word 2 contains the
difference between the number of words transferred and the number
of words requested (i.e. it contains minus the number of words
not tranferred). If the status in word 1 is between 100 and 360,
then status word 2 is zero. If either the source or the .
destination file is a device file, then the lower half of ~tatus
word 1 contains the status return fran that device.

Status Returns

a Successful: all THOrds were transferred.


1 Source file exhausted: rrore 'taiOrds were requested but
could not be transferred.
2 Cestination file exhausted: serre words in the source
file were not transferred since the destination file
was full and was not open wi th Append permission.
3 Command inappropriate: a copy issued at the master end
of a communication file does not match a corresponding
operation outstanding at a slave end.
4 The source file pointer is out of l:ounds: either,
(1) The pointer was initially out of bounds;
(2) A MEMJRY RECUEST released job storage involved in
the copy; or
(3) An attempt was made to copy fran the pure region
of a job file which was swapped out of main
rnerory.
5 The desti~Ation file pointer is out of bounds: ei~~er,

(1) The pointer was initially out of munds;

~~.1059 Page 71
COpy 4 - TRAPPING ~IVE CCMMANDS.

(2) A MEMORY REQUE5T released job storage involved in


the copy; or
(3) An attempt was made to copy into the pure region
of a job file which was swapped out of main
mefOC)ry.
r
6 The ccmrrllnicationfile at whose slave endthis command
was issued is busy (a) because another em has an
operation outstanding, or (b) because another end has
reserved the communication file.
7 The master end of the communication file at whose slave
end this ccmmand was issued is not accepting special
interrupts.
20 Status was reset on the COPY.
40 Quotas exceeded: it is possible for the copy to exceed
the job's remaining scratch or catalcg ~rd allotment;
no words were transferred.
60 OUt of storage: the Executive could not allocate
sufficient storage for a required extension of the
destination file.
100 Access error: either the source file is not open wi th
Read permission, or the destination file is not open
'Hi th the necessary Wr i te or Append permission. Bi ts
0-8 of status w~rd 1 contain the missing permission
bits.
120 Busy: another ccmmand is outstar:ding on ei~~er t.~e
source or the destination file.
200 xO parameter error: XO does not contain the file
reference number of a file, or X2 specifies a shared
file and XO is not zero.
220 Xl parameter error: Xl points to an out-of-tounds
location, or botq XO and Xl are zero.
240 X2 parameter error: either X2 dces not contain the
file reference number of a file, toth source and
destination files are communication files, or XO
specifies a shared file and X2 is not zero.

Page 72 Pub. 1059


SYSTEM PFCGRAMMING REF. Ml1..NtlAL COpy

260 X3 parameter error: X3 p:>ints to an out-of-oounds


location or both X2 and X3 are zero.
300 X4 parameter error: an invalid flag bit is set in X4.
360 X7 parameter error: X7 r:oints out of bounds.
400 Recoverable error: an error occurred during trans-
mission of data. The lO1Ner half of status word 1
contains the status from the device which generated the
error. See Chapter 6 for a description of device
statuses. This status can occur if a device file is
.being accessed via a communications file and the job
has swapped out of main memory.
420 Unrecoverable error: a COPY was atte..'11pted between a
device file and ano~~er file not appropriate for device
file copies.

Pub. 1059 Page 73


DRIVE 4 - TRAPPING EXECUI'IVE CCMMANDS

MME 500132: DRIVE

xO File reference number of file


Xl Pointer to Data Control ~rds (Drive with r:x:;d's only)

X4 Flag bits
X6 Trap location
X7 Number of roll's (Drive with OCW· s only)

A Drive type (AU) and function or data (AL)

The DRIVE command may be issued only on a communication file or


on a device file. Drives on communication files generate special
interrupt at some other end of the file. Drives on device files
cause the drive function to be applied to the device. UpJn
completion of the command, a trap occurs to the location
specif ied in X6.

Drive types valid at the slave end of a cammuniCatlOn file are 0


(set communication file mode) and 12 (single device action) •
These drives generate special interrupt numbers 0 and 12,
respectively, at the master end of the communication file. The
lower half of status word 2 in such special interrupts contains
the drive data fran AL.

Valid drive types at the master end of a.communication file are 1


(read communication file) and 3 (break), which generate tJle
corresponding special interrupt:

(1) At the lowest slave end acceptL,g special interrupts,


providing no slave end has reserved ~~e communication
filej or
(2) At the slave er.d r,.mich has reserved the ccrnmunication
file.

Page 74 Pub. 1059


SYSTEM PRCGRAMMING FEF. MANUAL DRIVE

Drive ~ 3 will generate a special interrupt number 3 at the


lowest slave end which is accepting specials, which has eXecute
permission on the communication file, and which is not lower than
the slave end to which the file is. reserved (if it is indeed .
reserved to a slave end) •

If a DRIVE is issued on the slave end of a communication file


that is busy due to the action of another end, the DRIVE is
rejected with a sta~us of 6. If on any communication file drive
the end to which the special interrupt shculd be given is not
accepting special interrupts, the DRIVE is trapped with a status
of 7.

The flag bits in X4 have the following m:anings:

Bit Function
Must be zero.
Must be zero unless XO contains the file reference .
number of a slave ccmmunication file. In that
case, the communication file will be reserved for
the end issuing the drive if this bit is 1. Any
prior reservation by this end is released if this
bit is zero.
2-17 Must l:e zero.

Following is a list of drive functions which may be issued on the


slave end of a terminal ccmrnunicaticn file. The drive type
(contained in ~D) for these drives is zero.

000000 Set line-by-line input roc:de


000001 Set file building input mode
000002 Set file building mode for paper tape
000003 Set direct input m:de
000004 Set command input mode
000005 Set ccmrnar.d roc:de for paper tape
000007 .l\nswer back drum request
000020 Se t full-duplex output m:x:1e
000021 Set half-duplex output roc::de

Pub. 1059 Page 75


DRIVE 4 - TFAPPThK; EXEaJrIVE CCM-1ANDS

000022 Set direct output rrcde


000023 Reset direct output rnode
000024 Set Friden output mode
000025 Reset Fr iden output rnode
000026 Stop output
001000 Output any currently pending warning

There are two valid drive types for device files: 12 (single
device action) and 24 (drive with DeW's). A drive of type- 12
applies the function specified in AL to the device before the
drive is trapped. The valid function codes are listed in Chapter
6.

A drive type of 24 also applies the function in AL to the


specified device and then traps. The valid function codes are
listed in Chapter 6.

A list of Data Control ~rds (IX'N's) fainted to by Xl must be


supplied for this drive. See Chapter 6 for a description of
rolls.

Status ~rd 2 on a completed single action device drive contains


the status return fran the device. The format of this status
return is as follows:

Bits Meaning
o lCM sync bit (normally on) .

1-5 Major status.

30-35 Record count residue (nt.lIllber of records requested


minus the number transferred).

6-11 Minor status.

12-17 Queue address bits; the operation was terminated


by an ini tiate interrupt if betw-een 20 and 37 ard
by a terminate interrupt if between 40 and 57.

18-23 lOM status (0 is good)

Page 76 Pub. 1059


SYSTEM PFCGRAMMING REF. MAi.'IDAL DRIVE

24-29 Return code frem Executive I/O routine.

Status Returns

o Successful.
1 Inccmplete data transfer; no error.
2 End-of-file encountered on tape or last batch button
depressed on card reader.
3 Recoverable error; details in major and minor status.
4 Unrecoverable error; do not reissue command.
5 Operation on device was timed out.

If a DRIVE with COlts fails with a bad roq status, status word 2
contains the number of the faulty roll. If a drive with CCWs
fails with a status of 1, 2 or 400, status word 2 contains the
DOT residue of t..'1e last roq accessed. Bits 0-5 of status word 1
of a IX:W DRIVE contain the record count residue if the device was
accessed. Bits 18-35 of status word 1 contain the first 18 bi ts
of the device status return.

For further information concerning DRIVE functions and status


returns for device DRIVEs, see Chapter 6, "Device Files".

Except as ooted al:ove for device drives, status word 2 in the


trap of a DRIVE ccmmand is zero.

Status Returns

o Successful.
1 Not all data was transferred on a Drive with rolls, but
data transferred was correct.
2 End-of-file condition detected on device file drive.

Pub. 1059 Page 77


DRIVE 4 - TRAPPING EXECUTIVE CCMMANI:S

3 Command inappropriate: ~,e DRIVE was issued at the


master end of a communication file while a slave end of
that file had an operation outstanding.
6 Communication file busy: the DRIVE was issued on the
slave end of a communication file which is busy, either
because another end has an operation outstanding on it,
or because another end has reserved it.
7 The end of the ccmrnunication file which was to have
received the special interrupt was not accepting
special interrupts.
10 Bad ocw: OCW p:::>ints to nonexistent address, invalid
action code, or superfluous bits were found in D0~.
20 Status was reset on a drive.
120 Busy: ,arlOther operation is outstarrling 'on the file.
140 A register parameter error: the specified drive type
is not valid. On DRIVE with OCW's this may cccur
because of an insufficient DOW complement.
200 xO parameter error: XO dces not contain the file
reference number of a communication file or of a device
file.
220 Xl parameter error: DeW list pointer out of bounds.
300 X4 parameter error: X4 contains invalid flag bits.
360 X7 parameter error: the number of DOW's is zero or
indicates DCW's past the boundary of main memory.
400 Recoverable error: an error occurred on a device file
drive; the major arrl minor status bits in status word 1
identify the error.
420 Unrecoverable error: the device drive function
specified is not valid.

Page 78 Pub. 1059


SYS'IEM PRCGRAMMrNG REF. MANUAL DUPLICATE

MME 500143: DUPLICATE

xo File reference number to duplicate


Xl Reserved for future use (must be zero)

X2 Reserved for future use (must be zero)


X3 Reserved for future use (must be zero)
X4 Accesses to request for new file reference number
X5 Reserved for future use (must be zero)
X6 Trap location
X7 Reserved for future use (must be zero)

The DUPLICATE ccmmand creates another file reference number for


the file/catalog specified with XO.

Register XO must contain the file reference number of a cataloged


file/catalog. Any accesses not specified in X4 will not be
available with the new file refereqce number. Accesses specified
in X4 will be granted if they YrOuld be allowed on an ALTER
ACCESSES and they do not conflict with accesses which this a~
other jobs have on the file.

On oampletion of the cammand a trap occurs to the location


specified in X6. If the status return is less than 2 then the
lower half of status word 1 contains the new file reference
nt.nnber.

Status Returns

o Successful: the accesses in bits 0-8 are available on


the new file reference number and are the same as those
requested.

Pub. 1059 Page 79


DUPLICA'IE 4 - TRAPp:m; EXECUTIVE CCMA.ANDS

1 Partial success: ~~e accesses in bits 0-8 are


available on the new file reference number but differ
fran those requested.
2 Lockout: due to usage conflicts the file cannot be
open with another file reference number
3 Inappropriate: XO does not contain the file reference
of a cataloged file/catalog
40 Quotas exceeded: the job has filled its allotted state
vector length
120 Busy: another canmand is outstarrling on the file/
catalog specified in XO
200 XO parameter error: XO does not contain the file
reference number of a file/catalog

Page 80 Pub .. 1059


SYSTEM P~..MMING REF. MANUAL

MME 500112: ERASE

xo File reference number of initial catalog to search

Xl Points to name of file/catalog to erase


X2 Reserved for future use (must be zero)

X3 Points to password (or is zero)

X4 (bits 0-8) must te zero


(bits 9-17) trap bit mask

XS Reserved for future use (must be zero)


X6 Trap location

X7 Number of entries in treename (if zero, then 1 is assumed)

AQ Slave trap identification words

The ~~E cammand attempts to open the specified file/catalog


(with the specified password if X3 is nonzero am without a
pasSWlJrd otherNise) in the specified catalog with Read, Write,
and Append permissions. If it is successful it then destroys the
file/catalog tcget.'er with its catalog entry.

catalcg quota checks are suspended for the ERASE ccrnmar.d; hence,
it can l:e used to destroy files in catalogs whose quotas have
been exceeded. Conflict checks wi t."! accesses currently held by
other jobs having the given file/catalog open are suspended for
all accesses except Write. An ERASE ccmmand may therefore be
used to destroy a file/catalog which is open, provided that it is
not <:pen wi th Wr i te permission. Wi th the exception of this and
the catalog quota check, an ERASE ccmmand is identical in effect
to the sequence of cammands OPEN, UNCATALCG, and CI.CSE.

Up::ln completion of the ccmnand a trap cccur s to the 1ccation


sp:cified in X6.

Pub. 1059 Page 81


EPASE 4 - TRAPPING EXEaJrIVE CrnMANDS

Status Returns

o Successful: the file/catalog was erased.


2 Lockout: the file/catalog is currently in use with
Write permission.
3 Not found: Search permission was available on sane
intermediate catalog and the next file/catalog was not
found in it.

4 Protection violation: Search permission was available


on the next-to-last catalog and the password specified
for the file/catalog was wrong.
5 Fail: Search permission was available on the
next-to-last catalog, and one of the Read, write, or
Append permissions was not available.
6 Bad tree name: Search permission was available on sane
intennedia te catalog arrl the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7 Fetch error: ei ~,er


(1) An error of type 3, 4, 5, or 6 occurred and Search
permission was not available on the catalog in
which the search was being performed; or

(2) Search permission was not available on the (N-l) st


catalog and Fetch permission was not available on
the file/catalog.

11 EP.ASE disallo~: t..l1e named file/catalog is a device


file.
120 Busy: another carmand is outstarriing on the catalog.

200 XO parameter error: XO dces not contain the file


reference number of a catalog.

220 Xl parameter error: the pointer to the name is out of


toUIrls.

Page 82 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL

240 X2 parameter error: X2 is nonzero.

260 X3 parameter error: the r:ointer to the password is out


of t:ourrls.
300 X4 parameter error: bi ts 0-8 of X4 are ncnzero.
320 X5 parameter error: XS is nonzero.

360 X7 parameter error: x:; is greater than 10 (maximum of


10 names in the list of entries FOinted to by Xl) •

400 Recoverable error: an error occurred in reading the


catalog.
420 Unrecoverable error: information in the catalog has
been destroyed.

Pub. 1059 Page 83


EXECtJI'E 4 - TPAPpnx; EXECC1rIVE CCMMANDS

Mt1E 500117: EXEcur.E

xo File reference number of source file

Xl Length of scratch area to app:r:d to source file·

X3 Job type (bits 0-8)

X4 MaximJrn amount of memory job is allowed

X5 Pointer to run list

X6 Trap location

X7 Pointer- to eight-word block containing registers

A Job CRU limit (in 1/64 rnilliatU)

Q Job a:cess mask

The SJurce file, which must be open with execute permission, is


run as a new job with the CRU limit specified arrl with the files
in the run list open for it. The new job is started at location
zero with the specified registers and wi~~ all indicators off
except the zero indica tor I which is on.

A job file is created for ~,e new job, and its file reference
number is returned in bits 18-35 of status word 1 of the trap
block specified by X6 before execution of the creating job is
resumed. The job file remains open until closed by the creating
job.

The arrount of rr.em:>ry with which the new or spawned job is run is
determined as follows: the length of the source file is rcunded
up to a multiple of 1K (1024 T,aiOrds) and to this length is
appended a scratch area of the length specified in Xl, also
rourrled up to a rnultiple of lK. The spawned job can issue a
MEMORY RECUEST to change the size of its m2l1'Ory, but can request
no more ma~ry than the lesser of the amount specified in X4 and
the aroount of Irem:)ry allowed to the job which issued the EXECtJI'E
carmand.

Page 84 Pub. 1059


SYS'IEM PR:GRP..MMING REF. MANUAL EXEctr.rE

Bits 0-8 of X3 are ANDed with the job type bits allowed to the
job issuing the EXECUTE to form the permissions allowed to the
spawned job. (See the description of the ENABLE cCll1IlEI1d for a
list of these permissions.) At the time the job is run, the
permdssions for which it is enabled are Large State Vector,
Priority Scheduling, Crash, and Leg. The spawned job must enable
itself for any other allowable permissions by issuing an ENABLE
ccmnand.

Run List (Pointed to by XS)

+------------------+1
I I
+-- Spawner I s ID --+
I I
I +
ca talog Quota

Scratch Quota

I I
+-- --+

+ ••• passed files ..• +

I
+

The run list pointed to by XS must be at least fi ve words long


and be terminated by a zero. The maxiIll.lI1l length of a run list is
32 ~rds. If no zero word is encountered in the first 32 words,
the Executive will stop scanning the run list. The first ~NO
words in the run list are the identifying' words for the spawned
job. These ~rds can be read by the spawned job and all jobs
which are run below it by issuing a REQUEST STATUS on file
reference number O.

The third and fourth ~rds of the run list limi t the numl:er of
~rds that the spawned job can aPt=eoo to catalcged and scratch
files. These limits shculd be less than the limits of t.~e supra
job. If they are not, the Executive will substitute the supra
job f s limi ts. The limi ts actually passed to the spawned job will

Pub. 1059 Page 85


4 - TPAPPTh"G EXECUI'IVE CCM-1ANDS

be i.r:dicated to the supra job in the third and fourth words of


the run list. If any file operation issued by the spawned job
results in a situation' where b~ese limits are exceeded, then that
operation will be trapped with a status return of 40 (quotas·
exceeded). The catalog and scratch word allotments for the
spawned job are subtracted from the corresponding allotments for
the spawning job. Upon termination of the spawned job, the job
which ran it will have its catalog and scratch word allotments
incremented by the allotments remaining for the terminating job.

The remainder of the run list contains a list of file/catalogs to


be passed to the new job. A zero word indicates the end of the
list. Eaeh word in the list contains the following information:

Passed File WOrd

I
reCESS PPEF IFRN or f1 I
o 8 9 17 18 35

Bits Meaning
0-8 F~cessto pass wit, file
9-17 Preference (for created file)
18-35 File refe.renee number or zero

The n~~ word in this list causes ~~e file/catalog with the file
reference number specified in bits 18-35 to be passed to the new
job with the access specified in bits 0-8. In the new job this
file/catalog will have file reference numbern.

(1) If t,e file reference number in bits 18-35 is 0, then a


file will be created and passed to the new job.
(2) If bit 1 of the access is 0, b,en a scratch file will
be created with the preference specified in bits 9-17
and passed.

Page 86 Pub. 1059


SYSTEM PRCGRAMMING REF. MA1.'\fUAL

(3) If bit 1 of the access is 1, then a communication file


will be created and its slave em passed.
(4) If the return bit (bit 2) is set in the access '~rd for
a created scratch file or if a communication file is
created, then the file reference number of the file for
the creating job will be returned in bits 18-35 of the
run list entry before execution of the job is resumed.

Job files, master ends of ccmmunication files, and


file/catalogs which have been passed already or which are
currently busy cannot be passed to the new job. The file'
reference number of a file/catalog which has been passed without
the return bit set becanes invalid. File/catalogs other than
slave ends of ccmmunication files which are passed with the
return bits set become busy until they are closed and returned by
the spawned job. A file/catalog which has the return bit set in
its access word must be passed with the return bi t set. A
scratch'file/catalog which is passed without ~,e return bit set
automatically has all accesses set for the new job. As opt:Osed
to files passed by the PASS ccrnmand, no messages accanpany files
passed t...+'rough the run list. The current setting of the
read/wri te pointer for a file/catalog is preserved when it is
passed.

Job Access ~~sk (Q register)

I TPAP\ P~
o 17 19 20 28 29 35

Pub,. 1059 Page 87


4 - TRAPPING EXECUTIVE CCM1ANDS

The job access mask of the issuing job is ANDed with the job
access mask specified in the Q-register to form the access mask
for the new job. The bi ts in this access mask have the following
significance:

Bits Meaning

0-19 Unused

20-28 Perrrdssion bits for master trap program (see


CATALCG)

29-35 Preferences to allow when creating scratch


file/catalcgs (see OPEN SCRA'ICE)

The job file for a successfully spawned job remains busy until a
trap cx:curs to the location specified in X6. The lo~r half of
status word 1 contains the file reference n~ber of the job file.
Status word 2 contains the total running time (in CROfs)
accumulated by the spawned job and any jobs which ran below it.
The trap cccurs whenever t.'1e CRUs allotted to the spawned job is .
exceeded, status is reset .on the job file, or ~,e job terminates
or is aborted.

If the trap cccurred because the CRU limit was excee:1ed, status
was ',reset, or the job al:orted, ~,e job is suspended, and its
execution may be continued by using a CCNrDrtJE camnand. If,
however, the job terminated, either successfully, or because of
an error on swap-out, or because of a recoverable error, a
CCNrINUE may not l:e issued. If a suspended job file is closed
rather than being continued, status wc>rd 2 on the trap of the
CLOSE command will contain the total CRU usage (in 1/64 milliCRO)
of the job. This will reflect any addi tional tim: charged to the
job Cy the Executive in the prccess of tenninating it and all
jobs below it. If a terminated job file is closed, the CRU usage
is returned in the trap of the CLOSE. (See CLCSE.) A terminated
job file can always be reccgnized by ~,e fact that its le03'th
(available ~~rough a REQOEST STATU~ command) is always zero,
while a suspended job never has zero le03'th.

Page 88 Pub. 1059


SYS'IEM PRCGRAMMING REF. ~.NUAL EXECtJrE

Status Returns

a Job terminated successfully: bits 0-8 of status word 1


contain the access bi ts specified by the spawned job in the
TERMINATE camand. -

1 Time limit exceeded: the job may be continued.

2 Job al:orted: the job received a fault whose return word was
nonzero. All jobs running 1:elow this one are suspended
also. The job may 1:e continued.

5 Run list error: the job was not run. The lo~r half of
status word 2 contains a r:ointer to the entry in the run
list in error. The upper half of status word 2 contains one
of the following error types:

a Oversize run list: a maximum.of tw~ty files may


be passed.

60 System out of storage: the Executive I s table of


opened files is full.

120 Busy: the file reference number in the pass list


is ~~at of the source file for the RON command.
240 Bad file reference number in bits 18-35: either

(1) The file reference number is invalid;

(2) It is the file reference number of a busy,


passed, or master camrnunication file; or
(3) It is zero am the job issuing the RlJ"N
camand has a job access mask which does not
permit it to specify a preference for
creating a scratch file.

300 Bad access in bi ts 0-8 : e i ther

(1) Extraneous bits are set in the access wurd;

Pub. 1059 Page 89


4 - TRAPp:m:; EXECtJI'IVE Ca.1MANDS

(2) The return bit is not set in the access. word,


though the file/catalog was passed to the
issuing job with the return bit set;
(3) Bit 0, the catalog bit, is zero (is one) and
the file/catalog being passed is a catalog
(is a file) i
(4) No accesses are present in bits 5-8;
(5) The catalog bit is one and bits 18-35 are
zero; or

(6) The return bit is set in the access word for


the creation of a communication file.
6 Job terminated due to an error on a swap-out.
20 Status was reset: t.'e job may be continued.
40 Quotas exceeded: °A job possessing no master trap bits
may have at rrost one run/execute outstariling.

60 Out of storage: ei ther


(1) The Executive's table of running jobs is full;
(2) The length of the new job including the apper:ded
scratch area, if any I exceeds t.~e system limit on
job length; or
(3) The depth of t.'e job in the job tree is teo great
to allow it to issue &~ ccmmands.
100 Access error: ~~e source file is not open wi~, eXecute
permission; bits 0-8 of status ~rd 1 contain the
missing permission bit.
120 Busy: another operation is outstarrling on the source
file.
140 A register pararreter error: the time specified for the
new job to run is zero.
200 XO parameter error:

Page 90 Pub. 1059


SYS'IEM P~..MMING REF. MANUAL EXEcurE

(1) XO is zeroj'
(2) xo is not the file reference number of a scratch
or cataloged file;
(3) XO is the file reference· number of a file whose
length is zero or greater than 2. . . 18.
300 X4 parameter error: the initial size of the new job,
including the appended scratch area, if any, exceeds
the limits specified.
320 X5 parameter error: the p:::>inter to t...~e run list is out
of oounds.
360 x:7 parameter error: the fainter to the registers .is
out of eour.rls.
400 Recoverable error: this is a catch all status
indicating an abnormal termination. It may indicate
any of the following:
(1) I/O error swapping in the job

(2) Parity error while the job is running


(3) Unsuccessful overlay MME
(4) Job has somehow grown larger than slave memory
(5) Job's state veCtor has grown larger than 3K and
job has not enabled large state vector permission.

Pub. 1059 Page 91


LOG 4 - TPAPPING EXECUTIVE CrnMANDS

MME 500142: LOG

XO Reserved for future use (must be zero)


Xl Pointer to pointer to memory location Ml
X2 Reserved for future use (must be zero)
X3 Reserved for future use (must be zero)
X4 Flag bits
X5 Reserved for future use (must be zero)
X6 Trap location
X7 Pointer to number of words N to copy

The ASCII message T..mich begins at location Ml and extends for N


~rds is entered into the system leg. The flag bits in X4
perform the following functions:

Bit Meaning
o Ring i:J.'e console alarm if the system legging device is
a console.
1 Suppress leg device output and direct this entry to the
system log file only, if one exists.

Bit zero in X4 has no effect if the logging device is not a


console, or if·no logging device output occ~rs. Bit one in X4
has no effect if the Executive has no current log file at the
time of the ~. A job which dces not possess the Leg enable bi t
may not issue this MME. A job may have at rrost one LeG MME
outstanding at a given tine. UpJn o:::mpletion of the MME, a trap
occurs to the location specified by X6. If the logging device is
accessed, the lower half of status ~rd 1 contains the physical
device status.

Page 92 Pub.1059
SYSTEM PRCGR.n..MMING REF. MANUAL

Status Returns

o Successful.
1 LCG MME outstanding. An erroneous attempt has been made to
perform two log MME's concurrently.
2 Buffer not available. This is a recoverable error
signifying a temporary scarcity of main memory.
3 ESCAPE sequence error. The ASCII message contains teo many
exclamation feints, question marks, or control characters
other than carriage return, line feed, or horizontal tab.
200 xO parameter error: XO is not zero.
220 Xl parameter error: Xl is out of oour.ds or points to an
invalid core pointer.
240 X2 parameter error: X2 is not zero.

260 X3 parameter error: X3 is not zero.

300 X4 parameter error: X4 contains undefined flag bits.


320 XS parameter error: XS is not zero.

360 x:7 parameter error: x:7 is out of tourds, points to a nurni:er


N which is larger ~~an ~~irty words (120 characters) or
zero, or specifies a leng~~ which exceeds the available
rnenory.
400 Recoverable error: a recoverable I/O error has occurred to
the log de~lice.
440 Not enabled: the job is not enabled with Leg permission.

Pub. 1059 Page 93


OID ERASE 4 - TRAPPING EXEctJrIVE CCM-1ANDS

M-1E 500102: OLD ERASE

XO File Feference number of catalog to search


Xl Points to name of file/catalog to erase

X3 Points to password (or is zero)

X6 Trap location

AQ Slave trap identification words

The OLD ERASE camnand is exactly like the ERASE carroand, except
an X4 of zero is assumed (but not checked) - which means that
only one filename can ,be specified - and t.~e unused registers do
not need to be zero.

Status Returns

o Successful: the file/catalog was erased.

2 Lockout: the file/catalog is currently in use with


write permission.
3 The desired file/catalog was not found in the searched
catalc;:g.

4 Protection violation: the specified password was


wrong.
5 Fail: one of ~'1e Read, Wr i te , or Append permissions
was not allowed.

11 OLD ERASE disallowed: the named file/catalog is a


device file.

100 Access error: the catalog is not open with Search


permission; bits 0-8 of status word 1 contain the
missing permission bit.
120 Busy: another camnand is outst.arrling on the catalog.

Page 94 Pub. 1059


SYSTEM P~.MMING REF. MRruAL OLD ERASE

200 XO parameter error: XO does not contain the file


reference number of a catalog.
220 Xl parameter error: the pointer to the name is out of
t::oun::1s •

260 X3 parameter error: the pointer to the password is out


of t::oun:1s.
400 Recoverable error: an error occurred in reading the
catalog.
420 Unrecoverable error: information in the catalog has
been destroyed.

Pub. 1059 Page 95


OID READ ~ AND OPEN· FILES 4 - TFAPpnx; EXEOJrIVE CCMMANLS

?vME 500125: OLD READ CATAIm AND OPEN FILES

xo File reference number of catalog

Xl Points to number Ml of first entry in the catalog to copy

X3 Points to pointer to memory location M2

X4 Access for OPEN (bits 0-8)

XS Ceded date

X6 Trap location

;Q Points to number of ~rds N to cOi?Y

AQ Slave trap identification words

·The OLD RE.AD CATALCG AND OPEN FILES canmand is like the READ
CATAI..CG AND OPEN FILES canmand wi th ~ exceptions. Register X2
is rot reserved for future use. Register XS dces not tx>int to
cooed dates, but contains a ceded date last modified. Informa-
tion for files ot.'1er than catalogs is provided if the file's date
last modified is not less than ~~e ceded date given in XS.

This is equivalent to a READ CATALCG Al.'ID OPEN FILES canmand with


XS pointing to a ~rd with zero in the upt;er half and the ceded
date last modified in the lower.

Page 96 Pub. 1059


SYSTEM PRCGR.~ REF. MANUAL OLD REPU-.CE

Mv1E 500130: OLD REPLACE

xo File reference number of catalog


Xl Points to name of file/catalog to replace
X2 File reference number of scratch file/catalog
X3 Points to password or is zero
X6 Trap location
AQ Slave trap identification words

The OLD REPLACE ccmmar.d is exactly like the REPLACE ccmmar.d,


except an X4 of zero is assumed (but not checked) -- which means
that cnlyone filenam: can Ce specified - and the unused
registers do not need to Ce zero.

Status Returns

o Successful: the file/catalog was replaced and is new


open with the accesses in bi ts 0-8.
1 Partial success: the file/catalog was replaced and is
new open with the accesses in bi ts 0-8. Append
permission has Ce€n masked off since t.'e searched
catalogrs MAX is exceeded.
2 Lcckout: the cataloged file/catalog is currently in
use with Write permission.
3 The desired file/catalog was not found in the searched
catalog.
4 Protection violation: t.'e specified password was
wrong.

5 Unsuccessful: one of the Read, Wr i te, or Append


permissions was not allowed.

Pub. 1059 Page 97


OLD REPLACE 4 - TRAPPIN; EXECUTIVE <n1MANDS

11 OLD REPLACE disallowed: the named file/catalog is a


device file.
40 Quotas exceeded: ei ther

(1) The length of the scratch file or catalog header


exceeds the job' s remaining catalog word
allotment; or

(2) The specified catalog's MAX is exceeded, arrl the


length of the scratch file or MAX of the scratch
catalog is greater than the length or MAX of the
file/catalog to be replaced.

60 Out of storage: either

(1) The Executive's table of opened files is full, or


(2) A new entry had to be made in the catalog for the
replacement and

(a) The catalog already had 4095 entries; or

(b) The Executive could not allocate sufficient


storage for a required extension of the
catalog; or

(c) It is not p:>ssible to apperrl to the catalog


since it either is a main-merrory catalog or
is already allocated in twelve fragments.

100 Access error: the initial catalog to search is not


open with Search permission; bits 0-8 of status word 1
ccntain the missing permission bit.
120 Busy: another operation is outstanding on' ei ther the
catalog or the scratch file/catalog.
200 XO parameter error: XO dces not contain the file
reference number of a catalog.

220 Xl parameter error: Xl p:>ints out of rounds.

240 X2 parameter error: either

Page 98 Pub. 1059


OLD REPLACE

(1) X2 does not contain the file reference number of a


scratch file/catalog i,
(2) The scratch file/catalog was passed to the issuing
job with the return bit set;

(3) The ~ of the scratch file/catalog does not


match the type of the file/catalog it is to
replace; or
(4) The file/catalog has a preference of 0, 1, 2, or 4
and may only replace a file in a core catalog (a
catalog of preference 0) .
260 X3 parameter error: tr.'1e p::>inter to the pas~rd is out
of t:our:ds.
400 Recoverable error: an error cccurred in reading t.1-}e
catalog.
420 Unrecoverable error: information in the catalog has
been destroyed.

Pub. 1059 Page 99


OPEN 4 - TPAPpnx; EXECU"TIVE CCM-1ANDS

MME 500101: OPEN

xo File reference number of initial catalog to search (O->:MFD)

Xl Points to treenarne of file/catalog to open

X3 Points to password of file/catalog to open (if bit 1 of X4


is 1)

X4 Access desired on file/catalog (bits 0-8) i


Trap bit mask (bits 9-17)

X6 Trap location

X7 Number of entries N in treename (if bit 4 of X4 is 1)

AQ Slave trap identification words

The ~ified file (denoted by a list of filenames which for.m a


"treenarne fl ) is located in the file system ana opened. A file
reference number is returned, which is used on all subsequent
operations on the file.

The treenam: p::>inted to by Xl begins with a list of catalcg names


and ends with. the name of the file/catalog to open. If the fetch
bit (bit 4) of X4 is 1, then X7 specifies the number of entries N
in the treename, which mus t be betrHeen one and ten. If bi t 4 of
X4 is 0, then N is taken to be one.

Note that if the fetch bit (bit 4 or bit 22) is not on in the
access word of a file/catalog, ~'1en it can be opened only if a
job can cpen ~'1e catalog in which it is located with search
permission. If, hOYever, the fetch bit is on in the access ~rd
of a file/catalog, then a job need not be able to open t.~e
catalog (s) a1:ove it in the catalog structure. The file/catalog
may l:e cpened by specifying its position in the catalog structure
and passing only the access checks associated with the file/
catalog itself. Thus files and catalogs may be protected either
collectively by the accesses f.ermitted for catalogs at higher
levels in the catalog structure, or individually by t.'1eir own
accesses. Also note that whenever the master trap prcgrarn is run
during an open, the accesses of the issuing job will be limited

Page 100 Pub. 1059


OPEN

by the trap bi t mask in bi ts 9-17 of X4. In this case, for any


bi t Q'l the mask, the corresponding tr ap protection bi t cannot Ce
passed to the opened file, regardless of the accesses wi th which
the issuing job is running.

The prccedure for opening the file/catalog specified by the


treename is as follows. The initial catalo;I specified by xO is
searched for the catalog specified by the first entry of t...'1e
treename; if XO is zero, then the Master File Directory is
searched. As each succeeding catalog in the treename is found,
it is searched for the catalog specified by the next entry of the
treenarne. FL'"1ally the (N-l) st catalog is searched for the
file/catalog specified by t..~e Nth entry of the tree name.

For each intermedia;:s catalog in the tree n2roe (i. e. catalogs 1


to N-l) , the accesses available are determined L~ one of two
manners:

(1) If Search p=rmission was available on t..1.e previous catalog,


then t...'e accesses available on t..~e current catalog are ~~ose
allowed without a password (bits 3-8 of the current
catalog's access word), or those returned by t...;'e Executive
trap prcgram if the catalo:J is so protected. If O..mer
permission rrt/as available on the previous catalog arrl the
current catalog is not protected by t...1.eE..~ecutive trap
program or the Executive trap is successfully run, ~~en all
accesses are allowed on t..~e current catalog.

(2) If Search permission was not available on the previous


catalcg, then the accesses available on the current catalog
wi thcut a password (bi ts 3-8 of the current catalog's access
word), or those returned by the Executive trap prcgrarn if
the catalog is so protected, are examined for the presence
of the fetch bit (bit 4). If the fetch bit is on, then
accesses are granted on the current catalog just as if
Search permission had been available on the previous
catalog. If the fet:h bit is not on, then no accesses are
granted on the current catalcg-.-

When the (N-l) st catalog is searched for the file/catalog


specified by t.J,e last entry of the tree narre, the accesses
available en t...1.at file are determined as follows. If, this

Pub.1059 Page 101


OPEN 4 - TFAPPING EXECUTIVE CO!MANDS

file/catalog is found,bit 1 of X4 is 1, and file/catalog is not


protected by a trap program, then the password fainted to by X3
is checked against the password protecting the file/catalo;. If
the password check succeeds. or is not rrade 1 then the accesses
allowed on the file/catalog are determined in one of two manners:

(1) If Search permission was available on the (N-l) st catalog,


then the access bits requested in x4 are ANCed with the
access bits allowed by the access THOrd of the file/catalog
(bi ts 3-8 of the access ~rd if the file/catalo;] is l:eing
opened without password, bits 21-26 if the file/catalog is
l:eing opened with a password, or the access bits returned by
the trap program protecting the file/catalog). If Owner
permission was available on the (N-l) st catalog, and the
file/catalog is not protected by a trap program and is
protected by a successfully run master trap, then all
requested accesses are allowed on the file/catalog. In
addition, if the opening job possesses all ~aster trap bits
and has a zero mask in X4 in addition to Owner per.mission on
the (N-l) st catalog, then any slave trap program is bypassed
a.OO all permissions are granted on the file/catalog.

(2) If Search permission was not available on the (N-l) st


catalog 1 and the fetch bit is on in the access '.A;Ord of the
file/catalog, that is,

(a) Bit 4 of the access word if the file/catalog is


being opened wi t.~cut a password;

(b) Bit 22 if the file/catalog is l:eing opened with a


pasS\atOrd; or

(c) Bit 4 of the accesses returned by t.~e trap program


protecting the file/catalog;

then the accesses allowed on the file/catalog are the same as if


Search permission had been available on the (N-l) st catalcg. If
Search permission was not available on the (N-l) st catalog and
the fetch bi t is not on in the access word of the file/catalog,
then no accesses areallowed on the file/catalcg.

Page 102 Pub.1059


OPEN

Next the access bi ts allowed are checked for use conflicts wi th


accesses currently held by other jobs whose file/catalog is open.
Access bits that are in conflict are masked off. In addition,
Append permission is masked off if the MAX of t.;'e (N-l) st catalog
has been exceeded. All access bits are masked off if the
allocated storage for the (N-l)st catalog exceeds ~Nice its
permissible MAX. Finally, bit 0 of the access is set to 1 if the
file/catalog is a catalog. The file/catalog is opened if any
accesses remain in bits 5-8.

On ccrnpletion of the oommand, a trap occurs to the location


specified in X6. If the file/catalog was opened successfully,
then the access bits obtained. are returned in bits 0-8 of status
wurd 1, the new file reference nl.llllber of the opened file/catalog
in bits 18.... 35 of status word 1, and the length of the opened file
or the MAX of the opened catalog in status word 2. If the
command was unsuccessful, t.l;.enthe upper half of status word 1
contains the reason for the failure, and the lower half contains
zero.

In addition to the access bits returned in status word 1 of the


trap, nine user access bi ts can be obtained by issuing a RECUEST
ST.ATUS. These user access bits are obtained fran bits 27-35 of
the opened file/catalog's access wurd if the file/catalog ~yas
opened with a password. If the file/catalog was opened witJ.'out a
pas~rd or if it was protected by a trap prcgram, the user
access bits are obtained fran bits 9-17 of the access word.

The read/write pointer of t.~e opened file/catalcg is initialized


to zero.

Status Returns

o Successful: the accesses in bits 0-8 were obtained and


are the sarre as those requested.
1 Partial success: the accesses in bits 0-8 were
obtained but differ fran those requested. This status
return can cccur if bi t 0 of the requested access is 0
(is 1) and the opened file/catalog is a catalog (is a
file) .

Pub. 1059 Page 103


OPEN 4 - TRAPPING EXEOJrIVE C(M.1ANDS

2 Lockout: due to usage conflicts, none of the requested


accesses were available on the file/catalog.

3 Not found: Search permission was available on sane


intermediate catalog and the next file/catalog was not
found in it.

4 . Protection violation: Search permission was available


on the (N-l) st catalcg and the password specified for
the file/catalog was wrong.

5 Fail: Search permission was available on the (N-l) st


catalog and none of the requested accesses were
available on the file/catalog.. This can cccur if the
. file/catalog is slave-trapped and the slave trap
program is not correctly cataloged.
6 Bad tree name: Search permission was available on sane
intermediate catalog and the next entry in the treename
was not the last entry, but was ~~e name of a file
rat.'e.r than a catalog .
7 Fetch error: ei~~er

(1) An error of type 3, 4, 5, or 6 cccurred and Searc.'


permission was'not available cn the catalog in
which the search was being performed i or

(2) Search' permission was not available on t...'e (N-l) st


catalog a~ Fetch permission· was not available on
the file/catalog.

10 Off-line file.

40 Quotas exceeded: either

(1) The job has exceeded its allotted state vector


leng-tL'1; or

(2) Allocated storage for the (N-l) st catalog is over


twice t...'e permissible MAX, and files mus t be
erased from this catalog before any can l:e opened ..

Page 104 Pub. 1059


SYSTEM PFCGRAMMING REF. MANUAL OPEN

60 Out of storage: the Executive's table of opened files


is full.
100 Access error: the initial catalog to search is not
open with Search permission; bits 0-8 of status word 1
contain the missing permission bit.
120 Busy: another canmand is outstan:1ing on the catalog
specified in xo.
200 XO parameter error: XO dces not contain the file
reference number of a catalog.

220 Xl parameter error: the r:ointer to the tree name is


out of eourxls.

260 X3 parameter error: bit 1 of X4 is 1 and the pointer


to the password is out: of munds.
360 Xl parameter error: bi t 4 of X4 is I, and X7 contains
a zero or a number of file names greater ~~an ten.
400 Recoverable error : an error cccurred in reading an
intermediate catalog.
420 Unrecoverable error: information in an inteorediate
catalog has been destroyed.

Pub.lOS9 Page 105


OPEN SCRATCH 4 - TRAPPING EXECUrIVE CCM4ANDS

~ 500100: OPEN SCRATal

X4 File/catalog flag (bit 0)

XS Preference (for files only)


X6 Trap location
A catalog ~ or preallocation length N (Load-Dt.:zmp enabled
jcbs only)

Q Estimated number of catalog entries (special catalog enabled


jobs only)

A scratch file is opened if bit 0 of X4 is zero. Otherwise, a


scratch catalog is opened. The scratch file/catalog is created
wi th all permissions (i •e . Read, Wr i te, Appero -' Search/eXecute,
and Owner) •

Preference is an integer be~Neen 1 ard 7 which specifies the


class of storage preferred for the file being created. Classes
of storage are as follows:

1 Swap files
2 System files (BASIC, ALGOL, ••• ) or
monitor scratch files
3 catalogs
4 Scratch files
5 Special data base
6 Saved files
7 Permanent data base

The preferences which the issuing job can assign are limited by
bits 29-35 in its job access mask (set by t..'1e supra job on a RU'N
or EXECUTE command). A job can assign a preference n only if bit
28+n in its access mask is 1. Attempts to assign other
preferences will result in the Executive's rounding the
preference to a higher number if possible and to a lower one
otherwise. All catalogs will be assigned a preference of 3 by
the Executive. Assigned preferences continue to hold when a
scratc..~ file/catalog is cataloged.

Page 106 Pub. 1059


OPEN SCR.Z\'ICH

The OPEN SCP.ATCE cqnmand normally does not preallccate any


storage for a scratch file; such storage is allccated as needed
whenever information is apper.ded to the file. Where N is
specified in the A-register, an OPEN SCRA'IQ! camnand issued by a
job enabled with the Load-Dump permission will cause N words to
be preallocated for the scratch file. This preallocation is
designed to alleviate excessive fragmentation of storage.

The parameters in the A- and Q-registers are normally applicable


only when a scratch catalDg' is being created. In that case Mil..x
sets the maximum n1.1Illl:er of words which can cccur in that catalcx;
and in all files and catalogs catalCX;eQ beneath it. A negative
MAX sets this rnaxirnum to infinity and can be specified only by
those jobs enabled with the Special Catalog permission.
Likewise, only such jobs can specify an estimated num.t:er of
catalog entries in Q.. This estimate is used as a guide by the
Executive in allocating storage for the catalog so as to optimize
disk accesses for catalog searches. The Executive will determine
this initially allocated length for catalcx;s created by all
nonenabled jobs.

wnen a scratch catalog is opened, the job J s rema~n~ng scratch


TM:)rd allotIrent is decrem::nted by the length of the scratch
ca talog reader.

A trap to the location specified in X6 occurs upon completion of


the ccrnrrend. If the ccrnrrend is successful, status TM:)rd 1
contains ~~e file reference number of the created file in its
lcwer half.

Pub. 1059 Page 107


OPEN SCPATCH 4 - TRAPpnx; EXEOJrIVE CCMMAL'IDS

Status Returns

o Successful.

40 Quotas exceeded: either

(1) The job has exceeded its alloted state vector


length;

(2) The job access mask for the job dces not penni t i t
to specify any preference for a scratch file/
catalog; or

(3) The charge for writing a scratch catalog header


exceeds the job's remaining scratch word
allotment.
60 OUt of storage: sufficient storage is not available
for the scratch catalog header or for preallocating a
scratch file.

140 A-register parameter error: either

(1) The job is not enabled wi t.~ the Special Catalog


permission and is specifying a negative ~..x for a
scratch catalog i or

(2) The job is enabled with the load-dumppermission


and register A is negative.

160 Q-register pararreter error: the job is enabled with


the Special Ca talcg permission and is specifying· rrore
than 4095 entries for a scratch catalog.

400 Recoverable error: an error cccurred in writing the


scratch catalog header.

Page 108 Pub. 1059


OVERIAY

~ 500106: OVERLAY

xo File reference number of source file


X4 Flags for operation
X6 Trap location
X7 Pointer to registers

The source file specified by XO, which must be open wi th eXecute


permission, is ccpied over the issuing job's rrenx:>ry. The job's
registers are loaded frcm the area specified by X7, which must
begin at a multiple of eight words.

If bit 0 of X4 is 1 at the time of the overlay; the source file


will be closed when the overlay is canplete. If bit 0 of X4 is
0, the source file will remain open· am unchanged.

If all parameters are correct and there are no errors during the
copy operation, the job is restarted at location zero wi~~ the
registers PJinted to by X7, and with the zero indicator on.

If an error is detected before the copy operation begins, the


issuing'job is trapped to the trap location specified byX6 wi~~
one of the statuses listed below.

If an error occurs after initiation of ~,e copy, the issuing job


is aborted and ~~e supra job's RON or CCNTINOE ccrnmand is trapped
with a status of 400 (recoverable I/O error) •

Status Returns

1 Overlay rejected: The overlay has been rejected


Cecause the job has another trapping Executive cannand
outstarrling.

Pub. 1059 Page 109


OVERlAY

2 OVerlay rejected: file is bigger than current


allocated menory.
100 Access error: The file specified by XO is not open
with eXecute permission. .
200 XO parameter error: Xo is zero, dces not contain a
valid file reference number, or contains the file
reference number of a device, job, or communication
file.
300 X4 parameter error: x4 contains illegal flag bits.

360 'I:J parameter error: The pointer in X7 is cut of rounds


or is not a multiple of 8.

Page 110 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL P~.ss

MME 500122: PASS

xo File reference number of job file or zero


Xl Points to a location which points to the starting location
Ml of message
X2 File reference number of file/catalog to pass or zero
X4 Access to pass with file/catalog
XS Preference (for created files)
X6 Trap location
XJ Points to the length N of the message or is zero

The file/catalog is passed down to the job specified in XO,


generating a special interrupt nUIl1ber 4 (passed file) if that job
is accepting special interrupts. This'special interrupt gives
the new file reference number of ~~e file/catalog in the lower
half of the first interrupt word and the length of the file or
MAX of the catalog in the secor.d interrupt word. The new file
reference number is not necessarily equal to the one for the job
passing the file/catalog.

If X7 is nonzero and points to a nonzero word, ~,en the message


specified can be read by the job to which the file/catalog is
passed. This is accanplished by issuing a REQUEST STATrJS as the
first file operation on that file/catalog. If x:J is zero or
points to a zero TNOrd, then no message accanpanies the
file/catalog 01 the pass. A trap cccursto the location
specified in X6 when the message, if any, is read or when any
other file operation is initiated on the passed file. Hence, the
message should not be altered until the trap occurs.

If X2 is zero then the Executive will create and pass a scratch


file, or create a communication file and pass its slave end,
depending on whether bi t 1 of the access word specified in X4 is
o or 1. The file reference number of the created file is
returned in the lo~r half of status word 1 in the trap for the
PASS (unless the file created was a scratch file and the return

Pub. 1059 Page III


PASS 4 - TRAPPING EXECtJI'IVE CCMMANDS

bi t ~s rot set in the access in X4). No message can be passed


with a communication file.

If XC is zero, then the file/catalog will be passed upward to the


irrm=diate supra joo. CUrrently, this feature' is implemented for
created communication files only.

Job files, master ends of canmunication files, and file/catalogs


which have already been passed cannot be passed to an infra job.
The file reference number of a file/catalog ~ihich is passed
without the return bit (bit 2) set in its access ~rd becomes
invalid. With the exception of· slave ends ofcammunication
files, file/catalogs which are passed with the return bit set
becane rosy until they are closed and returned by the infra job.
A file/catalog which has been passed to the job issuing the PASS
with the return bit set must be passed to an infra job with the
return bit set. A scratch file/catalog which is passed without
the return bit set automatically'has all accesses set for the
infra job. The current setting of t.l-}e read/write pointer for a
file/catalog is preserved when it is passed.

Status Returns

o Successful: the message, if any, was read.

2 Successful: a message existed but was not read.


60 System out of storage: the Executive's table of opened
files is full.

120 Busy: another operation is outstar.ding ont.~e


file/catalog to be passed.

200 XO parameter error: XO does not contain the file


reference number of a nonterminated job file.

220 Xl parameter error: Xl poi.T']ts out of t:ounds.

Page 112 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL PASS

240 X2 parameter error: ei t.L~er

(1) X2 does not contain a valid file reference number;

(2) It contains the file reference number of a passed


file/catalog or of the master eoo of a canmunica-
tion file; or

(3) I t is zero arrl the job access mask for the issuing
job does not penni t i t to specify a preference for
creating a scratch file.

300 X4 parameter error: either

(1) Extraneous bits are set in the access w'Ord;

(2) The return bi t is not set in the access 'tAlOrd


though the file/catalog was passed to the issuing
job with the return bit set;
(3) Bit 0, the catalog bit, is 0 (is 1) and the
file/catalog being passed is a catalog (is a
file) ;

(4) No accesses are present in bits 5-8;

(5) The catalog bit is on ar:d X2 is zero;

(6) The return bit is set an:1 so is the bit to


indicate ~~e creation of a communication file; or

(7) xo is zero and X4 does not specify the creation of


a communication file

360 X7 parameter error: X7 p::>ints out of rounds.

Pub. 1059 Page 113


PIDlIDE DEVICE ADDRESSES 4 - TRAPPING EXECrJrIVE CCMMAJ.'IDS

~ 500126: PROVIDE DEVICE ADDRESSES

xo File reference number of file


X3 Points to pointer to memory location M2
X6 Trap location
X7 Points to length N of buffer

The PRCVIDE DEVICE ADDRESSES 'camnand is a privileged carnnand


which can be issued by jobs enabled for the Loaci-CUmp permission ..
Nonenabled jobs which attempt to issue it will receive a status
of 440 fault .. The'oammand causes the device address list for the
specified file to be copied into the buffer of length N starting
at ma~ry location M2; no device addresses will be copied if the
whole list dces not fit into this buffer. Upon completion of the '
command, a. trap cccurs to the location specified in X6. If the
command was successful, status word 2 contains the number of
device addresses for the file.

This command cannot be used to provide device addresses for a


catalog. Enabled jobs desiring the device addresses for a
ca talog can obtain them by issuing a READ CAT.AJ:A:G AND OPEN FILES
command.

Status Returns

o Successful.
120 Busy: another operation is outstarrling on the file.
200 XO parameter error: XO does not contain the file
reference number of a scratch or cataloged file •
. 260 X3 parameter error: X3 points out of 1:ounds or feints
to an out~f-1:olli~s pointer.
360 X7 parameter error: either X7 points out of touros or
the list of device addresses for the file will not fit
into the specified buffer.

Page 114 Pub. 1059


PROVIDE DEVICE ADDRESSES

440 Not enabled: the job is not enabled wi th Load-Dump


permission.

Pub. 1059 Page 115


4 - TRAPPING EXECGTIVE CCMMANDS

MME 500133: READ

xo File reference number of source file

X3 Points to pointer to memory location ~~

X4 Flag bits

X6 Trap location
;t:J Points to number of words N to read

N words are read fran the source file starting at the current
position of that filers read/write pointer into the issuing job's
merrory starting at location M2. Read permission is required on
t.~e source file. If the scurce file is exhausted or if the end
of the issuing job's storage is reached, an errl-of-file condition
occurs and transmission of data stops. Upon completion of the
copy, a trap occurs to the location specified in X6.

Zero is an illegal parameter for XO or X3. Upon completion of


the copy, the read/write pointer for the source file is up:lated
to p:>int to the v;ord beyond the last one read.

A READ issued at G~e slave end of a communication file will


generate a special interrupt number 11 (slave end issued READ) at
the nester end. The secorrl interrupt word will contain the
length of the READ. No data will be transferred until t.'e master
end issues a corresponding WRITE or COPY. (See ~~e description
of communication files in Chapter 5.) If ~~e communication file
is busy, ei ther because another em has an operation outstarrling
on it, or because another em has reserved it,the slave end
issuing the READ camnand will be trapped with a status of 6. If
the job at the master end of a oommunication file is not
accepting special interrupts when a slave end issues a READ, then
that slave end will be trapped with a status of 7.

The flag bits in X4 have the following meaning:

Page 116 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL

Bit ~~aning

a If the source file is a master cammunicationfile,


the corresponding slave end is trapped only if a
nonzero status return cccurs or if this bi t is .
zero. This bit must be zero ff the source file is
not a master ccmmunication file.

1 If the source file is a slave communication or a


shared file, that file is reserved for the end
issuing the READ ccmmand if this bit is one. Any
prior reservation by this end is released if this
bi t is zero. This bi t must be zero if the source
file is not a slave communication file or a shared
file.
2-17 These bi ts are reserved for future use. They must
be zero.

If a status return in status word 1 is not between 100 and 360 on


completion of the READ, then status word 2 contains the
difference bet:Heen the number of words transferred and the number
of w::>rds requested (i. e. it rontains minus the number of words
not transferred). If t..~e status in word 1. is bet:.reen 100 and
360, then status word 2 is zero. If the scurce file is a device
file, then the lower half of status word 1 contains the status
return frcrn that detlice.

The observant reader will note that the READ command is treated
as a special case of the COPY ccmrnand in which Xl ar~ X2 are
asst.nned to contain zeros.

Status Returns

a Successful: all words were transferred.

1 Source file exhausted: nore words were requested but


could not be transferred.

2 Destination file exhausted: some 'Nards in the source


file were not transferred since the end of the issuing
job's storage was reached.

Pub. 1059 Page 117


4 - TRAPPING EXECtJI'IVE cC:MMANDs

3 Command inappropriate: the READ was issued at h,e


master end of a communication file without a corre-
sponding w~TE operation outstanding at a slave end of
that file.
4 The source .file pointer is out of bounds: either,
(1) The pointer was initially out of bounds;
(2) The other end of a communication file issued a
MEMORY REQUEST which released job storage involved
in the read; or
(3) An attempt was made to read fran the pure region
of a job file which was swapped out of main
memory.
5 The destination file pointer is out of bounds: ei~~er,

(1) The pointer was initially out· of bounds;


(2) A MEMJRY REQUEST released job storage involved in
the read; or
(3) An attempt was made to read into the pure region
of a job file wnich was swapped out of main
rneITOry.
6 The communication file at whose slave er~ this command
was issued is busy, ei ther because another end has an
operation outstar:ding, or because anot...;'er er:d has
reserved the canmunication file.
7 The master end of the communication file at whose slave
end this command was issued is not accepting special
interrupts.
20 Status was reset on the READ.
100 Access error: the sOJrce file is not open wi th Read
permission. Bits 0-8 of status tHOrd 1 contain the
missing per.mission bit.
120 Busy: ar10ther operation is outstarrling on the source
file.

Page 118 Pub. 1059


SYSTEM PRCGRAMMING REF. MANOAI.:.

200 XO parameter error: XO does not contain the file


reference number of a file.

260 X3 parameter error: X3 is zero or points to an


out-of-t:ounds location.

300 X4 parameter error: X4 contains extraneous or invalid


flag bits.

360 Y:7 parameter errors: Y:7 r:oints out of rounds.

400 Recoverable error: an error cccurred during trans-


mission of data. The lo~r half of status word 1
contains the status fran the device which generated the
error. This return can occur if a device file is being
read via a ccmmunications file and the issuing job is
swapped out of main rnerrory.

Pub. 1059 Page 119


READ CATALCG 4 - TRAPp:m:; EXECtlrIVE CCMMANDS

M-1E 500114: READ CATALCG

xo File reference number of catalog


Xl Points to number !oU of first entry in the catalcg to copy

X3 Points to pointer to memory location M2

X6 Trap location

x:7 Points to number of words N to copy

N words of formatted catalcg information, starting with the


information for the first catalcg entry whose number is greater
than or equal to Mi, are written into the issuing job's storage
starting at location M2. Read permission is required on the
catalog. If the formatted catalcg information is exhausted or if
the end of the issuing job's storage is reached, an end-of-file
condition occurs and data transmission stops. Upon completion of
the copy, a trap occurs to the location specified in X6.

If Xl is zero then the current value of the catalcg's read/write


pointer is used to specify an entry number. Upon 'completion of
the copy, this pointer is upJated to point to the entry past the
last one for which information was transferred. Note that since
holes can occur in catalogs and since these holes have entry
numbers, the value of the catalcg r s read/write pointer upon
carpletion of a copy rray not Ce equal to the number of entries
for which information was transferred. X3 may not be zero.

Information for each entry in the catalcg is formatted into an


eight-word blcck. The block for entry nurnber zero contains data
pertaining to the catalog itself; blocks for other entry numbers
contain information pertaining to file/catalogs cataloged in the
.catalcg.

Page 120 Pub. 1059


The format of the information for entry nt..IItlber zero which
pertains to the catalog itself is as follows:

Wbrd Function

o MAX

1 ALOe (amount of storage used by entries)

2 Zero (unused)

3 Zero (unused)

4 Upper: access with which catalog is open


IDwer: preference am typ: of catalog

5. Upper: . zero (unused)


Lower: number of entries, including holes, in
catalog

6 Zero (unused)

7 Length of the catalcg

The format of the information pertaining to entries in the


catalog is as follows:

WOrd Function

0-1 Name
2-3 PasffitwOrd or name of trap prcgram (zero if catalog
is not open with OWner permission)

4 catalo; access word


5 Upper: days-used count
IDwer: preference am typ: of file/catalog

6 Upper: coded date of last use


Lower: coded date of last modification

7 Length of file or MAX· of catalog

Pub. 1059 Page 121


READ CATALCG 4 - TRAPpnx; EXECtlrIVE ~

See Chapter 9 for a more detailed explanation of these fields.

If the status return in status word 1 is not be~Neen 100 and 360
on completion of the copy, then status word 2 contains the
difference between the number of words transferred and the number
of words requested (i.e. it contains minus the number of words
not transferred). If the status in word 1 is between 100 and
360, then status word 2 is zero.

Status Returns

o Successful: all words were transferred.


1 Source file exhausted: more words were requested than
were contained in the formatted catalog information.
2 Destination file exhausted: sane words of formatted
catalog infor.rna tion were not transferred since the end
of the issuing job's storage was reached.
4 Source file pointer out of oour:ds: there are no
entries in the catalog with an entry number greater
than or equal to Ml.
5 The destination file pointer is out of bounds: either,
(1) The pointer was initially out of bounds;
(2) A MEMJRY REQUEST released job storage involved in
the copy; or
(3) An attempt was made to copy into the pure region
of a job file which yas swapped out of main
menory.
20 Status was reset.
100 Access error: the catalog is not open with Read
permission. Bits 0-8 of status word 1 contain the
missing permission bit.
120 Busy: another operation is outstarrling on the catalcg.

Page 122 Pub. 1059


SYSTEM PRCGRAMMING REF. ~

200 XO parameter error: XO is zero or does not contain the


file reference number of a catalog.
220 Xl parameter error: Xl p:Jints to an out-of-bounds
location.

260 X3 parameter error: X3 p:Jints to an out-of-bounds


location or is zero.

360 X7 parameter error: j(7 points to an out-of-l::ounds


location or is zero.

400 Recoverable error: an error cccurred in readi...Tlg the


catalog.

420 Unrecoverable error: information in the catalog has


eeen destroyed.

Pub. 1059 Page 123


READ. CATALCG AND OPEN FILES 4 - TRAPpnx; EXECUrIVE CCMMANDS

M1E 500127: READ CATALCG ]\..ND OPEN FILES

xo File reference number of catalog

Xl Points to number Ml of first entry in the catalog to copy

X2 Reserved for future use (must be zero)

X3 Points to pointer to memory location M2

X4 Access for OPEN (bits 0-8); Trap bit mask (bits 9-17)

XS Points to one word of ceded dates (DW/DL."1)


X6 Trap location

X7 Points to number of words N to copy

AQ Slave trap identification words

The READ C'ATALCG AND OPEN· FILES camnand canbines t.lJ.e functions of
the READ ~TALCG and t..f1e OPEN camnands by siinul taneously
providing information about entries in a given catalog and by
opening those entries. It is intended primarily for use in
privileged system modules and serves to minimize ~,e number of
disk accesses required for file system maintenance.

When a READ CATAI..CG AND OPEN FILES canmand is issued, N words of


formatted catalog information are written into t..f1e issuing job's
storage starting at location M2. This cperation starts with the
information for the first entry in the catalog whose number is
grea ter than or equal to MI. Forma tted infoona tion is provided
for all catalogs in the catalog being read. Information for
migrated files is provided only if the date last used is greater
than or equal to the coded DIM in the lo~r half of the word
pointed to by XS. Information for other files is provided only
if the file's date last used is less than or equal to the coded
OW in the upper half of the word pointed to by XS, or if the
file I s date last mcdified is greater than or equal to the ceded
DIM in the lower half of the word pointed to by. X5. (Therefore,
to get information on all files, the word shculd contain 0 in the
lower half. To get information on files using only the DLU, the
~rd should contain the desired DW in the upper half and 777777

Page 124 Pub. 1059


SYSTEM PRCGRAMMING REF. ~ READ CATALCG AND OPEN FILES

ectal in the lo~r half. To get information on files using only


the DIM, then the word shoold contain 0 in the upper half and the
desired DL'1 in the lo~r half.)

In addition, an attempt is made to open withcut a password each


file/catalog for which information is transferred. If the
information is exhausted or if the end of the issuing job's
storage is reached, an end-of-file con:1ition eccurs and data
transmission stops. Upon canpletion of the cornmand, a trap
cccurs to the location specified in X6. The date last used am
date last roc:dified in the catalog entry for a file/catalog opened
by the READ CATALCG h'ID OPEN FILES canmand will not be upjated.

Read permission is required on the catalog i search s:ermission is


also required if any file/catalogs are to be opened. Zero is an
invalid parameter for XO or X3. If Xl is zero, then the current
value of the catalog's read/write pointer is used to speciry an
entry number. t1p:)n ccmpletion of the ccmmand, this pointer is
up:Ja ted to point to the entry past the last one for which
information was transferred. Note that since holes can cccur in
catalogs, and since these holes have entry numbers, the value of
the catalog' s read/write fOinter uFOn canpletion of .the ccmmand
IT'ay mt be equal to the number of entries for which information
was tr ansferred.

InforIration for each entry in the catalog other than entry zero
is formatted into a ten-fNOrd block which contains information
pertaining to that file/catalog. The information for entry zero
pertains to the catalog itself and is formatted into a twenty-
word block •

. The format for entry zero (whose information pertains to the


catalog itself) is as follows:

WOrd Function

o MAX

1 ALOe (amount of storage used by entries)


2 Upper: zero (unused)

Pub.I059 Page 125


READ CATALCG AND OPEN FILES 4 - TRAPp:m:; EXEcurrvE CQ.1MANDS

Lower: number of fragrrents in which storage for


catalog is allocated

3 Zero (unused)

4 Upper: access with which catalog is open


Lower: preference and type of catalog

5 Upper: zero (unused)


Lower: number of entries, including holes, in
catalog

6 Zero (unused)

7 Length of ca talcg
8-19 List of device addresses for catalog (zero if
issuing job is not enabled with the Load-CUmp
permission)

The format of the information pertaining to entries in the


catalog is as follows:

WOrd Meaning

0-1 Nalle

2-3 PassVtOrd or name of trap prcgrarn (zero if catalog


is not open with Owner permission)

4 Catalog access word

5 Upper: days-used count


. Lower: preference and type of file/catalog

6 Upper : ceded date of last use


Lower: ceded date of last roc:dification

7 Length of file or MAX of catalog

8 Upper: status return fram OPEN of file/catalog


Lower: file reference number of file/catalog if
opened

Page 126 Pub. 1059


SYS'IEM PRCGRAMMING PEP. MANUAL READ CATALCG AND OPEN FILES

9 Number of fragments in which storage for


file/catalog is allccated (zero if file/catalcg
not opened)

The success of the open of each subfile/catalog is determined in


the following manner:

(1) If the file/catalog is master or slave trapped, then


the access bits are as allowed by the trapping program;

(2) If the catalog specified in Xo is open with CWner


permission, then all access bits are allowed (unless
the file/catalog is trapped);

(3) If the file/catalcg is not trapped an:1 the catalog


being read is not open with Owner permission, then the
accesses allowed are those in bi ts 3-8 of ~,e catalog
access word;

(4) The allowed accesses are checked for usage conflicts


and masked off if any conflicts cccur;

(5) Unless t..l-}e job issuing the ccrrmand is Load-D..lrnp


enabled,

(a) Append permission is masked off if t..l1e catalog's


MAX has been exceeded,

(b) All access bits are IIEsked off if the allocated


storage for t:.~e catalog exceeds twice its
permissible MAXi

(6) Any remaining bits areANDed with the requested


accesses, and bit 0 is set to 1 if the file/catalog
being opened is a catalog.

If any accesses remain in bi ts 5-8, then those accesseses are


returned in bits 0-8 of \!,Ord 8 of the entry information block.
In a:1di ticn, t.'e nine user access bi ts fran 9-17 of the catalog
access ~rd are OF.ed into bits 9-17 of the access word in the
file/catalog's ·file control block. The status return fram the

Pub. 1059 Page 127


READ CATALCG AND OPEN FILES

open which occurs in word 8 of the entry information block is one


of the following:

Status Returns

o Successful: the accesses in bits 0-8 were obtained.

1 Partial success: the accesses in bits 0-8 were


obtained but differ from those requested.

2 Lockout: all allowable accesses are currently busy.


5 Unsuccessful: no accesses were allowed. Bit 0 will be
1 if the file/catalcg is a catalcg ..

10 File off line: the upper half of status word 2


contains t..~e purged date, and the lower half-word
contains t..~e reel nt..JIni:er, preference I and TYPE.
40 Quotas exceeded: e i t.'er

(1) The job has exceeded its allotted state vector


lengt.l-) , or

{2} The job is not enabled for toad-D..lmp p:rmission


arrl the allocated storage for the catalcg is over
~Hice the permissible MAX ..

60 Out of storage: the Executive's table of opened files


is full.
100 Access error : the catalcg is not open with Search
permission; bi ts 0-8 ccntain the missing permission
bit.

On completion of thecommand~ if the status return in status word


1 is rot between 100 and 360, then status word 2 contains t.f1e
difference bebNeen the number of words transferred and the number
of \oOrds requested (i.e. it contains minus t.~e numl:er of words
not transferred).. If the status in word 1 is bet-ween 100 and
360, then status word 2 is zero.

Page.128 Pub. 1059


SYSTEM PRCGRnM1ING REF. MANUAL READ CATALCG AND OPEN FILES

Status Returns

a Successful: all wurds were transferred and all


available file/catalogs were opened.

1 Source file exhausted: rrore ~.;ords were requested than


were contained in the formatted catalog information.

2 Destination file exhausted: sane words of formatted


catalog information were not transferred since the end
of the issuing job's storage was reached.

4 Source file pointer out of bounds: there are no


entries in the catalog with an entry numl:er greater
than or equal to MI.

5 The destination file pointer is out of rounds: ei t.;'er ,

(1) The pointer was initially out of bounds;

(2) A MEMJRY RECOEST released job storage involved in


the copy; or

(3) An attempt was made to ccpy into the pure region


of a job file which was swapped out of main
ItETOry.

14 The current' length of the issuing job 1 s state vector


will not accammodate another file control block.

20 Status was reset.

100 Access error: the catalog is not open with Read


permission; bits 0-8 of status word 1 contain the
missing permission bit.

120 Busy: another operation is outstarrling on the catalog.


200 XO parameter error: XO is zero or does not contain the
file reference number of a catalog.

220 Xl parameter error: Xl points out of bounds.

240 X2 parameter error: X2 was not zero.

Pub. 1059 Page 129


READ CATALCG AND OPEN FILES 4 - TPAPPIN3 EXECUTIVE CQ.MANDS

260 X3 parameter error: X3 points out of rounds or is


zero.
320 XS parameter error: X5 points out of l:::ounds.

360 X7 parameter error: x:7 points out of l::ounds.

400 Recoverable error: an error occurred in reading b.~e


catalog.
·420 Unrecoverable error: information in the catalcg has
eeen destroyed.

Page 130 Pub. 1059


SYS'IEM PRCGRAl.'1MING REF. MANUAL REPLACE

~ 500116: REPLACE

xo File reference number of initial catalog to search


Xl Points to name of file/catalog to replace

X2 File reference number of scratch file/catalog

X3 Points to password (or is zero)

X4 (bits o-a) must be zero; (bits 9-17) trap bit mask

X5 Reserved for future use (must be zero)


X6 Trap location-

X7 Number of entries in treename (if zero, then 1 is assumed)

AQ Slave trap identification words

The REPLACE ccrrmand attempts to open t.l,e named file/catalog wi


all permissions and to replace it with the specified scratch
t.'
file/catalog.

In this respect it is roughly equivalent to the sequence of


catmands ~, CA.TALCG; however, the REPLACE canmand has a
number of advantages over this combination of c~ands. It
minimizes the number of catalog accesses required to perform ~,e
ccmbined function, and it permits the replacement of a. file/
catalog with a shorter version ina catalog whose MAX has been
exceeded even though the MAX rray still be exceeded after the
replacement.

The replacement will not be allowed if another job has the


file/catalog <:pen with Write permission; however Append
permission may be locked out at the time of the REPLACE.

The replacement will be made if Read, Write, and Append


permissions are present in the available accesses, unless the
allocated storage for the catalog exceeds its permissible MAX.
In this latter case the replacement will be made only if the

Pub. 1059 Page 131


REPIACE 4 - TPJ\PPING EXECUrIVE CG.'MANLS

lengb~ of the scratch file or MAX of the scratch catalog is less


than or equal to the length or MAX of the file/catalog which it
replaces. If after performing such a replacement, the catalog's
MAX is still exceeded, then Append permission will be removed
from the accesses available.

If the replacement is successful, then the file/catalog specified


in X2 becomes a cataloged file/catalog open with the accesses
which were determined to be available, and the catalog entry is
upda ted correspondingly. In addi tion to the available accesses
which are returned in status word 1 of the trap, nine user access
bi ts can be obtained by issuing a REQUEST STATUS. These user
access bits are obtained from bits 27-35 of the searched
catalog's access r,.;crd if the file/catalog was opened with a
pasS'W'Ord, and fran bi ts 9-17 of this access word if the
file/catalog was opened without a pasS'M:)rd or if it was protected
by a trap program. If the replacement was unsuccessful, ~,en the
file/catalog remains a scratch file/catalog and the catalog entry
remains unchanged.

A job which attempts to replace a file/catalog first has its


catalog word allotment decremented by the length of t.'e scratch
file or of the scratch catalog header. If ~~e replacement
succeeds then his scratch quotas are incren:ented by the same
amount. If the replacement dces not succeed, then this allotInent
is incremented by the amount of the original debit.

A file may not be replaced by a catalog, nor ma.y a catalog be


replaced by a file. Replacement of a cataloged file/catalog dces
not affect the narre, password, or access word in the catalog
entry. The replacement scratch file/catalog must not have been
passed to the issuing job with the return bit set.

U!=On completion of the ccrnrrand, a trap cccurs to the lccation


specified in X6. If the replacement was successful, bits 0-8 of
status word 1 contain the accesses with which the file/catalog is
now cpen. Status ~rd 2 contains the len;:Jt.h of the file or MA.X
of the catalog.

Page 132 Pub. 1059


SYS'IEM PRCGRAMMING FEF. MANUAL REPLACE

S ta tus Re turns

o Successful: the file/catalog was replaced and is now


open wi th the accesses in bi ts 0-8.

1 Partial success: the file/catalog was replaced and is


nON o!;€n wi th the accesses in bi ts 0-8. Append
permission has been masked off since the searched
catalog's MAX is exceeded.

2 Lockout: the cataloged file/catalog is cu~rently in


use with Write permission.

3 Not found: t..r,e desired file/catalog was not round in


the searched catalog.

4 Protection violation: t..r,e specified password was


wrong.

5 Unsuccessful: one of the Read, Wr i te , or Append


permissions was not alloYfed.

6 Bad treename: Search permission was available on sane


intennedia te catalog ar:d the next entry in the treename
was not the last entry , but was the name of a file
rather than a catalog.

7 Fetch error: ei ther

(1) An error of type 3, 4, 5, or 6 occurred am Search


permission was not available on the catalog in
which the search was being performed; or

(2) Search permission was not available on the (N-l) st


catalog and fetch per.mission was not available on
the file/catalog.

11 REPLACE disallowed: the named file/catalog is a device


file.

Pub. 1059 Page 133


REPIACE 4 - TRAPPING EXECUI'IVE C~

40 Quotas exceeded: either

(I) The length of the scratch file or catalog header


exceeds the job 1 s remaining catalog word
allotment, or

(2) The specified catalog's MAX is exceeded, and the


length of the scratch file or MAX of the scratch
catalog is greater than the leng't..L' or MAX of the
file/catalog to be replaced.

60 OUt of storage: ei ther

(I) The Executive's table of opened files is full, or

(2) A new entrj' had to be made in the catalog for the


replacement and either
(a) The catalog already had 4095 entries,

(b) The Executive could not allccate sufficient


storage for a required ext~~ion of the
catalog, or
{c} It is not possible to apper.d to t.~e catalog
since it eit.'er is a main-menory catalcg or
is already allocated in twelve fragments.

120 Busy: another operation is outstaroing on either the


catalog or the scratch file/catalog.

200 XO parameter error: XO dces not contain the file


reference number of a catalog.

220 Xl parameter error: Xl points out of rounds.


240 X2 parameter error: . either

(1) X2 dces not contain the file reference number of a


scratch file/catalog,
(2) The scratch file/catalog was passed to the issuing
job T,yi th the return bit set,

Page 134 Pub.I059


SYSTEM PRCGR..ZlMMING REF. MANUAL REPIACE

(3) The type of the scratch file/catalog dees not


match the type of the file/catalog it is to
replace, or
(4) The scratch file/catalog has a preference of 0, 1,
2, or 4 and may only replace a file in a core
catalog.
260 X3 parameter error: the pointer to the password is out
of 1:oun:Js.
300 X4 parameter error: bits 0-8 of X4 were not zero.
320 XS parameter error: XS was not zero.
360 X7 parameter error: X7 was greater than 10 (maximum of
10 names in the list of entries pointed to by Xl) .
400 Recoverable error: an error cccurred in reading t...~e
catalog.
420 Unrecoverable error: information in the catalog has
been des troyed.

Pub. 1059 Page 135


REQ{JEST srA'IUS 4 - TRAPPING EXECUI'IVE CCMMANDS

~ 500115: REQUEST STATUS

xo File reference n~ber of file/catalog or zero


X3 Points to pointer to memory location M2
X6 Trap location
X7 Points to number of words N to read

N words of status information for the file/catalcg are read into


the issuing job's m:rrory starting at location M2. Upon
completion of the ccrnrnand, a trap occurs to the location
specified in X6.

If XO is zero, then the status infoonation pertains to the job


issuing the ccmrnand and has ~~e following format:

WOrd Meaning
a Job's remaining catalog word allotment
1 Job's remaining scratch word allotment
2 CRU limit· for job (in 1/64 milliCRU) - not CRUs
remaining
3 Nt.nnber of I/O uni ts used

4-5 Identifying words from run list of the RON command


which spawned this job
6-7 Identifying words from run list of the RUN ccmrnand
which spawned the job wnich spawned t.~is one
Etc., for each job a1:ove this one in the job tree

If XO cootains the file reference number of a susperrled or


terminated jcb file, t.~en the status inforrration for the job file
specified has the following format:

Page 136 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL REQUEST STATUS

WOrd Meaning

o Accesses/I'ype (see below)

I Job length (core size) [will be zero for a


terminated job fileJ

2 Computer resource units (CRUs) consurr.ed

3 I/O uni ts consumed

4 Central processor units consumed

5 Core uni ts consumed

Note: The quanti ties in words 2 through 5 include resources


consumed by all terminated infra jobs.

If XC is nonzero and is not the file reference n~ber of a job


file or the slave end of a carmunication file, then the status
information for the file/catalog specified has the following
format:

Wbrd Meaning

o bi ts 0-17 (upper): accesses with °tlhich the


file/catalog is open
bits 18-26: zero
bits 27-28: preference adjustment
bits 29-31: preference (see Chapter 9 for
preferences)
bi ts 32-35: type (see Chapter 9 for types)

1 Length of file or MAX of catalog

2 Read/wr,i te p:::>inter

3 Upper: Maxirrurn accesses available on the file


through an ALTER ACCESSES ccrrtm3.nd (q .. v. ) .
Lower: Unique Identifier. This field can be used
by a job to determine whe~,er two FRNs actually
access the same file. The identifier will be the
same for the t~ FRNs if and only if they access

Pub. 1059 Page 137


REQ,JEST STATUS

the same file. The value of this field is


undefined for other than cataloged files.
4-N Message sp€cified by PASS camnand

The rressage starting in word 4 is available only if the


file/catalog was passed to the issuing job by a PASS camrnand and
if the REQUEST STATUS is the first file operation issued on the
file/catalog. (See PASS.)

If XC contains the file reference number of the slave end of a


communication file, then a special interrupt number 13 (slave end
issued REQUEST STA'IUS) is generated at the masterer.d. The
second interrupt 'NOrd contains t.'e number of words requested. No
status information for the file is supplied by the Executive.
Instead, it is the duty of the rraster end of the communication
file bowrite status information to the slave end via a WRITE or
copy comnand. In other words, a REQUEST S~ issued at the
slave a~d of a ccmmunication file behaves in the same manner as a
READ cannand, e..1,{cept that t..'e camnunication file can never l:e
reserved by a REQUEST STATUS camrnand. If the ccrnmunication file
is busy, either because arother em has an operation outstanding
on it, or because another er:d has reserved it, the slave em
issuing the PECGEST STATUS camrnand will be trapped wit., a status
- of 6. If the job at the master end of a camnunicationfile is
not accepting special interrupts when a slave end issues a
REQ,JEST STATUS, t..;'en that slave ern will be trapped wi th a status
of 7. If the canrnunication file is reserved for this end, it
will be released.

If the status return in status word 1 is not be~Heen 100 and 360
on completion of t.'e command, then status w~rd 2 contains the
difference between the number of words transferred and the number
of words requested (i.e. it contains minus the number of words
not transferred). If the status in word 1 is behveen 100 and
360, then status word 2 is zero.

Page 138 Pub. 1059


REQUEST STA'IUS

Status Returns

o Successful: all words of status infor.mation were


transferred.
1 Source file exhausted: !tOre words of status informa-
tion were requested than existed.
2 Destination file exhausted: some words of status
information were not transferred since the end of the
issuing job's storage was reached.

4 Source file pointer out of bounds: either,

(1) This file/catalog- has been passed with a message


aril the supra jcb has released the job storage
containing the rr.essage i or

(2) This is the slave end of a communication file and


the master em is attempting to supply status
information fram a source file wTIose pointer is
au t of boums.
5 The destination file pointer is out of oounds: either,

(1) The pointer was initially out of oounOs;

(2) A MEMJRY RECUEST released job storage involved in


the request; or

(3) The issuing job was swapped out of main memory


while the master end of a communication file was
wr i ting into the job's pure region.

6 Communication file busy: the ccmmunication file at


whose slave er:d this ccmnand was issued is busy b€cause
another ern has an operation outstariiing on it, or has
reserved it.

7 The master end of the ccrnmUnication file at whose slave


end this ccmnand was issued is not accepting special
interrupts.

20 Status was reset.

Pub. 1059 Page 139


~ST srA'IUS 4 -. TRAPpnx; EXEct1rIVE CCMMANDS

120 Busy: another operation is outstarrling on the


file/catalog.
200 XO parameter error: XO does not contain a valid file
reference number or contains the file reference number
of a former communication file whose other end has been
closed.
260 X3 parameter error: X3 is zero or points out of
oouOOs.

360 x:; parameter error: X7 p:>ints out of munds or points


A
to a length greater than 2 18.
400 Recoverable error: an error occurred during the
transmission of the message on a passed file/catalog or
of the status information on ~,e slave end of a
ccrnmunication file. The lo~r half of status word 1
contains the status fran the device which generated the
error.

Page 140 Puh.1059


SYS'IEM P~.MMING REF. MANUAL RESET STATUS

Mr1E 500135: RESRr STATUS

xo File reference number of file/catalog


X4 Flag bits

X6 Trap location

The file/catalcg is forced into an idle ·state. Any file


operation outstanding on the file/catalog is halted.. The ccrrmarrl
which initiated the operation is trapped, generally with a status
return of 20 (status was reset). Status cannot be reset on a
file/catalog 'Nhich has eeen passed to an infra job and which has
not yet eeen returned. A file reference number of zero is
invalid. Upon ccmp1etion of the cornnand, a trap cccur s to the
locaticn specified in X6.

A RESET STATUS issued on a running job will suspend execution of


that job and all jobs running i:elow it until a CCNI'IN1JE carmand
is issued ...

A RESET STATUS issued on a communication file for which an


operation is outstanding at both the master and a slave end will
cause status to be reset at both eros. A RESET STATUS issued on
the slave end of a ccmmunication file when no operation is
outstanding at the waster end of that file will generate a
special interrupt m.nnber two (slave end issued RESET STATJS) at
the master em am will cause the master errl to ee busy until a
RESET srATUS is issued on it. A RESET STA'lUS. issued at the slave
end of a cammunication file will cause the file to be released
(if it was reserved for that end) .

The flag bi ts in· X4 have the following meanings:

Bit Function
o Unassigned, must be zero.

Pub. 1059 Page 141


RESET srAIDS 4 - TRAPprn:; EXECUrIVE CCMMANDS

1 Must be zero unless XO contains the file reference


number of the master end of a communication file.
In that case, the file will l:e reserved for the
master end if this bit is one (see Section 5.4) •
If this bit is zero, any prior reservation by the
master errl will be released.
2-17 Unassigned, must be zero.

A RESET STATUS issued on the source file for pure procedure will
unbusy that file arrl declare the job to l:e impure; i. e. it has
the same effect as a PURE command in which X7 is zero.

A RESET STATUS on a file opened in shared roc::de will cause the


file to revert to an idle, unreserved (unlocked) state at the
issuing end.

Status Returns

o Successful: status was reset.


1 A RESET S~~ is already in progress on ~~is file/
catalcg.
120 Busy: the fi1e/catalC9' has been passed to an infra
job ..

200 XO parameter error: XO does not contain a valid file


reference number.
300 X4 parameter error: X4 contains invalid flag bits.

"

Page 142 Pub .. 1059


SYS'IEM PRCGRAMMING REF. MAl.'1UAL RUN

MME 500120: RON

The RUN MME is very similar to the EXECt1I'E MME (500117) and
differs only in the following:

(l) Upon initiation of the job, the source file is closed


and its file reference number is assigned to the newly
created job file. This remains open with all accesses
possessed by the source file except Append permission
until the job file is closed.
(2) The file reference number of the job file will not be
placed in the lower half of status word 1 of the trap
block specified by X6.

Pub. 1059 Page 143


SCPMOI 4 - TRAPPING EXECC.7rIVE C~

MME 500110: SCRATCH

xo File reference number of file

X6 Trap location

The specified file, which must be ot:en with write am Append


permissions, is erased an:l roth its length and its read/write
pointer are set to zero. Upon o:::rnpletion of the command, a trap
occurs to the location specified in X6.

A ~ command issued at the slave end of a communication file


will generate a special interrupt number 14 (slave end issued
TRL'NCATE) at the master errl. The secor:d word of the special
interrupt will be zero (see TRUNCATE). If tlle canmunication file
is busy, either because another em has an operation outstarrling
on it, or because aoother em has reserved it, the slave errl
issuing the SCRATCH commar~ will be trapped with a status of 6.
If the job at the master end of a communication file is not
accepting special interrupts when a slave end issues a S~i,
then that slave end will be trapped with a status of 7. A
SCRATCH camnand cannot be issued on the master em of a communi-
cation file.

A jcb which scratches a scratch (catalcged) file will have its


scratch (catalcg) TNOrd allotment incremented by the length of t..l,e
file.

The cbservant reader will notice that the SCRATCH ccrnmand is


treated as a special case of the TRUNCATE command in which the
A-register is asst.mled to contain a zero.

Status Returns

o Successful: the file was scratched.

6 Ccmmunication file busy: ~,e communication file at


whose slave end this canmand was issued is busy l:ecause

Page 144 Pub. 1059


SYS'IEM PFCGRAMMING REF. Mf\NOAL SCFA'ICH

another em has an operation outstan:1ing on it or has


reserved it.
7 The nEster en:1 of the canmunication file at whose slave
end this cc::mnand was issued is not accepting special
interrupts.
20 Status was reset on ~~e TRUNCATE.
100 Access error: the file is not open with Append and
write permissions; bits 0-8'of status word 1 contain
the missing access bi ts.
120 Busy: another camnand is outstarrling on the file to be·
scratched.
200 xO parameter error: XO is zero and does not contain a
valid file reference number, or contains the file
reference number of a device, job, or master communica-
tion file. .

Pub. 1059 Page 145


SET POINTER 4 - TRAPpnx:; EXEaJrIVE CCM1.nM::S

M-1E 500113: SET PO INTER

xo File reference number of file/catalog


X6 Trap location

A Setting for read/write pointer

The read/write IX'interof the file/catalog is set to the


specified value, and a trap occurs to the location specified in
X6. Zero is an invalid file reference number.

A SET POrnTER canmand. issued at the slave end of a canmunication


file will generate a special interrupt number 15 (slave end
issued SET FOrnTER) at the master end of the file. The secorrl
interrupt word will contain the specified setting for the
read/write pointer. If the communication file is busy, ei~,er
because another end has an operation outstanding on it, or
because another end has reserved it, the slave eoo issuing the
SET FOrnTER canmand. will be trapped with a status of 6. If the
job at the master end of a communication file is not accepting
special interrupts when a slave end issues a SET POrnTER, then
that slave end will be trapped with a status of 7. A SET POINTER
command may not be issued on the master end of a communication
file.

Status Returns

a Successful.
1 Pointer out of bounds. Register A specifies a pointer
greater than the length of the file, or the file is a
catalog or device file arrl register A is not less than
2~18.

6 Communication file busy: the communication file at


whose slave em this canmand. was issued is busy because
aoother end has an operation olltstaooing on it or has
reserved it.

Page 146 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL SET POINrER

7 The master en:1 of the ccmmunication file at whose slave


end this ccrnrrand was issued is not accepting special
interrupts.

20 Status was reset on the SET POINrER.


120 Busy: another opera'tion is outstaming on the file/
catalcg.
200 XO parameter error: XO is zero or dces not contain the
file reference number of a file/catalcg.

Pub. 1059 Page 147


TALLY CATALCG 4 - TRAPpnx; EXECUTIVE CCMMANI:S

Mv!E 500141: TALLY CATALCG

XO File reference number of initial catalog to search

Xl Pointer to a tally word

X2 File reference number of file to be cataloged

X3 File reference number of alternate initial catalog

X4 Pointer to 2 words of permission and access information

XS Pointer to two words for name of file/catalog cataloged by


the Executive

X6 Pointer to trap block

x:7 Pointer to usage and dates {Load-D.lrnp enabled jobs only} or


zero

The specified scratch file/catalog is cataloged in the file


system in a catalog denoted by a standard treename.

First an attempt to open the specified file is made using TALLY


OPEN (MME 500136). The trap bi t mask for the search is in bits
9-17 of the first THOrd pointed to by X4. If bit 4 (020000
[octal], tr.e escat=e convention bit) is set in the upper half of
this first word, then all special scanning conventions are
disallowed, and the catalog will be trapped with a format error
if the treenc3.I're contains a special first name. The name and
password of the file/catalcg to be cataloged cannot be sp:cified
with the "/" convention, and t.L'e catalog willl:e trapped with a
format error if that is attempted. For rore information on tally
operations, see Chapter 8.

If the Executive receives a file-nat-found status for the last


file/catalog then that file/catalog is cataloged if Append
permission is available on the destination catalog. For example,
if the treenc3.I're is A:B:C, then C is cataloged in A:B if am only
if A:B exists, Apper.d permission is available on B, and A:B:C
does rot already exist. The seo::>ro word p::>inted to by X4 is the
access v.ord with which the file will be saved. If the treenarne

Page 148 Pub.1059


SYS'IEM PRCGRAMMING REF. MANUAL TALLY CATALCG

includes a password for the last file/catalog, then this password


will be put on the cataloged file/catalog.

If the job is enabled with Load-D.lrnp r:ermission and X7 is


non-zero, then it must point to ~ words of usage and dates
information. The upper half of the first word contains an
integer used to set the file 1 s days-used count; the lower half
contains type infocmation or is zero. The second word contains a
ceded Date Last Used in the upper half and coded Date Last
Mcdified in the lower half. See MME CATALCG or Chapter 9 for
more details on usage and dates infor.mation.

Upon completion of the operation, the job 1 s scratch word


allot:rr.ent is incremented by t..'e length of the file or of the
catalog header, and its catalog THOrd allotment is decremented by
this quantity plus the length of the entry created in the
catalog. Finally a trap occurs to the location specified by X6.

If the command was unsuccessful, then status word 1 contains the


reason for the failure. If the status is 12 or 40 or greater,
the two words p:>inted to by X5 are undefined. If the status was
7 (fetch error) then the ~ words are cleared. Otherwise, the
last file name scanned is placed in the two words. (These words
ne€d . rot be aligned on a even-word t:oundary.) If the status
returned fran the catalog is 12 (forma.t error) I then status word
2 will contain a· substatus, and a tally count and character
position pointing to t..'e character where the format error was
detected. See Chapter 8 for rrore information on format errors.

Status Returns

o Successful: the file/catalog was cataloged.


1 Illegal trap protection request: a master trap
protection bit which is not allowed to the issuing job
has been specified.
2 Duplicate naIre: ~ entry with the given name is
already in the catalog.

Pub. 1059 Page 149


TALLY CATALCG 4 - TRAPp:m:; EXEOJrIVE CCM1A.NI:S

3 Not found: Search permission was available on sane


intermediate catalog am the next file/catalog was not
found in it.

4 Protection violation: Search permission was available


on sore catalog I and the password specified for the
next file/catalog was wrong.

6 Bad treenarne: Search permission was available on sane


intennedia te catalog I and the next entry in the
treenane was not the last entry, but was the name of a
file rather than a catalog.

7 Fetch error: an error of type 2, 3, 4, or 6 occurred


and Search permission was not available on the catalog
in which the search was being performed.

12 Forma terror: see Chapter 8 for possible types of


errors.

13 Illegal usage and dates: the usage infoomation pointed


to by x.7 was illegal; either the date last used was
zero, or the preference or type infor.mation was wrong.
14 Preference too low: the specified file has a
preference of 0, 1, 2, or 4 arrl may be cataloged only
in a core catalog.

40 Quotas exceeded: ei t.~er


(1) The job has exceeded its allotted state vector
length; or

(2) Allocated storage for the next to last catalog is


over twice the permissible MAX, and files must be
erased fran this catalog before any can be opened.

60 OUt of storage: the Executive's table of opened files


is full.

100 Access error: The initial catalog to search is not


open with Search permission; or the last catalog before
the file/catalog to be cataloged lacks Append
permission. Bits 0-8 of status word 1 contain the
missing permissions.

Page ·150 Pub. 1059


SYSTEM PRCGRll.MMING REF. ~ TALLY CATN..J:;G

120 Busy: another carmand is outstan:1ing on the catalog


specified in XO or X3.
200 XO parameter error: XO dces not contain the file
reference number of a catalog.
220 Xl parameter error: the p:::>inter to the tally ~.;ord is
out of l:our.ds.
240 X2 parameter error: X2 does not contain the file
reference number of a scratch file/catalog.
260 X3 parameter error: X3 does not contain the file
reference number of a catalog.
300 X4 parameter error: the two-word pair point-od to by X4
',vas cut of OOun::lS or an illegal bit was set.

320 X5 parameter error: X5 :r;:ointed to a b,.;o;-~rd pair


which was out of oounds.
360 X7 parameter error: the t~'lO-'HOrd pair PJinted to by X7
was out of bour.ds, or the job was not Load-CUmp enabled
and X7 was nonzero.

400 Recoverable error: an error occurred in reading an


intermediate catalog.
420 Unrecoverable error: information in an intermediate
catalog has been destroyed.

Pub. 1059 Page 151


TALLY ERASE 4 - TRAPPING EXECUl'IVE CCMMANOO

M-1E 500137: TALLY ERASE

xo File reference number of initial catalog to search


Xl Pointer be a tally word

X2 Reserved for future use (must be zero)

X3 File reference number of alternate initial catalog


X4 (bits 0-3,5-8) must be zero, (bit 4) escap: special
convention, (bits 9-17) trap bit mask

X5 Pointer to two words for name of file/catalog erased by the


Executive

X6 Pointer to trap block

Xl Reserved for future use (must be zero)

AQ Passed to slave trap program if file is slave trapped

The TALLY ERASE ccmmand attempts to oren the specified file/


catalog with Read, Write, and Append permissions using TALLY OPEN
(MME 500~36). If the open is successful then the Executive
destroys the file/catalog together with its catalog entry.

If bi t 4 (020000 octal, the escape convention bi t) is set in X4,


then all sp:cial scanning conventions are disallowed, and the
erase will be trapped with a format error if the treename
contains a special first name.

For llOre information on tally operations, see Chapter 8.

catalog quota checks are suspended for the TALLY ERASE ccmrrand;
hence, it can be used to destroy files in catalogs whose quotas
have been exceeded. Conflict checks with accesses currently held
by other jobs having the given file/catalog open are suspended
for all accesses except Wr i te. A TALLY ERASE ccmmand may
therefore be used to destroy a fi1e/satalog which is open,
provided that it is not open f,vi th Wr i te permission. Wi th the

Page 152 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL TALLY ERASE

provided that it is not open wi th Wr i te permission. Wi th the


exception of this and the catalog quota check, a TALLY ERASE
command is identical in effect to the sequence of ccmrnands TALLY
OPEN, UNCATALCG, am cr.csE.

A job which issues a successful TALLY ERASE ccmrnand will have its
catalog ~rd allotment increrrented by the length of the file or
of the header of the catalog which was erased and also by ~~e
length of the catalog entry.

On cx::mpletion of the ccmrnand, a trap cccurs to ~,e location


specified in X6.

If the command was unsuccessful, then status word 1 contains the


reason for the failure. If the status is 12 or 40 or greater,
the t'lwu words p::>inted to by XS are undefined. If the status was
7 (fetch error) then the b.o ~rds are cleared. Otherwise, the
last file name scanned is placed in the two words. (These 'MOrds
need rot be aligned on a even-YlOrd t:oundary.) If the status
returned fran the open is 12 (format error) I then status word 2
will ccntain a substatus, and a tally count and character
position pointing to the character where the format error was
detected. See Chapter 8 for rrore information on format errors.

Status Returns

o Successful: the file/catalog was erased.

2 Lcckout: the file/catalog is currently in use with


Write permission.
3 Not found: Search permission was available on serre
intermediate catalog am the next file/catalog was not
found in it.

4 Protection viola tion: Search permission was available


on some intermediate catalog and the password specified
for the next file/catalog was wrong.

Pub. 1059 Page 153


4 - TRAPpnx; EXEC!1rIVE CCMMANDS

5 Fail: Searqh permission was available on the next to


last catalog and none of the requested accesses were
available on the file/catalog.

6 Bad treename: Search permission was available on sam:


intermediate catalog and the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7 Fetc..~ error: eit..'1er


(1) An error of type 3, 4, 5, or 6 cccurred and Search
permission was not available on the catalog in
which the search was being ferformedi or

(2) Searc..~
permission was not available on the next to
last catalog and Fetch permission was not
available on the file/catalog.

11 TALLY ERASE disallo~: t..1.e named file/catalo; is a


device file.

12 Format error: see Chapter 8 for possible typ:s of


errors.

100 Access error: the initial catalog to search is not


or:en with Search permission; bits 0-8 of status TNOrd 1
contain the missing permission bit.

120 Busy: another carunand is outstar.ding on t..1.e catalog


specified in XO or X3.

200 XO parameter error: XO dces not contain the file


reference number of a catalog.

220 Xl parameter error: t..1.e pointer to the tally word is


out of l:ourrls.

240 X2 parameter error: X2 was nonzero.

260 X3 parameter error: X3 aces not contain the file


reference number of a catalog.

300 X4 parameter error: bits 0-3 or 5-8 were nonzero.

Page 154 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL TALLY EFASE

320 XS parameter error: XS r:ointed to a t".vo-word pair


which is out of bounds.
360 X7 parameter error: X7 was nonzero.
400 Recoverable error: an error occurred in reading an
intermediate catalog.
420 Unrecoverable error: information in an intermediate
catalog has been destroyed.

Pub. 1059 Page ISS


TALLY OPEN 4 - TFAPpnx; EXECUTIVE CG~

~ 500136: TALLY OPEN

xc File reference number of initial catalog to search


Xl Pointer to a tally word
X2 Reserved for future use (must be zero)
X3 File reference number of alternate initial catalog
X4 Desired accesses on the file, trap bit mask and escape
special convention bit
XS Pointer to Cwo words for name of last file/catalog accessed
by the Executive
X6 Pointer to trap block
'X1 Rese-rved for future use (must be zero)
AQ Passed to slave trap program if file is slave trapped

The specified file (denoted by a string of ASCII characters) .is


located in the file system and opened. A file reference number
is returned, which is used· on all subsequent operations on the
file.

The tally word pointed to by Xl is a tally word for the treename


of the file to be opened. A treename is defined to be a list of
zero or rIOre catalcgs separated by colons (:), with a file name
or catalcg nam: at the er:d. Any catalog/file in the treename may
have a password; the password immediately follows the catalog/
file name and is set off fran it by a ccrmna (,).

If bit 4 (020000 octal, t~e escape convention bit) is set in X4,


then all special scanning conventions are disalloW'ed, and the
ope..1"l will be trapped with a format error if the treename contains
a special first name. For more information on tally operations,
see Chapter 8.

Page 156 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL TALLY OPEN

The procedure for opening the file/catalog specified by the


treename is as follows. If a special first-name convention is
not used, then the initial catalog specified by XO is searched
for the catalog specified by the first entry of the treename i if
XO is zero, then the Master File Directory (MFD) is searched. If
one of the special first-name conventions is used, then ~'e
ini tial catalog specified by X3 is searched regardless of what is
in xo. As each succeeding catalog in the treename is found, it
is searched for the catalog specified by the next entry of the
treename. Finally the next to last name in the treename is
searched for the file/catalog specified by the last name.

For every file/catalog in the treename, the accesses available


are determined in one ·.of two manners:

(1) .If Sear~~ permission was available on ~~e previous catalog,


then the accesses available on the current file/catalog are
those all~ wi thcut a password (bi ts 3-8 of the current
file/catalog's access wurd) , or those all~ wi th a
password 'if one is given (bits 21-26 of the current file/
catalog's access THOrd) , or those returned by the master trap
prcgrarn if the catalog is so protected.

If Owner permission was available on the previous catalog


and ~~e current file/catalog is not protected by the master
trap prcgram, then all accesses are allowed on the current
file/catalog.
Slave trapping programs are run only on ~,e last file/
catalog in the treenarne. If a supra catalog is slave
trapp:d, the untrapped accesses are used.

(2) If Search permission was not available on the previous


, catalog I then the accesses as given a1:ove are examined for
the presence of .the fetch bi t (bi t 4). If the fetch bi t is
on, then accesses are granted on the current file/catalog
just as if Search permission had l:een available on the
previous catalog. If the fetch bit is not on, then no
aa::esses are granted on the current file/catalcg.

Next the access bits allowed on the last file/catalog are checked
for use conflicts wi th accesses currently held by other jobs wi t...~
the same file/catalog open. Access bits that are in conflict are

Pub. 1059 Page 157


TALLY OPEN 4 - TRAPPING EXECUrIVE CCM-1ANDS

masked off. In addi tion, Append permission is masked off if the


catalog MAX of the next-to-last entry has been exceeded. All
access bits are masked off if the allocated storage for any entry
exceeds t:rJlice its permissible MAX. Accesses are ANDed with those
requested, and, finally, bit 0 of the access is set to 1 if the
file/catalog is a catalog. The file/catalog is opened if any
accesses remain in bits 5-8.

If bit 1 of X4 (200000 octal) is set, then the Executive will


open the file in shared IOCde. If the file is not already open in
unshared mode an:::1 bit 3 (040000 octal) is set in its access word,
then the available accesses will be reduced to a maximum of Read
and Write, and those accesses, if any, will be returned.

On ccmpletion of t.~e ccrnmand, a trap occurs to the location


specified in X6. If the file/catalog was opened successfully,
then the access bits obtained are returned in bits 0-8 of status
word 1, the new file reference nu:ml:er of the opened file/catalog
in bits 18-35 of status word 1, and the length of the opened file
or the MAX of the opened catalog in status word 2.

In addition to the access bits returned in status word 1 of the


trap, nine user access bi ts can t:e obtained by issuing a REQUEST
STATUS. These user access bits are obtained fran bits 27-35 of
the opened file/catalog's access v..ord if the file/catalog was
opened wi th a password. If the file/catalog was opened wi thcut a
paSSwOrd or if it was protected by a trap prcgram, the user
access bits are obtained fran bi ts 9-17 of the access word.

"-

If the ccrnmand was unsuccessful, then status word 1 contains ~~e


reason for the failure. If the status is 12 or 40 or greater,
. the bK) t,t.Ords pointed to by X5 are undefined. If the status was
7 (fetch error) then the t-~ 'Nerds are cleared. Otherwise, the
last file name scanned is placed in the two words. (These words
need not be aligned on a even-word boundary.) If the status
returned fran the open is 12 (format error), then status word 2
will ccntain a substatus, and a tally count and character
posi tion pointing to the character where the format error was
detected. See Chapter 8 for m::Jre ~ormation on format errors.

Page 158 Pub. 1059


SYSTEM P~G REF .. MANUAL TALLY OPEN

The read/write pointer of the opened file/catalog is initialized


to zero.

Status Returns

o Successful: the accesses in bits 0-8 were obtained ar~


are the same as those requested.

1 Partial success: the accesses in bits 0-8 were


obtained but differ fran those requested. This status
return can cccur if bit 0 of the requested access is 0
(is 1) and the opened file/catalog is a catalog (is a
file) .
2 !.cckout: due to usage conflicts, none of the requested
accesses was available on the file/catalog.
3 Not fotmd: Search permission was available on sane
intermediate catalog and the next file/catalog was not
found in it.

4 Protection violation: Search permission was available


on same intermediate qa~alog and the password specified
for the next file/catalog was wrong ..

5 Fail: Search permission was available on the next to


last catalog and none of the requested accesses ~~s
available on ~~e file/catalog.

6 Bad treename: Search permission was available on sane


intenredia te catalog and the next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

7 Fetch er ror : ei ther


(1) . An error of type 3, 4, 5, or 6 cccur red and Search
permission was not available on t.~e catalog in
which the search was being performed,· or

(2) Search permission was not available cn the next to


last catalog and Fetch permission was not
available on the file/catalog ..

Pub.1059 Page 159


TALLY OPEN

10 Off-line file: the file to be opened was an off-line


file. Bits 0-8 of status word 1 contain the accesses
that would have been available were the file cataloged.
Status ~rd 2 contains the DLD in the upper half, the
reel number in bits 21-26, and the preference and type
in bits 29-35. .

12 Fornat error: se: Chapter 8 for possible types of


errors.

40 Quotas exce€ded: ei ther

(1) The job has exceeded its alloted state vector


length; or

(2) Allocated storage for the next to last catalog is


over twice the p:rmissible MAX, ar.d files must be
erased fran this catalog before any can be opened ..

60 Out of storage: t..'e Executive's table of opened files


is full.

100 Access error: the initial catalog to search is not


open vii th Search permission; bi ts 0-8 of status 'NOrd 1
ccntain the missing p:rmission bit ..

120 Busy: anot.~er ccmnand is outstar:dir-L9 on the catalog


specified in XO ..

200 XO parameter error: XO dces not contain the file


reference number of a catalog.
220 Xl parameter error: t..'e pointer to t..~e tally word is
out of oour.ds.

240 X2 parameter error: X2 was nonzero .. ·

260 X3 parameter error: X3 dces not contain the file


reference number of a catalog.

320 X5 parameter error: X5 pointed to a tw:rword pair


which was aut of OOun::ls.

360 X7 parameter error: X7 was nonzero.

Page 160 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL TALLY OPEN

400 Recoverable error: an error occurred in reading an


intermediate catalog.

420 Unrecoverable error: information in an intermediate


catalog has been destroyed.

Pub. 1059 Page 161


TALLY REPIACE 4 - TRAPPING EXECUTIVE C~1)S

~ 500140: TALLY REPLACE

xo File reference number of initial catalog to search


Xl Pointer to a tally word

X2 File reference number of scratch file/catalog

X3 File reference number of alternate initial catalog

X4 (bits 0-3,5-8) must be zero, (bit 4) escape special


convention, (bits 9-17) trap bit mask

XS Pointer to two words for name of file/catalog replaced by


Executive

X6 Pointer to trap block

X1 Reserved for future use (must l:e zero)

AQ Passed to slave trap prcgrarn if file is slav'"e trapped

The specified scratch file/catalog replaces a file/catalog in the


file syste.rn (denoted by a stan:lard treename).

The TALLY REPLACE camnand atte.rnpts to open the file/catalog using


TALLY OPEN. If Read, Write, and Append permissions are available
in the catalog accesses and no other job has the file open with
Write permission, ~~en an atte.~t to replace the named file/
catalog wi~~ the specified scratch file/catalog is made.

If bit 4 (020000 octal, the esca~ convention bit) is set in X4,


then all special scanning conventions are disallowed, and the
replace will be trapped with a format error if~'1e treename
contains a special first name. The name and password of the
file/catalog to be replaced cannot l:e specified with the n/n
convention, and the replace will be trapped with a format error
if that is attempted. For rrore information on tally operations,
see Chapter 8.

Page 162 Pub. 1059


SYS'IEM PRCGRAMMING REF. MANUAL

The replacement will be made unless either the replacement would


cause the catalcg' s quotas to becane exceeded, or the catalcg IS
quotas are already exceeded. If the catalcg r s quotas are already
exceeded, then the replacement will be made only if the length of
the scratch file or MAX of the scratch catalcg is less than or
equal to the length or MAX of the file/c~talcg which it replaces.
If the MAX of the catalog is still exceeded after replacement,
then Append permission will be rerroved fran the accesses
'available Q'l the replaced file/catalcg.

If the replacement is successful, then the file/catalog specified


in X2 beccmes a catalcged file/catalcg open with the accesses
which ~re determined to be available, and the catalog entry is
correspondingly updated. If the replacerrent was unsuccessful,
then the file/catalog remains a scratch file/catalog and the
catalog entry remains unchanged.

A job which attempts to replace a file/catalcg first has its


catalcg ~rd alloi::Irent decremented by t..~e length of the scratch
file or of the scratch catalog header. If the replacement
succeeds, then this allotment is incre.'lEnted by the length of the
file or header of the catalcg which was replaced. If the
replacement dces not succeed, then this allotment is incremented
by the am::xmt of the original debit.

A file may not be replaced by a catalog, nor may a catalog be


replaced by' a file. Replace.'11ent of a catalcged file/catalcg dces
not affect the nam:, password, or access oord in the catalcg
entry. The replacement scratch file/catalcg must not have been
passed to the issuing job with the return bit set.

On canpletion of the camnand, a trap cccurs to thelccation


specified in X6. If the file/catalog was replaced successfully,
then the access bits obtained are returned in bits 0-8 of status
word 1, the new file reference number of the replaced file/
catalcg in bits 18-35 of status word 1, and the length of the
file or the MAX of the catalog in status word 2.

In addition to the access bits returned in status word 1 of the


trap, nine user access bits can be obtained by issuing a REQJEST
S'mTtJS. These user access bits are obtained fran bits 27-35 of

Pub. 1059 Page 163


the replaced file/catalog's access word if the file/catalog was
opened with a password. If the file/catalog was opened without a
password or if it was protected by a trap program, the user
access bits .are obtained from bits 9-17 of the access word.

If the command was unsuccessful, then status word 1 contains the


reason for the failure. If the status is 12 or 40 or greater,
the two 'M:>rds p::linted to by XS are undefined. If the status was
7 (fetch error) then the Oro words are cleared. Otherwise, the
last file name scanned is placed in the ~ words. (These words
need not 1::e aligned on a even-word boundary.) If the status
returned fran the replace is 12 (format error) ,then status word
2 will contain a substatus, and a tally count and character
PJsition pointing to the character where the format error was
detected. See Chapter 8 for rore information on format errors.

Status Returns

o . Successful: the file/catalog was replaced and is now


open with the accesses in bi ts 0-8.

1 Partial success: the file/catalog was replaced and is


nCM open with the accesses in bi ts 0-8. Append
permission has been masked off since t.l-te searched
catalog I s MAX is exceeded.

2 Lockout: the cataloged file/catalog is currently in


use wi th Wri te pennission.

3 The desired file/catalog was not found in the searched


catalog.
4 Protection violation: Search permission was available
on sane catalog and the password specified for the next
file/catalog was wrong.

5 Unsuccessful: one of the Read, Write, or Append


permissions was not allowed.

6 Bad treenarre: Search permission was available on sane


intermediate catalog and t..l-te next entry in the treename
was not the last entry, but was the name of a file
rather than a catalog.

Page 164 Pub. 1059


SYS'IEM PRCGRAMMrNG REF. MANUAL TALLY REPI~

7 Fetch error: either

(1) An error of type 3, 4, 5, and 6 occurred and


Search permission was not available on the catalcg
in which the search was being }?erformedi or

(2) Search permission was not available on the (N-l) st


catalog and Fetch permission was not available on
the file/catalcg.

11 REJ?L.P...cE disall~: the narred file/catalcg is a device


file.

12 Format error: see Chapter 8 for possible types of


errors.

40 Quotas exceeded: either

(1) The length of tl1e scratch file or catalcg header


exceeds the job r s remaining catalog word
allotment, or

(2) The specified catalcg's MAX is exceeded, and the


length of the scratch file or ~ of the scratch
catalog is greater than the le~t.' or MAX of the
file/catalcg to be replaced.

60 Out of storage: ei~~er

(1) The Executive's table of opened files is full, or

(2) A new entry had to be made in the catalog for the


replacement and ei~~er

(a) The catalog already had 4095 entr ies;

(b) The Executive could not allocate sufficient


storage for a required extension of the
catalogi" or

(c) It is not possible to appeoo to the catalog


since it either is a core catalog or is
already allocated in twelve fragm::nts.

Pub. 1059 Page 165


TALLY REPLACE 4 - TPAPp:m:; EXECUrIVE ~

100 Access error: the initial catalog to search is not


open with Search permission; bits 0-8 of status word 1
contain the missing permission bit.

120 Busy: another operation is outstaooing on' either the


catalog or the scratch file/catalog.

200 XO parameter error: XO does not contain the file


reference number of a catalog.

220 Xl parameter error: the pointer to the tally word is


out of 1:our.ds.

240 X2 parameter error: either

(1) X2 dces not contain the file reference nLlItlber of a


scratch file/catalog;

(2) The scratch file/catalog was passed to the issuing


job with b,e return bit set;

(3) The ~ of ~~e scratch file/catalog does not


match tL,e type of the file/catalog it is to
replace; or

(4) The scratch file had a preference of 0, 1, 2, or 4


and can only replace a file in a core catalcg.
260 X3 parameter error: X3 is nonzero and does not contain
the file reference number of a catalog.

, 300 X4 parameter error: bits 0-3 or 5-8 of X4 were


nonzero.

320 XS parameter error: X5 r:ointed to a t~fHOrd pair


which was cut of OOlli-xJS.

360 X7 parameter error: X7 was nonzero.

400 Recoverable error: an error cccurred in reading the


catalcg.

420 Unrecoverable error: information in an catalog has


been destroyed.

Page 166 Pub.1059


SYS'IEM PRCGRAMMnX; REF. MANUAL TRUNCA'IE

M-1E 500107: TRONCA'IE

xo File reference number of file


X6 Trap location

A Length

The file specified in XO, which must be open with Write arrl
Append permissions, is truncated to the length specified in the
A-register. If the file's read/write pointer points beyond the
new end of the file 1 it is reset to point to the end of the file.
Upon completion of the canman:1, a trap cccurs to the lccation
specified in X6.

A TRONCA'lE camarrl issued at the slave end of a ccmmunication


file will generate a special interrupt number 14 (slave end
issued TRUNCATE) at the master end. The secorrl wurd of the
special interrupt will contain the length specified in the
A-register. If the cammunication file is busy, either because
another end has an operation outstanding on it, or because
another end has reserved it, the slave end issuing the TRUNCA'IE
cornnand will be trapped with a status of 6. If the job at the
master end of a cammunication file is not accepting special
interrupts when a slave end issues a TRIJNCATE" then that slave
end will be trapped with a status of 7. A TRm..iCATE camano
cannot be issued on the master end of a communication file.

A job which trun:::ates a scratch (cataloged) file will have its


scratch (catalog) word allotment incre.rnented by t.~e nurnl::er of
words truncated from the file.

Status Returns

o Successful: the file was truncated to the specified


length.

1 Unsuccessful: the specified length is lo~er than the


current length of the file.

Pub.10S9 Page 167


TRUNCATE . 4 - TRAPPING EXECIJI'IVE CCM1ANI::S

6 Communication file busy: the communication file at


whose slave end this canmand was issued is busy b€cause
aoother en:] has an operation outstarrling on it or has
reserved it.

7 The master end of the communication file at whose slave


eoo this ccmnand was issued is not accepting sp€cial
interrupts.

20 Status was reset on the TRUNCATE.

100 Access error: the file is not oP2n with Append and
Wri te permissions; bits 0-8 of status Yw'Ord 1 contain
the missing access bits.

120 Busy: another canmand is outstarrling on the file to be


truncated.

200 XO parameter error: XO is zero and does not contain a


valid file reference number, or contains the file
reference number of a device, job, or master communica-
tion file.

Page 168 Pub. 1059


SYSTEM PRCGRAMMrNG REF. MANUAL ONCATALCG

Mv1E 500104: ONCATALCG

xo File reference number of cataloged file/catalog

X6 Trap location

The cataloged file/catalog, which must be open with Read, Write,


and Append permissions, becomes a scratch file/catalog with Owner
and eXecute/Search permissions added to its accesses if not
already present. The catalog entry for the uncataloged file/
catalog is destroyed. Uf:on a::rnp1etion of the ccmmand, a trap
occurs to the location specified in X6.

A job which successfully uncatalogs a file/catalog has its


scratch word allobnent decrerrented by the length of the file or
of the catalog header. At the same ti.rr.e its catalog word
allotIrent is incremented by t.~is am::;unt plus t.~e length of the
catalcg entry.

Status Returns

a Successful ..

1 The file/catalog is not cataloged ..

40 CUotas exceeded: uncatalcging the file/catalog would


cause the job's remaining scratch 'M:>rd allotment to be
exceeded.

100 Access error: t.~e file/catalog is not open wit.., Read,


Write, and Append permissions; the missing p:rmission
bits are set in bits 0-8 of status word 1.

120 Busy: another ccrnnand is outstanJing on t..'1e file/


catalog.

200 XO parameter error: XO does not contain t'le file


reference number of a cataloged file/catalug, is zero,
or is the file reference number of a device file.

Pub.l059 Page 169


UNCATALCG . 4 - TRAPpnx; EXEcurIVE CCMw!ANJ:S

400 Recoverable error: an error occurred in reading the


catalo:.:r.

420 Unrecoverable error: information in .the catalcg has


been destroyed.

Page 170 Pub. 1059


SYSTEM PRCGRAMMING REF. MANUAL WRITE

M-1E 500134: tti1UTE

Xl Points to pointer to memory location Ml (may not be zero)

X2 File reference number of destination file (may not be zero)

X4 Flag bits

X6 Trap location

X7 Points to number of words N to write into destination file

N words starting atmemory location M1 are written into the


destination file, starting at the current location of that file's
read/write p:>inter. write permission is required on the
destination file if the write will alter any existing data in the
destination file, and app:n:1 permission is required if the write
will make the destination file longer. If the end of the issuing
job's storage is reached, an errl-of-file corrlition cccurs and
data transmission stops. If any of the words transferred to t.l-:le
destination file are outside the range of that file, and the file
is rot opened with Append permission, an er.d-of-file corx::1i tion
cccurs an::1 data transmission stops. l"11;:On canpletion of the copy 1
a trap cccurs to the location specified in X6, and the read/write
pointer for the destination file is upJated to PJint to the word
beyond the last one wr i tten.

A WRITE issued at the slave end of a communication file will


generate a special interrupt number 12 (slave end issued WRITE)
at the master errl. The secorrl interrupt word will contain t.L~e
length of the WRITE. No data will be transferred until the
master em issues a corresp:Jnding READ or COPY. (See the
descripticn of camunication files in Section 5.1.) If t..~e cern-
munica tion file is busy, ei ther because another em has an
operation outstaOOing on it, or because another end has reserved
it, the slave end issuing the WRITE canmand will be trapp:Ci with
a status of 6. If the jcb at the master em of a canmunication
file is not accepting special interrupts, the slave erd issuing
the wE'rE ccrnrrand will be tra~::ed with a status of 7.

Pub.lOS9 Page 171


WRITE 4 - TRAPPING EXECUTIVE CQv1MANDS

The flag bits in X4 have the following meanings:

Bi t Function
0-8 CUrrently unassigned. Must be zero.
9 Must be zero unless X2 contains the file reference
number of a master communication file. In that
case, ~~e corresponding slave end will be trapped
only if a oonzero status return occurs or if this
bit is zero.
10 Must be zero unless X2 contains ~,e file reference
number of a slave ccmmunication file or shared
file. In that case, the ccmmunication file or
shared file will be reserved for the em issuing
the WRITE if this bi t is one. Ot.~erwise it will
be released.

11-17 Must be zero.

Upon L~itiation of a WRITE command into a scratch (cataloged)


file which is open with Append permission, the job's scratch
(catalog) word allotment is decremented by the amount by which
the destination file may t.e extended. UpJn canpleticn of the
wlUTE command the job's scratch (catalog) THOrd allotment is
incremented by ~~e number of words charged to this allotrr~nt but
not appended to the destination file.

If the status return in status word 1 is not between 100 and 360
on o:mpletion of the WRITE command, then status word 2 contains
the difference between the number of words transferred and the
number of words requested (i.e. it contains minus the nurober of
words rot transferred). If the status in word 1 is between 100
and 360, then status word 2 is zero. If the destination file is
a device file, then the lo~r half of status "HOrd 1 contains the
status return from that device.

The cbservant reader will notice ~,at the WRITE command is


treated as a special case of the COPY command in which roth XO
and X3 are assumed to contain zeros.

Page li2 Pub. 1059


SYSTEM PRCGRAMMING REF. M.l\NUAL

Status Returns

o Successful: all words were transferred.

1 Source file exhausted: same words were requested but


not transferred fran main rnerrory, since the en:1 of the
issuing' job's storage was reached.
2 Destination file exhausted: sana words were not
transferred because the destination file was full and
was not open with Append permission.

3 Command inappropriate: the WRITE was issued at the


master errl of a' canmunication file wi thcut having a
corresp:Jnding READ canrnand outstarrling at a slave er:d
of that file.

4 The source file pointer is out of bounds: eit~er,

(1) The p:>inter was initially out of l:ourlds;

(2) A MEMJRY RECUEST released job storage involved in


the write; or

(3) An attempt was made to write, fran the pure region


of a job file which was S"'wapp:d out of main
memory.

5 The destination file pointer is out of munds: ei ther ,

(1) The p:>inter was initially out of bounds;

(2) The other en:1 of a canmunication file issued a


MEMJRY REQUEST which released job storage involved
in the write; or

(3) An attempt was made to write into the pure region


of a job file which was swapP=d out of main
rn::n¥Jry.

6 The oommunication file at whose slave end this canrnand


was issued is busy, ei t..'1er Cecause another eoo has an
operation outstanding, or because another end has
reserved t~e communication file.

Pub. 1059 Page 173


WRITE 4 - TFAPPING EXECUrIVE ro1MANI:6

7 The master end of the oammunication file at whose 'slave


end· this ccmmandwas issued is not accepting special
interrupts.
20 Status was reset on the WRITE ccmmand.

40 Quotas exceeded: it was J:X)ssible for the WRITE canmand


to exceed the job I S remaining scratch or catalog' word
allotment; no words were transferred. .

60 Out of storage: the Executive could not allocate


sufficient storage for a required extension of the
destination file.

100 Access error: the destination file is not open wi~~


the necessary Wr i te or Append permission. Bi ts 0-8 of
status word 1 contain the missing permission bi ts.

120 Busy: anot..~er q:eration is outstarrling on the


destination file.

220 Xl parameter error: Xl is zero or points to an


out-of-l:cl.Jl"lds location.

240 X2 parameter error: X2 dces not contain the file


reference number of a file.
300 X4 parameter error: X4 contains L,valid flag bits.
360 X7 parameter error: X1 p::>ints out of Ccunc1s.

400 Recoverable error: an errorcccurred during trans-


mission of data. The l~r half of status word 1
cootains the status fran the device which genera ted the
error. This return can cccur if a device file is being
written via a ccmmunications file and the issuing job
is swapped aut of main meIlX:)ry.

Page 174 Pub. 1059


Chapter 5
Communication Files

A communication file is a pseudofile which allows direct


communication between jobs. A communication file has a master
end and one or !TOre slave ends. Each em appears similar to an
ordinary file. It has a file reference num1::er which rray be used
as a param:ter for certain Executive calls, principally the COpy
comnand. Other calls which may be llSed wit., communication files
are DRIVE, Pft.8S, CLCSE, REQUEST srATUS, RESET STA'IUS, TRUNCATE
(or SCPATal) , and SEI' POINTER.

This chapter describes how ~~ese operations affect ccmmunication


files and explains other features related to ccmrnunication files.
An extended example can be foum at the errl of the chapter.

5.1 copy Commands

The Copy comnand ar:d its variants, READ am WRITE, are used to
perform the pr~ary function of ccmmunication files: ~~e direct
transfer of data between jobs. Generally speaking 1 data which is
copied 11 intoll one em can be copied "out of ll the other em. Data
transfer is always initiated at a slave end, and takes place
between that slave end and the master em.

5.1.1 Slave End copy Comrnams

A COPYcomnand involving a slave end of a communication file may


be issued at any tirn= that the carmunication file is not busy
(see Secticn 5.5), and uses the same format as a COpy canmar.d
involving 011y ordinary files (see COPY MME). Besides ~~e

Pub. 1059 Page 175


SYSTEM P:RCGR»lMING REB~ MA.NUAL

restrictions normally imposed on the COpy command, the following


must be observed:

(1) If the COpy source file (specified in XO) is an end (either


master or slave) of a communication file, the COpy
destination file (specified in X2) may not be. In other
words, only one canmunication file em may be specified as a .
parameter for a given copy canmand.
(2) If the other file involved in ~he copy is a device file (see
Chapter 6), then the ultirrate source or destination of the
data must be'main memory. Since this is determined by the
job at the master end of the ccmmunication file independ-
ently of any action which the slave end job can take, it is
not reconunended that copy canmands be attempted between
device and communication files.

When the slave em issues a COpy canmand, the job holding the
master end is notified by a special interrupt of its action.
(See "Special Interrupts", Section 1.4.2). Data transfer dces
not take place until the master end issues a corresponding copy
cornnand. It should be noted, therefore, that copy canmand
operations issued at the slave end of a communication file may
take a comparatively long time to complete. If the master end
job is not accepting special interrupts, no copy canmands are
possible en the cormunication file. Any attempts are rejected
with t..;'e status of "other eoo not accepting specials" (7).

The total length of data transferred (barring other errors) is


the lesser of that requested at the slave end and that requested
at the master. The end requesting "teo many" words is trapp:=d
with the status "source exhausted" (1) or "destination exhausted"
(2), as at;:propriate (unless the master em job exercises the
"no-trap" option - see below). This means that these statuses
need not have their normal meaning on communication file COPY
carrnands. On an ordinary file, these statuses would mean that
further READ or w~T.E canmands are futile; however, they may
represent normal and ,expected returns on communication file
operations.

Page 176 Pub. 1059


5 - ~ICATICN FILES

5.1. 2 Master End COpy Ccrnmands

As roted al:ove, a copy camrand may only be issued at the master


end after the job at that er:d has been notified by a special
interrupt that a COPY has been issued at a slave end. It is
imperative that the job holding the master end be accepting
special interrupts (have a valid, nonzero, special interrupt
tally word - see Section 1.3). If it is not, all COPY camrands
at slave ends will be rejected with the status of "other· end not
accepting specials (7).
If

When the master end job receives a special interrupt indicating


"slave issued ~l)" (a job requested data transfer fran a slave
end of the communication file), it should issue a copy (or WRITE)
ccmnar.d transferring data to the master em. Similarly, in
response to a "slave issued WRrlE" special, it shculd issue a
read-type cammand. (Types of special interrupts are described in
Section 1. 4 .8). The same restr ictions which apply to slave errl
copies also apply to the master en:1. That is, only one of the
files specified in a COpy camrand may be an en:1 of a ccrrmunica-
tion file, and copies between a device file ar~ communication
file should not be attempted. The previous remarks on t.~e
source-exhausted and destination-exhausted statuses also apply to
the rtEster end. Ho~ver, since the length requested by t..~e slave
end is contained in the special interrupt pair, it shculd always
be fOssible for the master end job to predict the file-exhausted
statuses.

wben copying to or fram the master end of a communication file, a


file pointer shculd not be specified (Xl or X3 should be zero).
This is because the slave end job has already completely
specified the de~tination or source of the data to be copied
through the canmunication file. If a file pointer is specified,
it will be checked for validi ty am then ignored.

Once the master em job has received the special interrupt, it


must eventually issue the corresponding COPY ccmnar.d, unless it
resets status on the master errl (see Section 5.5). Any other
opera tion .on the master en::1 (except REQUEST STA'IUS) will be
rejected as "inappropriate" until the COpy camrand is issued.

Pub. 1059 Page 177


5.1.3 The "No-Trap" Cption

When the master end job issues its COpy canmand, the usual action
taken by" the Executive is to transfer the requested data and then
to trap the copy at l:oth er.ds (master arrl slave) involved. The
comnunication file then reverts to an idle or reserved state,
depending en the option selected by the slave end job (see
Section 5.4). Ho~ver, when the master end COpy camnand is
issued, the "no-trap" option may be specified by setting the
appropriate flag bit in X4 (see COPY MME). In this case, when
the data has l:een transferred, and if the master end status is
"successful" (0), the slave end job is not trapp:d. Instead, the
slave end COPY remains outstaming an:1 rrore master end copy
comnands rray be issued to satisfy any part of the slave em f s
request that was not fulfilled by a previous COPY. If the status
presented at the master er.d is not "successful" I the slave end is
traB?€d as if the option had not l:een specified. In other words,
the option has no effect in this case. The no-trap option allows
the master errl job to satisfy tJ.'e slave em's request in a
piecemeal fashion. For an example of the use of the no-trap
option, see Section 5.6.

5.2 Non-ropy Ccmmands

Communication files are temporary entities, existing only as long


as the rr.aster end and at least one slave em exist. If either
the master end or all slave er~s are closed, the ccmmunication
file disappears. Thus t.r,e file reference nUITl!:er of an end of a
communication file is an L~valid parameter for many Executive
calls dealing with the catalcg structure, such as OPEN, ~...sE,
CATALCG, or REPLACE. Intended. for carmunication, the eros of
carmunication files cannot l:e "run". An attempt to do so will
result in a parameter error status. Many other Executive calls
are similarly restricted to files other than communication files.
Those oommands which can be used with communication files are
discussed here.

Page 178 Pub. 1059


5 - a:Mv1UNICATICN FILES

5.2.1 REQUEST STATUS (Master End)

A RECUEST STATUS can be issued to the master er:.d of a ccmmunica-


tion file, and will produce the same four-word status block as
for an ordinary file (see REQUEST STATUS MME). The typ= field of
the status block will indicate master cammunication file.
However, the other fields (access, preference, length, pointer)
are used by the Executive to maintain the current state of the
communication file and will frequently contain meaningless
information. Under certain circumstances, however, useful
information may be extracted from these fields.

The two high-order user access bits (bits 9 and 10) are used to
indicate wnen a slave end has issued a COpy (to which the master
end has not yet re5pJnded). B$CW (bit 9) will 1::e on if (and only
if) a slave end has issued a write-type canmand. B$CR (bit 10)
will be Q'l if a slave end has issued a read-type command. In
either case, t.a.'e preference, length, and pointer fields will
reflect the state of the file at the far end of t.a.'e ccmmunication
file; i.e. the other file involved in the slave end job's COpy.

5.2.2 REQUEST STATUS (Slave End)

A RECUEST STATUS to the slave end is treated quite differently.


It is essentially a variant of the READ camnand. 'Wnen the slave
end job issues it, a "slave issued request status" special
interrupt is generated at the master end job to write complete
status information to the master em. This infonnation is
presented to the slave end job as its status block, and no status
information is provided by the Executive. No checks are made on
the format of this information, and the master eoo job can write
whatever it wishes. However, systemccnventiondictates that the
first three words of status information should correspond in
fornat to the status block provided by the ExecUtive for an
ordinary file (see REQUEST STATUS ~<1ME) and should shOW' a type of
slave ccmmunication file. The master end job writes status
information with a COPY or WRITE command, exactly as if the slave
end job had issued a READ command. It may exercise the no-trap
option if it desires.

Pub. 1059 Page 179


5.2.3 DRIVE (Master End)

Data transfer may not be requested at the master end of a


communication file withOut prior action at a slave end. It is
sometimes desirable to allow the master end job to initiate a
chain of events involving the communication file, and the DRIVE
cornnand can be used for this purpose. wl1en the master end job
issues a DRIVE, a special interrupt is generated at a slave end.
(The selection of the slave end to recei ve the special, in cases
where nore than one slave end exists, is discussed below.)· The
type of special interrupt is determined by the drive type given
in bits 0-17 of the A-register on the DRIVE cornnand. The valid
DRIVE types at the master end of a communication file are:

(1) "Read canmunication file" drive: A drive of type 1 (and b.'e


corresponding special interrupt) is conventially used by the .
master end job to signal a slave end job that the master end
job has data which the slave end shculd read. The master
er:d job may not simply write directly into the ccmmunication
file, since only a slave end may initiate data transfers.
When the drive is issued, a special interrupt is given to a
job holding a slave end. If the communication file is not
reserved to any slave end (see Section 5.4) 1 the special is
giva~ to the lowest job which holds a slave end and which is
accepting specials (see Section 1.4). If a slave eoo has
t..'e file reserved, the special must be given to the job
holding that end, or not at all. If no job ITEets t..l1ese
criteria, t..l1e master end job has its DRIVE trapped with a
status of "other end not accepting specials" (7).

(2) "Break" drive: A drive of type 3 (and the corresponding


speciaL interrupt) is conventionally used to notify a slave
em job of sane sort of "panic-stop" condi tion. Its rrost
typical use is with a tenninal camunication file, to
indicate the receipt of a break signal fran the terminal.
Since one of the inteooed purposes of this drive is to
request the termination of runaway slave jobs by a higher
job in the tree, this drive is treated specially by the
Executive. If no slave errl has reserved the caranunication
file, the special is given to the lowest job in the job tree
which holds a slave end, which isacceptL~g specials, and
which has eXecute (nbreakn) ~rmission on its end of the
communication file. If a slave end has reserved the file,

Page 180 Pub. 1059


5 - mMJNICATICN FILES

the special is given to the lowest job rr.eeting all these


corrli tions, and which is also not lower than the job holding
the reserving end. Thus if the job holding the reserving
er.d meets all the other qualifications, it will receive the
special. If no job can te foun:l meeting these criteria, no
S}?eCial interrupt will be given, and the DRIVE ccmmand is
trapp:d with the status of "other er:d not accepting
specials" (7).

If a SjpeCial is given to a job holding a slave end of a


communication file due to a drive issued at· the master end, then
the communication file will automatically be reserved to that
job.

5.2.4 DRIVE (Slave End)

Certain drive ~s may be issued at a slave end of a communi-


cation file to generate special interrupts at the master er:d job.
In particular, a set mode drive (type O) or a device drive (type
l2) may l:e issued. (Only these t~s are legal.) The two drives
will generate the corresponding special interrupts (set mode and
slave-issued drive) at the job holding" the master em. If the
master end job is not accepting specials, the DRIVE will be
trat=Ped with the status of flother er:d not accepti.'1g specials lf
(7). A .set m:de drive is conventio~..ally used to specify
directions for the handling of data to be transferred through the
communication file. For terminal cammunication files in
particular, it is used to set input arrl output rrcdes (see DRIVE
MME). The exact interpretation of a "set nx:de" special interrupt
among the jobs holding ends of ~,e communication file is a matter
of convention. Device drives are not normally used on communica-
tion files but are permitted by the Executive.

5.2.5 TRUNCATE, SCRArol, and SEI' POINTER (Slave End Only)

These commands may be issued to a slave end and will generate


special interrupts at the master errl job, notifying it of the
action at the slave end. wl1en a slave en:1 jcb issues a TRtiNCATE
to the slave eOO, a "slave-issued truncate" special is generated.
wl1en the slave end jcb issues a SEI' FOINrER, a "slave-issued set
pointer" special is give..'1 to the master em job. A SCFA'IOI

Pub.I059 Page 181


issued to a slave end generates a "slave-issued truncate" special
specifying a length of zero. As wi th DRIVE, the "other end not
accepting specials" status (7) can occur. Wnen issued to a slave
end, these comrrands will release the reservation on the
communication file, if it was reserved to the end at which the
cc::mnand was issued. (See also Section 5.4.) These ccmrnands have
no other effect on the file, and it is b.'e responsibiIi ty of the
master end job to take any appropriate action upon receipt of the
special interrupt.

5. 2. 6 PASS and CLCSE

These ccmmands are the means by which ccrnmunication files are


crea ted and destroyed, and addi tional slave ends are added and
lost. A complete description of the use of these comrrands with'
ccmmunication files is given in Section 5.3.

5.2.7 RESET STATUS

Since several jobs can be affecting. or attempting to affect the


state of a communication file, the business of rnaintaLl"ling t..~at
state, and consequently of resetting it, becanes rather
corrplicated. Section 5.5 is devoted to explaining the various
possible states of a comnunication file arrl t..'1e role of RESET
STATUS in mcdifying its state.

5.3 Creation a~ Destruction

A communication file is initially created by a create-type PASS


cc::mnand (or by the implicit PASS available in b.'1e RON command) .
A communication file will be created for a job tNhich issues a
PASS specifying a file reference number of zero to be passed, and
which turns on the communication file bit (bit 1) in the access
to pass. The file reference number returned to ~,e passing job
in the trap of the PASS (or in the pass list of a RUN comrrand) is
the file reference of the master errl. This end cannot be passed;
it remains with the job which created it until t..i1e communication
file is destroyed. The job to which the PASS is issued receives
the file reference number of a slave errl in a "passed file"

Page 182 Pub. 1059


5 - CCMMUNICATICN FILES

special interrupt (see types of special interrupts in Section


1.4.8) .

The master end is always allowed all significant access


permissions. The slave errl is allowed whatever accesses are
specified in the PASS command. These accesses need not include
11 break" (eXecute) permissioni if they do not, hcwever, the master
end job will never be able to issue a break drive successfully.

Once created, a slave end may be passed, subject to the


restrictions which govern the passing of an ordinary file (see
pp...ss MME).If a slave end is passed without the return bit set
in the accesses, it becanes permanently unavailable to the
passing job (as is the case wit.., an ordinary file). Its file
reference number at the passing job beccmes invalid arrl may be
reassigned by the Executive to the next file T,.mich the job opens
or receives via a PASS. Unlike an ordinary file, if a slave end
is passed with the return bit set, it dces not becane busy.
Instead, the passing jcb may continue to use its slave end, and a
new slave end is created for the job at the receiving er..d of the
PASS. For this reason, a canmunication file may be passed Irore
than once (via a PASS canmand or iiTPlici t P.P-BS on a RUN) and have
rrore than one slave end. Once a job has passed its slave end
wi th the return bi t set, it may not CLOSE or P.P-BS it again until
the r:ewly created slave em is returned (i. e. closed by the
receiving jcb). The ends of a canmunication file are linearly
ordered fran lO'Mest (rost recently created link in the chain of
passes) to highest (master end) .

Note that it follows that only the 10'Mest slave end can be
closed, since any higher slave ends have been passed, and cannot
be closed until the passed em has been returned. wl1en the
lowest slave em is closed, if it has been passed to the clos~"1g
job with the return bit (is not the highest slave end), that er.d
disawears. The job holding the next lowest slave er.d is
notified by a "returned file" special interrupt (if it is
accepting sp€Cials) that the file has been returned. This
precess can take place even if other ends of ~,e communication
file are busy with data transfer. or other operations (see Section
5.5). The creation or destruction of extra slave ends is a
process local to the ends being created or destroyed and does not
involve the canmunication file as a 'Nhole.

Pub.1059 Page 183


SYSTEM PRCGRA\1MING REFEREOCE MANUAL

On the other hand, when the last remcunlng slave end has been
closed, or when the master errl is closed (if ever), the entire
carmunication file is "destroyed. Any ends that rerrain after the
communication file is destroyed are changed to a special file
type called a "non-file" (13), and the jobs holding t.'ese
non-files are notified by file-closed special interrupts that the
communication file has been closed. The file reference number of
a non-file is an invalidpararneter for any command except RESET
S~S or CLOSE. However, the file reference number is not freed
for reassignment until the job acknowledges the receipt of the
special interrupt by closing t.~e non-file. It is possible for
both ends of a two-ended ccrnmunication file to be closed
sufficiently close together in time to be considered simulta-
neous. In this case, no non-files are created, and no special
interrupts are generated. Note ~~at a job using camrnunication
files should be prepared to receive parameter errors on its
conmands, since the corrarunication file can l:e destroyed by the
jobs at the other ends at any tine, leaving the job in question
wi th a non-file. If the job is not accepting specials, this
parameter error could be ~~e only indication that the communica-
tion file no longer exists.

5.4 Reserving t.'e File

It is sornetLues desirable for a job at one end of a cammunication


file to complete a sequence of operations on the file wi~~out
danger of interference fran ~'1e other ends. For example, one
slave end job might wish to write a message to the master and
t..i1en read a reply, wi thoot the possibili ty t.~at another slave end
might "sneak inn between its operations and read its reply fran
the master em. The precess of reserving the ccrnrnunication file
allows for uninterrupted sequences of operations. Either a slave
end or the master em rnay reserve the file, but only one end can
reserve it at any given time. Reservation by a slave end has the
effect of locking out all other slave errls from the ccrnmunication
file. Only local operations (see Section 5.5) can be issued at
the other slave ends. wl1en the master end reserves the file, all
slave ends are locked out.

Reservation is specified by setting the appropriate flag bit when


issuing those commands which allow communication files to be
reserved. A slave end may reserve a communication file on a

Page 184 Pub. 1059


5 - C'CMMUNICATICN FILES

COPY, READ, WRITE, or DRIVE cOllIiE.l1d. The master errl may reserve
the file only wi th a RESET STA'lUS cOllIiE.l1d.

Once the file has been successfully reserved, it remains reserved


until an operation is issued at the reserving e.r:d which dces not
call for continued reservation. There are t~ exceptions to this
rule, however:

(1) If the master end resets status on t.l-:le communication


file, specifying that it wishes to reserve the file,
then the slave errl reservation, if any, is nullified.

(2) If a break special is given to a slave end other than


the currently reserved slave end (because a break drive
was issued at the master errl), then tl1e current
reservation is nullified and ~~e communications file is
reserved to the end receiving the break special.

The actual reserving is specified by setting the appropriate flag


bit in an index register. B$RSilS (bit 1) is used to reserve the
file whose file reference number is in xo (the source file on
copy-typ: camnands), while B$BSVD (bi t 10) is used to reserve t..'1e
file whose file reference number is given in X2 (the destination
file in copy-type commands. (See the MME descriptions for more
details on formats for individual ccmmar.ds.) Any cperation which
does not explicitly specify reservation will release an existing
reservation (by the same end), except ~~at a REQUEST STATUS
issued to the master end will not release an existing reserva-
tim.

w"hen a slave em has reserved the file, it app:ars busy to all


other slave ends. Only local operations can be issued at the
other slave ends. The master em is not restricted by a slave
end reservation. When the II'aster em has reserved the file, it
appears busy to all slave ends. This gives the master end iob
the ability to "squelch" a runaway slave em job. oJ

The routing of special interrupts is also affected by slave erx:1


reservations. This insures that slave ends which are locked out
of the file do not recei~le sp:cial interrupts to which they are
unable to resp:md. The routing algorithm is described in Section

Pub. 1059 Page 185


SYSTEM PRC:GRAMMnK; REE'EREJ.~ ~"UAL

5.2. The general rule is that if a slave errl has reserved t..l1e
communication file, special interrupts generated by t..~e master
end DRIVE camnands will be given to the job holding that slave
end, or not at all. The only exception is a break drive: in
this case, if the reserving er:d does not have break permission,
the break special "l:ounces" up the ccmmunication file until it
finds a slave errl which does have break p:rrnission. Thus a
reserving slave errl job is not only guaranteed that no other
slave end is stealing its data, but also that its special
interrupts are not being led astray.

5.5 Busy States and Reset Status

Since many jobs may attempt to use a communication file at the


same time, same restrictions are necessary with respect to which
may CD what to the file an::1 when. The general rule governing the
use of the ccmmunication file is that only one operation which
involves the file as a whole may be in pro;ress at one tim:. The
"carmunication file busy" status (6) is a special status returned
to jobs which attempt to initiate operations on a communication
file en which anob.'1er "whole-file" operation is in pro;ress.
This status is also returned if the file is reserved to aoother
end. The regular "busy" parameter error status (120) is used
only when the em at which the operation is issued is busy; that
is, another operation has been issued at the same end and has not
yet been trapped.

Thus there are two different concepts involved here: that of the
communication file's being busy, and that of one of its ends'
being blsy. MJst operations involve i:oth the file ar.d at least
one of its ends; hcwever I there are certain local operations
which tie up only the em at which they are issued. There are
cases in which the file can be busy wid1cut any of its ends being
busy. Local operations may be issued even if the file itself is
busy.

The state of the communication file, as it appears at anyone


end, depends on the operations which have be€n issued at that ar:d
a t other eros. The function of the RESET ST.ATUS canmand is
always to force the em at wilich it is issued to be idle (not
busy). It rray have additional effects, depending on the state of

Page 186 Pub.I059


5 - <:r.MMtJNICATICN FILES

the ocmmunication file. These effects are discussed below, state


by state, beginning with those presented to a slave end.

5.5.1 Slave End States

First, the file and the slave end may both be completely idle.
In this state, any valid operation may be issued at the slave
end. If a RESET ST~ is issued, it functions as a purely local
operation. It has no effect and traps with gocd ·status.

Second, the file may be reserved to this slave end, with the
end's being idle. The file will thus appear busj ("cannunication
file bJsy") to all other slave ends. Operations may be issued,
hcwever, at the master end. If no operations are issued at the
master end, the file will apear idle to the reserving slave em,
and any valid operation may be issued. HO'M:ver I if t.l-:le master
end b.as an operation p€nding or has reserved the file, the file
will app:ar busy to the slave em, ar.d only lccal operations may
be issued. In ei ther case, RESET STAms functions as a local
operation, with the additional effect of releasing t.r,.e slave end
reservation. It will not, however, change the file I s busy state
if it is busy due to the action of the master end.

Third, a local operation may have eeen issued at the slave end.
Local operations are RESET STA.'IUS, PASS, and, if the end was
passed with the return bit set, CLCSE. If D.~e return bit is not
set and if CLCSE is legal, then this is the only slave end. In
this case, CLOSE causes the entire ccmmunication file to be
destroyed. Thus it is not a local operation, and can only be
issued when the file is not busy. (There is one exception to
this rule - see l:elow.)

When a local operation has been issued, the slave end THill be
busy. The state of the file as a whole isimrnaterial to the
. state perceived by t.fo}is slave em. Lccal operations may 1:e
issued even if the file is busy or is reserved to another end,
and do not cause the file to beccme busy. Neither PASS nor cr.CSE
can l:e reset. If a RESET STATUS is issued while a PASS is in
progress, it will have no effect and will trap after the PASS
ccmnand is canple te. Once a CLCSE canmand has been issued, the

Pub. 1059 Page 187


file reference number becomes invalid, so that no RESET S~~TUS
can be issued.

Fourth, the slave end may be idle, but t.he file may be reserved
to another end or may have an outstanding operation initiated
frem another end. In this case, the file appears busy ("comnuni-
cations file busy") to this end. Only local operations maybe
issued, except that a CLOSE may be issued at the last remaining
slave end whenever }:oth it arrl the master end are idle, even if
the file is reserved to the master errl. A RESEr STAIDS is a
purely loCal operation in this fourth case, and does not change
the file's busy state, since this errl is not responsible for its
being b.lsy.

Fifth, the slave end may be busy because a dr i ve-tyt;e operation


(DRIVE, TRI.JNCATE, SCPArol, or SET POINIER) has eeen issued at
this end. In this case, the file itself will also be busy, and
no c;:erations except local ones may be issued at any other end.
The operation may be reset by a RESEr STATUS if the special
interrupt has not already been give..?'l to the master errl job. In
any case the RESET STA'IUS will trap after the DRIVE has trapped.
The status on the DRIVE will indicate if the special interrupt
was given. Note that the DRIVE may also l:e reset by a RESET
STA'IUS issued at the master end. If a RESET STATUS is issued at
the slave end, any reservation specified in tJ.'e DRIVE will Ce
released.

Finally, the slave em may be busy because of a copy-tyt:e


operation (COPY, READ, WRITE, or REQUEST STATUS) issued at t.,is
end. This also has the effect of locking out all other slave
ends. The master eoo, of course, must issue t.~e corresp:mding
COPY cOTJInand, unless it issues a RESET STA'IUS. The action of a
RESET SI'ATUS issued at the slave end dep:ms ufOn whether the
master end job has already issued that COPY. If it has, then
both COPY ccmmands (master and slave) are trapped with the
11 s tatus was reset" status (20). Both ems beccme idle, as does
the communication file itself. Any reservation by the slave end
is released. On t.~e ot.11er hand, if the COPY ccmmand has not yet
been issued at the master end, the rraster errl job is notified by
a special interrupt ("slave issued reset") that its COPY is no
longer required. The slave em copy is traPt:e<i, toth ends eecare
idle, ar.d any reservation to the slave errl is released; however,
the file itself remains busy until an echoing RESET STA'IUS is

Page 188 Pub. 1059


5 - crM1L1NlCATICN FILES

issued at the master eoo. No operations except local operations


or CLCSE can Ce issued at any end until the master echoes the
slave's RESET STATUS. This restriction is inpJsed to prevent the
master end job frem being confused by a barrage of special
interrupts caused by slave end jobs issuing COpy and RESET STATUS
ccmnands in rapid succession. Thus, after a COpy has teen
issued, some positive action is· always necessary at the master
end before the file is idle again.

5.5.2 Master End States

The situation is complicated slightly at the master end by the


fact that the master em can Ce reserved with a RESET STATUS
ccmnand; however, it is correspondingly simplified by ~~e fact
that t.'ere is always exactly one master em of any given
comnunication file. The states visible at the master em are
discussed Celow.

First, the master eoo and the file may roth be idle. This will
te the case even if a slave er:d has issued a local operation. In
this state, the master er:d job may issue DRIVE, CLCSE, or REQUEST
STATUS ccmnands. A RESET STATtJS may be issued but will have no
effect unless it causes the file to be reserved to the master
end.

Second, the file may already be reserved to the master end.


Unless the last ra~ining slave end has been closed, any
operation may Ce issued at 1:.'1e IIE.ster em which could be issued
if the file were ccrnpletely idle. A RESEr STATtJS r,.;ill have no
effect other than to release the reservation, unless it specifies
to continue it.

A third case occurs when a local OPeration has been issued at the
master end. The only local operation which can be issued at the
master end is REQUEST STATtJS. The situation is similar to a
local operation at a slave errl; the master errl becanes busy, but
the state of t.'e file itself is not affected. REQJEsr ST..~ at
the rrester end cannot be reset. A RESET ST.A.....rrtJ""S will trap after
the REQ{;"'EST srATUS is ccmple te wi tho no effect other than
reserving or releasing t.~e file. A REQUEST STATUS issued at the
master end will not release a reserved communication file.

Pub. 1059 Page 189


SYSTEM PRCGRll.MMING REl'EREl'X:E MANUAL

Fourth, the master errl and the communication file are bot.., idle
(from the master's point of view) but a slave end has reserved
the file. From the master end, this is indistinguishable fran
the case in which the file is canpletely idle. A RESEr STATUS at
the rraster end has no effect on slave reservations unless it
specifies be reserve the file to the master end, in which case
the slave reservation is nullified.

The fifth case arises when a slave end has issued a drive-type
ccmnand but the special interrupt has not yet been given to the
master end job. This is clearly a rather transitory state. In
this case , the master em is idle·, but the file is busy. No
opera tion can be issued at the master em except REQUEST STAIDS
or RESET STATUS. If issued in time, a RESET STA'IUS will prevent
the special interrupt from occurring, and will cause the slave
end DRIVE to be trap-p:dwith the "status was reset" status (20).
Other than that, it has no effect other than possibly reserving
the file. The file will be idle after the special interrupt is
given or the RESET STATUS traps, unless another operation is
issued.

A sixth p::>sible state cccurs when a slave errl copy ccrnmand has
been issued, but the master end is .idle. In this case, all
operations other than the correct COPY response (except REQUEST
STlL'T'US, RESET srATUS) will be rejected as inappropriate. A RESET
S~S will cause the slave copy to be aborted and will return
the file to an idle (or possibly reserved) state. (The slave em
copy will be trapP=<l with the "status was reset Jt status.)

Seventh, the master errl may have issued an operation: eit.~er


DRIVE, on its own initiative, or copy, in response to a slave end
copy-type cperation. In both cases, bo~, the file and its master
end are busy. A RESEr STAT'JS will aJ:ort a COpy ccrnmand am
return the master errl and the file to an idle (or reserved)
state. A master em DRIVE cannot be reseti a RESET STA1US will
trap after the DRIVE completes, reserving the file if specified.

The case which has no real parallel to the slave end situation
occurs when the master end job has received a slave-issued reset
special interrupt and has not yet echoed it. Although the master
end is idle, no operation except cr..csE or REQUEST STATUS can be
issued to that end before a RESET STATUS is issued. O~~er

Page 190 Pub.1059


5 - <X'l«JNlCA.TION FILES

corrmands will be rejected as being inappropriate. The RESEr


STATL~ will return the file to an idle (or possibly reserved)
state.

Finally, when the master end issues a CLOSE, ooth it and the file
become .busy until all slave eros have been destroyed. The CLCSE
then traps and the master end is destroyed. A RESET STATUS
issued before the CLOSE traps will be rejected.

5.6 Usage Example

5.6.1 Creating a Communication File

SU'f!X)se that job A has run job B, tN'hich has in turn has run job
C. OUr p:::>rtion of the job tree t.~us looks like:

Job A now issues a PASS command to job B, S?eCifying a file


reference number of zero (create-type PASS) and access bits for
Read, Write, Append, eXecute ("break"), and canmunication file.
A communication file is thus created. Job A receives the,file
reference number for the master erXi (su-pp:lse it is 5) in the trap
of the PASS, and job B receives the file reference number of t.~e
slave end (supp:>se it is 7) in a "passed file" special interrupt.
The file is now idle.

Pub.lOS9 Page 191


SYS'IEM PRCGRAMMING REEEREN:E MANUAL

5.6.2 REQUEST STATUS fram a Slave End

Upon receipt of the I·passed file" special interrupt, suppose job


B attempts to get more information about its new file by issuing
a REQUEST STATUS. It therefore issues one to its file reference
7 (the slave end), requesting ten words. A special interrupt
(slave-issued read) is generated at job A, specifying a length of
ten yjC)rds and file reference number 5 (job AI send) • (See
Section 1.4 for a description of the format of a special
interrupt.) Job A ~~en issues a WRITE to file reference number 5
(the master end) for four words, placing a standard status block
in the first three words and a special identifying code in the
last TM:)rd. These four words are presented to job B as its status
block. Job At s WRITE operation is trapped with a status of
"successful ft (0), since all the data that job A requested were
transferred. But job B has its PEQOEST STATUS trapped with a
status of "source exhausted" (1), since only four of the ten
words it requested were available.

5.6.3 PASS at a Slave End

Suppose oow that uJ.:On exarnm~ng the data received on its REQUEST
STATUS, jcb B decides that job C should have the slave end. It
therefore issues a PASS to job C, specir]ing file reference
number 7 (its slave em) and access bits for Read, write, Append,
and break. By not setting ~~e return bit, job B effectively puts
itself out of the picture for the duration of the communication
file. Its file reference number 7 beccmes invalid, and job C
receives a passed file special interrupt specifying its file
reference number for the slave end (suppose it is 3) .

Suppose job C immediately issues a RON on a new job (job 0, of


course), specifying file reference number 3 as the first file in
the pass list, with access bits for Read, Write, Append, and
return. Jcb D is thus run with a slave em as its file reference
number 1. Since job C set the return bit, it retains its slave
end (still its file reference number 3). The diagram new looks
like:

Page 192 Pub. 1059


5 - c::cMMUNlCATICN FILES

FRN 5 (all accesses)


Master End

Corrmunication
File

(lowest)

5.6.4 copy Command with No-Trap Option

Job D now issues a COpy command from its storage to file


reference numl:er I for twenty v;ords. A" slave-issued write"
special interrupt is generated at job A specifying file reference
number 5 ard a length of· tW'enty. Job A issues a READ for ten
words, specifying the no-trap option by setting B$NTPS in the
flag bits. The first ten v;ords are then transferred fran job D's
menory to job A's memory, and job A is trapped with the
"successful" status (0). Job 0 is not trapp:d, since the master
end job (job A) specified t:..~e no-trap option.

Suppose job A now issues another ten-word READ, not specifying


the oo-trap option. The last ten w-ords are copied fran job D to
job A, arrl Coth jobs are trapped with the "successful" status.
The communication file is now idle again.

Suppose job C should row happen to issue a copy fran its file
reference number 3 (a slave end of the ccrnmunication file) to
some other file (its file reference number 4, for example), for
five r,..ords. Job A receives a "slave-issued read" special
interrupt. If job A then issues a w"'RITE for ten v;ords,
specifying the no-trap option by setting B$NTPO in the flag bits,
the first five words will be transferred fran job A's storage to
job C' s file reference number 4. Job C will b.'en be trapped wi th

Pub. 1059 Page 193


the "successful" status, while job A is trapped with the status
"destination exhausted" (2). Note that the no-trap option had no
effect, since the status presented at the master end was not
"successful" (0).

5.6.5 Aborted COPY and Break Drive

Suppose job D now issues a READ to file reference number 1. Job


A is ootified with a "slave-issued read" special interrupt.
However, job A decides that a break drive should t:e given. It
issues the DRIVE canmand. The drive is rejected with the
"inappropriate" status (3) Cecause the slave em has issued a
copy-type camrend. Job A therefore issues a RESEr STATUS
requesting the communication file to Ce reserved. Job D's READ
is trapped with the "status was reset" status (20), and the file
t:ecOfCES reserved to the master en::1. If job D attempts to reissue
the READ, it will receive the "ccrcmunication file busy" status
(6). Job A now issues the break drive. O'p:Jn checking, the"
Executive discovers that job D dces not have break :;:ermission on
its end of the ccmnunication file. If we sUp!=ose that job C is
not accepting special interrupts, job A r s DRIVE will t:e trapp:d
with the status of "other em not accepting specials" (7). The
file becomes idle, since job A's DPIVE had the effect of
releasing its reservation.

5.6.6" Slave End Reservation; Local Operations

Now consider what happens if job C issues a set mode drive


requesting reservation of the file. Job A receives the sp:cial
interrL~t (set mode, type 0). The file is now reserved to the
first slave em (at job C) .

Supt?Ose job D now" runs a new job (job E), passing it the slave
end with the return bit sat. It nay not pass break permission,
since it dces not have break permission to pass. The diagram is
now:

Page 194 Pub. 1059


5 - C'CMMJNlCATICN FTIES

FRN 5 (all accesses)


Master En

Communication File

I Reservation \
I
FRN 3 (RWA, break
Slave End 1

FEN I (RWA, return)


Slave End 2

return)
Slave End 3 (lowest)

Job 0 1 s implicit PASS is legal, since it is a lccal operation.


Any mnlccal operation attempted by jcb D TMJUld be rejected,
since the file is reserved to job C's end.

Similarly, if job E now atte.rnpts to issue a RECUEST STATUS on t..'e


file it was just passed, it will receive the "ccmnunication file
busy" status.

If job A now issues a "read ccmnunication file" drive, t..'1e


special interrupt will be given to job C (assuming it is
accepting specials). This will be true even if job E or D is
accepting specials, since the file is reserved to job C's em.
Sup!,x>se that job C, on receipt of the n read comnunication file"
special, issues a READ canmand, not specifying reserVation. The
reservation is released, arxl the file l:ec-.::mes busy until job A
issues the corresponding WRITE camnand. When it dces so, the
data is transferred, and t..l1e file l:ec-.::mes idle.

Pub. 1059 Page· 195


5.6.7 Master End DRIVE

Job A new issues another "read canmunicationfile" drive. Since


no slave end has reserved the file, the Executive attempts to
give the special interrupt to the lowest slave errl (at job E) •
However, let's su};p:>se that job E is not accepting specials.
Therefore, the "read camnunication file" special interrupt will
"bounce" up to job D. Assuming job D is accepting specials, it
will receive the special interrupt. Note that the cammunication
file is autanatically reserved to job D now. If job C were to
issue a READ ccmmand at this point, it would fail with ~,e status
"camnunication file busy" (6).

5.6.8 Illegal Actions

Supp:::>se job e new attempts to run a new job (this wculd be job F,
presumably), passing it an end of the file (passing its file
reference nl.1l1l1:er 3). The RUN is rejected because, although job
e's end (file reference number 3) is not busy, it has already
been passed an:1 cannot be passed again until it is returned.

Job A new issues a WRITEcarmand to the master errl. The WRITE is


rejected with the "inappropriate" status, since no slave end has
a READ outstanding.

Job D now issues a READ camnand. This is legal. On receipt of


the special interrupt (slave-issued read), job A issues a COPY
from the slave end of a different communication file to file
reference nl.lIilber 5 (our master em). This is illegal, since only
one of the files invelved in a copy may be t.~e end of a
ccmnunication file. The copy is thus rejected, withcut affecting
the state of t..~e camrunication file. If job A nO'.., issues a CLCSE
on the master em, it teo will be rejected, since job D' 5 :RE:Jl..D is
still outstanding.

Page 196 Pub. 1059


5 - ~ICATICN FILES

5.6.9 Destroying the File

With the file in this fouled-up state, job A issues a RESET


S~ to clear out job Dis READ and to reserve the file. It
then issues a crosE. Before the Executive can precess job A's
CLOSE, suppose that job E also closes its end of the ccmmunica-
tion file. Now things start hapt:ening. Job D receives a
"returned file" special interrupt due to the closing of job E's
end. This special is closely followed by a "file closed" special
as its file reference number 1 is changed into a non-file by the
master end CLOSE. Job C stili holds a slave er:d of the
disa~aring commUnication file. This end is changed to a
non-file, and job C receives a "file closed" special interrupt.
No rrore slave ems exist, so job A's CLCSE is trapped. Job A's
file reference number 5 beccrnes invalid.

Jobs D and C are still left with non-files. Job D issues a CLOSE
to its file reference number 1, and its non-file disappears. Job
C, though, Ceing a little slow to precess its file-closed
special, attempts to issue a set n:cde drive to what used to be
its slave end (file reference nllITl1:er 3). The DRIVE is rejected
with a parameter error status, since drives are not legal on
non-files. Job C finally closes its file reference number 3, and
the last trace of our ccmmunication file disappears fram the
system.

5.6.10 Passing Back a Ccmrnunication File

Not included in this example is the capability to create a


communication file for which the highest slave end is passed to
the creating job IS i.n'!Irediate supra job (PASSBACK). There is no
operational difference, however, between this type of ccrnmunica-
tian file and communication files created in the normal manner.

Note that since passing upward must be done when the ccrnmunica-
tion file is created, ~'1e file may backtrack at rrost one level up
the job tree. rrhis and any subsequent passing of the cr ea ted
slave end in the i.rrmediate supra jcb are otherwise subject to the
rules associated with the PASS ~~ regarding normal communication
files.

Pub. 1059 Page 197


" .

Page 198 Pub. 1059


Chapter 6

Device Files

When a slave job wishes to access a peripheral it makes use of a


device file. Device files exist for such peripherals as the
terminal ccntrollers and the high-speed printer. Device files
are always of type 6 (special catalcged file). They are
associated with nonallocatable devices. Since many devices have
specialized functions which a slave mode prcgram may wish to use,
the DRIVE ccmmand with function code of 12 (single device action)
or 24 (drive with OCW' s) is provided for this purpose. A typical
example is f1 rewind l1 on a magnetic tape handler. This chapter
describes the special features and restrictions of device files,
and special prcgramming tec..lmiques used with t..iJ.em.

6.1 General Information and Restrictions

Currently, all device files are catalcged in :PERCAT, a direct


sul:ca talcg of the master file directory. A slave job opens a
device file in the same way as i t ~uld any other file in t..J,e
catalcg tree (see OPEN MME). This file reference number thus
obtained can then be used as apara.rreter for a copy-type ccmmand
in order to transfer data to or from the device, or for the DRIVE
command to activate special functions of the device.

Since device files reflect configured features of the hardware,


they cannot be created, destroyed or altered as can normal
(allccated) files. Any attempt to use a special catalcged file
as a parameter for a RUN, ERASE, UNCATALCG, TRUNCATE, SCRA'ICH, or
REPIACE type ccmmand will be rej ected.

Pub. 1059 Page 199


Since all devices currently accessible as device files transfer
data be or from a medium which is essentially external to the
main ccmputer. system, the "length" of a device file is meaning-
less. It will always appear as zero to a slave user.

Because certain peripherals depend on the transfer of large


records in a single physical operation (magnetic tape), or of
records with a particular length (card equipment), the Executive
is unable be guarantee ~~at appropriate buffering 'will be
available in master mode storage to copy be~Heen a device file
and another noncore file. Thus, copy-type camnands are
restricted so that if one file in the copy is a nonallocatable
device, the other must be a core file or a job file. In general
a slave job will only transfer data between its own core (file
reference number 0 on a copy-~ camnand) and a device file. If
a copy between a device and a noncore file is attempted, it will
be rejected with a status of unr~lerable I/O error (420).

In addi tion, if a job copying bet'.veen its own core and a device
file via a communication file should be swapped out of core
before the copy can be initiated, the copy will not be able to
proceed, and will be trapped wi th a status of recoverable I/O
error (400). The ropy must then be reissued. Note that in this
case, the lower half of status return return word 1 will be zero.
This serves to distinguish from the case in which an error
occurred in tJ.'e actual transfer of data.

If a copy or drive wi~~ DCW's is successfully initiated bet'Neen


core and a device file, a section of the Executive concerned with
physical device q:erations is called. This section, called
Physical I/O (PIa) will attempt to transfer exactly one physical
record of data (whenever such a quantity is defined) for each
COPY ccmnand issued on a device file. Physical I/O can also be
called directly by the DRIVE ccrnmand in order to request special
fun:tions or transfer mre than one record to or fran the device.
Physical I/O prc::duces a status 'NOrd' based on the queue wurd
generated by the input-output multiplexer (ICM) in the
hardware-defined input-output sequence. The format of this
status word is as follows:

Page 200 Pub. 1059


6 - DEVICE FILES

s p -
y 0 MAJOR SUB- CUEtIE ICM ICM RETURN RECORD
N W STATOS STATUS ADDRESS alANNEL CENTRAL CODE COUNT
C E STATfJS STATUS RESI:cuE
R

a1 2 5 6 II 12 17 18 20 21 23 24 29 30 35

On a single device action DRIVE ccmmand this w~rd is returned to


the user in status return ~rd 2 of the trap. On a copy-type
command wnich involves device files or which results in a
recoverable error (status return 400), and on multirecord drives,
the upper half of this wOrd is returned in the lower half of
status return word 1. The lower half is not returned in this
case.

The var ious fields of this word have the following meanings:

SYNC BIT (Bit 0) - This bit is 1 whenever the status originated


in the ICM. If it is 0, the status was simulated by Physical
I/O. Statuses simulated by Physical I/O are discussed below.

POWER BIT (Bit 1) - If this is 1, the device in question is


powered off.

~OR STATOS (Bits 2-5) - This field contains the major device
status provided by the hardware. Major status 12, 13 and 15 will
occur only on devices controlled by a Microprogrammed Peripheral
Controller (MPC). The general meanings of these statuses are:

a - Subsystem ready (gca::1 status)


1 - Cevice busy ,

2 - Device attention (This normally indicates that the


device is in an inoperable con::1i tion which must be
corrected. by the ccmputer operator.)

Pub. 1059 Page 201


3 - Data alert (This normally indicates that some abnormal
cendi tion occurred dur ing the data transfer.)

4 - End-of-file condition

5 - Comrnandrejected (The peripheral subsystem did not


accept the canmand.)

6 - Intermediate condition (specific to ~~e type of device)

7 - Timeout status (This status is simulated by Physical


I/O when an operation has not canpleted in a reasonable
arrount of time.)
10 - Channel busy. A hardware or Physical I/O error has
occurred.

12 - MPC Device attention (The MPC detected an inoperable


device. This normally requires operator intervention
to clear.)

13 - MPC Data alert (The MPC detected an error in the data.)

15 - MPC Ccrnrnand reject (The MPC could rot precess the


canmand.)

SOBSTATUS (Bits 6-11) - This field contains additional


inforl1'ation aCout the operation just canpleted. It is specific
boi:J.' to the type of device am the major status. For formats ar.d
rore details, consult t.:.'e Honeywell peripheral subsystems manual
for the specific type of peripheral or the Honeywell GCOS I/O
Prcgrarrnning manual, DB8 2.

CPEOE ADDRESS (Bits 12-17) - This field contains the relative


address of the interrupt queue word for this operation, as it
would l::e generated by an ICC (in};Ut-output controller). This
field is oormally not of interest to the slave user, wi th the
following exception: A queue address between 40 &-rl 57 (octal)
represents a terminate interrupt, which is the normal way for
rrost cperations to canplete. A queue address eettHeen 20 and 37
(octal) represents an initiate interrupt, which usually indicates
an error, except on operations such as rewind tape or console
alarm which do not require the p:r ipheral subsystem to becane
busy. A queue acdress of a should only occur when a status is

Page 202 Pub. 1059


6 - rEVICE FILES

simulated by Physical I/O; other queue acdresses shculd never


ca:ur.

lOM ~~ STATUS (Bits 18-20) - This field represents the


internal status of the ICM up::>n termination of the operation. A
nonzero lOM Channel Status usually indicates an Executive or
channel failure. The meaning of these cedes is as follows:

o- No error
1 connect while busy
-
2 illegal instruction
-
3 incorrect ocw
-
4 incOnplete ccrnmarrl sequence
-
5 not used
-
6 parity error (peripheral to channel)
-
7 - parity error (lCM central to channel)

ICM CENTRAL STMUS (Bits 21-23) - This field contains the status
returned by ICM Central, which performs list service for the
channels. A nonzero status in this field indicates an Executive
failure. The status cedes are:

o - No error
1 - WR tally runout
2 - ~ TOCWts in a rcw
3 - LP'~ t:ourrlaiy error
4 - ~~attempted to change address extension from
restricted m::de
5 - IDCW encountered in restricted mode
6 - Character position inccrnpatible with size
7 - Parity. error fram channel

Pub.1059 Page 203


SYS'IEM PRCGRAMMING REE'EREl'l:E MANUAL

RETURN CODE (Bits 24-29) - This code is generated by Physical


I/O as a general summary of the result of the operation. Codes
are:

o- Good; no error
1 - Incomplete data transfer, but no error
2 - End-of-file condition. This can cccur on
magnetic tape or card reader.
3 - Recoverable error
4 - Unrecoverable error. Do not reissue the commar.d.
5 - Timeout status. This is always a simulated
status.

RECORD COONT RESIDUE (Bits 30-35) - This field has the number of
records requested minus the number actually transferred.

6.2 Device Drives

A number of device operations do not fall into the READ/W1trrE


categories. These are invoked by the DRIVE camnand (see Chapter
4). There are two kinds of device drives. Single action drives
change the state of the device. Drives with DC~fS transfer data
to or fran the device. Since drives are valid only for
particular device types; the abbreviations below are used to
indicate the device types for which a given operation is valid4

Abbreviation Device
CR . card Reader
CP card Punch
PR Line Printer
MT Magnetic Tape Handler
CN Console 'I'yF€wr iter
ON Datanet-30
MPMicroprogrammed Periph€ral Controller
OS Mass Storage Unit (Disk)
Ff7 Honeywell 716 Front End Processor

Page 204 Pub.I059


6 - IEVICE FILES

6.2.1 Single Action Drives

A single action drive has a cede of 12 (ectal) in the upper half


of register A. The lower half contains an IS-bit MJDE cede,
which identifies the operation to perform. These codes are:

Mbde Description

070000 (ME» Reset MPC. Puts the MPC into an idle state. This
shOJld be done l:efore it is reloaded.

070000 (CN) Reset console. Any pending interrupts fran the


console are cleared.

100000 (CR,CP ,PR,M!') Await-Ready. Wai ts for the device to l:e


in an operable cordi tion, unless the device p::JWer is
off. Traps with a bad status if power is off.

110000 (CR,CP ,PR,MP) Awai t-St=eCial.. Waits for a hardware


special interrupt to cccur on the channel to which the
device is ccnnected. 1-..s opposed to ~,e await-ready
drive, this canmand will wait even if the device po~r
if off. (Hardware special interrupts shalld not be
confused with the software special interrupts returned
to a slave job at location 20.)
140000 (ALL) Enable Error Recovery. Sets normal error
recovery m:de so that any appropriate recovery
prccedures are attempted by the Executive when an error
is detected.
150000 (ALL) Supress Error Recovery. Causes Physical I/O to
treat any future statuses generated by the device as
normal, and to pass them back to the caller inmedi-
ately, until an enable error recovery drive is set.
This mode is intended only for the use of hardware test
aOO diagnostic prcgrams,' and shculd l:e used with
caution.. Awai t-ready drives issued when this rocx:1e is
set will trap whether the device is ready or not, since
Physical I/O treats all statuses as ready. An ICM/MEM
interface error detected while this m:de is set will l:e
returned to the caller with a return code of 3
(recoverable I/O error) •

Pub. 1059 Page 205


SYSTEM PRCGRAMMING REE'ER&X:E MANUAL

200000 (CR,CP ,M!') Set Binary Merle. All subsequent copy-type


canmands will be done in binary m:de. Status on this
command is always simulated by Physical I/O.
200000 (H7) Set Normal ~e. I/O to the H716 will be done
with normal Read and Write commands.

210000 (CR,CP ,MI') Set Decimal or Mixed ~e. The inverse of


set binary m::rle.

210000 (PR) Set BCD M:de. BCD data is to be written to the


printer.

210000 (E7) Set Dump Mode. I/O to the H7I6 will be done with
Forced Read and Forced write ccmmands.
220000 (MI') Set· ASCII to EBCDIC Conversion MOOe. On output
data will be converted fran ASCII to EBCDIC. On input
data will 1:e converted fran EBCDIC to ASCII.

231000 (MT) Set 200 BPI. This can only be done on 7-track
tape handlers.

232000 (MT) Set 556 BPI.

233000 (MT) Set 800 BPI.

234000 (Ml') Set 1600 BPI. This can only be done on 9-track
tape handlers.

235000 (Ml') Set 6250 BPI. This can onl;r be done on certain
9-track handlers.

240000 (MT) Set Default High Density. This is usually 800


BPI. The value is set when t..~e system is initialized.

250000 (Ml')Set Default Low Density. This is usually 556 BPI.


The value is set when the system is ini tialized.

260000 (PR) Set ASCII i!bJe. A...c:crI data is to be wri tten to


the pr inter.

270000 (MT) Set File Protect

300000 (MT) Forward Space Record

Page 206 Pub. 1059


6 - IEVICE FILES

310000 (Mr) Backspace Record

320000 (Ml') Forward Space File. An end-of-file return is, of


course, normal on this drive.
330000 (Mr) Backspace File. The next read after this
operation normally results in an end-of-file return.
340000 (MI') Erase. This erases the tape. It should not be
confused with the Executive ERASE canmand.

340000 (CN) Alarm. This starts the console alarm ringing.

350000 (Ml') write Er.d-of-File. Writes a star:dard file mark


character an:1 errl-of-file gap. On a 7-track tape this
is 17(8). On a 9-track tape this is 23(8).

3600cc (Ml') Write Single Character. writes a single-character


record consisting of character cc. (This er.d-of-file
record may be treated improperly by other computer
systems .. )

370000 (MT) RewiOO

371000 (Mr) RewinJ and Unload. Both this and the rewind drive
trap immediately on initiate interrupts. An
awai t-ready drive can Ce issued if it is desired to
wait until the tape finishes rewinding.

6.2.2 Drive with ocw's '2 ~

A Drive with IX:'h's has a drive type of


The record count (number of records
~
t~~fer)
AU. AL has the MJDE.
is in bits 30-35
of AL. This rust be fran 1 to 63, or zero which signifies a
record count of 64. The number of rOrD I s in the OC'W list must Ce
at least as large as the record count.

Pub. 1059 Page 207


The data control 'MJrds (ro~' s) pointed to by register Xl have the
following format:

Bits Meaning
0-17 Starting memory address to/fram which to
write/read
18-21 Must be zero
22-23 Action code
29-35 ~rd count

The possible action codes are:

Bits 22-23 Name Action


00 IOTC I/O Transfer and Disconnect.Transfer the
number of 'M)rds specified in the WCJrd
count frcm/to main memJry to/fran the next
physical record of the device.
01 IOTP I/O Transfer and Proceed. Transfer the
number of w;:,rds specified in the word
count from/to main mem::>ry, then continue
to .the r.ext DC'1l using the same phys ical
record of the device.
10 ~~ Transfer to oa~.The Executive will not
allow use of this cede ..
11 ICNrP I/O No Transfer an:l Proceed.Co not
transfer the number of words specified.
Proceed to the next DeW. Data read will
be discarded, data written will be zero.

The valid drives of this type are:

4l00nn (CR) Multi-record Read. Reads nn records fran the


device.
420001 (00) Read ·Track Header. Reads the track header of
the current track.

Page 208 Pub. 1059


6 - DEVICE FILES

43xOOl (DS) Format Track. Formats the current track and


writes the track header. The TI (track indicator)
is set to x, which must be 0, 1, 2, or 3.
6l00nn (PR) Multi-record Write. Writes nn records to the
device.
620001 (PR) Write Image. Loads the print train image.

630001 (PR) Wr i te VFC. Loads the vertical format


control.

640001 (MP) Load Control Store. loads a microprc:grarn


into the MPC TNr i teable control sto"re.

650001 (MP) Load Main. Memory • Wr i tes the MPC main


memory.

660001 {MP} Load Personality. Writes the MPC' 5


personality overlay for a set of ports.

670001 (MP) Read Detail Status. Reads the detail status


registers.

In addi ticn , the following three cedes are used internally by the
Executive am may not be issued by a slave job, except indirectly
by COPY camtBI1ds:

, 400000 Read (all devices except CP ,PR,MP)


600000 Write (all except CR,MP)
700000 Diagnostics (all devices)

Pub. 1059 Page 209


SYS'IEM PRCGR/1..MMING REFERENCE MANUAL

6.3 Device Status Returns

This section describes the ·status returns a slave job can expect
to get from a device file, on either COpy-type or DRIVE
canrnands.

The Major Status, which is four bits, numerically coded, is given


in octal. The Minor Status (Substatus) is six bits, bit coded.
Thus it is possible to get several Minor Status returns in one
status. The Minor Status is given here in binary, where "XU
means either 0 or 1.

MJre detailed explanations of device status returns can be found


in the Honeywell Information Systems publication I/O Programming,
order number DB86.

Page 210 Pub. 1059


6 - rEVICE FILES

6.3.1 Console

Major Minor
Status Status Meaning
00 channel ready
02 device attention
03 . data alert

000001 transfer timing alert


OxOOIO transmission parity alert
000100 operator input alert
001000 operator distracted
0100xO incorrect format
100000 nEssage length alert

05 camnand rejected

Pub. 1059 Page 211


SYSTEM p~ REE'ERENCE MANUAL

6.3.2 card Reader

Major Minor
Status Status Meaning
00 channel ready
000001 51 column cards
02 device attention
000000 offline
xxxOxl hepper/stacker alert
xxxOlx IlEl1ual halt
OxlOxx feed alert
xlxOxx card jam
lxOOxx read alert
lxlxxx sneak fe€d
03 data alert
000001 tr ansfer timing alert
OOOxlO validity alert
OOOlxO dual read failure
001000 . no read canmand
04 end of file
000000 lcgical end of file
05 canmand rejected
12 MPC device attention
001000 invalid punch
13 MPC device data alert
15 MPC canmand reject
001000 device reserJed

Page 212 Pub. 1059


6 - rEVICE FILES

6.3.3 Card Punch

Major Minor
Status Status Meaning
00 channel ready
02 device attention
000000 offline
Ox:ood hepper/stacker alert
Oxxxlx manual halt
Oxxlxx chad OOX full
Oxlxxx feed failure
Olxxxx card jam
03 data alert
000000 transfer timing alert
OOOxxl transfer timing alert
OOOxlx transmission pari ty alert
OOOboc punch alert

as camnand rejected
12 MPC device attention

13 MPC device data alert


000110 PSI data overflow
15 MFC camnand reject
001001 device reserved

Pub. 1059 Page 213


SYSTEM PRCGRAMMING REE'EREJ."O! ~!ANOAL

6.3.4 Printer

Major Minor
Status Status Meaning
00 channel ready
000000 no button
000001 pr int one line
000010 forward space
·000011 forward to top of page
000100 invalid line
000101 reverse/rewind
OOOllO backspace
000111 backspace to top of page
02 device attention
000000 fOWer fault
000001 out of paper
000010 manual halt
000100 VFU taI;e alert
001000 check

03 data alert
000000 invalid character cede/image
buffer alert
000001 transfer timing alert
.. 000010 alert before printing
~.: .' '000100 alert after printing
001000 paper low
010000 slew alert
100000 top of page echo
05 camnand reject
000000 VFC not loaded
000001 invalid cp cede
000010 invalid device code
001000 train image not loaded
010000 feed alert on last slew
100000 top of page echo on last slew
12 MPC device attention

13 MPC device data alert


15 MPC ccm:nand reject

Page 214 Pub. 1059


6 - CEVICE FILES

6.3.5 Tape

Major Minor
Status Status Meaning
00 channel ready
xxOxxl no write ring
OOOxlx at load :point
xxxlx< nine track
001100 ASCII alert
OlOxOx t~bit fill
100xOx four-bi t fill
l10xOx· six-bi t fill
01 device busy
000001 in rewind
000010 alternate channel in central
000100 loading
100000 device reserved
02 device attention
'OO~Ol no w-rite ring
000010 no such handler
OxxlOx handler in starrlby
OxlxOx handler in check
0lx<00 blank tape on write
03 data alert
000001 transfer timing alert
000010 blank tape on read
xx:c<ll bit detected during erase
xxxlxx transmission pari~ alert
xxlxxx lateral parity alert
xlxxxx longitudinal parity alert
lxxxxx er~ of tape foil

04 end of file
001111 seven-track EOF
010011 nine-crack EXJF
llUll data alert
}OOQCOC EDF character
05 camand r'eject
000000 invalid density
xxxxxl invalid operation code

Pub.1059 Page 215


SYSTEM P~G REOE'EREOCE MANUAL

xxxxlx invalid device code


xxxlxx parity error'on
operation/device code
001000 tape at load point
010000 attempted read after write
100000 nine-track alert
07 channel timeout
10 channel busy
12 MPC device attention
000001 configuration switch error
000010 multiple devices
000011 illegal device ID number
001000 incompatible mode
~I:C
~ :JJ:il
~ .~. . ~~~~~ ~'.f; 001l:<x
010000
'It:A rralfunction
Mr.B malfunction
010001 multiple EOr
13 MPC device data alert
000001 transmission parity alert
000010 inconsistent command
000011 sum check error
000100 byte locked out
001000 PE-burst write error
001001 preamble error
010000 multiple track error
010001 skew error
010010 FOstamble error
010011 NRZI CCC error
010100 cede alert
100000 marginal capstan speed
15 MPC canrnand reject

Page 216 Pub. 1059


6 - CEVICE FILES

6.3.6 Disk

Major Minor
Status Status .Meaning
00 channel ready
OOOOxx autanatic retries
0010xx in T&D
010000 EDAC correction

01 device busy
000000 file positioning
100000 alternate channel in control
02 device attention
0000x! write inhibit
OOOOlx seek incanplete
001000 inoperable
010000 in starrlby
100000 offline
03 data alert
000001 transfer timing alert
000010 transmission parity alert
000100 invalid seek. address
OxlOOO header verification failure
xlxOOO check character alert
!xOOOO data compare alert
04 - em of file
000000 geed track detected
0000xl last consecutive block
OOOOlx sector count limit
000100 defective track -
al ternate assigned
001000 defective track - no alternate
assigned
010000 alternate track detected
05 camnand reject
001000 invalid camnarrl sequence
10 channel busy

Pub. 1059 'Page 217


SYSTEM PRCGRAMMING REJ?EREl'X:E MANUAL

13 MPC device data alert


000001 transmission parity alert
000010 inconsistent instruction
000P11 Slnn check error
000100 byte locked out
001110 EDAC parity error
010010 nonstandard sector size
010001 sector size error
010011 search alert on first search
010100 cyclic code error -
not first.search
010101 search alert- not first search
010110 sync byte error
010111 error in automatic alternate
track
011001 EDAC - last sector
011010 EDAC - not last sector
011011 EDAC - block count limi t
011100 EDAC - uncorrectable error
011101 EDAC - short block

Page 218 Pub. 1059


6 - IEVICE FILES

6.3.7 Microprogrammed Peripheral Controller

Major Minor
Status Status Meaning
00 channel ready
12 MPC device attention
000001 configuration error
000011 device number error
000010 rrultiple devices
001011 CA OPI down
001100 alert ENI unexpected interrupt
001101 CA ENI error
001110 CA alert - no interrupt

13 MPC device data alert


000001 transmission parity
000010 inconsistent command
000011 checksmn error
000100 byte lccked out

15 MPC canmarrl reject


000001 illegal prccedure
000010 illegal lcgical channel number
000011 illegal lcgical channel
to suspend controller
000100 continue bit not set

Pub. 1059 Page 219


SYSTEM P~G RE:E'EREl.\K:E MANUAL

6.3.8 716 Front End Processor

Major Minor
Status Status Meaning
00 channel ready
03 data alert
000001 transfer timing error
000010 improper buffer size
000100 transmission parity error
05 canrnand reject

Page 220 Pub. 1059


6 - DEVICE FILES

6.4 Simulated Status Returns

In addition to status returns generated by the IOM (sync bit


equals 1) I the following statuses will be simulated by Physical
I/O.

Status ~rd Status

000000 000000 Ready. Simulate after a successful set


decimal or set binary drive.

OODBOO 000300 Button status. Cccurs only on line


pr inter. B is t..~e
button nUII1ber. See
Section 6.5.
010000 000400 Cevice Busy. Cccurs only on diagnostic
drives with queuing bypass option
specified.

030400 000400 Invalid address. The device address for


the file is invalid. Usually indicates
a hardware or Executive error.

050100 000400 Invalid operation. The cede is invalid


for the device. Note that all cedes are
invalid for nonexistent devices.

051000 000300 Invalid sequence. Cccurs only on write


comnar:ds to the Datanet-30. The
Datanet-30 has issued a write-initiate,
and the 635 slave prcgram prcgrarmrer
must resp:;nd with a read-type canmand.

070000 000500 Channel Timeout. An cperation did not


complete in a reasonable amount of time.
This indicates a hardware or Executive
failure.

070100 000500 Sp:cial Tim=out. Cccurs on awai t-


special and await-ready drives, and on
reads to the Datanet-30. Indicates an
excessive amount of time spent waiting
for appropriate conditions (device

Pub. 1059 Page 221


ready, special interrupt, or write-
initiate from the Datanet-30)

10000P 000400 Channel Busy. All channels to the


device have been released.

200000 000400 Power off. The device is not con-


figured.

6.5 Special Programming Considerations

Datanet-30

A write on a Datanet-30 file causes a write to be issued


immediately. HOTHever, if a read is issued, Physical I/O delays
until a special interrupt is received fran the Datanet-30
channel, indicating the the Datanet-30 has issued a write, before
issuing the read. If no special interrupt cccurs in a reasonable
amount of tim=, the read ~d is rejected with the simulated
special interrupt timeout status.

High-Speed PrL,ter

The user of t.'e printer shculd be aware of the fact that


top-of-page echo statuses are returned directly from Physical I/O
- t..l1e Executive does not retry operations with such statuses.
Await-special, await-ready, and rnultirecord write drives may be
issued to the printer.

If the operator presses one of the printer buttons, the printer


returns device-attention/rnanual-halt status to subsequent write
ccnm:u:ds. wnen the OPERATE button is pressed, the printer
rejects the next canman:l with button status (cf. previous
section). Thus u;::on encountering a device-attention/manual-halt
status, the preferred programrrdng technique is to issue an
await-ready ccmmand and inspect the status on the subsequent trap
to determine t..'1e button nt..mU:er. The button nu:ml:ers ar.d labels
are:

Page 222 Pub. 1059


6 - r:EVICE FIUS

1 - PRINT ONE LINE


2 - FO~ SPACE
3 - FO~ SPACE IDP OF PAGE
4 - INVALID LINE
5 - REVERSE/REWIND
6 - BACKSPACE
7 - BACKSPACE '!OP OF PAGE

A copy-type ccmmand generates a device ccmmand for the printer


designed to pr in t edi ted and slew one line after pr inting • Note
that the slewing may be overridden by the appropriate use of
escape and formatting characters.

Disk

The file pointer on a disk is the logical record number, not a


physical record (sector) number. On a DSS190-type disk there are
two physical records in a logical record. On a MSU450-~jpe disk
there are four physical records in~a logical record.

The FORMAT TRACK camnands (MJDE 43xOOl) forrr.at the track


containing the current sector. The Track Indicator bits are
specified in the MJDE and not in the file pointer.

card Pur..ch

The card ptmch has the property that a card is not checked for
punch errors until the subseque.'1t card is being punched. Thus, a
slave jcb using the card punch shculd have the ability to reptmch
not only the current card, but also the previous card for error
recovery in case of punch alerts.

In decinal m:de, cards are punched in the ncnedit m:de.

Pub. 1059 Page 223


SYSTEM PRCGRAMMING REEER&'\CE MANUAL

card Reader

The card reader can l::e operated in either binary or mixed ro::x1e.
Each read issued on the device file causes one card to be read,
except in the case of rnultirecord read drive (see DRIVE MME). An
end-of-file return (return code of 2) will be generated by
Physical I/O if an attenpt to read a card is made when the hopper
is empty and the lAST BATCH light is turned on. (Note that the
last batch substatus is also returned on the trap of t.he READ
ccmnand for the last card.)

Magnetic Tape Handler

Note that it is the user 1 s responsibility to detect the


end-of-tape foil status when wr i ting tape. Note also that any
single character record will be treated as a file mark, but that
octal 17 is the starrlard errl-of-file mark on a 7-track tape, and
ectal 23 is on a 9-track tape.

Await-ready and await-special drives may be issued to tape


handlers. Note, hcwever, that since all tape handlers may be
connected to the same ICM channel, an await-special drive may
trap whenever a hardware special interrupt is generated by any
tape handler. Thus the recamrended prc::cedure for rrounting at"ape
is be issue a rewind-standby drive, ~jpe a message to mount t.~e
proper tape, aOO then issue an awai t-ready drive.

Console Typewriter

Note that unlike the printer I the typewriter dces not halt data
transfer on receiving an end-of-1ine sequence (escape character
followed by a character of the form OXXXXX). Thus, rore than one
line can be written to the typewriter in a single ~~RIT.E. A
carriage return is issued aut~atically after successful input;
the user dces not need to take this responsibility.

Page 224 Pub. 1059


6 - CEVICE FILES

MPC

The Reset operation on an MPC (MCDE 070000) normally results in a


tim=out. In this case a zero status is returned by Physical I/O.

6.6 Executive Error Recovery

If Executive error recovery is enabled, Physical I/O will attempt


standard error recovery. The device status will be returned to
the user only when the operation has succe€ded, or if error
recovery has failed.

If a device status indicates a condition of interest to the user,


such as Top-of-page Echo a'l a printer, then no error recovery is
attempted and the status is returned to the user.

Standard error recovery includes retrying timeout status and all


Ia-t errors (nonzero ICM Channel Staus or ICM Central Status) .

Error recovery for the console includes pr inting "IJEIETED" and


retrying operator input alert and operator distracted status.
"LINE 'ICQLCN;-RETYPE IT" is printed in res;:onse to a message
length alert, and the operation is retried.

A data alert on tape is retried with backspace-reread or


backspace-erase-write operations. The reread operations are each
tried up to eight times by the MPC. Up to seven reread
operations are issued, with varying capstan speeds an::1 thresh-
olds. Thus, a read operation may l:e tried up to 64 times.

Tape Il'Ovement errors are retried only if they returned an


initiate status, that is, if the tape did not move.

Pub.I059 Page 225


Page 226 Pub. 1059
Chapter 7

Shared Files

Files rray l:e open in one of t~ nxxles, normal and shared access.
In rormal m::de, permissions are granted to various jobs such that
only one job may have a file open with append permission; or if a
job has a file open with write permission, th.en only that job may,
access the file at all.

In shared access m:de, ha..;ever, any number of jobs may simulta-


neously told any canbination of read and write permission. This
rnc:de allows separate jobs to upJate a cortm:)n data base wi t.~cut
closing and reopening the file be'bieen accesses. However, if any
job has a file open in one m:::de (normal or shared), it may not be
opened by another job in the o~,er rrode.

To open a file in shared rocx:1e, see TALLY OPEN.

A file which is to be ao:essed in shared rrcde must be saved with


the r shared r bi t turned on in the unpasS'1'lOrded accesses. (The
shared bit is '040000 I which is the same as the <Mner bit for
catalogs.) The bit will be ignored if it appears in the
passworded accesses; when it appears on the unpassworded side it
applies to opening the file with or withcut a pas~rd. This
means there is no way to protect the pennission to open .a file in
shared m:de differently than the peonission to open it in' normal
m::de. Anyone who can open a file in shared m:::de can also open it
in mrnal m::x1e. Having OWner permission on a catalog dces not
override the lack of the shared bi t on a file in that catalog.

OJPy-type cperations to a file op:n in shared rrx:Xie are queued and


executed in the order in which they are recei ved , except that
reads nay overlap each other. A job may leek the file specifying
that 00 other jobs r operations may canplete until the file is

Pub. 1059 Page 227


unlocked, allowing that job to l:e sure that no changes will be
made to the file for a certain interval and that no one will read
inconsistent data. If another job has the file locked, the
operation locking ~~e file will not complete until the file is
unlocked by t.~e other job.

Also rote that shared nxXIe files may act as a general inter-job
semaphore. For example, a job may open a certain file in share
merle, lock it to seize the semaphore and unlock it to release the
semaphore.

All COPY operations will proceed normally in the order in which


they are issued unless the Reserve bi t is set in the flag bi ts in
X4 (1200000 1 for source, '000200' for destination) of one of the
operations. wnen this bit is specified, the file will be
, locked I by or reserved to t.l1at job until the same job issues
another copy operation wi thcut the bit set, or a RESET STATUS.
While the file is reserved, other jobs' operations will be queued
and their execution will be delayed indefinitely until after the
file is released. A COPY operation involving a file open in
shared m:de may specify only the job's core as the other eoo of
the COPY. Thus file-to-file or file-to-communications file
copies are not allowed.

Page 228 Pub. 1059


Chapter 8

Tally Operations

The "Fe~chingn catalcg q;erations (OPEN, ERASE, REPL1l£E) provide


two ~rtant utilities:

(1) Allowing a job to access files in a catalcg not


accessible to the job, and

(2) Providing a m:thcd to OPEN (ERASE, REPLACE) a file


anywhere in the file $Ystem in one, indivisible,
operation.

These operations also unfortunately have two disadvantages:

(1) The format of a treenam: is very inflexible, am


not amenable to simple user interfaces, and

(2) There are several "special conventions" which all


jobs must therefore knew about am (hcpefully)
handle identically.

The "Tally" operations have been created to provide all the fXJWer
of fetching operations with as much flexibility as possible.
These operations use a standard treename format (defined in
Section 8.2) so that all jobs can take advantage of this fonnat
without having to know anything a1:out it. By creating these
tally operations, all scanning arrl parsing is centralized. A job
sirrply passes a tally (hence the name) which describes a string
of ASCII characters to the Executive, am the Executive performs
all necessary parsing on the treename.

Pub.I059 Page 229


SYSTEM PRCGRAMMING REE'E!REN:E MANUAL

8.1 C~neral Pararreters

The Tally operations are all built around one set of scanning
routines in the Executive; because of this, they all have stmilar
parameters. The only difference in calling parameters is in the
specification of accesses.

The general formats for the tally operations are:

xo Contains the file reference nUmber of the initial catalog to


search

Xl· Contains a pointer to the tally \¥Ord for the treename

X3 Contains the file reference number of the "alternate initial


catalog" •
This catalog is used as the ini tial catalog to search when
one of the three special conventions is used for the first
name in the treename (see Section 8.2) •

X4 Has me of three formats:


(1) For TALLY ERn.sE and TALLY REPLACE:

Bi t 4 is the escape convention bi t (see below) •


Bits 9-17 are the trap bit mask to be used durir~
the Open phase of the operation.
(2) For TALLY OPEN:

Bits 0-3, 5-8 are the accesses with which to open


the file/catalog. Bit 4 is the escape convention
bit (see below). Bits 9-17 are the trap bit mask.

Page 230 Pub. 1059


8 - TALLY OPERATIONS

(3) For TALLY CATALCG:

The register points to two ~rds. The upper half


of the first ~rd is the same as (1) above, the
lower half is zero. The secor:d word is the
access \'iOrd with which to save the file/catalog.

X5 Is a pointer to b«> ~rds (not neccessari1y on an even-~rd


l:oundary). This two word pair will contain the name of the
file/catalog last scanned by the Executive (e.g. if the
operation was successful, the last name in the treename) I
except:

(1) If the status was 12 (format error) or 40 or


greater I the two wurds are undefined; or
(2) If the status was 7 (fetch error) the two wurds
are zero.

The I1Escape Convention" bit (020000 ectal) is provided to control


the use of the three special conventions explained in Section
8.2. If this bi t is zero, the Open phase of the operation will
prcceed as defined in Section 8.2. If this bi t is one I then any
attempt be use one of the special conventions will trap the
operation with a 12.7 status (see Section 8.3) .

8.2 Scanner Conventions

The OJnventions to Ce used by the scanner are the following: A


treename consists of one or mre file/catalog nam=s seperated by
colons. Any of the names may have a password specified; the
pas~rd is located after the name I separated fran the name by a
ccmna.. For instance,

CATALCGl: ~.LCG2 ,PASSroFD:FILENAME

is a legal treename. A name or password consists of 8 char-


acters. Any name/password less than 8 characters will Ce left

Pub. 1059 Page 231


SYSTEM PRCGRAMMrNG RE:E'£:REN::E MANUAL

justified and space filled to form a full 8 character quantity.


In the past it was possible to catalog files with non-standard
names or passwords; a name/password in this case may be specified
by a slash ("/") followed by up to 24 octal digits. These digits
are then right justified and null filled to form a 72 bit
quantity. To avoid future problems with non-standard treenames,
any attempt to TALLY CATALCG or TALLY REPLACE a file/catalog wi th
a name/password specified in octal will trap the operation with a
12.10 status (see Section 8.3) •

Legal file/catalog name characters are:

(1) all uppercase characters

(2) all lowercase characters, wnich shall be converted


to uppercase characters

(3) all digits


(4) and 1,_" and 11 . " as Sj?eCial characters.

Legal password characters are:

(1) all legal filename characters


(2) all control characters (oct 1-37) •

Any character which is not legal where fOlli-ii delimi ts the tree
name string (all nulls are ignored) I and will trap the operation
with a 12.5 status (see Section 8.3) •

There are b,ree special conventions for the first name of a


treename. Use of a special convention when the escape special
convention bi t is on in the access word (see Section 8.1) will
trap the operation with a 12.7 status (see Section 8.3) .

The SJ?eCial conventions are:

Page 232 Pub. 1059 ,


8 - TALLY OPERATIONS

(1) If the first nc3111e begins with a colon (:), the


file or catalog is to be fourrl in the MFD catalcg
specified by X3. A first name of ":MFD" is
equivalent to a first word octal name of
"/777777777777777777777777 11 in the catalog
specified by X3.

(2) If the first name begins with a star ("*"), and is


a legal user nllItlber format the scanner will e.xpan:1
the naIre to open a user catalog in the catalog
"MOD" in the catalcg specified by X3. If it is
not a legal user number format, the operation will
trap with a 12.2 status (see Section 8.3).

Legal user number formats are:


*C (*K - super group name)
*LLC (*EDK - super group name)
*CDO (*KOO - group name)
*LLCDD (*HDKCO - group name)
*CDDDCC (*40849L -- individual user number)
*LI.CDDDOC (*HDKca:co -- individual user number)

where:

C = character which is a letter or digit


L = a letter
o= a digit

(3) If the first nam: contains a trailing "***f7, the


file or catalog is to be found in "DLIBPARYft in
the catalog specified by X3.

Treenames are lind ted to 36 names. Any attempt to use a tre€nam:


consisting of more than 36 catalcg names (including any names
prefixed by the scanner) will trap the operation with a 12.4
status (see Section 8.3) •

Pub. 1059 Page 233


SYSTEM PRCGRAMMTh1G REOEiER&'K:E MANUAL

The following is a formal ~IF definition of a treenarne:

<treenarne> ::= <f~rst name> : <names>


<first name> [<space> ••• ]
<first name> ::= <name>
: <name>
<filename> *** [,<password>]
*<:MOD name> [,<passwurd>]
<names> ::= <name>:<names>
<name> [<space> ••• ]
<name> : : = <filename> [ I <pas~rd> ]
<filename> ::= {<filename character>}
I /{<octal digit>}
<filename character> ::= <C>
/ <special>
<pasS'WlJrd> : := {~ssword character>}
I /{<octal digit>}
<password character> ::= <C>
<special>
<control character>
<:MUD name> : : = <sut:er group>
<super group><D><D>
<super group><D><D><D><D><C>
<super group> ::= <L><L><C>
<C>
<C> .. -- <L>
<0>
<L> ::= {AIBlcloIEIFIGIHII!JIKIL/MINI
OlpIQIR/sITlulv/wlxlylz}
{alblcldlelflrlh/i/r/k/l/m/n/
o/f,q/rls t/u/v w/x/ylz}
<0> : := {OI1/2 3141516171a19}
<space> .. - L~}

Page 234 Pub. 1059


8 - TALLY OPEFATICNS

<special> : := {./-}

<octal digit> ::= {O/1/2/3/4Is/6/7}


<centrol character> ::= I
{ <SOH> / <STX> <ETX> / <Ear> / ~> I
I
<ACK> <BEL>
<BS>/<~ <LF>I<~I<~/<CR>/
<SO>/<SI>/<DLE>
<DCl>I<DC2>/<DC3>/<DC4>/<NAK>/
<SYN> I<E'lB>
<~/<EM>/<SUB>/<ESC>/<FS>/
<GS>I<RS>/<os>l}

8.3 Status Returns

If the cperation was successful, then bits 9-17 of status word 1


will be zero. The two ~rds pointed to by XS will contain the
name of the file/catalog on which the operation was performed.

If the operation was unsuccessful, then status word 1 contains


the reason for the failure. If the status is 12 or 40 or
greater, the bM::> words pointed to by XS are undefined. If the
status was 7 (fetch error) then the two words are cleared.
OtherWise, the last file name scanned is placed in the two words.

If the status returned fram the operation is 12 (format error) ,


then status word 2 will contain a tally count ar:d character
pesi tion in the lower half. When this lower half quantity is
concatenated with the starting address of the string (the upper
half of the ini tial tally word), the resul ting tally will run out
at the character where the format error was detected. In the
upper half of status word 2 one of the following substatuses will
be returned:

(I) Name too long: cannot be Irore than 8 characters


nor rrore than 24 digits following a / in the "/n
octal convention.

{2} Illegal place for asterisk: an asterisk was


found~ and it was not the first character of the

Pub.lOS9 Page 235


treename nor a set of 3 at the end of the first
name in the treenc3.ID2.

(3) Illegal format for name in ":MUD": the name


following the leading n*" convention was not one
of the proper formats.

(4) Teo many levels: the treenarne (perhaps expaooed


by the scanner) contains rrcre than 36 catalog
names, and is therefore teo long.

(5) Illegal character: a delimiter was found before


the tally ran out. A delimiter is any character
which is not legal where it is found (e.g. a
non-octal digit in a n In ectal specification).

(6) Illegal format: every character in the treename


was null, there was a null name, or there were no
dig its following a "In.

(7) Illegal convention: a special convention was


used, but the escape convention bit was set
disall~wing all special conventions.

(10) Illegal use of "/" format: t.'e final name or


password in a TALLY CA~ or a TALLY REPLACE
cannot l::especified using t.~e "/" convention.

Page 236 Pub. 1059


Chapter 9
Catalog Structure

9.1 Introduction

This chapter describes same of the basic notions and subtle


points of the catalog system. Catalogs are essentially ways. of
organizing access to information which is external to any running
slave prcgram. The catalog structure is generally drawn as a
tree, with the ~.asterFile Directory (MFD) as the rect, with
files and catalogs contained in the MFD, with files am
sut:catalcgs in turn saved in these sutcatalogs anJ so on. Thus
we see:

Pub. 1059 Page 237


This chapter answers such questions as: what kinds of things can
be files? What kind of information is kept about files? What do
catalCX]s look like? How do storage quotas work?

This chapter is divided into three parts:

(1) The physical organization of files

(2) Catalog information accessible to slave jobs

(3) Quotas and storage limitations

9.2 Definitions

A catalog is a collection of descriptors. Each descriptor


describes some sort of object; ~,e object may be a disk file, a
catalog, a peripheral device such as a card reader, a core file,
or O1e of several other things ..

Each cescriptor may be broken into two halves: one half contains.
logical (device-independent) information, and ~~e other specifies
where the object is stored by a list of device addresses (DA 1 s) .
In general, the logical information may be viewed and/or directly
rrx:rlified ty slave prcgrarns, while the device addresses may not
be.

There are only two types of descriptors: catalog descriptors and


"file" descriptors. They are pictured below:

Catalog Descriptor File Descriptor

lcgical 8 ~rds lcgical 8 v.~rds

DA's 1 ~rd DA's o to 27 words

Page 238 Pub. 1059


9 - CATALCG STRUCIURE

Both types have 8 words of, logical information. Catalog


descriptors include exactly 1 word for OAts, while file
descriptors may have frqn 0 to 27 DA' s apiece.

The DA in a catalog descriptor points to the first part of the


catalog it describes; this first part contains a catalog header
which describes storage for that catalog. A catalog header looks
like this:

Ca talag Header

logical 8 words

12 words

Objects may be either cataloged or scratch. An cbject is


cataloged if a descriptor for it is included in sane catalog;
otherwise it is a scratch object. Once an object is cataloged,
it nay rot be cataloged again, so objects created by slave
programs are guaranteed to have only one descriptor apiece.

Pub. 1059 Page 239


9.3 Physical Organization

9.3.1 Device Addresses (DA's)

A device address is a full word quantity specifying where part or


all of an object can be fouril. The format of a normal DA is:

o1 7 8 11 12 17 18 35

oc RN

EX!? - leg base 2 of the riumber of contiguous records in DA

x- (not us~)

r:c - lc:;gical Device Code (lcgical device nt.1IPJ:er in ENV deck)

RN - Record Number of first record in DA

(Although we refer to the DA as containing physical addresses, in


fact ~,e device cede and record number are internally ~apped by
the Executive into the true physical addresses; but this mapping
dces rot concern us am we can consider these fields to be "true"
physical addresses.)

The device cede (DC) is the rr.ost important part of a DA, for it
specifies what kind of machinery the object is. Most objects are
disk files or catalcgs, so the device cede reflects which disk
drive ~,eir data is stored on. Peripherals such as printers,
tape drives, card readers, and so on, all have their own device
cedes.

The device cede is the only part of an object's description wnich


specifies the physical type of the file. Since most slave jobs
cannot leek at DA.' s tJ.'1ey cannot determine an object r s phys ical
type (whether it is a peripheral device, etc.) fran its
description. They must open it ar:d perform operations on it to
deduce its type.

Page 240 Pub. 1059


9 - CATALCG S'IRUCIURE

The EXP (size) field is only used for disk files and catalogs.
It aJntains the leg base 2 of the nt.nnl:er of words in this OA,
some or all of which are used to hold a chunk of the file or
catalog. When the Executive allccates reem for a file/catalog on
a disk, it finds chunks of storage big enough to hold all the
data. Each of these chunks is some power of 2 words lor:g. The
DA list, if read in order, contains the addresses of each chunk
of the file in the proper order.

If data is ag?eooed to the end of the file/catalog I the rema~nlng


unused space in the last DA is filled. When the last m is
ccnpletely filled, a new DA is allocated ar..d appen:1ed to the end
of 1:.&.'e descriptor' s DA list. Then data is written into that m 1 s
space.

Note that since file descriptors may hold no rrore than 27 m 1 s,


files' sizes may be limited even though there is enough disk
space to hold JIX:)re data. The Executive's algorithm for
allocatL,g various sized DAis is designed to minimize this
prcblem, but often has the side effect of reserving tco much
space for files.

This space is pericdically regained by the Shuffle no:1ule which


opens ron-optirrally allocated files, !roVes them into preallccated
scratch files, and then replaces the old files with the scratch
files. When· Shuffle opens eac~ scratch file, it can tell the
Executive how long ~~e scratch file will be so that the Executive
may cptimally allocate DA I S for it ar.d thus avoid wasted space.

Pub. 1059 Page 241


The DA for a mass storage device file has ~~e format:

o1 7 8 11 12 17 18 35

AT - Allocation Type (specifies logical to physical record


mawing schem::)

DC - Logical Device Code (specifies logical to physical


record mapping scheme)

9.3.2 Catalogs

A catalog is, as ~ve have said, a list of descriptors of objects.


catalogs are always allocated on disks, and the 12 DA' s in
catalog descriptors serve as addresses to the various chunks of
the catalog. (Na turally , not all 12 of the DA' s need be used.)
~ special catalcgs, the MFD and SMCOECAT, are allocated in
core.

Page 242 Pub. 1059


9 - C1iTALCG STRUCIURE

Storage management within catalogs works as follows. Asstirne the


following picture of a catalog:

header (20 words)

entry 1
(hole) / 2
!W-----'--'"'---1

(unused)

"Holes" are created whenever objects are unsaved fran catalogs.


Holes are simple unused descriptors. wl1en a new descriptor is
added to a catalog, the Executive searches fran the beginning of
the catalog to find the first hole big enough to put the
descriptor in. If there are no holes big enough, the descriptor
is cdded to the end of the' catalog aTXl the catalog I s length is
updated.

Roughly the same thing happens when a file expan::1s and needs a
new DA in its descriptor. The descriptor is rroved to the first
hole big enough, or is added to the end of the catalog.

Adj acent holes are never coalesced in a new I bigger hole. This
is because the Executive maintains a table of open files, and
this table contains the entry nurnl:er of each file in its catalog.
Entry numbers must include holes, or removing a descriptor fram a
catalog ~uld change the entry numbers of an unkncwn number of
open files 'in this table. For the same reason, holes may not l::e
coalesced, or the entry numbers for all following descriptors
would dlange.

Pub.1059 Page 243


SYSTEM PRCGRAMMING REE'ERE!t\K:E MANUAL

Note that entries (holes and descriptors) are essentially


maintained on a sequential list.' Thus searches for a descriptor
must proceed linearly through all entries until it is found.

Finally 1 catalogs may contain no more than 4095 entries (holes


and descriptors), due to the field size allocated for entry
numbers in the Executive'~ table of all open files internal file
table.

Subcatalogs nay be nested within catalogs an arbitrary nt..m1ber of


levels deep (subject only to rules on storage quotas) •

9.4 Slave Accessible Information

9.4.1 Catalog Headers

Slave jobs may view a portion of each descriptor in a.catalog,


and may obtain infonna tion about the catalog itself. The
information they may see includes information which governs
access to the file, file identifiers, and so forb,. This
information is SUIl1I1E.rized below, in the forms in which it can be
obtained by the "READ CATALCG" MME.

Page 244 Pub. 1059


9 - CATALCG STRUCIURE

The zeroth entry returned on a READ c.~ MME contains informa-


tion al:out the catalog itself. This information is as below:

o MAX

1 AI.JX

2 ;r
3 ;r
4 Ace I PREP ITYPE PREP:
TYPE:
bits 29-31;
bits 32-35
5 ENTRIES

6 ;r
7 LEN

The naxim.Im length which the catalog may hold. This maxilrurn and
its effects are described in detail in the section on catalog
maxiS.

ALCC

The Olrrent length of all objects contained in the catalog plus


20 words for the catalog header, plus 12 words for each file
descriptor in the catalog. (Twelve isscmewhat arbitrary, since
file descriptors may range fran 8 to 35 words long. It is chosen
as a gcxXl average length.)

Every catalog contains a 20 word header describing t...~e catalcg,


so the minim.Im M.J:X:, for a catalog is 20 words.

Pub. 1059 Page 245


SYSTEM PRCGRAMMING REE'ERENCE MANUAL

The length of each file in the catalog is added into the AIJ:X:.;
but each subcatalog has its M.2\X added into the~. This m:ans
that changes to the lengths of files in subcatalogs do not affect
the lengths of all catalogs containing the sub:atalcg.

ACe

The accesses with which the slave job has this catalog. open.

PREF

The catalog I s preference. See the discussion of preferences


belew, urx:ler file descriptors.

TYPE

The file 1 s type. Described l::elbw for file Descriptors.

The number of entries (descriptors and holes) in the catalog.


Jobs which want to read all the descriptors in a catalog should
issue a Read catalog rtjME for the number of entries, plus one.
This guarantees that· they will get the.111 all.

LEN

The length of the catalcg itself: 20 word header 1 descriptors,


and holes.

Page 246 Pub. 1059


9 - CATALCG STROCIURE

9.4.2 Logical Descriptors

Information al:out all objects saved in a catalcg rray b€ gained by


applying a READ CATAI.CG MME to the catalcg. The MME returns an 8
word block for each descriptor; this descriptor is ndt in the
same format. as the Executive maintains it internally, and dces
not provide the DAis in each descriptor.

The DA I S may be obtained by opening each obj ect ar:d applying a


"PROVILE DEVICE ADDRESS" MME to the object. Jobs may only issue
this ~ if they are Load-D.mrp enabled, and so rrost jobs may not
see an object IS DA I s. Since 1:1Z\.' s are the only way to determine
peripheral types, etc. I IIr)st jobs may not readily diScover
whether or not a given catalcg contains peripherals.

The descriptors (as returned by ~~e READ CATALCG MME) look like
this:

o
NAME
1

2
pp-s,-wJRD
3

4 ACe

5 DAYS-USED
-
PREF ITYPE PREP:
TYPE:
bits 29-31i
bits 32-35
6 DLU DL.'4
--
7 LEN' or MAX

The name is a unique identifier for this descriptor, and hence


for the cbject it represents. No tw:::> descriptors in a catalog'

Pub. 1059 Page 247


SYS'IEM PRCGRAMMING REFEREN:E MANUAL

may have the same name I and the narre is the only identification
for a descriptor.

If a job supplies a password wnen trying to open (or erase, etc.)


a file, the password is canpared with this field, and no accesses
are allow=d if the password doesn 1 t rna tch. If the access word
has the slave-trapped bit set, then this field contains the
filename of a slave trap prcgram (in the same catalog) to be run
whenever some job attempts to open (erase, etc.) this file.

If the file is master-trapped, the password field is irrelevant


and may l:e used for arbitrary data. In any case, this field is
returned as zero unless the job issuing the Read catalog MME has
owner permission on the catalog. See the publication "File
Access and Protectiontf for help.

ACC

Thisv.ord oontains access bits, which are used to determine hC1N


various jobs, may handle the object asscciated with this
descriptor. See 'IMl02 ("File Accesses n ) for an exhausting
discussion.

DAYS-USED

The DAYS-USED field OJntains a count of hew many different days


the cbject asscciated with the descriptor has been used since it
was last m:dified. A file is "used" when it is q::ened. The day
when the object was m::dified is not included in this count.

catalogs are never "used" but are rrcdified by changing their


MAX's.

Page 248 Pub. 1059


9 - ~ STRDC'lURE

PREF

An object's preference determines which storage class its storage


is allocated frem. In general, l~r$preference files are saved
so they are faster to access, but this is not an inherent
property of preferences. They ~re simply a means of partitioning
storage. The various preferences and how they are used are:

o- allocated in core
1 - swap storage

2 - monitor scratch files, and files in :SMCORCAT


3 - catalcgs

4 - normal scratch files


5 - special data base

6 - normal saved files


7 - permanent data bases

In general, if a file needs storage of same preference and none


is available, it will be allocated storage fran the next higher
preference which has roam.

Special permissions are required for jobs to open scratch files


with preferences other than 4, or cataloged files ~Nith prefer-
ences other than 5 or 6. These permissions are given to a job by
the job which runs it, which must in turn have the permissions ..

All catalcgs created by slave jobs are preference 3, no matter


hc::::M the jobs create them. The Executive creates scme core
catalogs with preference 9.

Pub. 1059 Page 249


An cbj ect 's type to a large extent determines what can be done to
it. Only the types marked with a star below are possible for
cataloged files:

0 regular scratch file

1 regular scratch catalog

*2 regular cataloged file

*3 regular cataloged catalcg

4 special scratch file

5 special scratch catalOg


*6 special cataloged file (device file)

*7 special ca taloged catalog

10 communications file (slave)


11 ccmmunications file (master)

12 running job

13 nonexistant file (closed communications file)

*14 migrated file


16 shared roc:de file

The difference eetween regular am special files/catalogs is that


the DA. 's for regular files/catalogs are drawn fran a system-wide
pool, and storage for these files forms a part of the file
system. Special files/catalogs have their own pre-alloc"ated DA.' s
which point to storage which is dedicated to these files or
catalogs. Only the Executive can create special files/catalogs.
Many cperations such as ERASE, REPLACE, SCRMOi are not allowed
on g.pecial files/catalogs.

Page 250 Pub. 1059


9 - CATALCG STRL'OURE

At present, the MFD is the only specially-catalcged catalog.


This, arrl the fact that its DIM is 00/00/00, serve as its only
identification.

Peripherals are saved as special cataloged files, since their


DAIs point to the devices themselves and are not suitable for use
as file storage. The Executive makes a special check for special
cataloged files, and dces not up:1ate their lengths when data is
written to them. (Thus tape drives do not get i.mrensely long I
for example.) Also, special cataloged files may not be unsaved
or erased. Off-line descriptions contain no OAls and are fairly
intractable, since the s they represent have moved to tape.

DID

This field contains a ceded form of the date last used. An


object is "used" when it is opened, replaced, etc. The CCCl~ng
format is the same as for the DIM. Catalogs are never "used" in
this sense.

DIM

This field contains the ceded form of the date the object was
last pojified. An object is m:dified when it is catalcged, its
length d1~es, or when data is wri tten to it. The DL.'i of a
catalog is rrcdified only when its max changes ..

bits a - 8 - year modulo 100


9 12 - month (January = 1, Deco....ml:er = 12)
13 - 17 - day of the rronth

LENGrH (or MAX)

If the descriptor is for a file, this field contains the file's


length in ~rds. If for a catalog, this field contains the
catalog's MAX as descri1:ed in t..~e previous section.

Pub.I059 Page 251


SYSID1 PRCX;RAMMING REE:EREi.'KE MANUAL

9.5 Quotas and Storage Limitations

9.5.1 Catalog quotas

A catalog I s quotas are determined by the MAX ~rd in its header.


A catalog's MAX dces not place any upper bound on its AI..J::X:.
(length of its included files and subcatalogs); rather it limits
the accesses which jobs may obtain upon opening a file when the
AICC>MAX. That is,' if a job can open a file with apper:d
permission, it can write as much data into the file as it wants,
1imited coly by the job's quotas (discussed in the next section) •

Three cases are notable for the relations betw~n ALOe and MAX.

(1) ALCC<MAX. A file may not be replaced if its new length


~uld push the allocated length over the catalog's
maxim.nn. But if a job can open a file wi h'1 apper:d
permission, the arrount of data which it can .app:rrl is
limited only by its job quota.

(2) AICC>MAX. Jobs may never get apperrl permission on any


obj ects wi thin the catalog. Obj ects, h~ver, may t:e
replaced wit.l-} objects of smaller lengt..:.'1s, or erased.
(But not scratched, since scratching requires apper.d
permission! )

(3) AICC> (2*MAX). Files nay not be opened. They may,


however, be erased or replaced wit.~ ~~ler files.

Jobs with special permissions may open scratch catalogs with


infinite max's. Infinite max's are flagged with ~'1e sign bit in
the MAX field set; quota checks are suspended for infinite max
catalogs.. Such catalogs may only be cataloged within other
infinite max catalogs, which then have the sign bit set in th.e
ALCC field to signal an infini te length catalog.

Note that scratch catalogs ',.;ith infinite rnaxes may be cataloged


within the.TI1Selves, but nay not then be cataloged elsewhere (since
already catalcged) •

Page 252 Pub .. 1059


9 - CATAI.CG STRUCTURE

9.5.2 Job quotas

To prevent jobs frcm running arrok an:] filling all system storage
with unnecessary data by appending to files, each job has a quota
of hew many words it may add to catalcged or scratch storage.

Pub. 1059 Page 253


SYS'IEM. PR:GRAMMING REFEREN:E MANUAL

Page 254 Pub. 1059


Index

Indexed 'nOrds are given in their i.nmedia te context, i. e. as much


to either side of the ~rd as will fit on a line. Underlining
has been ani tted, all series of three or rcore spaces have l:een
reduced .to two, and each errl-of-line has been rrade a space. The
line number is calculated fran the top of the page: t.'e header
line is always line 7 I the trailer is always line 60, and line 11
is usually the first line of text.

Brackets are used to enclose entries for Which the same w~rding
will not t:e found in the text; no line nurnl::er is given for these
entries.

Pub. 1059 Page 255


~ line word
148 45 at l:e specified with the "/n convention, and the catalo
162 50 at l:e specified with the "/" convention, and the rep1ac
194 17 uccessful" (0). 5.6.5 A1:orted COpy and Break Drive
88 3S the job terminates or is aborted. If the trap occurre
14 26 rty fault vector l1 and is aborted; that is, it. is suspen
66 49 en the job terminates or aborts. Status word 2 on this
179 25 The two high-order user access bits (bits 9 and 10) ar
163 56 UEST STATUS. These user access bits are obtained fram
103 . 34 1 of the trap, nine user access bits can be obtained by
132 22 1 of the trap, nine user access bits can be obtained by
158 36 1 of the trap, nine user access bits can be obtained by
127 54 addition, the nine user access bits from 9-17 of the c
84 30 n 1/64 milliCRIJ) Q Job access mask The source file,
87 38 en it is passed. Job Access Mask (Q register)
106 49 by bits 29-35 in its job access mask (set by the supra
59 32 the file using the ALTER ACCESS ~!ME. Catalog entries
62 23 d accesses via the ALTER ACCESS MME. The previous MAX
53 11 MME 500123: ALTER ACCESSES xO File reference
79 39 d be allo~ on an ALTER ACCESSES and they do not confl
137 52 file through an ALTEIt ACCESSES ccrnmand (q. v • ) . IDw
29 31 (2) On OPEN, ALTER ACCESSES, DUPLICATE, and REPrA
76 36 2 on a completed single action device drive contains t
201 22 35 On a single device action DRIVE command ~~is word
205 11 ocessor 6.2.1 Single Action Drives A single actio
204 36 f device drives. Single action drives change the state
76 20 files: 12 (single device action) and 24 (drive with D0~
199 28 ode of 12 (single device action) or 24 (drive with Da1f
74 36 e) and 12 (single device action). These drives generate
196 26 y" (6). 5.6.8 Illegal Actions Suppose job C now at
12 41 call must specify a trap address in X6 at the time of t
16 23 valid parameter. A trap address is specified when the
114 26 omrnand causes the device address list for the specified
10 23 oted here. 1.1.1 Base Address Register The base ad
47 22 by setting a pseudo base address register. SQUEEZE cau
10 [BAR = base address register]
247 22 plying a "PRGVIIE DEVICE ADDRESS" MME to the object. J
43 25· SE canmand in the return address.
58 27 but the file has device addresses allocated (see Cha
114 11 500126: PROVIDE DEVICE ADDRESSES XO File. reference
238 37 ored by a list of device addresses (DA 1 s). In general,
38 48 abIes the PRGVIIE DEVICE ADDRESSES canmand, and provide
126 27 8-19 List of device addresses for catalog (zero if
56 14 (zero length; no device addresses) • The llpFer half 0
240 36 A as ccntaL,ing physical addresses, in fact the device

Page 256 Pub. 1059


~ line word

242 [DA = Device Address]


249 21 ey are used are: 0 - allocated in core 1 - swap
136 35 s remaining catalog word allotment 1 Job1s remainin
136 37 s remaining scratch word allotment 2 CRI.1 limit for
132 34 rst has its catalog word allotment decremented by the 1
163 .
31 rst has its catalog word allotment decremented by the 1
169 28 log has its scratch word allotment decremented by the 1
56 38 log has its scratch word allotment incremented by the 1
144 40 s· scratch (catalog) word allotment incremented by the 1
153 17 11 have its catalog word allotment incremented by the 1
56 40 me tirr.e its catalog word allotment is decremented by th
70 53 s scratch (catalog) word allotment is decremented by th
107 35 s remaining scratch word allotment is decremented by th
149 27 er, and its catalog word allotJrent is decremented by th
149 26 ,the job's scratch word allotment is incremented by th
169 30 me tine its catalog word allotment is incremented by th
48 23 scratch and catalog word allotments are added to ~~e 00
86 15 catalog and scratch word allotments for the spawned job
64 54 scratch ar.d catalog word a110trnents incremented by the
48 [scratch word allotment]
70 [catalog word allotment]
70 . (scratch word allotment]
85 log quota = catalog word allotment] [cata
85 tch quota = scratch word allotment] [scra
144 [scratch word-allotment]
144 [catalog word allotment]
167 [scratch word allotment]
167 [catalog word allotment]
172 [scratch word allotment]
172 [catalog word allotment]
128 34 The job has exceeded its allotted state vector length
245 42 tion on catalog max's. ALOe The current length of a
121 19 Function OMAX 1 ALOe (amount of storage used b
125 54 Function 0 rwmx 1 ~ (amount of storage used b
62 32 elow its current AI..CC. AI.CCls and MAX's are descri1:ed
59 32 on on the file using the ALTER ACCESS MME. catalog en
62 23 Append accesses via the ALTER ACCE....~~. The previou
53 11 MME 500U3: ALTER ACCESSES XO File refe
79 38 Y would· be allowed on an ALTER .ACCESSES and they do not
137·52 on the file thrcugh an ALTER ACCESSES ccrnmand (q. v.) .
12 47 Trapping calls wib.~ the autanatic pause feature share
12 29 pping, and trapping with autanatic pause. The action r
10 [BAR = base cddress register]
42 17 EMORY REQUEST causes the BAR for the issuing job to be

Pub. 1059 Page 257


SYS'IEM PRCGRAMMING RE]'EREl.'X:E MANUAL

~ line word
47 23 ter. SOOEEZE causes the BAR for the issuing job to be
10 26 e base address register (BAR) limits memory references
24 31 re1a tive to the squeezed BAR, and has bi t 35 (the squee
10 [BAR = base address reg ister]
10 23 as noted here. 1.1.1 Base Address Register The ba
47 22 gram by setting a pseudo base address register. SOOEEZ
156 23 ape special convention bit X5 Pointer to two words
231 33 The "Escat=e Convention" bit (020000 octal) is provided
182 50 n the communication file bit (bit 1) in the access to p
87 14 d. (4) If the return bit (bit 2) is set in the acce
100 39 g to open. If the fetch bit (bit 4) of X4 is 1, then X
101 47 presence of the fetch bit (bit 4). If the fetch bit
157 47 he presence of the fetch bit (bit 4). If the fetch bit
230 42 is the escape convention bit (see below). Bi ts 9-17 a
185 33 ing the appropriate flag bit in an index register. B$R
178 21 ing the appropriate flag bit in X4 (see COpy MME). In
102 35 catalog, and the fetch bit is on in the access word 0
64 25 d to it. If the return bit is set in the access word
48 19 lased and, if the return bit is set in their access, re
152 23 ention, (bits 9-17) trap bit mask XS Pointer to two w
162 23 ention, (bits 9-17) trap bit mask XS Pointer to two w
81 23 zero (bits 9-17) trap bit mask X5 Reserved forfut
131 22 e zero; (bi ts 9-17) trap bi t mask XS Reser"tled for fut
124 22 or OPEN (bits 0-8); Trap bit mask (bits 9-17) Xs Pain
156 22 cesses on the file, trap bit mask and escape special
148 38 (MME 500136). The trap bit mask for the search is in
101 11 1 be limited by the trap bit mask in bits 9-17 of X4.
230 43 Bits 9-17 are the trap bit mask to be used during t
92 48 t PJssess t.'e Leg enable bit may not issue this MME. A
55 36 must not have the return bit set in its access word.
87 28 log which has the return bit set in its access word mus
183 24 assed without the return bi t set in the accesses, it be
163 43 uing job wit., the return bit set. On canpletion of th
132 45 uing jcb with the return bit set. Upon a:mpletion of
227 41 saved with the ' shared' bi t turned on in the unpasswor
112 11 atch file ard the return bit was not set in the access
184 54 ing the appropriate flag bit when issuing those camw~
148 40 ], the escape convention bi t) is set in the upper half
152 41 1, the escape convention bit) is set in X4, then all sp
156 49 1, the escape convention bit) is ~et in X4, then all sp
162 46 1, the escape convention bit) is set in X4, then all sp
24 32 has bit 35 (the squeeze bit) set on to indicate this f
11 46 Y the use of the inhibi t bi t. This hardware feature pr
68 24 of device file X4 Flag bits X6 Trap location X7 P

Page 258 Pub. 1059


INDEX

~ line word
74 18 th DCW's only) X4 Flag bits X6 Trap location X7 N
116 18 ry location M2 X4 Flag bits X6 Trap location X7 P
141 16 f file/catalog X4 Flag bits X6 Trap location The
171 18 y not be zero) X4 Flag bits X6 Trap location X7 P
179 25 . 0 high-order user access bits (bi ts 9 and 10) are used
103 34 e trap, nine user access bits can be obtained by issuin
132 23 e trap, nine user access bits can be obtained by issuin
158 36 e trap, nine user access bits can be obtained by issuin
127 54 on, the nine user access bits frcm 9-17 of the catalog
228 25 e bit is set in the flag bits in X4 ('200000' for saurc
69 53 ster em job. The flag bits in X4 are divided into tw
75 26 status of 7. The flag bits in X4 have the following
116 53 status of 7. The flag bits in X4 have the following
141 49 r that end). The flag bits in X4 have the following
172 11 tatus of 7. The flag bits in X4 have the following
60 11 this word contains trap bits which the issuing job d
193 54 tting B$NTPD in the flag bits, the first five words wil
193 37 tting B$NTPS in the flag bi ts. The first ten words are
87 [ccmmunication file bit]
III [communication file bit]
158 [shared bit]
192 [return bi t]
50 11 MME 500010: TIME SINCE BCOrLCAD No arguments The
18 (bounced special interrupt]
17 38 are ei ther disCarded or eounced to a job higher in the
18 24 special is discarded or "tounced", ar.d the prccedure
19 20 cial interrupt cannot be eoUI:ced. If the job stops ace
186 16 sion, the break ~ial "eou."1ces" up the ccmmunication
19 26 1 be discarded. 1.4.6 Bouncing Special Interrupts
177 [bouncing special]
186 [1:ouncing special 1
194 [1:ouncing special]
20 54 Section 5.2.) 3 BRK Break - notifies a slave end j
194 17 S.6.5 Aborted COPY and Break Drive Su~se job 0 no
185 26 ved slave em (because a break drive was issued at th
194 22 er, job A decides that a break drive should be given.
183 19 never be able to issue a break drive successfully. On
186 14 The only exception is a break drive: in this case, if
74 (break drivel
186 17 lave er.d which dces have break permission. Thus a rese
74 [break permission]
191 [break permission]
186 16 ve break permis.sion, the break special n oounces n up the
185 25 nullified. (2) Ifa break special is given to a sl

Pub.lOS9 Page 259


SYS'IEM PRCGRAMMING ~ MANUAL

~ line ~rd

74 [break special]
183 18 cesses need not include "break" (eXecute) permission; i
180 44 9 specials" (7). (2) "Break" drive: A drive of type
180 55 nd which has eXecute ("break") permission on its end
175 54 ommunication file is not busy (see Section 5.5), and us
44 39 This file will remain busy as long as the PURE comma
188 41 ly, the slave end may be busy because of a copy-type op
87 23 Y or which are currently busy cannot be passed to the n
75 19 rnmunication file that is busy due to the action of anot
186 24 eing led astray. 5.5 Busy States and Reset Status
187 31 Ie, the file will appear busy to the slave er£1, and onl
141 42 use the master em to be busy until a RESEr STATUS is i
88 28 ully spaMled job r~ains busy until a trap cccurs to th
112' 26 he return bit set beccme busy until they are closed and
186 32 The "canrwnication file busyl1 status (6) is a special
187 26 usy ("comnunication file busy") to all ot.'er slave ends
188 18 (flcanmuni- cations file busy") to this end. Only loca
189 51 ; the master em becanes busy, but the state of the fil
69 23 he communication file is busy, ei~~er because another e
116 45 he communication file is busy, ei~,er because another e
138 34 he ccmmunication file is busy, ei~~er because another e
144 29 he communication file is busy, either because another e
146 30 he communication file is busy, either because another e
167 33 he communication file is busy, ei~,er because anot.'er e
171 47 c~ rnunication file is busy, either because anot.'er e
187 44 ued when the file is not busy_ (There is one exception
183 30 set, it does not beccme busy_Instead, the passing job
13 IS de for a valid Executive call are always 101 to reduce
12 17 3 MME Faults; Executive calls A slave job rray reques
12 38 nt interrupt. Trapping calls also function as transpa
14 49 ma11y indica te Executive calls. However, if the job ge
223 40 t in the file p::>inter. card Punch The card punch ha
224 11 the nonedit mode. card Reader The card reader
55 11 MME 500103: CATALOG XO File reference n
120 11 MME 500114: READ CATALOG XO File reference n
148 11 MME 500141: TALLY CATALOG XO File reference n
96 11 MME 500125: OLD READ CATALOG Ai'ID OPEN FILES xO F
96 32 canmand is like the READ CATALCG AND OPEN FILES ccmnand
114 37 n them by issuing a READ CATALCG AND OPEN FILES canmand
124 11 MME 500127: READ c..~TAtCG ~1ID OPEN FILES XO F
124 33 ication ~rds The READ CATALOG ~1) OPEN FnES ccmrr.and
86 15 (quotas exceeded). The catalcg and scratch ~rd allot
59 11 MME 500111: rnANSE CATALOG Th"'TRY XO File refer
62 11 MME 500124: CF~GE CATALOG MAX XO File referen

Page 260 Pub. 1059


INDEX

~ line word

247 15 ained by applying a READ CATALCG MME to the catalog. T


60 21 pointed to by X5 of the CATALCG MME. GFOn ccrnpletion
149 21 the lower half. See MME CATALCG or Chapter 9 for rrore
38 33 64 files) 3 Special cat-~log p:rmission (allows a j
108 43 abled with the Special catalog p:rmission and is spec
85 28 -------+1 I catalog Quota I -+-!- - - -
85 11otment] [catalog quota = catalog word a
81 41 i th its catalog entry. ca talcg quota checks are susp:
152 50 ations, see Chapter 8. catalCXj quota checks are suspe
102 [catalog quota checks]
131 [catalog quota checks]
157 (catalCXjquota checks]
162 [catalog quota checks]
252 14 age Limitations 9.5.1 catalog quotas A catalcg's q
48 22 's remaining scratch and catalog word allotments are ad
56 39 r. At the same time its catalog word allotment is deer
64 53 Iso have its scratch and catalog word allotrrents increm
70 (catalCXjword allotment]
85 (catalog quota = catalog THOrd allotment]
132 34 Ie/catalog first has its catalog word allotment decreme
136 3S ng 0 Job's remaining catalog wurd allotrrent 1 J
144 (catalog r,..ord allotment]
149 27 catalog header, and its catalog word allotment is dLlCr
153 17 SE camnand will have its catalog word allotment increme
163 31 Ie/catalog first has its catalog THOrd allotment decreme
167 [catalog TMJrd allotrr.ent]
169 29 r. At the same time its catalog word allotment is incr
172 (catalog TtIIOrd allotment]
244 38 Ce obtained by the "READ CATALCG" MME.
70 52 sian, t.t,e job's scratch (catalog) word allotment is dec
144 40 e will have its scratch (catalog) wurd allotment increm
178 45 re, such as OPEN, ERASE, CATALCG, or REPIACE. Intended
57 18 taloged only in a core catalog. 13 Illegal usage
125 41 p=rtaining to that fi1e/catalcg. The information for
251 11 only special1y-catalo;ed catalog. This, ar:d the fact th
231 11 (3) For TALLY CATAI.CG: The register point
131 39 uence of canmards ERASE, CATALCG; however, the REPLACE
251 11 FD is the only specially-catalcged catalog. This, am t
19~ 25 lways of type 6 (special catalcged file). They are ass
23L 16 als are saved as special cataloged files, since t..~eir D
249 51 cutive creates same core catalcgs with preference O.
242 [core catalog]
18 46 the slave connect fault cell) is zero, a slave conne
13 25 ided into t:wo-~rd fault cells, one for each of the si..,,<

Pub. 1059 Page 261


SYSTEM PFCGRAMMING RE]iE!REtK:E MANUAL

~ line word

59 11 MME 500111: mANGE CAT~ ENTRY XO Fil


62 11 MME 500124: CllANGE CATAIm MAX XO File
14 38 flow/truncate, or divide check fault cccurs, it is retu
81 41 gentry. Ca taleg quota checks are suspended for the E
152 50 apter 8. Catalog quota checks are suspended for the T
102 [cataleg quota checks]
131 [ca talog quota checks]
157 [ca taleg quota checks]
162 [ca taleg quota checks]
.36 11 MME 500014: CLCCK A Time The CLCCK co
15 17 et by the Executive call CLCCK. Both these calls are n
182 22 rrupt. 5.2.6 PASS and CI..OSE These comma'1ds are the
64 11 MME 500105: crCSE XO File reference num
189 12 cept local operations or CLOSE can be issued at any end
88 45 ord 2 on the trap of the CI..OSE command will contain the
183 36 turn bit set, it may not CI..OSE orP~BS it again until t
190 55 dle, no operation except CI..OSE or RECUEST STATUS can be
21 30 been destroyed because a CI..OSE was issued at another
53 29 will becan: invalid (cf. CLCSE). UpJn canpletion of t
191 16 the master end issues a CLCSE, both it at"ld the file be
189 34 end job may issue DRIVE, CI..OSE, or RECUEST ST&""tl'S canrna
153 13 LLY OPEN, UNC.:;TALCX;, and CLOSE. A job which issues a·
81 49 nds OPEN, ONCATALCG, and CLC6E. ur:on canpletjon of th
88 49 urned in the trap of the CI..OSE. (See CLCSE.) A termin
184 19 d except RESET STATUS or CLOSE. However, the file refe
187 40 with the return bit set, CLCSE. rfthe return bit is n
21 28 passed. 6 FCLO File closed - notifies the job that
184 16 1es are notified by file-closed special interrupts ~~at
64 [returned closed special] .
197 20 se1y fo1lo~ by a "file closed" special as its file re
64 37 nterrupt of type 6 (file closed) is generated at allot
251 [cede data]
56 17 e second word contains a coded date used to initialize
96 34 ter X5 dces not point to ceded dates, but contains a co
251 [cooed date]
251 29 This field contains a ceded form of the date last us
251 38 This field contains t.,.~e ceded form of the date the obj
74 [read camm file drive]
74 [read camm file special]
14 44 detect a serious error. Canmand faults are generated w
193 29 2 (lowest) 5.6.4 COPY Ccmmer~ with No-Trap Option
178 36 on 5.6. 5.2 Non-COPY Canmands Communication files
188 17 the file appears busy ("conm.mi- cations file busy") t
69 43 frcm the slave errl of a canmunica- tion file, and Xl

Page 262 Pub. 1059


INDEX

~ line 'NOrd
87 11 the access is 1, then a communication file will be c
191 26 rnple 5.6.1 Creating a Communication File Suppose t
20 41 , m:.de. 1 RCF Read communication file - used to n
III 52 ·cratch file, or create a communication file and pass it
19 30 d at thernaster end of a cammunication file are bounced
87 [communication file bit]
III [communication file bit]
182 50 , and which turns on the camnunication file bit (bit 1)
186 32 gress at one time. The "ccmmunication file busy" statu
187 2S will thus awear busy ("carmunication file busy") to a
141 36· RESET STATUS issued on a communication file for which a
64 34 If the master em of a canmunication file is closed,
144 28 (see TRLNCATE). If the camnunication file is busy, ei
74 36 nication file are 0 (set cammunication file mode) and 1
74 27 may be issued or~y ona cammunication file or on a dev
200 32 and a device file via a communication file should be s
69 17 sued at a slave end of a ccmmunication file will genera
116 39 ed at the slave end of a communication file will genera
146 26 ed at ~,e slave end of a ccmrnunication file will genera
167 29 ed at the slave end ofa cammunication file will genera
171 41 ed at the slave end of a communication file will genera
180 27 n file are: (1) "Read camnunication file" drive: A
195 43 job A noW issues a "read communication file" drive, the
117 13 source file is a master cammunication file, the corr
20 24 a DRIVE or CLOSE on a ccmmunication file, the lower
137 32 1e or the slave end of a communication file, then the s
138 24 er of ~,e slave end of a ccmmunication file, then a spe
180 47 1 use is with a terminal camrnunication file, to indic
75 44 slave end of a terminal ccmmunication file. The drive
112 12 age can be passed with a cammunication file. If XO is
172 20 nce number of a master communication file. In that
70 42 nd destination files are communication files is not all
181 40 tion file. For terminal cam:tl.lnication files in particu
112 20 ob files, master ends of cammunication files, and file/
196 [destroying communication files]
197 [destroying communication files]
18 26 pt on a slave em of a canmunications file can be "bo
24 18 ually cccurred, then the connect fault (special interru
18 46 first word of the slave connect fault cell) is zero,
15 34 tions The shutdcwn am connect fault cells have speci
11 35 in this category are all connect faults, timer runcut f
225 37 Error recovery for the console includes printing "DEL
224 43 an await-ready drive. Console Typewriter Note that
66 11 MME 500121: CONTINUE XO File reference

Pub. 1059 Page 263


SYS'IEM PRCGRAMMING REFERENCE MANUAL

~ line word
141 32 running below it until a CONTINUE command is issued.
109 45 d the supra job 1 S RUN or CONTINUE ccmI'lEnd is trapped wi
42 42 job in X4 of the RUN or CONTINUE command which initiat
48 29 the trap for the RON or CONTINUE ccmrnand which initiat
66 56 be restarted by another CCNTINUE canmand. If the job
88 40 be continued by using a CONTINUE camnand. If I hcwever
88 43 f a recoverable error I. a CCNrINUE may not be issued. I
29 35 (3) On RON, EXECUTE and CONTINUE, gives termination
14 28 b then has the option of continuing or terminating the
156 23 ask and escape special convention bit X5 Pointer to
230 42 Bit 4 is the escape convention bit (see telow) •
148 40 0000 (octal], the escape convention bit) is set in the
152 41 020000 octal, the escape convention bit) is set in X4,
D~cr
.~~~
fl'd i'" ~ 2~
.r." ..~~
··7-'.;'~~';~
156
162
49
"46
020000 octal, the escape conventionbi t) is set in X4,
020000 octal, the escape convention bit) is set in X4,
231 33 are zero. The "Escape Convention" bit (020000 octal)
152 23 (bit 4) escape special convention, (bits 9-17) trap b
162 23 (bit 4) escape special convention, (bits 9-17) trap b
148 45 e specified wit.l1 the 11/" convention, and the catalcg wi
162 51 e specified wit.l1 the "/" convention, and the replace wi
231 42 on 8.3) • 8.2 Scanner Conventions The conventions
152 42 hen all special scanning conventions are disallowed, an
156 50 hen all special scanning conventions are disallowed, an
162 47 hen all special scanning conventions are disallowed, an
232 48 There are three special conventions for the first name
230 34 one of the three special conventions is used for the fi
229 40 ere are several "special conventions" which all "jobs
232 ial first name = special convention] (spec
44 52 Ie for pure procedure. Copies to and fran the pure re
22 14 length. (See slave end copy canmands, Section· 5.1.)
68 11 permission. MME 500131: COpy XO File reference numb
194 17 1" (0). 5 • 6 • 5 Al:orted COPY and Break Dr i ve Supp:>se
193 32 ion· JobD now issues a COpy command from its storage
190 34 occurs when a slave em COpy command has been issued,
117 42 as a special case of t..~e COpy carmand in which Xl and X
172 55 as a special case of the COPY command in which Coth XO
193 29 End 2 (lowest) 5.6.4 copy Canmand wi~~ No-Trap Opti
177 51 issue the corresponding COPY command, unless it resets
138 30 slave end via a WRITE or COPY command. In other words,
175 26 e calls, pr incipally the COPY command. Other calls whi
175 49 end. 5.1.1 Slave End COPY Canmands A COpy carman
177 11 s. 5.1. 2 ~..aster End COPY Canrrands As noted atove
178 36 Section 5.6. 5.2 Non-COPY Canrrands Communication
22 42 location fX)inter (see COPY~) • 1.4.9 Sirnultaneo

Page 264 Pub. 1059


INDEX

~ line \rord

228 32 the file is released. A copy operation involving a fil


200 41 transfer of data. If a copy or drive with roll's is su
179 51 tatus information with a COPY or WRITE camnand, exactly
20 50 ed a RESEr STA'IUS on a copy to which the master end
190 44 nits own ini tiative, or COPY, in rest=Qnse to a slave e
185 11 communication file on a COpy, READ, WRITE, or DRIVE co
188 42 f a copy-type operation (COPY, READ, WRITE, or REQUEST
199 43 sed as a parameter for a copy-type camnand in order to
201 23 ord 2 of the trap. On a copy-type camnand which invo1v
227 53 file iri that catalog. COPY-type operations to a file
171 45 a correSFQnding READ or COPY. (See the description of
249 21 re: 0 - allocated in core 1 - swap storage 2
57 17 Y be cataloged only in a core catalog • 13 Illegal
249 50 e Executive creates same core catalogs with preference
242 [core catalog]
200 24 ice, the other must be a core file or a job file. In 9
238 31 such as a card reader 1 a core file, or one of several 0
70 44 (source) file must be a core file, the issuing job's c
38 28 s scheduling only) 1 Core Residence permission 2
70 44 file, the issuing job's core, or a cornmunica- tion fil
69 11 tion cannot be used wi th core, which has no implici t re
44 (joboore]
68 [jcb core]
121 50 5 Upper: days-used count Lower: preference and
126 45 5 Upper: days-used count Lower: preference and
204 26 lated status. RECORD COUNT RESIDOE (Bits 30-35) - T
149 18 set the file's days-used count; the lower half contains
55 43 set the file I s days-us"ed counter (see Chapter 9). The
38 42 Y Scheduling (Pl:Q) 6 Crash (allows slave job to al:o
85 16 or, Priority Scheduling, Crash, and Leg. The spawned j
191 26 Usage Example 5.6.1 Creating a Communication File
182 43 tying its state. 5.3 Creation and Destruction Ac
183 53 (see Secticn 5.5). The creation or destruction of ext
242 [DA. = Device Address]
241 17 er of 2 words long. The DA list, if read in order, con
250 46 les/catalogs is that the DA' s for regular files/catalog
251 17 laged files, since their r:A' S p:jint to ~~e devices them
240 43 most important part of a OA, for it specifies what kind
222 25 ramming Considerations Datanet-30 A write on a Data
251 [co::1e data]
37 II run down. MME 500004: DATE No argmnents. DATE loa
56 20 e used to set the file's Date Last ~ified attribute.
96 41 upper half and the ceded date last m:dified in the lowe
125 22 The date last used and date last modified in the cata

Pub.1059 Page 265


SYS'IEM PRCGRAMMING REEERENCE MANUAL

~ line word
149 20 the upper half and ceded Date Last M::dified in the lowe
125 21 on specified in X6. The date last used and date last m
56 18 to initialize the file's Date Last Used attribute. The
149 20 nd word contains a ceded Date Last Used in the upper ha
121 [DLM = date of last modification]
121 54 last use Lower: coded date of last modification 7
126 49 last use Lower: coded date of last modification 7
121 53 alcg 6 Upper: ceded date of last use Lower: ceO
126 48 alcg 6 Upper: ceded date of last use Lower: ccd
.121 [DLO = date of last use]
56 17 nd word contains a coded date used to initialize the fi
56 22 is set to zero, and the date-last-used and date-last-m
149 16 o two words of usage and dates infonnation. The upper
96 34 dces not point to cooed dates, but contains a ceded da
251 [ccrled date]
49 11 MME 500003: TIME OF DAY No arguments The ASCII
248 42 exhausting discussion. DAYS-USED The DAYS-USED fiel
121 50 ccess word 5 Upper: days-used count Lower: pref
126 45 ccess word 5 Upper: days-used count Lower: pref
149 18 r used to set the file's days-used count; the lower hal
55 43 s used to set the file's days-used counter {see Chapter
77 34 atus word 2 contains the DeW residue of the last Dew ac
77 [I:CW' residue]
207 41 ing. 6.2.2 Drive with Dew's A Drive with DC~s has
77 31 d cut. If a DRIVE with DCW's fails with a bad DeW sta
200 41 If a copy or drive withDCW's is successfully initiate
74 16 antral lMJrds (Drive with !:XJ'l' s only) X4 Flag bits X6
204 37 the device. Drives with DCA's transfer data to or fram
199 29 ction) or 24 (drive with Dav's) is provided for ~~is pu
207 51 The data control words (roq's) pointed to by register
76 20 tion) and 24 (drive wi~, DeW's). A drive of ~ 12 ap
76 33 r 6 for a description of OCWs. Status word 2 on a cern
187 43 camrunication file to Ce destroyed. Thus it is not a 1
196. ] [destroying ccmmunication files
197 ] [destroying ccmmunication files
182 43 tee 5.3 Creation and Destruction A ccmmunication
183 53 n 5.5). The·creation or destruction of extra slave end
201 22 29 30 3S on a single device action DRIVE command ~~
76 20 device files: 12 (single device action) and 24 {drive w
199 28 ction code of 12 (single device action) or" 24 (dryve wi
74 36 ile mcde) and 12 (single device action). These drives 9
114 26 The command causes ~~e device address list for ~~e sp
247 22 and applying a "PRUVIrE DEVICE ADDRESS" MME to the obj
58 27 ff-1ine but ~,e file has device addreSSeS allocated (

Page 266 Pub. 1059


INDEX

~ line word

114 11 MME 500126: PWlIDE DEVICE ADDRESSES XO File re


238 37 t is stored by a list of device addresses (DA's). In ge
240 14 a10rganization 9.3.1 Device Addresses (DA's) A de
38 48 Xes, enables the PRGVItE DEVICE ADD~ camnand, and
126 27 catalog 8-19 List of device addresses for catalog (
56 14 th them (zero length; no device addresses) • The upper
242 [nA. = Device Address]
240 31 (not used) OC - logical Device Cede (logical device nu
181 32 mode drive (~ 0) or a device drive (~ 12) may be
76 36 completed single action device drive contains the stat
204 31 11y transferred. 6.2 Device Drives A number of de
176 21 nvolved in the COPY is a device file (see Chapter 6),
177 33 Ie, and copies be~Heen a device file and communication
172 50 he destination file is a device file, then the lower ha
74 28 rnmunication file or on a device file. Drives on commun
199 24 the high-speed printer. Cevice files are always of typ
77 41 DRIVEs, see Chapter 6, "J:evice Files". Except as not.
76 19 we valid drive ~s for device files: 12 (single devic
76 [device status returns]
210 11 es) 6.3 Device Status Returns This s
200 [device status word]
92 53 1 contains the physical device status. Status Retur
237 29 ee, with the Master File Directory (MFD) as the root, w.
157 15 ro, then the Master File Directory (MFD) is searched.
101 20 ro t. then the ~.aster File Directory is searched. As eac
199 40 talcg of the master file directory. A slave job opens
233 [MFD = Master File Directory]
18 48 a fau! t takes place. No dirty fault vector a1:orts ar
14 25 nonzero, the job had a "dirty fault vector" and is abo
15 25 jcb to be aJ:orted for a dirty fault vector. The simul
223 26 formatting characters. Disk The file pointer on a d
14 38 ), overflow/truncate, or divide check fault cccurs, it
233 41 talcg is to be four.d in "DLIBRARY" in the catalog spe
247 46 E: bi ts 32-35 6 DLU DL~
251 35 "used" in this sense. DIM This field contains the
121 n] [DLM = date of last rnadificatio
124 48 an or equal to the ceded DIM in the lower half of the w
251 26 nt ·have rroved to tat=e. DLU This field contains a co
247 46 TYPE: bits 32-35 6 DLU DL'1
121 (DLO = date of last use]
124 51 an or equal to the ceded DLU in the upper half of the w
196 11 5.6.7 Master End DRIVE Job A now issues aneth
194 17 Aborted COPY and Break Drive Suppose job 0 now issu
74 11. MME 500132: DRIVE xC. File reference num

Pub. 1059 Page 267


SYSTEM PRCGRAMMING flEE'ERENCE MANUAL

~ line word
180 11 if it desires. 5.2.3 DRIVE (Master End) Data tran
181 27 ed to that job. 5.2.4 DRIVE (Slave End) Certain dr
181 32 ive (~ 0) or a device drive (~ 12) may be issued.
21 50 12 D Slave issued drive - notifies the master
74 [setrnode drive = set mode special]
19 29 which are generated by a DRIVE command at the master en
180 17 rnunication file, and the DRIVE ccmnand can be used for
200 47 e called directly by the DRIVE ccmnand in order to requ
201 22 n a single device action DRIVE ccmnand this word is ret
199 44 m the device, or for the DRIVEccmnand to activate spec
199 28 rarn may wish to use, the DRIVE canmand. with function co
194 23 be given. It issues the DRIVE ecmnand. The drive is r
185 11 a COpy, READ, WRITE, or DRIVE ccmnand. The master end
181 41 ut and output m:des (see DRIVE ~). The exact interpr
20 13 pecials generated by a DRIVE on a communication file,
20 23 ecia1 was generated by a DRIVE or CLOSE on a communic
194 22 b A decides that a break drive shculd be given. It iss
181 [slave-issued drive special]
183 19 be able to issue a break drive successfully. Once ere
207 41 shes rewinding. 6.2.2 Drive with DeW's A Drive wit
77 31 ce was timed out. If a DRIVE with ~wts fails with a
200 41 of data. If a copy or drive with WAf s is successful
74 16 r to Data Control ¥brds (Drive with OCW's only) X4 Fl
199 29 Ie device action) or 24 (drive with DeW's) is provided
76 20 e device action) and 24 (drive with OCW's). A drive of
29 38 of infra job. (4) On DRIVE with OCW's, gives record
181 35 et rode and slave-issued drive) at the job holding the
189 34 master errl job may issue DRIVE, CLOSE, or REQUEST STATU
190 44 ued an operation: either DRIVE, on its own initiative,
175 28 communication files are DRIVE, PASS, CLOSE, REQUESTST
195 43 read communication file" drive, the special interrupt w
188 28 a drive-~ operation (DRIVE, TRUNCATE, S~, or S
20 56 ed a break drive. (See DRIVE-master end, Section 5.2.
21 54 canmand (MJLE). (See DRIVE-slave erxl.) 13 R S
190 20 a slave em has issued a drive-~ canmand but the spe
180 27 Read canmunication file" drive: A drive of type 1 (and
180 44 als" (7). (2) "Break" drive: A drive of type 3 (and
186 14 nly exception is a break drive: in this case, if the r
204 31 nsferred. 6.2 Device Drives A number of device cp
205 11 6.2.1 Single Action Drives A single action drive
204 36 e drives •. Single action drives change the state of the
204 37 he state of the device. Drives with OC'W's transfer dat
74 [set m:de drive]
74 [read camm file drive]

Page 268 Pub. 1059


INDEX

page line word

74 [break drivel
181 [set m:de drive]
14 37 ver a me!ll::jry, fault tag, DRL, lockup, illegal prccedure
127 35 uing the canmand is Load-D..Imp enabled; (a) Appen
126 28 ot enabled with the Load-D..Imp permission) The forma
148 29 to usage and dates (Load-D..Imp enabled jobs only) or z
60 17 (4) If a jcb is Load-D..Imp enabled, and if X5 is non
247 23 his MME if they are Load-Dlm!p enabled, and so rrost jobs
56 20 If the jcb is not Load-Dlm!p enabled, or if X5 is zero
38 37 ng a catalog) 4 Load~Dlm!p permission (allows preail
149 15 job is enabled with Load-Dlm!p permission and X7 is non-
107 15 ob enabled with the Load-Dlm!p permission will cause N w
55 39 MME is enabled with Load-D..Imp permission, and if XS is
114 24 cbs enabled for the I..oad-Dlm!p permission. Nonenabled jo
79 11 valid. MME 500143: DUPLIC.~ XO File reference
29 31 On OPEN, ALTER ACCESSES, DUPLICATE, and REP'"...ACE, give
38 11 MME 500017: ENABLE A Desired setting fa
92 48 dces not fOssess the Leg enable bit may not issue this
85 13 e the description of the ENABLE ccmrnand for a list of t
85 17 ermissions by issuing an ENABLE canmand. Run List (
14 42 f the entire system (see ENABLE MME). This feature is t
148 29 age and dates (Load-Dlm!p enabled jobs only) or zero
14 41 on is highly privileged (enabled) it may use a ccrrmand
127 36 e canmand is Load-D..Imp enabled, (a) Append permi
247 23 ME if they are Load-Dlm!p enabled, and so Irost jobs may
192 32 5.6.3 PASS at a Slave End Suppose now that upon ex
192 11 UEST Sl'ATUS fran a Slave End Ur:on receipt of the "pas
74 48 (1) At the l~st slave em accepting special interrup
175 24 cation file has a master end and one or more slave er~s
175 49 ster end. 5.1.1 Slave End copy Ccmrrands A COPY co
177 11 tions. 5.1. 2 ~..aster End copy Conmands As noted a
196 II idle. 5.6. 7 Master End DRIVE Job A new issues a
185 45 va- tion. When a slave end has reserved the file, it
20 37 drive (see DRIVE-slave em in Section 5.2). The 10
117 14 the corresp:>nding slave em is traPt=ed. only if a non
69 [slave end issued READ special]
116 40 terruptnumber 11 (slave em issued READ) at t.'e master
69 18 terrupt number 11 (slave end issued READ) or 12 (slave
138 ial] [slave end issued. REQUEST STATUS spec
141 1] [slave end issued RESEr STATUS sp:cia
141 41 errupt number oro (slave end issued RESEr STA'lUS) at th
146 . ] [slave end issued SET POINTER special
146 27 terrupt number 15 (slave en:1 issued SET POINTER) at the
144 [slave end issued TRUNCATE special]

Pub. 1059 Page 269


SYSTEM PRCGRAMMING REFEREN:E MANUAL

word
167 [slave end issued TRUNCATE special]
144 26 terrupt number 14 (slave end issued TRUNCATE) at the ma
167 30 terrupt number 14 (slave end issued TRUNCATE) at the rna
69 [slave end issued WRITE special]
171 [slave end issued WRITE special]
69 19 ssued READ) or 12 (slave end issued WRITE) at the rnaste
].71 42 terrupt number 12 (slave end issued WRITE) at the maste
69 25 s reserved it, the slave end issuing the COpy canmand w
22 12 - notifies the master end job that a read-type comma
22 29 - notifies the master end job that a TRUNCATE or SCR
144 3S be issued on the master'end of a oommuni- cation file.
19 30 VE command at the master end of a communication file ar
64 34 ppeared. If the master er:d of a ccmmunication file is
69 17 A COPY issued at a slave end of a ccmmunication file wi
74 43 rive types at the master end of a ccmrnunication file ar
116 39 READ issued at the slave end of a communication file wi
137 32 a job file or the slave end of a ccmmunication file, t
138 23 ence number of the slave end of a ccmmunication file, t
144 25 mand issued at the slave end of a communication file wi
144 32 If the job at the master end of a communication file is
146 26 mana issued at the slave end of a communication file wi
167 29 mand issued at the slave end of a communication file wi
171 41 RITE issued at the slave end of a communication file wi
7S 44 y be issued on ~~e slave end of a terminal cornrnunicatio
74 ,38 pectively, at the master end of the communication file.
138 28 s the duty of the ~aster end of the communication file
146 28 T POINrER) at the master errl of the file. The second i
22 33 (See TRUNCATE-slave end only, Section 5. 2. ) 17
87 12 be created and its slave end passed. (4) If the ret
194 39 ervation. 5.6.6 Slave End Reservation; Local Operati
184 [slave end reserve]
184 [master end reserve]
185 21 (1) If the master em resets status on the canrru
187 15 lave end. 5.5.1 Slave End States First, the file a
189 21 e again. 5.5.2 ~~ster End States The situation is
64 3S is closed, or if a slave end to which the communication
172 21 the correspor~ing slave em will be trapped only if
141 37 h the master and a slave end will cause status to be re
179 11 REQJEST srAIDS (~~ster End) A REQUEST STATUS can l:e
179 35 2 REQUEST STA'IUS (Slave End) A REQUEST STATUS to t.;'e
181 27 b. 5.2.4 DRIVE (Slave End) Certain drive types may
181 [truncate (slave end) J
181 [scr a tch (slave em)]
181 [set pointer (slave end)]

Page 270 Pub. 1059


INDEX

page line \o,Ord

III 52 file and pass its slave em, depending on whether bi t


20 56 i ve. (See DRIVE-master em, Section 5. 2. ) 4 PF Pa
li6 41 sued READ) .at the master end. The secor.d interrupt ~r
171 43 ued WRITE) at the master errl. The secord interrupt ~r
69 19 ued WRITE ) at the master em. The second ~rd of the i
167 31 TRUNCATE) at the master end. The secoro ~rd of the s
21 54 DE) • (See DRIVE-slave em.) 13 R Slave issued·
87 21 d. Job files, master ends of cammunication files, a
il2 20 nly. Job files, master ems of carmunication files, a
il2 24 h the exception qf slave ends of cammunication files, f
175 24 nd ar.d one or IlX)re slave er:ds. Each end appears simila
li7 [master end]
246 39 ENTRIES The number of entries (descriptors and holes
121 29 sed) Lower: num1:er of entries, including holes, in
126 20 sed) Lower: number of entries, including holes, in
59 11 500111: mANGE CATALCG ENTRY xO File reference num
243 50 this table contains the entry nurnl:er of each file in i
120 36 er is used to specify an entry numf:er. UpJn canpletion
125 30 er is used to specify an entry nt.nnber. UpJn ccmpletion
15 36 ult cell) is ~~e initial entry point to the job. wnen
81 11 MME 500112: ~.sE xO File reference num
94 11 MME 500102: OLD ERASE XO. File reference num
152 11 MME 500137: TALLY EPA.,~ xO File reference num
230 40 rrnats: (1) For TALLY EFA..~ and T~.LLY REPlACE: Bi
81 45 cesses except Write. An ERASE command may therefore be
94 25 rnand is e.."'<actly like the ERASE command, except an X4 of
+78 44 structure, such as OPEN, ERASE, CATALCG, or REPLACE. I
131 39 the sequence of commands ERASE, CATALCG i however, the R
229 22 atalcg operations (OPEN, ERASE, REPIACE) provide two im
250 51 Many operations such as ERASE, REPU-..cE, SCPArol are no
199 51 s a parameter for a RON, ERASE, iJNCATALCG, TF.IJNCAT.E, SC
148 42 t:e traPJ?=d with a format error if the treenarre contains
152 43 be traPJ?=d with a format error if the treename contains
156 51 be trapped with a format error if the treer~contains
162 48 be trapped with a format error if the treenarre contaIns
225 19 1 I/O. 6.6 Executive Error Recovery If Executive
235 41 operation is 12 (format error), ~~a~ status word 2 wil
232 [format error]
156 22 file, trap bit mask and escape special convention bi
148 40 t 4. (020000 [ectal] I the escape convention bit) is set
152 41 bit 4 (020000 octal, the escape convention bit) is set
156 49 bit 4 (020000 ectal, the escap: convention bit) is set
162 46 bit 4 (020000 octal, the escape convention bit) is set
230 42 REPLACE: Bit 4 is the escape convention bit (see bel

Pub. 1059 Page 271


~ line word
231 33 ~rds are zero. The "Escape Convention" bit (020000
152 22 8) must be zero, (bit 4) escape special convention, (
162 22 8) must be zero, (bit 4) escape special convention, (
84 11 MME 500117: EXECtJrE XO File reference n
29 35 opened. (3) On RIJN, EXECUrE and CCNTINUE, gives te
64 46 e the description of the EXECUrE command for a descript
106 50 he supra, job on a RUN or EXEcrJIE command). A job can a
36 17 bles a job to receive an execute fault (real-time timer
15 23 r counts to zero, and an execute fault is given if the
15 48 1.3.5 Parity Faults; Execute Faults When a job ge
15 27 ardware timer runout nor execute faults are returned as
143 14 E is very similar to the EXECtJrE MME (500117) and diffe
13 15 of ~~e cede for a valid Executive call are always 101
12 17 em. 1.2.3 MME Faults; Executive calls A slave job
14 49 faults normally indicate Executive calls. However, if
225 19 by Physical I/O. 6.6 Executive Error Recovery If
36 17 ob to receive an execute fault (real-tim: timer runcut
24 18 curred, then the connect fault (special interrupt) if a
46 18 o' receive a timer runout fault after a specified amount
15 43 ection 1.4. The parity fault cell is not currently us
15 44 future use. The startup faul t cell is not used by the
18 46 ord of the slave connect fault cell) is zero, a slave
15 34 The shutdown and connect fault cells have special uses
13 25 is divided into two-word fault cells, one for each of t
43 18 e real-tim: tim:r runout fault has occurred. If an N g
II 54 for teo long, a lockup fault is generated. This faul
15 23 to zero, and an execute fault is given if the real-tim
15 22 s given. A tim:r rll.'1out fault is returned if the run-t
13 14 r out of OOun:lS, the MME fault is returned to the slave
24 19 any, and then any slave fault other than simulated sla
14 37 1 ts Whenever a rnem::>ry, fault tag I DRL, lockup, illega
22 49 cial interrupt, or slave fault to be given to a job eac
13 21 tive call. 1.3 Slave Fault Vector The first 40 (0
18 48 t takes place. No dirty fault vector al:orts are gene
14 26 ro, ~~e jOb had a "dirty fault vector" and is aborted;
15 25 0 be al:orted for a dirty fault vector. The simulated f
15 35 ~ial uses in the slave fault vector. ~rd 0 (the fir
42 36 released, then a memory fault will cccur. The arrount
36 18 (real-time timer runout fault) after a specified amoun
24 29 cial interrupt, or slave fault, it is unsqueezed. The
14 15 faults. To give a slave fault, the Executive stores th
25 53 MME instruction unless a fault, trap, or special interr
47 33 e specified IC/IR. If a fault, trap, or special interr
25 39 and will result in a NME fault. (A job receives a MME

Page 272 Pub. 1059


INDEX

page line word

12 21 MME (master rrcde entry) fault. The address field of t


15 48 Parity Faults; Execute Faults When a job generates
9 43 the following means: faults indicating that the jo
14 45 serious error. Ccrnrnand faults are generated when a pr
15 27 timer runout nor execute faults are returned as slave £
14 49 ted in slave mode. MME faults normally indicate Execu
47 38 Executive since all MME faults will be returned to the
11 35 ect faults, timer runout faults, and startup and shutdo
11 35 category are all connect faults, timar runout faults, a
11 18 <:de: I/O interrupts and faults. I/O interrupts cannot
24 19 her than simulated slave faults. The job will thus pro
13 29 thers are used for slave faults. The position of the i
11 36 and startup and shutdown faults. These events are not
15 48 use it. 1.3.5 Parity Faults; Execute Faults wl1en
100 38 catalcg to op:n. If the fetch bit (bit 4) of X4 is 1,
101 47 or the presence of the fetch bit (bit 4). lithe fet
157 47 or the presence of the fetch bit (bit 4). If the fet
102 35 -1) st catalcg, ar.d the fetch bi t is on in the access
191 26 Creating a Ccmmunication File Suppose that job A has
87 11 I, then a ccmmunication file will be created and its
176 21 in the copy is a device file (see Chapter 6), then t
21 11 on 5.2.) 4 PF Passed File - notifies the job that a
21 21 ssed. 5 RF Returned file - notifies the job that a
20 41 RCF Read ccmmunication file - used to notify a slav
177 33 copies between a device file and ccmmunication file sh
III 52 r create a communication file and pass its slave end, d
19 30 r eoo of a camnunication file are eounced. The rnethoo
182 50 rns on the communication file bit (bit 1) in ~~e access
87 [ccmmunication file bit]
III [communication file bit]
186 32 irre. The "canrrunication file busyJ' status (6) is a spe
187 26 ear busy ("cannunication file busy") to all other slave
188 18 busy (ncamuni- cations file busy") to this end. Only
88 50 LCSE.) Aterrninated jcb file can always 1:e reccgnized
18 26 end of a carmmications file can l:e "bounced" to a h
21 28 was passed. 6 FCI.D File closed - notifies t.'e job
197 20 s closely followed by a "file closed" special as its fi
64 36 ial interrupt of type 6 (file closed) is generated at a
157 15 is zero, then the Master File Directory (MFD) is search
237 . 29 a tree, with the Master File Directory (MFD) as the ro
101 20 is zero 1 ~~en the ~..aster File Directory is searched. A
199 40 sul:catalcg of the master file directory. A slave job 0
233 [MFD = ~..aster File Directory]
74 [read camm file drive]

Pub. 1059 Page 273

I.
SYS'IEM PRCGRAMMING REE:.ERENCE MANUAL

~ line word
141 36 ssued on a'communication file for which an operation is
144 28 ). If the canrnunication file is busy, ei ther because a
64 34 r end of a communication file is closed, or if a slave
64 45 US. If a suspended job file is closed, then that job
84 40 or, which is on. A job file is created for the new jo
74 36 are 0 (set communication file mode) and 12 (single devi
200 24 the other must be a core file or a job file. In genera
74 27 only on a communication file or on a device file. Dri
200 32 file via acammunication file should be swapped out of
192 42 job C receives a passed file special interrupt specify
48 [returned file special]
64 [returned file special]
74 [read comm file special]
184 14 are changed to a special file type called a "ncn-file"
199 [file type]
69 17 e end of a communication file will generate a special i
116 39 e end of a ccmmunication file will generate a s.pecial i
146 27 e end of a communication file will generate a special i
167 30 e end of a communication file will generate a special i
171 41 e end of a communication file will generate a special i
184 15 file type called a "ncn-file" (13), and the jobs holdi
195 43 es a "read canmunication file" drive, the special inter
180 27 (1) "Read camnunication file" drive: A drive of type
182 56 a slave 'erx:1 in a "passed file" special interrupt (see t
183 49 notified by a "returned file" special interrupt (if it
191 51 se it is 7) in a "passed file special interrupt. The f
l1

192 14 n receipt of the "passed file" special interrupt, suppa


197 19 b D receives a "returned file" special interrupt due to
246 33 escriptors. TYPE The file's type. DescriCed below
III 31 terrupt number 4 (passed file) if that job is accepting
4'8 21 terrupt type 5 (returned file) is generated for each re
64 27 rrupt number 5 (returned file). If it is a scratch fil
199 25 ype 6 (special catalcged file). They are asscciated wi
64 52 rrupt ntnnber 5 (returned file). The job issuing the cr.o
117 13 s arnaster communication file, the corresponding slav
69 44 d of a communica- tion file, and Xl is r~nzero. The
66 49 tus are reset on the job file, or when the job terminat
117 20 munication or a shared file, that file is reserved fa
70 44 rce) file must be a core file, the issuing job's core,
20 24 CSE on a ccmnunication file, the lo~r half of the DA
138 24 e end of a oammunication file, then a special interrupt
172 50 ination file is a device file, ~~en ~~e lower half of s
136 54 pended or terminated job file, then the status informat
137 32 e end of a communication file, then the status inforrnat

Page 274 Pub. 1059


INDEX

page line ~rd

, 180 47 a terminal communication file, to indicate the receip


184 16 on-files are notified by fi1e-closed special interrupts
112 12 sed with a camnmication file. If XO is zero, then th
74 28 tion file or on a device file. Drives on communication
200 24 be a core file or a job file. In general a slave job
172 20 f a master canmunication file. In that case, t..~e cor
172 27 ication file or shared file. In that case, the canmu
75 44 a terminal ccnmJnication file. The drive type (contain
143 20 the nS"1I1y created job file. This remains open with
88 25 when creating scratch file/catalogs (see OPEN SCRATC
94 27 hich means that only one filenarre can be sp:cified - a
97 29 hieb means that only one filename can be specified - a
100 31 Ie (denoted by a list of filenames which form a "treena
59 [filename]
121 [filename]
126 (filename]
231 [filename]
96 11 LD READ CATALOG AND OPEN FILES xO File reference num
124 11 READ CATALCG AND OPEN FILES XO File reference ntnn
124 [migrated files : offline files]
124 33 he READ CATALCG AND· OPEN FILES ccrnnand ccmbines tile fun
96 32 he READ CAT,.2U.CG AND OPEN FILES canmand wit-I-} t1-fO excepti
114 37 a READ CA'!'AI.CG.~..ND OPEN FILES ccmnand. Status Return
38 50 he READ C'.ATALCG AND OPEN FnES ccrnnand. wl1e.1"l a job is
181 40 r terminal ccmrnunication files in particular, it is use
70 42 files are communication files is not allowed. If the
124 47 Information for migrated files is provided only if the
77 41 I see Chapter 6, "'Cevice Files". Except as noted atov
112 20 er ends of communication files, and file/catalogs which
87 21 job is rest.nned. Job files, master eros of ccmnunic
112 20 cation files only. Job files, master ends of carnnunic
251 16 ved as special cataloged files, since their M.' s point
76 19 d drive types for device files: 12 (single device actio
124 migrated files : offline files] [
196 destroying ccmmunication files] [
197 destroying cammunication files] (
44 [job file]
232 n] [special first name: special conventio
152 44 ename contains a special first name. For more informa
156 52 ename contains a sp:cial first name. For more informat
148 43 ename contains a special first nazre. The I"I.aIDe and pass
162 49 ename contains a special first name. The l"'..an:.e a.rrl pass
185 32 setting the appropriate flag bit in an index register.
178 21 setting ~,e appropriate flag bit in X4 (see COPY MME) .

Pub. 1059 Page 275


page line ~rd

184 54 setting the appropriate flag bit when issuing those co


68 24 mber of device file X4 Flag bits X6 Trap location
74 18 ve with DOW's only) X4 Flag bits X6 Trap location
116 .18 memory location M2 X4 Flag bits X6 Trap location
141 16 ber of file/catalog X4 Flag bits X6 Trap location
171 18 e (may not be zero) X4 Flag bits X6 Trap location
228 25 eserve bit is set in the flag bits in X4 ('200000' for
69 53 he master er:d job. The flag bits in X4 are divided in
75 26 i th a status of 7. The flag bits in X4 have the foll0
116 53 ith a status of 7. The flag bits in X4 have the foll0
141 49 ed for that end) . The flag bits in X4 have the folIo
172 11 h a status of 7. The flag bits in X4 have the folIo
193 54 by setting B$NTPD in the flag bits, the first five word
193 37 by setting B$NTPS in the flag bits. The first ten ~rd
148 42 g will be trapped with a format error if the treename c
152 43 e will be trapped with a format error if the treename c
156 51 n will be trapped with a format error if the treenaIIE c
162 48 e will be trapped wi th a format error if the treename c
235 41 ran t..~e operation is 12 (format error), then status war
232 [format error]
224 24 t card.) Magnetic Tape Handler Note that it is the
18 53 the end of its special handling routine. 1.4.5 Sa
222 37 errupt timeout status. High-Speed Printer The user
120 39 ferred. Note that since holes can occur in catalogs an
125 32 ferred. Note that since holes can occur in catalogs, a
243 34 unused) "Holes" are created whenever ob
246 39 entries (descriptors and holes) in the catalog. Jobs wh
121 .29 er of entries, including holes, in catalog 6 Zero
126 20 er of entries, including holes, in catalog 6 Zero
200 44 section, called Physical I/O (PIO) will attempt to tran
225 22 ery is enabled, Physical I/O will attempt starrlard erro
137 53 (q. v. ) • IDM:r: Unique Identifier. This field can be
190 11 munication' file are both idle (from the master's point
193 46 amunication file is new idle again. SupJ;.Ose job C sh
188 49 (20). Both eoos l:ecane idle, as does the ccmmunicatio
188 15 th, the slave errl may t:e idle, but the file may Ce rese
190 55 though the master errl· is idle, no operation except cr..cs
191 52 terrupt. The file is now idle. 5.6.2 REQW~ STATU
187 18 d may both t:e canpletely idle. In this state, any valid
196 26 file busy" (6). 5.6.8 Illegal Actions SuppJse job
14 37 fault tag, DRL, lockup, illegal procedure (IPR) , incnn
14 38 illegal prccedure (IPR), incanplete cp (ONe), overflow/
60 19 contain the new usage information for the file. The
55 45 mation or is zero. Type information has the following

Page 276 Pub. 1059


~ line word

149 19 lowar half contains type information or is zero. The s


S5 41 ts to two words of usage information to be placed in th
11 46 rrupts by the use of the inhibi t bi t. This hardware fe
13 12 address field of the MME instruction does not specify a
47 33 nted to by Xl, and a RET instruction is executed throug
22 S4 faults by issuing a RET instruction to the appropriate
17 13 e should end with an RET instruction whose address fiel
24 35 ezed mcde, since the RET instruction will not It resqueez
2S 36 MME (master m::de entry) . instruction with an address fi
18 19 ortuni~ after a special interrupt is generated (caused
180 19 ssues a DRIVE, a special interrupt is generated at a sl
III 31 XO, generating a special interrupt nurni:er 4 (passed fil
47 34 fault, trap, or special interrupt cccurs while the job
19 3S on S.2. 1.4.7 Special Interrupt Pair Format The bq
19 19 However, once a special interrupt pair has been saved,
18 41 interrupt data (special interrupt pair) are stored i
17 56 pt data entries (special interrupt pairs) which will fi
17 46 ter to the job's special interrupt stack. The tally we
18 42 re stored in the special interrupt stack. The address
17 35 upts only if its special interrupt tally word (T~rd one
177 18 valid, nonzero, special interrupt tally word - see Se
15 38 11) is the job's special interrupt tally word. The conn
196 16· mpts to give the special interrupt to the lowest slave
25 53 fault, trap, or special interrupt was generated as the
17 24 encountering any special interrupt which occurred at ~~
24 18 e connect fault (special interrupt) if any, and then an
177 50 has received the special interrupt, it must eventually
43 18 til N traps, one special interrupt, or one real-tii1E ti
22 48 e than one trap, special interrupt, or slave fault to b
24 29 receives a trap, special interrupt, or slave fault, it
191 51 a "passed file" sp=cial interrupt. The file is new idl
20 30 1.4.8 Types of Special Interrupts Type Mnemonic
17 29 issued. 1.4.2 Special Interrupts A special interru
11 27 rs.· 1.2.2 Transparent Interrupts Certain types of
19 11 1.4.5 Saved Special Interrupts If the job's spec
19 26 1.4.6 . Bouncing Special Interrupts Only special inte
9 49 ions have completed interrupts usually indicating
177 18 end be accepting special interrupts (have a valid, nonz
. 181 34 he corresponding sp=cial interrupts (set mode and slave
11 18 leaving slave m::ee: I/O interrupts ar.d faults. I/O in
15 40 interrupt cell. Special interrupts are described in de
11 30 rupts Certain types of interrupts are normally transp
181 52 nd will generate special interrupts at the master end j
185 53 The routing of special interrupts is also affected by

Pub. 1059 Page 277


SYS'IEM PROORAMMING REEERENCE MANUAL

~ line word
16 15 using traps and special interrupts. 1.4.1 Traps A
18 [bounced special interrupt]
18 [saved special interrupt]
14 38 ckup, illegal procedure (IPR) , incanp1ete op (ONe) ,ove
21 50 ure use. 12 D Slave issued drive - notifies the ~a
181 [slave-issued drive special]
181 35 upts (set node and slave-issued drive) at the job ho1di
22 11 e end.) 13 R Slave issued read - notifies the mas
69 [slave end issued READ special]
177 [slave issued READ special]
177 25 errupt indicating "slave issued READ" (a job requested
193 52 Job A receives a n slave-issued read" special interrupt
194 21 s notified with a "slave-issued read" special interrupt
116 40 upt number 11 (slave em issued READ) at the rnaster end
192 18 special interrupt (slave-issued read) is generated at j
69 18 upt number 11 (slave errl issued READ) or 12 (slave em
22 23 n 5.1.) 15 RS Slave issued request status - notifi
138 [slave end issued RECOEST STA'IDS special]
138 25 upt number 13 (slave errl issued RECOEsr STATUS) is gene
179 40 job issues it, a "slave issued request status" special
20 48 n 5.2.) 2 SRS Slave issued reset - notifies the rna
190 53 job has received a slave-issued reset special interrupt
188 (slave issued reset special]
141 [slave end issued RESET STATUS special]
141 41 pt numf:::er two (slave end issued RESET ST..~JS) at the rna
188 53 pecial interrupt ("slave issued reset") that its COPY i
22 35 n 5.2.) 17 SP Slave issued set pointer - notifies
146 [slave end issued SET POINTER special]
181 55 a SET POINTER, a "slave-issued set pointer" special is
146 28 upt number 15 (slave erx:1 issued SET POINTER) a t t.~e mas
144 [slave end issued TRUNCATE special]
167 [slave a~d issued TRUNCATE special]
181 54 the slave eoo, a "slave-issued truncate" special is ge
182 11 e end generates a "slave-issued truncate" special speci
144 26 upt number 14 (slave end issued TRUNCATE) at the master
167 31 upt number 14 (slave end issued TRU~TE) at t.~e master
22 17 on 5.1.) 14 W Slave issued write - notifies the ma
69 [slave end issued WRITE special]
171 [slave errl issued WRITE special]
177 28 in rest;:cnse to a "slave issued WRITE" special, it shru
193 33 t~nty words. A "slave-issued write" special interrup
69 19 d READ) or 12 (slave em issued WRITE) at the master en
171 42 upt number 12 (slave em issued WRITE) at the master en
84 30 t (in 1/64 milliCRrJ) Q Job access mask The source f

Page 278 Pub.1059


~ line ~rd

87 38 d when, it is passed. Job Access Mask (Q register)


106 49 ted by bits 29-35 in its job access mask (set by the su
88 11 ng job is ANDed wi til the job access mask specified in t
44 [job OJre]
68 [job core]
88 50 ee CLCSE.) A terminated jcb file can always be reccgni
64 45 STATUS. If a suspended jcb file is closed, then that
84 40 icator', which is on. A job file is created for the ne
66 49 status are reset on the jcb file, or when the job term
136 54 suspended or. terminated job file, then the status info
200 24 must bea core file or a job file. In general a slave
143 20 d to the newly created job file. This remains open w
87 21 the job is resumed. Job files, master eros of canm
112 20 rnunication files only. Job files, master eros of ccmm
44 [job file]
253 II eady cataloged). 9.5.2 Job quotas To prevent jobs f
14 28 fault vector. The supra jcb then has the option of con
40 11 MME 500012: JCB TIME No arguments The
84 18 pend to scurce file X3 Job type (bits 0-8) X4 ~..axilll
85 11 of X3 are ANDed wi th the job type bi ts allowed to the j
38 19 r reset (bi ts 0-8) The job type of a running job cons
70 44 a core file, the issuing job I score, .or a ccmmunica- ti
9 33 Executive to susp:nd the job. Executive entries that a
14 29 nating the al:orted slave job. This feature is intended
38 30 sidence permission 2 Large State Vector permission
85 15 which it is enabled are Large State Vector, Priority S
86 22 The remainder of the run list contains a list of file/c
84 35 i th the files in the run list open for it. The new job
85 42 I The run list pointed to by XS must l:e
127 35 b issuing the oammand is Load-Dump enabled, (a)
126 28 is not enabled with the Load-Dump permission) The
148 29 nter to usage and dates (Load-Dump enabled jobs only) 0
60 17 red. (4) If a jcb is Load-Dump enabled, and if X5 i
247 23 sue this MME if they are !.cad-Dump enabled, and so IIX)st
56 20 bute. If the jcb is not Load-Dump enabled, or if XS is
38 37 reating a catalcg) 4 Load-Dump p:rmission (allows p
107 15 y a job enabled with the Load-Dump permission will caus
149 15 the job is enabled with Load-Dump permission and X7 is
55 39 ALCG MME is enabled with Load-Dump permission, and if X
114 24 by jobs enabled for the Load-Dump permission. l'1cnenabl
189 49 he master en:1. The only local operation which can Ce i
187 32 EI' STATUS functions as a local operation, with the addi
195 33 is legal, since it is a lccal operation. Any ncnlccal
194 39 Slave End Reservation; Local Operations Now cons ide

. Pub.1059 Page 279


~ line ~rd

184 49 OITIItllnication file. Only local operations (see Section


185 46 other slave ends. Only local operations can be issued
186 48 of its ends being busy. Lccal operations may l:e issued
189 11 d. No operations except local operations or CLOSE can
227 55 p each other. A job may lock. the file specifying that
142 27 a an idle, unreserved (unlocked) state at the issuing e
70 (locked]
117 (locked]
172 [locked]
11 54 d code 'for teo long, a lockup fault is generated. Th
14 37 memory, fault tag, DRL, lockup, illegal prccedure (IPR
92 11 MME 500142: LOG XO Reserved for future
38 44 b to abort system) 7 Leg (allows job to do MME LOG)
92 48 ich does' not possess the Leg enable bit may not issue t
85 16 y Scheduling, Crash, and Leg. The spawned job must ena
41 11 MME 500013: LONG PAUSE XS Number of tra
224 24 nd for the last card.) Magnetic Tape Handler Note t
201 43 estion is powered off. MAJOR STATUS (Bits 2-5) - This
210 19 or DRIVE canrnands. The Major Status, which is four bi
76 45 t (normally on) • 1-5 Maj~ status. 30-35 Record
84 30 rniliiCRU) Q Job cccess mask The source file, which
152 23 on, (bits 9-17) trap bit mask XS Pointer to two TNOrds
162 23 on, (bits 9-17) trap bit mask X5 Pointer to tw.o words
81 23 a (bi ts 9-17) trap bit mask X5 Reserved for future
131 22 ro; (bits 9-17) trap bit mask XS Reserved for future
124 22 PEN (bits 0-8) i Trap bit mask (bits 9-17) XS Points t
87 38 s passed. Job Access Mask (Q register)
106 49 29-35 in its job access mask (set by ~~e supr a job on
156 22 es on the file, trap bit mask and escape special conv
148 38 E 500136). The trap bi t mask for the search is in bi ts
101 11 1imi ted by the trap bit mask in bits 9-17 of X4. In t
230 43 ts 9-17 are the trap bit mask to 00 used during the 0
22 11 sued read - notifies the master end job that a read-t
141 37 outstaming at l:oth the master and a slave end will ca
175 23 cammunication file has a master end and one or more sla
177 II e operations. 5.1.2 Master End COPY Commands As
196 11 ecanes idle. 5.6. 7 Master End DRIVE Job A now i
22 29 runca te - notifies the master em job ~~at a TRIJNCATE
19 30 y a DRIVE camrnand at the master end of a ccmmunication
64 34 ch disappeared. If the master errl of a ccmrnunication
74 43 Valid drive types at the master end of a communication
144 32 of 6. If t.~e job at the master errl of a camnunication
144 35 cannot be issued on ~~e master end of a comrnuni- catio
74 38 12, respectively, at the master end of the cornmunicatio

Page 280 Pub. 1059


INDEX

~ line ~rd

138 28 d, it is the duty of the master er.d of the ccmmunicatio


146 28 sued SET POINTER) at the master em of the file. The s
184 (master end reserve]
185 21 however: (1) If the master errl resets status on th
189 21 is idle again. 5.5.2 Master End States The situat
179 11 5. 2.1 . RECUEST STA'IDS (Master End) A REQUEST STMUS
20 56 reak drive. (See DRIVE-master end, Section 5.2.) 4
69 19 end issued WRITE) at the master em. The secorrl word a
116 41 end issued READ) at the master er.d. The secor:d interr
167 31 issued TF.IJNCATE) at the master em. The secor.d word a
171 43 end issued WRITE) at the master end. The second interr
87 21 . resumed. Job files, master ends of camrunication f
112 20 files only. Job files, master ends of cacmmication f
117 [master end]
101 20 if XO is zero, then the Master File Directory Ois searc
157 15 if XO is zero, then the Master File Directory (MFD) is
199 40 direct sul:catalcg of the master file directory. A slav
233 [MFD = Master File Directory]
237 29 rawn as a tree I with the Master File Directory (MFD) as
14 45 rated when a privileged (master rrcde) instruction is ex
127 20 If the file/catalog is master or slave trapped, then
157 33 or those returned by the master trap prcgram if the c
88 21 -28 Permission bits for master trap program (see CAT
100 55 a note that whenever the master trap prcgr am is run dur
101 [master tr ap prcgr am]
102 [master trap prC?9'ram]
132 [master trap program]
158 [master trap prcgram]
163 [master trap prcgram]
102 27 ed by a successfully run master trap, then all reques
121 17 ~rd Function 0 MAX 1 AI.J:J::. (amcunt of stor
125 52 Wbrd Function 0 MAX 1 ALOe (amount of star
247 48 7 LEN or MAX
245 34 MAX The maxiIrum length which
62 11 500124: CHANGE CATALOG MAX XO File reference numbe
108 36 is specifying a negative MAX for a scratch catalog; a
131 44 e..~ceeded even thcugh the MAX may still be exceeded afte
137 47 1 Length of file or MAX· of catalog 2 Read/writ
126 51 7 Length of file or MAX of catalcg 8 Upper: s
121 56 7 Length of file or MAX of catalcg See Chapter 9 f
III 35 he length of the file or MAX of the catalcg in the seco
132 51 he length of the file or MAX of the catalcg. Status
53 37 tains the current 1ength/MAX of the file/ catalog. Not
158 12 asked off if the catalcg MAX of the next-to-last entry

Pub. 1059 Page 281


SYSTEM PRCGRAMMING REE'ERENCE MANUAL

~ line word

103 27 f the opened file or the MAX of the opened catalog in s


158 32 f the opened file or the MAX of the opened catalog in s
163 15 h of the scratch file or MAX of the scratch catalog is
106 20 rap location A Catalog MAX or preallocation length N
62 32 rrent ALOe. ALOe's and MAX's are described in Chapter
251 49 f the mnth LENGrH (or MAX) If the descriptor is fa
103 17 ds twice its permissible MAX. Finally I bi t 0 of the ac
127 44 twice its permissible MAX; (6) Any remaining bi
42 36 rrory is released, then a memory faul t will cccur. The
42 11 MME 500006: MEMJRYREQUEST X5 Upper rnem
10 32 ly when the job issues a MEMJRY REQUEST call (on a MME
21 45 eek is released with a MEMJRY REQUEST canrnand before
84 52 spawned job can issue a MEMJRY REQUEST to change the s
14 37 lave Faults Whenever a mem::>ry, faul t tag, DRL, lockup
138 14 cataloged files. 4-N Message specified by PASS canm
III 40 a nonzero ~rd, then the message specified can be read
87 32 by the PASS canrnand, nq messages accanpany files passe
233 [MFD = Master File Directory]
242 34 W() special catalogs, the MFD and SMaJRC..1\T, are allocate
233 12 cg is to be founJ in the MFD catalog specified by X3.
251 11 ags. - At present, the MFD is the only specially-cata
124 ] [migrated files = offline files
124 47 g read. Information for migrated files is provided onl
210 20 is given in ectal. The Minor Status (Substatus) is si
76 50 r transferred). 6-11 Minor status. 12-17 Queue
202 [substatus = minor status]
202 [minor status]
143 14 y similar to the EXECUTE MME (500117) and differs only
12 21 xecutive by generating a MME (master mode entry) fault.
25 36 e carnnaoo by executing a MME (master m:de entry) instru
149 21 in the lower half. See MME CATALCG or Chapter 9 for m
13 13 e, or out of l:oun:::1s, the MME fault is returned to the s
25 39 command will result in a MME fault. (A job receives a
14 49 xecuted in slave mode. MME faults normally indicate E
47 38 the Executive since all MME faults will be returned to
13 II the address field of the MME instruction does not speci
25 45 d immediately by a PAUSE MME with a pause count of one.
25 46 d 200 series, or pausing MME's. The contents of the sl
181 42 output m:des (see DRIVE MME). The e.~act interpretatio
14 42 ntire system (see ENABLE MME). This feature is to allow
60 21 to by X5 of the CATAl:£G MME. U'p:>n canple tion of t.l1e
62 23 ses via ~,e ALTER ACCESS MME. The previous MAX for t.l1e
10 16 1.1 Running in Slave Mode A job actually rlli~ing
14 50 g the MME is in squeezed nx:x1e (entered by the Executive

Page 282 Pub. 1059


~ line word

24 28 job running in squeezed roc:de (see SQUEEZE, MME 500007


20 35 onie Use a S'IM Set rnode - used to notify the mast
9 23 of a processor in slave ncde and may perform any legal
181 34 special interrupts (set rrcde and slave-issued drive) a
181 32 ob. In particular, a set mode drive (type 0) or a devie
74 [set mode drive = set mode special]
74 (set mode drive]
181 (set mode drive]
228 33 ng a file open in shared rrcde may specify only the job I
74 (set mode drive = set mode special]
181 [set mode special]
142 26 a file opened in shared mode will cause the file to re
74 36 (set communication file mode) and 12 (single device ac
14 45 hen a privileged (master nx:de) instruction is executed
70 26 Ie is opened in shared rnode, do not allow any ccpy-ty
13 11 If a jcb is in squeezedrrcde, or if the address field
14 46 ion is executed in slave ·m:de. ~ faults nomally in
158 21 op:n the file in shared m:Xie. If the file is not aIre
227 [shared mode]
126 49 wer: ceded date of last rnodification 7 Length of f
121 [DUM = date of last modification]
56 20 set the file's Date Last Modified attribute. If the jo
125 22 last used and date last modified in the catalog entry
96 41 and the ceded date last rnodified in the lO\t4er.
149 21 half and ceded Date Last Mcdified in the lower half. S
96 34 ntains a coded date last modified. Informa- tion for f
38 26 Bit Function 0 M:Jnitor permission (affects sc
225 11 his re5pJnsibili ty _ MPC The Reset operation on a
205 21 MP) Reset MPC. Puts the MPC into an idle state. This
201 46 d Peripheral Controller (MPC) _. The general meanings of
233 21 atalog in the catalog "MOD" in the catalog specified
232 [special first name = special convention]
152 44 contains a special first name. For more information 0
156 52 contains a special first name. For more information on
148 43 contains a special first name. The name am password 0
162 49 contains a special first name. The name and password 0
193 29 5.6.4 copy Ccrnmand with No-Trap Option Job 0 now iss
194 12 ted" (2). Note that the no-trap option had no effect,
193 40 ob (job A) specified the no-trap option. Sllpp:)se job
178 11 is issued. 5.1.3 The ItNo-Trap" Q?tion When the mas
176 47 r em jcb exercises the "no-trap" option - see below) .
178 36 see Section 5 _6 • 5.2 Non-CDPY Ccrnmands Ccrnm.lnicat
184 15 cial file type called a "non-fileR (13), and the jobs h
12 28 alls are of three types: nontrapping, trapping, am tra

Pub. 1059 Page 283


SYSID! PRCGRAMMING REFERENCE MANUAL

~ line ~rd

233 19 ), and is a legal user ntnnl:er format the scanner will


243 50 table contains the entry number of each file in its cat
120 36 used to specify an entry number. t1p:)n canpletion of th
125 30 used to specify an entry number. Upon canpletion of th
232 [octal]
58 27 cifying a file ~ of off-line but the file has devi
56 12 ble file type, which is "off-line" (14 octal). Files t
251 (off-line]
124 (migrated files = offline files]
94 11 n. MME 500102: ' OLD ERASE XO File reference
96 11 MME 500125: OLD READ CAT..1ll.CG AND OPEN FILE
97 11 MME 500130: OLD REPLACE XO File referen
14 38 re (IPR) , incanplete op (CNC), overflow/truncate, or di
100 II MME 500101: OPEN XO File reference numb
156 II MME 500136: TALLY OPEN XO File reference numb
152. 36 permissions using TALLY OPEN (MME 500136). I f the ope
148 38 file is made using TALLY OPEN (MME 500136). The trap b
96 11 5: OLD READ CATALCG AND OPEN FILES XO File referenc
124 11 00127: READ CATALCG AND OPEN FILES XO File referenc
124 33 s The READ CATALCG AND OPEN FILES camnand canbines th
96 32 ike the READ CA.TALCG AND OPEN FILES camnand wi t.'1 two ex
38 50 in the READ CA.TALCG AND OPEN FILES camnand. wl1en a j
114 37 suing a READ CATALCG AJ.'1D OPEN FILES camnand. Status R
199 42 in the catalcg tree (see OPEN MME). This file referenc
106 11 MME 500100: OPEN SCRA'IOl X4. File/catalo
88 2S tch file/catalcgs (see OPEN SCPArol) The job file f
29 31 the camnand. (2) On OPEN, ALTER ACCESSES, DUPLIC.~T
178 44 talcg structure, such as OPEN, ERASE, CATALCG, or REPLA
229 22 ingn catalcg operations (OPEN, ERASE, REPIACE) provide
81 49 the sequence of camnands· OPEN~ UNCATALCG, and CLCSE.
153 13 quence of camnands TALLY OPEN, UNCATALCG, and CLOSE.
227 37 n shared rocde, see T.:~.LLY OPEN. A file which is to be
162 40 file/catalcg using TALLY OPEN. I f Read, Write, and App
230 46 ation. (2) For TALLY OPEN: Bits 0-3, 5-8 are the
53 24 im: the file/catalcg was op€ned, and if they do not con
227 [TALLY OPEN]
189 49 ter en:1. The only 1ccal op:rationwhich can be issued
187 33 TOE functions as a local operation, with the additional
195 33 gal, since it is a lccal operation. &"1Y ncnlocal operat
194 39 e End Reservation; Local Operations ~~ consider what
184 49 cation file. Only local operations (see Section 5.5) c
185 46 slave ends. Only lccal operations can be issued at th
186 48 ends eeing busy. Local operations may be issued even
189 11 operations except local operations or CLOSE can be iss

Page 284 Pub. 1059


INDEX

~ line ~rd

193 29 OFY Cormand with No-Trap Option Job D now issues a CO


178 11 5.1.3 The "No-Trap" Cption When the master end j
176 47 exercises the "no-trap" option - see below). This rre
194 12 • Note that the no-trap option had no effect, since th
193 40 A) specified the no-trap option. Suppose job A new is
14 38 R), incanplete op (ONe), overflow/truncate, or divide c
109 II r. MME 500106: OVERIAY XO File reference n
19 35 1.4. 7 Special Interrupt Pair Format The two data ~r
19 19 once a special interrupt pair has been saved, the speci
18 41 data (special interrupt pair) are stored in the spec
17 56 tries (special interrupt pairs) which will fit in the s
15 43 il in Section 1.4. The parity fault cell is not curre
15 48 shes to use it. 1.3.5 Parity Faults; Execute Faults
21 12 een passed to it via the PASS caranand. This special
III II MME 500122: PASS XO File reference. numb
182 22 cial interrupt. 5.2.6 PASS and CLOSE These ccrnmand
192 32 were available. 5.6.3 PASS at a Slave End Suppose
138 14 -L'1 Message sp:cified by PASS camand The rressage sta
182 46 created by a create-type pA....~ caranand (or by the implic
19.1 45 C Job A now issues a PASS caranand to job B, specify
87 32 d to files passed by the PASS' camand, no messages acco
182 55 d. The job to which the PASS is issued receives the fi
195 33 west) Job D's implicit PASS is legal, since it is a 1
183 36 set, it may not CLCSE or PASS it again until the netHly
192 37 It therefore issues a PASS to job C, specifying file
187 39 ations are RESET STATUS, PASS, and, if the end was pass
21 16 ile special is due to a "passback It fran an i.nmedia te
197 45 b ' s inmediate supra job (PASSBACK). There is no op€rat
112 [passbackJ
21 11 ,Section 5.2.) 4 PF Passed File - notifies the job
192 42 id, and jcb C receives a passed file special interrupt
182 56 ter of a slave em in a "passed file" special interrupt
191 51 (sug:;;ose it is 7) in a "passed file" special interrupt
192 14 d UFon receipt of the "passed file fl special interrupt
III 31 cial interrupt number 4 (passed file) if that job is ac
86 [pass]
41 11 MME 500013: LONG PAUSE XS Number of traps
43 11 MME 500005: PAUSE X5 Nt.nnber of traps
18 30 e the description of the PAUSE call in Chapter 3). (3)
12 47 calls with the autana.tic pause feature share features 0
25 45 allowed immediately by a PAUSE MMEwith a pause count 0
41 17 s identical in effect to PAUSE. r.GK; PAUSE shculd be u
12 29 trapping with autanatic pause. The action request...od b
25 46 re called 200 ser ies, or paus ing MME' s. The c:>ntents 0

Pub. 1059 Page 285


~ line ~rd

12 54 even after the autanaticpausing type of Executive call


199 39 files are cataloged in : PERCAT , a direct sul:cata1og of
199 22 e job wishes to access a peripheral it makes use of a d
38 28 ly) 1 Core Residence permission 2 Large State V
38 26 Function 0 M:>ni tor permission (affects scheduling
38 33 s) 3 Special catalog permission (allows a job to
38 37 catalog) 4 Load-Dump permission (al1owspreal1ocati
38 30 2 Large State Vector permission (permits a state
108 43 th the Special Catalog permission and is specifying m
149 15 s enabled with Load-Dump permission and X7 is non-zero,
180 55 ch has eXecute ("break'1) permission on its end of the
107 15 abled with the Load-Dump permission will cause N words
126 29 led with the Load-Dump permission) The format of th
!IJr-r:-
P r~~~
. r
~ ~~'. 5~ ~':. ;~:~t
114 24
183 18
74
nab1ed for the Load-D.nnp permission. Nonenab1ed jobs wh
nclude "breakJt (eXecute) permission; if they do not, ho
[break permdssion]
191 [break permdssion]
200 44 d. This section, called Physical I/O (PIO) will attemp
225 22 ror recovery is enabled, Physical I/O will attempt stan
146 11 MME 500113: SET POINTER XO File reference n
181 48 UNCATE, SCRMQI, and SEI' POINTER (Slave End Only) The
181 [set pointer (slave end)]
22 35 17 SP Slave issued set pointer - notifies the maste
22 36 master eoo jcb of a SEI' POINTER canmand issued at a
68 56 ation) file ' s read/write pointer is used. This option
146 [slave en:] issued SEI' FOINrER special]
181 56 TER, a "slave-issued set pointer" special is given to t
146 28 15 (slave end issued SET POINrER) at the master em of
188 28 RUNCATE, SCRMQI, or SEr POINrER) has teen issued at th
175 29 TE (or SCRA'n:H), and SE1' POINrER. This chapter descri
241 37 d files, roves them into preallocated scratch files, an
106 20 ation A Catalog MAX or preallocation length N (Load-
249 11 hanging their MAX's. . PREP An object's preference
245 24 4 ACe PREP TYPE PREP: bits 29-31 i
247 44 DAYS-USED PREF TYPE PREF: bits 29-31 i
137 43 djustment bits 29-31: preference (see Chapter 9 for
121 51 ays-used munt I:..oNer: preference and type of fi1e/ca
126 17 atalog is open I:..oNer: preference ar:d type of catalcg
126 46 ays-used count Lower: preference and type of file/ca
106 33 h/eXecute, and ONner) • Preference is an integer betwe
86 55 11 be created with the preference specified in bits 9
179 30 nd. In either case, the preference, length, and pointe
179 18 he other fields (access, preference, length, pointer) a
246 26 PREF The catalcg r s preference. See t..~e discussio

Page 286 Pub. 1059


~ line ~rd

249 44 open scratch files with preferences other than 4, or c


88 24 see CATALOG) 29-35 Preferences to allow when crea
245 [preference]
247 [preference]
222 37 out status. High-Speed Printer The user of the prin
38 40 f scratch files) 5 Priority Scheduling (PDQ) 6
85 16 are Large State Vector, Priority Scheduling, Crash, an
14 41 ob in question is highly pr i vileged (enabled) it may us
14 37 ag, DRL, lockup, illegal prccedure (IPR) , inccrnplete op
88 21 ion bits for master trap program (see CATALOG) 29-
126 40 Password or name of trap program (zero if catalog is
152 32 AQ Passed to slave trap program if file is slave trapp
156 32 AQ Passed to slave trap program if file is slave trapp
162 32 AQ Passed to slave trap program if file is slave trapp
101 36 by the Executive trap program if the catalog is so p
157 34 ned by the IlE:ster trap program if the catalog is so p
102 31 leg, then any slave trap program is bYl'assed and all
100 55 whenever the master trap program is run during an open,
59 51 password or slave-trap program name. If the first
48 29 ated the job. On a trap program protecting a catalcged
103 38 was protected by a trap program, the user access bits
164 13 was protected by a trap program, the user access bits
157 38 ted by the master trap program, then all accesses are
102 12 not protected by a trap pregram, then the password lX'i
55 32 ecified password or trap program. If bit 18 of the ace
101 [master trap program]
101 [slave trap prcg~am]
102 [master trap program]
132 [master trap program]
132 [slave trap program]
158 [master trap program]
158 [slave trap program]
163 [master trap program]
163 [slave trap program]
38 48 talog MAXes, enables the PRCVItE DEVICE ADDRESSES ccmna
114 11 MME 500126: PRCVIDE DEVICE ADDRESSES XO
247 22 h object and' applying a "PRCVIIE DEVICE ADDRESS" MME to
223 40 the file p:>inter ~ Card Punch The card punch has the
44 11 MME 500011: PURE xO File reference numb
142 23 has the same effect as a PURE ccmmand in which x:7 is ze
42 29 has previOUS1, iSSUed. a PURE ccmnand, then any MEMJRY
85 28 I Catalog Quota·1 I
85 30 I Scratch Quota ++--------
85 [catalog quota = catalog word allotment

Pub. 1059 Page 287


~ line ~rd

85 ] [scratch quota = scratch word allotment


81 41 catalog entry. Catalog quota checks are suspended for
152 50 see Chapter 8. catalog quota checks are suspended for
102 [catalog quota checks]
131 [catalog quota checks]
157 [catalog.quota checks]
162 [catalog quota checks]
252 14 tations 9.5.1 Catalog quotas A catalog's quotas ar
253 11 ca taloged). 9. 5.2 Job quotas To prevent jobs fran
132 36 ucceeds then his scratch quotas are incremented by the
116 11 MME 500133: READ xO File reference numb
22 11 13 R Slave issued read - notifies the ~aster e
175 41 anmand am its variants, READ and WRITE, are used to pe
120 11 MME 500114: READ CATALOG XO File refere
96 II MME 500U5: OLD READ CATALOG AND OPlli FILES
96 31 IllS canmand is like the. READ CATALOG Ai'ID OPEN FILES co
114 37 obtain them by issuing a READ CATALCG AND OPEN FILES co
124 11 MME 500127: READ CATALCG AND OPEN FILES
124 33 entification ~rds The READ CATALOG AND OPEN FTIES co
247 15 be gained by applying a READ CATALCG MME to the catalo
244 38 can be obtained by the "READ CATALCG" MME.
74 (read comm file driveJ
74 [read comm file special]
138 32 in the" same manner as a READ canmand, except that the
179 52 ave em job had issued a READ canrrand. It may exercise
179 39 ntially a variant of the READ ccmmand. wl1en the slave
20 41 s the mode. 1 RCF Read communication file - used
180 27 cation file are: (I) "Read canrnunication file" drive
195 43 If job A now issues a "read canmunication file" drive
41 21 pausing after issuing a READ on a terminal communicati
171 45 d issues a corresponding RE2lD or COPY. (See the descri
69 49 precede the slave issued READ or slave issued w"'RITE spe
69 [slave end issued READ special]
177 [slave issued READ soecial]
194 20 ppose job D now issues a READ to file reference number
177 25 indicating "slave issued READ" (a job requested data tr
193 52 receives a "slave-issued read" special interrupt. If j
194 21 ied with a "slave-issued read" special interrupt. Howev
116 40 ber II" (slave em issued READ) at the master em. The
192 18 interrupt (slave-issued read) is generated at job A, s
69 18 ber 11 (slave em issued READ) or 12 {slave em issued
193 43 issues another ten-word READ, not specifying the no-tr
185 11 nication file on a COPY, READ, WRITE, or DRIVE camnand.
188 " 42 py-type operation (COPY, ~j), WRITE, or REQJEST STATtJS

Page 288 Pub. 1059


~ line ~rd

22 12 master em job that a read-type camnand was issued


177 29 ecial, itshOlld issue a read-type camnarJ:1. (Types of
20 43 hes the slave to issue a READ. By convention the low
68 56 rce (destination) file f s read/write p:>inter is used. T
224 11 nonedi t rncde. Card Reader The card reader can b
15 16 ve call SET TIMER, and a real-tin:e (elapsed tim:) timer
36 18 eceive an execute fault (real-time timer runout fault)
43 18 pecial interrupt, or one real-ti.rre timer runout fault h
204 26 a simulated status. RECORD COUNT RESIDUE (Bits·30-
225 19 6.6 Executive Error Recovery If Executive error
10 23 e. 1.1.1 Base ~~dress Register The base address re
10 36 d below) • 1.1.2 Timer Register The timer register
47 22 ng a pseudo base address register. SQUEEZE causes the
10 [BAR ~ base address register]
53 22 not specified in X4 are relinquished. Any accesses sp
97 11 MME 500130: OLD REPLACE XO File reference n
131 11 MME 500116: REPLACE xO File reference n
162 11 MME 500140: TALLY REPLACE xO File reference n
97 27 rnand is exactly like the REPLACE camnand, except an X4
199 52 G, TRDNCA'lE, SCRATCH, or ~.cE type camnand will be r
29 31 ACCESSES, DUPLICATE, and REPLACE , gives the access wi
250 51 perations such as ERASE, REPT.....ACE, SCRATCH are not allow
178 45 OPEN, ERASE, CATALCG, or REPLACE. Intended for camruni
230 40 or TALLY ERASE and TALLY REPLACE: Bi t 4 is the escap
42 11 MME 500006: MEMJRY RECtJEST XS Upper rneIlXjry 1i.111
10 32 ~,e jcb issues a MEMJRY REQUEST call (on a MME fault,
21 45 released wi th a MEMJRY REQUEST camnand before the tra
136 11 . MME 500115: RECOEST STA'IUS XO File refe
179 11 ussed her e. . 5.2.1 REQUEST STA'IUS (Master End)
179 35 end job I S COPY. 5.2.2 REc:uEST STATUS (Slave End) A
22 23 15 RS Slave issued request status - notifies the
111 42 coamplished by issuing a REQOEST STATUS as the first fi
190 55 peration except CLOSE or REQUEST STATUS can be issued t
67 13 his can l:e verified by a REQUEST STATUS canmar.d), where
88 51 gth (available through a REQUEST STAIDS canmarrl) is alw
189' 34 y issue DRIVE, CLCSE, or REQUEST STA'IUS canmar.ds. A BE
·192 11 is new idle. 5.6.2 REQJEST STATUS fran a Slave En
138 19 P.ASS canmand an:1 if the REQOESl' STATUS is the first fi
185 40 same em) , except that a- REQUEST STATUS issued to the m
179 49 or an ordinary file (see REQJEST STATUS MME) and shculd
.179 16 or an ordinary file (see FEQt,JEST STATUS MME). The type
85 48 un below it by issuing a FEQOEST ~~S on file referen
138 (slave end issued REQUEST STATUS special]
22 24 master em job that a REQUEST STATUS was issued at

Pub. 1059 Page 289


~ line word

179 40 sues it, a "slave issued request status" special interr


138 25 ber 13 (slave end issued REQUEST STATUS) is generated a
177 53 n the master end (except REQUEST STATUS) will be reject
192 16 ts new file by issuing a RECGEST STATUS. It therefore
189 50 ued at the master end is REQUEST STAWS. The situation
103 34 be obtained by issuing a REQUEST STATUS. These user ac
84 52 d job can issue a MEMORY REQUEST to change the size of
185 41 not release an existing reserva- tion. wben a slave
188 50 cation file itself. Any reservation by the slave end i
187 34 releasing the slave end reservation. It will not, hew
194 39 tion. 5.6.6 Slave End Reservation; Local Operations
228 25 ey are issued unless the Reserve bit is set in the flag
70 21 communica- tion file, reserve that file for this end
185 22 ifying that it wishes to reserve the file, then the s
189 56 r em will not release a reserved corrarunication file. F
75 35 mmunication file will be reserved for ~~e end issuing
141 45 o be released (if it was reserved for t.~at end) .. The
142 13 t case, the file will be reserved for the master ern
117 20 hared file, that file is reserved for the end issuing
172 28 or shared file will be reserved for the end issuing
178 17 en reverts to an idle or reserved state, depending on t
180 52 vee If no slave em has reserved the camnunication f
185 45 When a slave em has reserved the file, it appears
180 35 munication file is not reserved to any slave em (see
181 23 lewill autcmatically be reserved to that job. 5.2.4
194 44 ype 0). The file is now reserved to the first slave en
194 28 0), and the file becanes reserved to the master erx:1.. I
187 24 Second, the file may be reserved to this slave end, wi
189 25 a t the master errl can be reserved with a RESEr STA'IUS c
191 12 to an idle (or possibly reserved) state. Finally, wh
184 [slave end reserve]
184 [master end reserve]
184 35 o longer exists. 5.4 Reserving the File It is scm
20 51 not yet responded. (See RESET STAruS, Section 5.2.)
20 48 2 SRS Slave issued reset - notifies the master
190 53 received a slave-issued reset special interrupt and ha
188 [slave issued reset special]
182 31 in Section 5.3. 5.2.7 RESET STATUS Since several j
186 24 5.5 Busy States and Reset Status Since many jobs
141 11 MME 500135: RESET STATUS XO File refere
69 32 rt the copy by issuing a RESET STATUS command on the co
186 54 ds. The function of the RESET STA'IUS command is always
185 12 rve the file only with a RESET STATUS command. Once t
187 32 issued. In ei ther case, RESEr STAms functions as a 10

Page 290 Pub. 1059


~ line word

190 56 ued to that errl before a RESET STA'IUS is issued. Other


191 18 ter erxl is des~oyed. A RESET STATUS issued before the
20 50 slave end jcb issued a RESET STATUS on a COPY to whic
44 46 X7 zero or by issuing a RESET STATUS on the source fil
184 18 r for any caranand except RESET STATUS or CI..OSE. Howeve
194 25 Job A therefore issues a RESET STATUS requesting the co
141 [slave em issued RESET STA'IUS special]
197 14 up state, job A issues a RESET STATUS to clear out job
190 25 S. If issued in time, a RESET STA'IUS will prevent the
141 41 er two (slave em issued RESET STATUS) at the master en
187 39 00. Local operations are RESET STA'IUS, PASS, and, if th
175 28 , cr..csE, REQUEST STATUS 1 RESET STATUS, TRIJNCATE (or SCR
64 42 1 MME' s except CI..OSE and RESET STATUS. If a suspended
66 31 The jcb was stopped by a RESET STATUS. The A-register
188 45 man::1 , unless it issues a RESET STATU""S. The action of a
228 29 ithout the bit set, or a RESET STA'ItJ""S. While the file i
66 [reset status] .
188 53 interrupt (1'slave issued reset") that its copy is no 10
177 52 copy command, unless it resets status on the master en
185 21 (1) If. the master em resets status on the ccmmunica
38 28 eduling only) 1 Core Residence permission 2 Lar
204 26 status. RECORD OJUNT RESIDJE (Bits 30-35) - This fi
77 34 word 2 contains the DeW residue of the last DeW access
77 [OCW residue]
47 32 P='inted to by X7, and a RET instruction is executed th
22 53 lave faults by issuing a RET instruction to the appropr
17 12 utine should end with an RET instruction whose address
24 34 squeezed m:de, since the RET instruction will not "resq
225 33 error recove~J includes retrying t~LeOut status and al
43 2S the PAUSE command in the return address.
87 14 d passed. (4) If the return bit (bit 2) is set in t
112 23 ch is passed withcut the return bit (bit 2) set in its
48 19 b are closed and, if the return bi t is set in their ace
64 25 assigned to it. If the return bit is set in the acces
55 36 atalcg must not have the return bit set in its access w
87 28 le/catalog which has the return bi t set in its access w
183 24 nd is passed wi thoot the return bi t set in the accesses
163 4;3 the issuing job with the return bit set. On cornpletio
132 45 the issuing jcb wi th the return bit set. tJI.:on ccmp1et
194 49 t the slave em with the return bit set. It tray not pa
III 56 s a scratch file arrl the return bi t was not set in the
192 39 eak. By not setting the return bit, job B effectively
192 [return bit]
29 17 rd 2 (I.ength or Counts) Return ~rd Ie IR Trap R

Pub. 1059 Page 291


SYSTEM PRCGRAMMING REE'ERENCE MANUAL

~ line word

16 29 d of the trap block (the return word), and its IC is re


23 22 lustrates the use of the return word. EAX6 TRAP P
64 [returned closed special]
21 21 Ie was passed. 5 RF Returned file - notifies the j
48 [returned file special]
64 [returned file special]
183 49 ve end is notified by a 11 returned file" special interru
197 19 ning. Job D receives a "returned file" special interru
48 21 pecial interrupt type 5 (returned file) is generated fo
64 27 cial interrupt number 5 (returned file). If it is a sc
64 52 cial interrupt number 5 (returned file). The job issuin
94 31 eed to be zero. Status Returns 0 Successful: th
221 11 6. 4 S imula ted Status Returns In addition to statu
210 11 6.3 Device Status Returns This section describ
76 . [device status returns]
199 30 • A typical example is "rewind" on a magnetic tape han
36 24 ssuing job hapt:ens to be rcad- blocked at this time it
43 22 is zero, the job will be roadblocked am will restart a
18 29 Otherwise, any r:errling roadblocks on b.~e job are rele
29 20 rn word IC!R Trap Routine Access (bits 0-8
17 12 fourth ~rd. This trap routine sheuld end with an RET
18 53 -f its special handling routine. 1.4.5 Saved Speci
143 11 MME 500120: RON The RUN MME is very simi
38 53 index register X3 on the RON ccmnand are Al.'1Ced with the .
182 47 it PASS available in the RUN ccmmand). A ccmmunication
21 15 i t p~.ss ccmmand in the .RUN ccmrrand. If DATA is nonze
84 22 allowed X5 Pointer to run list X6 Trap location X
86 22 The remainder of ~~e run list contains a list of fi
84 3S nd with the files in the run list open for it. The new
85 42 I The run listp:>inted to by X5 must
42 41 e supra job in X4 of the RON or CONTINUE ccmmand which
109 45 rted and the supra job's RIJN or CCNI'INUE ccmmand is tra
106 49 et by the supra job on a RUN or EXECrJrE ccmmand). A jo
178 46 ication files cannot be "run". An attempt to do so wil
199 51 ile as a parameter for a RUN, ERASE, DNCATALCG, TRONC.z\T
29 3S been opened. (3) On RUN, EXECt1IE am CCNI'INUE, g i v
15 15 lable to a slave job. A run-time tirrer is set by the E
45 11 IIleIIOry. MME 500002: RUNNING TDw1E No arguments
46 17 a job to receive a timer runcut fault after a specified
43 18 ,or one real-tim: timer runout fault has cccurred. If
15 22 fault is given. A t~r runcut fault is returned if th
36 18 e fault (real-time timer runcut fault) after a specifie
11 35 II connect faults, ti.m:r runootfaults, and startup and
18 (saved special interrupt]

Page 292 Pub. 1059


INDEX

~ line ~rd

19 11 dling routine. 1.4.5 Saved Special Interrupts If


19 22 ial interrupt stack, all saved special pairs will be di
18 34 he special interrupt is "saved" (see below) , and the
231 42 ee Section 8.3) • 8.2 Scanner Conventions The conv
152 42 in X4, then all special scanning conventions are disal
156 50 in X4, then all. special scanning conventions are disal
162 47 in X4, then all special scanning conventions are disal
38 40 ch files) 5 Priority Scheduling (PW) 6 Crash (
85 16 e State Vector, Priority Scheduling, Crash, and Leg. T
22 29 d job that a TRUNCATE or SCRAroI camnand was issued a
144 II MME 500110: SCRAroI XO File reference n
106 II MME 500100: OPEN SCRATCH X4 File/catalog fla
70 52 nd permission, the job's scratch (catalog) word allotrre
144 40_ oged) file will have its scratch (catalcg) word allotme
181 [scratch (slave end)]
48 22 ation, a job's remaining scratch and catalcg' word allot
64 53 CI.CSE will also have its scratch a.rrl catalog word allot
250 51 such as ERASE, REPLACE, SCP.Aroi are not allowed on sp:
85 30 I I Scratch Quota I I
85 110tment] [scratch quota = sc~atch word a
132 36 cement succeeds then his scratch QUotas are increrr.ented
48 -. [scratch ~rd allotment]
56 38 tch file/catalog has its scratch word allotment increme
70 [scratch 'nOrd allotment]
85 [scratch quota = scratch word allotment]
86 15 eeded). The catalog and scratch word allotments for th
107 34 ned, the job's remaining scratch word allotment is deer
136 37 nt 1 Job I s remaining scratch word allot::rrent 2 C
144 [scratch word allotment]
149 25 the o~ration, the job's scratch word allotment is incr
167 [scratch word allotment]
169 28 s a file/catalog has its scratch word allotrrent decreme
172 , (scratch word allotment]
88 25 file/catalcgs (see OPEN SCRAroI) The job file for a
175 29 SET STAIDS, TRUNCATE (or SCRA'ICfI), arrl SET POINI'ER. T
181 48 tive. 5. 2.5 TRUNCA'IE, SCP.Aroi, arrl SET POINI'ER (Slav
199 51 SE, UNCATAI.CG, TRUNCATE, SCRATCH, or REPLACE type canma.
188 28 ration (DRIVE, TRtJNCA'IE, SCRATCH, or SET POINTER) has b
74 36 ommunication file are 0 (set ccrnrnunication file mode) a
20 35 Mnenonic Use 0 S'IM Set rrode - used to notify the
181 34 ding special interrupts (set rrcde ar:d slave-issued driv
181 32 nd job. In particular, a set roc:de drive (type 0) or a d
74 ialJ [set rrcde drive = set rrcde spec
74 [set m:::de drive]

Pub. 1059 Page 293


INDEX

~ line ~rd

131 22 ust be zero; (bits 9-17) trap bit mask XS Reserved fo


124 22 ess for OPEN (bits 0-8);' Trap bit mask (bits 9-17) XS
156 22 ed accesses on the file, trap bit mask and escape spe
148 38 OPEN (MME 500136). The trap bi t mask for the search i
101 11 b will be limited by the trap bit mask in bits 9-17 of
230 43 ow) • Bits 9-17 are the trap bit mask to be used durin
60 11 If this ~rd contains trap bits which the issuing
81 31 1 is assumed) AQ Slave trap identification words Th
94 22 Trap location AQ Slave trap identification words Th
96 28 rdsN to copy AQ Slave trap identification words Th
97 24 Trap location AQ Slave trap identification words Th
100 28 4 of X4 is 1) AQ Slave trap identification words Th
124 30 rds N to copy AQ Slave trap identification words Th
131 30 1 is assumed) AQ Slave trap identification words Th
193 29 .4 copy Command with No-Trap Option Job D now issues
194 12 It (2). Note that the no-trap option had no effect, sin
193 40 (job A) specified the no-trap option. Suppose job A n
88 21 rmission bi ts for master trap prcgram (see CATALCG)
126 40 2-3 PasS'~rd or name of trap prcgram (zero if catalog
152 32 ro) AQ Passed to slave trap prcgram if file is slave
156 32 ro) AQ Passed to slave trap prcgram if file is slav""e
162 32 ro) AQ Passed to slave trap prcgram if file is slave
101 36 urned by the Executive trap prcgram if the catalcg is
102 31 catalog, then any slave trap prcgrarn is bypassed am
100 55 that whenever the master trap prcgram is run during an
59 51 new password or slave-trap prcgram name. If the fir
48 29 ini tiated t..~e job. On a trap prcgram protecting a cata
103 38 if it was protected by a trap prcgram, the user access
164 13 if it was protected by a trap pro:;ram, the user access
157 38 rotected by the master trap prcgr am, t...lo:len all access€
102 12 cg is not protected by a trap prcgr am, then the passwor
55 32 he specified password or trap pro;ram. If bit 18 of th
101 [master trap prcgram]
101 [slave trap prcgram]
102 [master trap prcgram]
132 [master trap program]
132 [slave trap program]
158 [master trap prcgram]
158 [slave trap prcgram]
163 [master trap prcgr am]
163 [slave trap prcgram]
29 20 Return ~rd· Ie IR Trap Routine Access (bits
17 12. n the fourth word. This trap routine should end with a
178 11 issu~. 5.1.3 The n~rapn Option When the master

Pub. 1059 Page 303


SYS'IEM PRCGRAMMING REE'E!:RE!N:E ~1JAL

~ line word
181 [set rrcde drive]
74 [set mode drive = setmode special]
181 [set mode special]
146 11 MME sOOll3: SET POINTER XO File referen
181 [set pointer (slave end)]
181 48 TRUNCATE, SCRA'ICH, and SET POINTER (Slave End Only)
22 35 17 SP Slave issued set pointer - notifies the m
22 36 he rcaster ern job of a SEr POINTER canmand issued a
146 [slave end issued SET POINTER special]
181 55 POnnER, a "slave-issued set pointer" special is given
146 28 ber 15 (slave end issued SEr POINTER) at the master end
188 28 E, TRIJNCATE, SCRAro3:, or SET POINTER) has been issued a
175 29 UNCATE (or SCRATCE), and SET POINTER. This chapter de
46 11 MME 500001: SEl' TIMER A Tim: The SET
15 15 et by the Executive call SET TIMER, and a real-tirre (el
172 26 ve communication file or shared file.' In that case,
158 [shared bi t]
117 20 ave communication or a shared file, b,at file is rese
228 33- involving a file open in shared rrcde may specify only t
142 26 ATUS on a file opened in shared mode will cause the fil
70 26 ion) file is"opened in shared mode, do not allow any
158 21 ve will open the file in shared rocx:1e. If the file is n
227 (shared m:de]
227 41 must be saved with the f shared' bit turned on in the u
15 34 Special Locations The shutdown and connect fault cel
11 35 faults, and startup and shutdown faults. These events
24 19 y slave fault ot.~er than simulated slave faults. The j
221 11 6.4 Simulated Status Returns In
24 14 The Executive will lin~ simultaneous traps and special
50 11 MME 500010:, TIME Snx:E ECO.rLOAD No arguments
76 36 us TNQrd 2 on a completed single action device drive con
204 36 kinds of device drives. Single action drives change th
205 11 End Processor 6.2.1 Single Action Drives A sing1
201 22 3 24 29 30 3S On a single device action DRrJE com
74 36 ation file mode) and 12 (single device action). These d
76 19 es for device files: 12 (single device action) and 24 (
199 28 i~~ function code of 12 (single device action) or 24 (d
22 32 SCRATCH). (See TRUNCATE-slave ern only, Section 5.2.
192 32 able._ 5.6.3 p.~..ss at a Slave End Sup£x)se now that u
192 11 2 REQUEST STA'IUS fran a Slave End Upon receipt of th
74 48 (1) At the lO¥iest slave end accepting special in
175 49 the master end. 5.1.1 Slave End copy Commands AC
185 45 reserva- tion. wben a slave em has reserved the fil
20 37 mode drive (see DRIVE-slave end in Section 5.2) •

Page 294 Pub. 1059


INDEX

~ line W':>rd
117 14 i1e, the corresPJnding slave em is trapped only if a
69 [slave end issued READ special]
69 18 ial interrupt number 11 (slave end issued READ) or 12 (
116 40 ial interrupt number 11 (slave em issued READ) at the
138 S special] (slave end issued REQUEST STATU
138 24 ial interrupt number 13 (slave end issued REQUEST STATU
141 special] [slave end issued RESET STATUS
141 41 al interrupt number two (slave end issued RESET S~S)
146 F;eCial]' [slave end issued SET FOnnER s
146 27 ial interrupt number IS (slave end issued SET FOINr.ER)
144 ial] [slave end issued TRU~CAT.E spec
144 26 ial interrupt number 14 (slave end issued TRONCATE) at
167 ial] [slave end issued TRUNCATE spec
167 30 ial interrupt number 14 (slave em issued ~~TE) at
69 ] [slave end issued WRITE special
69 19 end issued READ) or 12 (slave er:d issued WRITE) at the
171 ] [slave end issued WRITE special
171 42 ial interrupt number 12 (slave em issued WRITE) at the
69 25 end has reserved it, the slave end issuing the COPY can
69 17 ed. A COPY issued at a slave end of a ccmmunication f
116 39 A READ issued at the slave end of a ccmmunication f
137 32 ber of a job file or the slave errl of a ccmnunication f
138 23 reference number of the slave-end of a ccmrnunication f
144 25 CH command issued at ~~e slave end of a ccmmunication f
146 26 ER cannand issued at the slave e.r:d of a ccmmunication f
167 29 TE command issued at ~~e slave end of a communication f
171 41 A WRITE issued at the slave end of a communication f
75 44 ich may be issued on the slave em of a terminal ccmmun
87 12 will be created ar.d its slave er:d passed. (4) If t
194 39 ts reservation. 5.6.6 Slave End Reservation; I.ccal a
184 [slave end reserve]
187 15 to a slave er:d. 5.5·.1 Slave End States First, the
64 35 file is closed, or if a slave em to which the camnuni
172 21 .case, t.~e correst;:onding slave end will be trapped on
141 37 at both the master and a slave end will cause status to
179 3S 5.2.2 REQJEST STA'IUS (Slave End) A REQUEsr STAIDS
181 27 hat job. 5.2.4 DRIVE (Slave End) Certain drive typ
181 [trur.cate (slave end)]
181 [scratch (slave end)]
181 [set pointer (slave end)]
III 52 cation file ar.d pass its slave errl, deperding on whethe
21 54 nd (MJrE). (See DRIVE-slave errl.) 13 R Slave i
112 24 • with the exception of slave ends of ccmmunication fi
175 24 ster end and one or mJre slave ends. Each end appears

Pub. 1059 Page 295


~ line word
24 19 pt) if any, and then any slave fault other than simulat
22 49 p, special interrupt, or slave fault to be given to a j
13 21 Executive call. 1.3 Slave Fault Vector The first
IS 35 have special uses in the slave faul t vector. WJrd 0 (t
24 29 p, special interrupt, or slave fault, it is unsqueezed.
14 IS slave faults. To give a slave fault, the Executive sto
24 19 ult other than simulated slave faults. The job will th
13 29 hile others are used for slave faults. The position of
21 50 or future use. 12 D Slave issued drive - notifies
22 11 E-slave end.) 13 R Slave issued read - notifies t
177 [slave issued READ special]
177 25 al interrupt indicating "slave issued READ" (a job requ
22 23 Section 5.1.) 15 RS Slave issued request status -
179 40 ve end job issues it, a "slave issued request status" s
20 48 Section 5.2.} 2 SRS Slave issued reset - notifies
188 [slave issued reset special]
188 53 by a special interrupt ("slave issued reset n ) tJ.'at its
22 35 Section 5.2.) 17 SP Slave issued set pointer - not
22 17 Section 5.1.) 14 W Slave issued write - notifies
177 28 larly, in response to a "slave issued WRITE" special, i
14 29 terminating the aborted slave job. This feature is L,.
10 16 t~il. 1.1 Running in Slave Mode A job actually ru
9 23 antral ofa prccessor in slave rrcde arrl may perform any
14 46 struction is executed in slave m:de. MME faults norma
81 31 then 1 is assumed) AQ Slave trap identification y,cord
94 22 X6 Trap location AQ Slave trap identification word
96 28 of words N to copy AQ Slave trap identification word
97 24 X6 Trap location AQ Slave trap identification word
100 28 f bit 4 of X4 is 1) AQ Slave trap identification word
124 30 of words N to copy AQ Slave trap identification word
131 30 then 1 is assumed) AQ Slave trap identification word
152 32 t:e zero) AQ Passed to slave trap prcgram if file is
156 32 be zero) AQ Passed to slave trap prcgram if file is
162 32 be zero) AQ Passed to slave trap program if file is
102 31 N-1) st catalcg, then any slave trap program is bypassed
101 [slave trap program]
132 [slave trap program]
158 [slave trap program]
163 [slave trap progr am]
127 20 ile/catalog is rraster or slave trapped, then the acce
157 41 rrent file/catalog. Slave trapping programs are ru
181 [slave-issued drive sp€Cial]
181 35 interrupts (set m::::de ar.d slave-issued drive) at the job
193 52 ords. Jcb A receives a "slave-issued read" special- int

Page 296 Pub.1059


~ line word

194 21 ob A is notified with a "slave-issued read" special int


192 18 s. A special interrupt (slave-issued read) is generate
190 53 r end job has received a slave-issued reset special int
181 55 issues a SET FO:mrER, a "slave-issued set y;:ointer" spec
181 54 ATE to the slave end, a "slave-issued truncate" special
182 11 a slave em generates a "slave-issued truncate" special
193 33 1 for twenty words. A "slave-issued write" special in
59 51 me the new pasSY,Urd or slave-trap prcgr am name. If t
152 22 be zero, (bit 4) escape special convention, (bits 9-
162 22 be zero, (bit 4) escape special convention, (bits 9-
186 16 ak pennission, the break special "bounces" up the canmu
197 20 lo~ bya "file closed" special as its file reference
38 33 ore than 64 files) 3 Special Catalcg permission (al
108 43 ob is enabled with the Special Catalcg permission am
199 25 esare always of type 6 (special catalcged file). They
251 16 Peripherals are saved as special catalcged files, since
156 23 ap bit mask and escape special convention bit X5 Po
232 48 8.3) • There are three special conventions for the fi
230 34 when one of the three special conventiot1s is used fa
229 40 (2) There are several "special conventions" which al
232 (special first name = special convention]
232 onvention] [special first narre = special c
148 43 the treename contains a special first narre. The name
152 44 the treename contains a special first name. For more
156 52 the treename contains a special first name. For more
162 49 the treename contains a special first name. The nam=
18 53 0 until the em of its special har:dling routine. 1
183 49 ied by a "returned file" special interrupt (if it is ac
183 11 e end in a "passed file" special interrupt (see types 0
190 54 ved a slave-issued reset special interrupt and has not
197 19 ceives a "returned file" special interrupt due to the c
18 19 irst opportuni~ after a special interrupt is generated
179 40 e issued request status" special interrupt is generated
180 19 nd job issues a DRIVE, a special interrupt is generated
193 34 A "slave-issued write" special interrupt is generated
III 31 fied in XO, generating a special interrupt nUl'l"J:er 4 (pa
47 34 R. If a fault, trap, or special interrupt occurs while
17 56 interrupt data entries (special interrupt pairs) which
18 41 special interrupt data (special interrupt pair) . are
19 19 saved. H~ver, once a special interrupt pair has bee
19 35 in Section 5.2. 1.4.7 Special Interrupt Pair FOrnBt
192 42 C receives a passed file special interrupt specifying i
17 46 lly pointer to the jcb' s special interrupt stack. The
18 42 air) are stored in the special interrupt stack. The

Pub. 1059 Page 297


SYSTEM PRCGRAMMrNG REE'ERENCE MANUAL

~ line word

15 38 fault cell) is the job's special interrupt tally word.


17 34 1 interrupts only if its special interrupt tally word (
177 18 (have a valid, nonzero, special interrupt tally word -
196 16 ive attempts to give the special interrupt to the lowes
25 53 unless a fault, trap, or special interrupt was generate
17 23 before encountering any special interrupt which occurr
24 18 then the connect faul t (special interrupt) if any, and,
177 SO end job has received the special interrupt, it must eve
22 48 for nore than one trap, special interrupt, or slave fa
24 29 pter 3) receives a trap, special interrupt, or slave fa
43 18 ocked until N traps, one special iJlterrupt, or one real
192 1:4 ipt of the "passed file" special interrupt, SUPFOse job
193 52 es a "slave-issued read" special interrupt. If job A t
194 21 th a "slave-issued read" special interrupt. H~ver, jo
191 51 is 7) in a '·passed file" special interrupt. The file is
17 29 ey were issued. 1.4.2 Special Interrupts A special
19 11 routine. -1.4.5 Saved Special Interrupts If the jo
19 26 arded. 1.4.6 Bouncing Special Interrupts Only spec
20 30 eelow. 1.4.8 Types of Special Interrupts Type M
177 18 master end be accepting special interrupts (have a val
181 34 nerate the corresponding special interrupts (set rocx:1e a
15 40 special interrupt cell. Special interrupts are describ
181 52 ve end ar.d will generate s;;ecial interrupts at t.~e mast
185 53 nd job. The routing of special interrupts is also aff
184 16 notified by file-closed special interrupts that the co
16 15 e jab by using traps and special interrupts. 1.4.1 T
18 [bounced special interrupt]
18 [saved special interrupt]
181 54 "slave-issued truncate'· special is generated. ~'7hen t.~e
185 25 fied. (2) If a break special is given to a slave en
181 56 lave-issued set PJinter" special is given to the master
19 22 terrupt stack, all saved special pairs will Ce discarde
152 42 ) is set in X4, then all special scanning conventions a
156 50 ) is set in X4, then all special scanning conventions a
162 47 ) is set in X4, then all special scanning conventions a
182 11 "slave-issued truncate" special specifying a lengt.' of
177 28 0 a "slave issued WRITE" special, it shculd issue a rea
251 11 ent, the MFD is the only specially-catalcged catalcg. T
24 14 k simultaneous traps and specials in such a way b,at a
48 (returned file special]
64 [returned file special]
64 (returned closed special]
64 [special]
69 [slave end issued READ special]

Page 298 Pub. 1059


INDEX

~ line word

69 [slave end issued WRITE special]


74 et mode drive = set mode special] [s
74 [read comm file special]
74 [break special]
138 nd issued REQUEST S~S special] [slave e
141 end issued RESET STATUS special] [slave
144 lave end issued~~TE special] [s
146 e end issued SET POINTER special] [slav
167 lave end issued TRUNCATE special] [s
171 [slave end issued WRITE special]
177 [slave issued READ special]
177 [bouncing special]
181 [set mode special]
181 [slave-issued drive special]
186 [bouncing special]
188 [slave issued reset special]
194 [l:ouncing special]
47 II MME 500007: SQ,JEEZE X4 Points to IC/IR
24 32 BAR, and has bit 35 (the squeeze bit) set on to indicat
25 51 Except in the case of a SQUEEZE or a TERMINATE ccnm:md
24 28 ng in squeezed rocrle (see SQ,JEEZE, MME 500007 in Chapter
14 50 generating the MME is in squeezed m:de (entered by the
24 28 When a job running in squeezed rrroe (see SQ,JEEZE, MM
13 11 calls. If a jcb is in squeezed mode, or if the addre
18 42 in the special interrupt stack. The address field of
17 47 jcb l s special interrupt stack. The tally word is typi
229 47 • These operations use a starrlard treenarne format (defi
162 36 ile system (denoted by a stan:1ard treenarne). The TAIL
148 [standard treename]
152 [standard treename]
156 [standard treename]
. 11 35 t:i.m=r runout faults, and startup and shutdcwn fau! ts.
15 44 ved for future use. The startup fault cell is not used
38 30 e permission 2 Lcirge State Vector permission (permi
85 15 it is enabled are Large State Vector, Priority Schedul
178 17 s to an idle or reserved state, depeooing on the option
187 15 end. 5.5.1 Slave End States First, the file and t
189 21 ain. 5.5.2 Master End States The situation is camp
186 24 led astray_ 5.5 Busy States and Reset Status Sinc
186 24 5 Busy States and Reset Status Since many jobs may a
182 31 tion 5.3. 5.2.7 RESET S~S Since several jobs ca
136 'll ~ 500115: REQUEST STA'ItJS XO File reference nu
141 11 MME 500135: RESET STATU~ xO File reference nu
186 32 ccrnmunication file busy" status (6) is a special status

Pub. 1059 Page 299


~ line word

201 43· is p::>wered off. MAJOR STATUS (Bi ts 2-5) - This field
179 II re. 5.2.1 RECUEST STATUS (Master End) A RECUES
179 35 s copy. 5.2.2 RECUEST STATUS (Slave End) A RECUEST
210 20 ven in octal. The Mir.-or Status (Substatus) is six bits
22 23 RS Slave issued request status - notifies the master
III 42 hed by issuing a REQUEST STATUS as the first file opera
190 55 except CLOSE or RECUEST S'I'A-'TUS can be issued to that e
16 34 us word always contain a status cede indicating whether
186 54 he function of the RESET STATUS ccmmand is always to fa
69 33 copy by issuing a RESET STATUS ccmmand on the canmunic
88 51 ilable through a REQUEST STATUS ccmmand) is always zero
67 13 be verified by a REQJEST STA'lUS canmand), whereas the 1
185 12 e file only with a RESET STATUS ccmmand. Once the fil
189 35 DRIVE, CLCSE, or RECUEST STATU"'S ccmmands. A RESET STAT
192 11 idle. 5.6.2 REQJEST STATUS from a Slave End Upon
187 32 In ei ther case, RESET STA....'TIf.JS functions as a local op
190 56 that errl before a RESET STATti'S is issued. Other camna
138 19 mmand arrl if the REQUEST STATUS is the first file o:p=ra
191 18 d is destroyed. A RESET ST.ATUS issued before the CLCSE
185 40 ), except that a RECUEST STATUS issued to the lTIaster en
179· 16 dinary file (see REQJEST STATUS MME). The type field 0
20 50 end job issued a RESET S'TIL.fT1(JS on a COPY to which the
.85 48 it by issuing a REQUEST ST~ on file reference numbe
185 21 'If the master end resets status on the communication
177 52 cmmand, unless it resets status on the master em (see
44 46 ro or by issuing a RESET STATUS on the source file for
184 19 any canmand except RESET STATUS or CLCSE. However, t.l-:le
194 25 therefore issues a RESET STATUS requesting the ccmmunic
221 11 6.4 Simulated Status Returns In addition t
210 11 6.3 Device Status Returns This section
76 (device status returns]
138 slave end issued REQUEST STATUS sp:cial] [
141 [slave end issued RESET STATUS special]
197 15 te, job A issues a RESET STATUS to clear out job D's RE
22 24 r errl jcb that a REQOEST ST.ATtJS was issued at a slave
190 25 issued in time, a RESET STATUS will prevent the specia
16 37 e description of t.~e two status words is given in Secti
200 [device status word)
179 . 40 a "slave issued request status" special interrupt is g
141 41 (slave end issued RESET STATUS) at the master em and
138 25 slave end issued REQUEST STATUS) is generated at the rna
177 53 ster end (except REQOEST STATUS) will Ce rejected as "i
187 39 cal operations are RESET STATUS, PASS, and, if the eoo
20 52 responded. (See RESET STATUS, Section 5.2.) 3 BR

Page 300 Pub. 1059


page line ~rd

210 19 VE canmands. The Major Status, which is four bi ts, nu


76 50 sferred) • 6-11 Minor status. 12-17 Queue addres
76 45 rnallyon). 1-5 Major status. 30-35 Record count
92 53 ains the physical device status. Status Returns 0
64 42 s except CLCSE and RESET STATOS. If a suspended job f
66 31 b was stopped by a RESET STATOS. The A-register will
192 16 ile by issuing a REQUEST STATOS. It therefore issues a
188 45 unless it issues a RESET STATOS. The action of a RESET
189 50 he master em is REQUEST STATUS. The situation is simi
103 35 ned by issuing a REQUEST STATOS. These user access bit
228 29 the bit set, or a RESET STATOS. While the file is rese
66 [reset status]
202 [substatus = minor status]
202 [minor status]
202 [substatus·= minor status]
14 28 dirty fault vector. The supra· job then has the opt.ion
141 31 ed on a running job will susp=nd execution of t..~at job
9 33 ycause the Executive to suspend the job. Executive en
66 54 rred because the jcb was suspended (for ~,e reasons lis
66 37 and whose execution was suspended as a result of the s
88 52 is always zero, while a suspended jcb never has zero 1
64 47 and for a description of suspended jobs). All files op
136 53 Ie reference number of a suspended or terminated job fi
88 39 jcb al:orted, the job is suspended, and its execution rn
14 26 al:crtedi that is, it is suspended, and the job which r
16 44 tion of the slave job. is suspended; (2) 'I"....o 'Nards 0
14 . 37 Whenever a memory, faul t tag I DRL, lcckup, illegal prcc
148 11 MME 500141: TALLY CATALOG XO File refer
231 11 t mask. (3) For TALLY CATALCG: The register
152 11 MME· 500137 : TALLY ERASE XO File referen
230 40 ree formats: (1) For TALLY ERASE and TALLY REPLACE:
156 11 MME 500136: TALLY OPEN XO File referenc
148 37 ified file is made using TALLY OPEN (MME 500136). The
152 36 Append permissions using TALLY OPEN (MME 500136). If t
227 37 file in shared m::de, see TALLY OPEN. A file which is
162 40 n the file/catalcg using TALLY OPEN. If Read, Write, a
230 46 e operation. (2) For TALLY OPEN: Bits 0-3, 5-8 a
227 [TALLY OPEN]
162 II MME 500140: TALLYREPLACE xO File refer
230 40 (1) For TALLY Eru\..5E and TALLY REPLACE: Bit 4 is the
17 35 if its special interrupt tally ~rd (w-ord one) is not z
177 19 nzero, special interrupt tally ~rd - see Section 1.3)
15 38 jcb's spec:ial interrupt tally ~rd. The connect fault
224 24 e last card.) Magnetic Tap: Handler Note that it is

Pub. 1059 Page 301


SYSTEM PRCGRAMMING REEEREN:E MANUAL

~ line ~rd

225 44 ried. A data alert on tape is retried with backspace


7S 44 ed on the slave end of a terminal communication file.
180 47 ~ical use is with a terminal communication file, t
181 40 communication file. For terminal cammunication files i
48 11 MME 500000: TEPMINATE X4 Termination ac
25 51 e case of a SQUEEZE or a TERMINATE ccrnrnand, a slave job
65 12 e the description of the ~ ccrnrnand.} If a ter
64 46 nd all jobs below it are terminated (see the descriptio
137 28 esources const.lII1€d by all terminated infra jobs. If XO
88 49 CLCSE. (See CLCSE.) A terminated job -file can always
136 54 numter of a suspended or terminated job file, then the
88 41 d. If, hONever, the job terminated, either successfull
66 56 NUE ccmnand. If the job terminated, however I another C
66 49 ob file, or when .the job terminates or aborts. Status w
88 34 the job file, or the job terminates or is aborted. If
14 29 option of continuing or terminating ~,e aborted slave
86 17 the spawning job. Uf:On termination of the spawned job
40 11 MME 500012: JOO TIME No arguments The tota
45 11 MME 500002: RONNING TIME No arguments The tota
49 11 MME 500003: TIME OF DAY No arguments T
50 11 MME 500010: TIME S:m::E BCOrIDAD No argurn
36 18 e an execute fault (real-time timer runout fault) after
43 18 1 interrupt, or one real-time timer runout fault has cc
46 II MME 500001: SET TIMER A· Tim: The sEt' TIME
15 15 a slave job. A run-time timer is set by the Executive
15 16 real-time (elapsed time) timer is set by the Executive
10 36 scribed below} . 1.1.2 Tirr.er Register The timer reg
46 17 abIes a job to receive a timer runcut fault after a spe
43 18 errupt, or one real-time ti.m:r runcut fault has cccurre
15 22 slave fault is given. A timer runout fault is returned
36 18 execute fault (real-time timer runout fault) after a sp
11 35 are all connect faults, timer runout faults, and start
15 15 y the Executive call SET TIMER, and a real-time (elapse
15 14 Two software-simulated timers are available to a slav
36 [timer]
46 [timer]
II 27 e fault occurs. 1.2.2 Transparent Interrupts Certa
157 33 e returned by the master trap prcgrarn if the catalcg
12 42 he action is canplete, a trap (descril:ed in Section 1.4
12 41 ping call must specify a trap address in X6 at the time-
16 23 or invalid parameter. A trap address is sp:cified when
152 23 convention, (bits 9-17) trap bit mask X5 Pointer to
162 23 convention, (bits 9-17) trap bit mask XS Pointer to
81 23 st be zero (bits 9-17) trap bit mask XS Reserved fa

Page 302 Pub. 1059


~ line word

176 47 nd job exercises the "no-trap" option - see below). T


25 . 53 truction unless a fault, trap, or special interrupt was
47 34 fied Ie/IR. If a fault, trap, or special interrupt cx:c
22 48 ssible for more than one trap, special interrupt, or sl
24 29 in Chapter 3) receives a trap, special interrupt, or sl
102 27 successfully run master trap, then all requested ace
23 17 do so. 1.4.10 Typical Trap-Handling Code (Non-l-'f.ultip
127 20 talog is master or slave trapped, then the access bit
12 38 transparent interrupt. Trapping calls also function a
157 41 file/catalog. Slave trapping prcgrarns are run only
12 28 hree typeS! nontrapping, trapping, and trapping with au
9 46 truction that faulted traps indicating that async~
16 15 h the slave job by using traps and special interrupts •.
24 14 e will link simultaneous ·traps and specials in such a w
17 23 will also encounter all traps before encountering any
43 17 0 be rcadblocked until N traps, one special interrupt,
81 29 x:7 Number of entries in treename (if zero, then 1 is a
131 28 XJ Number of entries in treenarne (if zero, then 1 is a
233 45 s. Any attempt to use a treename consisting of more t.h
231 46 er are th.e following: A treename consist...s of one or !OC)
229 47 oerations use a star.dard treename format (defined in Se
157 18 ucceeding catalcg in the treenarne is found, it is searc
229 37 (1) The format of a treename is very inflexible, a
156 41 is a tally word for the treename of the file to be ope
100 32 filenames which form a "treename") is located in the f
162 36 . m (denoted by a starrlard treename) • The TALLY FEl?LACE
148 34 03 denoted by a standard treename.. First an atte.'itpt t
148 [standard treenarne]
152 [standard treenarne]
153 [treename]
156 [standard treename]
162 [treename]
233 [treename]
167 11 estroyed. MME 500107: TRIJNCA'IE XO File reference
175 28 ST STATUS, RESET STATUS, TPJJNCATE (or SCRA'raI), and SET
181 [truncate (slave end)]
144 4S as a special case of the TRIJNCA'IE canmand in which t.~e
22 29 master errl job that a TRUNCATE or SCPAro1 canmand
144 [slave errl issued TRUNCATE special]
167 [slave end issued TRIJNCATE special]
181 54 ave errl, a "slave-issued truncate" special is generated
182 11 enerates a "slave-issued truncate" special specifying a
144 27 i:er 14 (slave em issued TRUNCATE) at the master em.
167 31 ber 14 (slave end issued TRUNCATE) at the master end.

Page 304 Pub. 1059


INDEX

~ line 'NOrd

144 28errupt will be zero (see TRUNCATE). If the canmunicati


14 38plete op (~), overflow/truncate, or divide check faul
181 48 the Executive. 5.2.5 TRIJNCA'IE, SCRA'ICH, and SET POI
188 28e-type operation {DRIVE, TRUNCATE I SCF.MCH, or SET POIN
199 51a RON, ERASE, UNCATAI..CG, TRUNCATE, SCRA'ICH, or REPLACE
84 18 to source file X3 Job type (bits 0-8) X4 Maximum a
137 13 Meaning 0 Accesses;'rype (see below) 1 Job len
137 45 ferences) bits 32-35: type (see Chapter 9 for types)
85 11 3 are Al.'IDed with the jcb type bits allowed to the job i
184 15 hanged to a special file type called a "non-file" (13),
201 23 of the trap. - On a copy-type canmand which involves de
179 16 ECUEST STATUS MME). The type field of the status block
55 45 information or is zero. Type information has the folIo
149 19 the lower half contains type information or is zero.
38 19 set (bits 0-8) The job type of a running job consists
126 17 ~r: preference ar:d type of catalog 5 Opper:
121 51 Lower: preference ar..d ~jpe of file/catalcg 6 Upp
126 46 Lower: preference ar:d type of file/catalcg 6 Upp
250 11 ence o. An object's type to a large extent dete!1lli
246 33 ors. TYPE - The file's t:1P€. Described below for fil
245 25 TYPE: bits 32-35 5 ENTRIES
247 45 TYPE: bits 32-35 6 OLU DL
247 25 to determine peripheral types, etc., most jobs may not
224 43 t-ready drive. Console Typewriter Note ~~at unlike
199 [file type]
169 11 MME 500104: ONCATAI..CG XO File reference
81 49 quence of conma.nds OPEN, UNC'AT.AI..CG, and CLCSE. Upon c
199 51' ameter for a RON 1 ERASE, L1NCAT1-\LCG, TRUNCATE f SCPAro:! I
137 53 cmmand (q. v. ) . Lower: Unique Identifier. This field
149 16 st point to two words of usage and dates information.
60 19 words contain the new usage information for the file
55 41 5 p:dnts to two words of usage information to l:e placed
121 53 per: ceded date of· last use Lower: ceded date of la
126 48 per: ceded date of last use Lower: ceded date of la
-248 42 sting discussion. DAYS-OSEe The DAYS-USED field con
125 21 ed in X6. The date last used ard date last m:dified in
56 22 zero, and the date-last-used and date-1ast~ified ar
56 18 ize the file's Date Last Used attribute. The lower hal
121 50 word 5 Opper: . days-used count ~r : preferenc
126 45 word 5 tJt:per: days-used count Lower: preferenc
149 18 d to set the file's days-used count; the lower half con
55 43 d to set the file's days-used counter (see Chapter 9).
149 20 ntains a ceded Date Last ased in the upp=r half and ccd
179 25 ds. The ~ high-order user access bits (bits 9 and 1

Pub. 1059 Page 305


SYSrrEM PRCGRAMMING REEERENCE MANUAL

~ line Wl:)rd

163 56 a REQUEST STATUS. These user access bi ts are obtained


163 56 a REQUEST STATUS. These user access bi ts are obtained
103 34 ~rd 1 of the trap, nine user access bits can be obtain
132 22 Wl:)rd 1 of the trap, nine user access bits can be obtain
158 36 ~rd 1 of the trap, nine user access bi ts can be obtain
163 55 ~rd 1 of the trap, nine user access bits can be obtain
127 54 k. In addition, the nine user access bits from 9-17 of
233 19 ("*"), and is a legal user number format the scanner
121 [DLU = date of last use]
13 21 all. 1.3 Slave Fault Vector The first 40 (octal)
18 48 s place. No dirty fault vector aborts are generated.
38 30 iss ion 2 Large State Vector permission (permits a s
14 26 e job had a "dirty fault vector" and is aborted; that i
85 15 enabled are Large State Vector, Priority Scheduling, C
15 25 oorted for a dirty fault vector. The simulated faults
15 35 uses in the slave fault vector. 1tk)rd 0 (the first wur
128 29 date, and the lower half-r~rd contains the reel numbe
136 35 Job's remaining catalOj word allotment 1 Job I s rem
136 37 Job's remaining scratch word allotment 2 CRU limit
132 34 og first has its catalog word allotment decremented by
163 31 O:J first has its catalcg word allotment decremented by
169 28 /catalog has its scratch word allotment decremented by
56 38 /catalog has its scratch word allotment incremented by
144 40 ve its scratch (catalog) word allotment incremented by
153 17 nd will have its catalcg word allotment incremented by
56 39 he same tiIre its catalog word allotment is decremented
70 52 job's scratch (catalcg) word allotment is decremented
107 35 job's remaining scratch word allotment is decremented
149 27 header, and its catalcgword allotment is decremented
149 25 ation, the job's scratch word allotment is incremented
169 29 he same time its catalcg word allotment is incremented
48 22 ning scratch and catalog word allo~nts are added to t
86 15 The catalog and' scratch word allotments for thespawne
64 54 its scratch and catalog word allotments incremented by
48 [scratch word allotment]
70 [catalcg ~rd allotment]
70 [scratch word allotment]
85 (catalog quota = catalcg ~rd allotment]
85 [scratch quota = scratch word allotment]
144 [scratch VtOrd allotment]
144 [catalog ~rd allotment]
167 [scratch word allotment]
167 [catalog ~rd allotment]
172 [scratch word allotment]

Page 306 Pub. 1059


~ line ~rd

172 [catalcg ~rd allotment]


16 29 e trap block (the return ~rd), and its Ie is reset to
23 22 es the use of the return word. EAX6 TRAP point to
16 37 iptian of the two status words is given in Section 2.3.
200 [device status word]
171 II MME 500134: WRITE Xl Points to t:Ointer
22 17 ) 14 W Slave issued write - notifies the master
179 51 forma tion with a COPY or WRITE cCrnmand, exactly as if t
193 53 If job A then issues a WRITE for ten ~rds, specifyin
138 29 n to the slave end via a WRITE or copy cCrnmand. In oth
68 56 destination) filers read/write pointer is used. This 0
69 [slave end issued WRITE special]
171 [slave em issued WRITE special]
192 21 t.) Job A then issues a WRITE to file reference number
·l93 33 words. A "slave-issued write" special interrupt is ge
177 28 FOnse to a f1 slave issued WRITE" special, it shculd issu
69 19 or 12 (slave em issued WRITE) at the master em. The
171 42 ber 12 (slave end issued WRITE) at the master em. The
177 26 should issue a copy (or WRITE) canmar:d transferri.i"1g da
175 41 d its variants, READ ar:d WRITE, are used to perform the
18S II on file on a COPY, READ, w1UTE, or DRIVE canmar:d. The
188 42 e operation (COPY, READ, ~~, or REQUEST S~) issu
22 18 master em job that a write-type cCrnmand was issue

Pub.lOS9 Page 307


System Programning Reference Manual Pub. 1059 (31 OCT 79)

READER IS ro!1ENT FORM

We w:::>uld appreciate receiving corrections, criticisms, and


ccrnments concerning this publication. Please include specific
page and line references whenever possible. ,Your ccmrrents will
help us improve future editions'. urss Incorporated will be free
to use or distribute information you supply without incurring any
obligation whatever •. If the title at top of page is not for the
manual you are ccrnrrenting on, please give the following
information:
Title
--------------------------------------------------------
Publication Number
~~.
----------------- Date-------------------
'-~.J..u;;..;.'f.J..;J •

3. ;\-~C
)
0
ri'~~ ~~' '~~~
.
fJJ ~ ~ ~ ~

Thank 1'"OU for your cooper a ticn. Please fold on dott-od lines,
tape, ar.d mail. NO FOSTAGE NECESS~.RY IF MAILED IN TEE USA.
Opticnal -- Name: _______________________________
Phcne:
Mailing ~.cdress: ------------------------------
----- ---- - .- - - ----- ._-_ . . - --------- ---- ... . . , .. --··0 -'"'1 ......... :"' ......... "' . . . .
Please use cape to seal this form.

. . . .............................. .............

II NO POSTAGE
NECESSARY
IF M..L\ILED
IN TEE
UNITED
STATES

BUSINESS REPLY MAll


FIRST CUSS PER..~IT NO. 21 H.~'IOVER, . NH
POST. :\GE WILL. BE PAID BY ADDRESSEE

Editor
DTSS Incorporated
-
10 Allen Street
Hanover, NH 03735

. . . . . .. . . . . . . . . . . .. . . .... . . .. . .. . .. ...... . . . ... .


Computer
.C@) Shar~ng
. Services
Inc.
National Headquarters
2498 West Second Ave.
Denver, Colorado 80223
(303) 934-2381
Section 1.2

Control and Non-Control Executive

Multiple Processor Support

o In single processor configurations, the CPU executes both


the Control and Non-Control EXEC.

o If there are master mode tasks, the Control EXEC is


executed. If not, the Non-Control EXEC is executed (next
slave job is run).

o In mUltiple processor configurations, one CPU is designated


the Master CPU. All others are Slave 'CPUs.

o The Master CPU operates as in single processor


configurations, "executing the Control or Non-Control EXEC
when appropriate.

o Slave CPUs only execute the Non-Control EXEC.

o The Master CPU provides almost all master mode services.


Note that I/O operations are handled only by the Master CPU.

o The Control and Non-Control EXEC communicate through the Run


Queue and Job Service Queue. The Control EXEC places jobs
to be run by the Non-Control EXEC on the Run Queue. The
Non-Control EXEC places jobs which require Control EXEC
processing on the Job Service Queue.

o Access· to both queues is serialized by a semaphore. This


allows asynchronous access by multiple, independent CPUs.

o Since the Non-Control EXEC is re-entrant, it can be executed


simultaneously by mUltiple CPUs.

Doc.B017 DTSS Trade Secret Page 63


DTSS SYSTEN HAINTEKANCE COURSE

Executive Segments

0 INSERT 0 LOGFILE

0 LCORE 0 MMES

0 CATALOG 0 NCON1'ROL

0 CONSOLE 0 PIO
~:rlCh(J~
---~ olD rJ~
~ r;::-.......j ........ Copy S'~APSKED
1
0 0

0 DISKALC 0 UTIL

0 GLOBAL 0 DSTART

0 LISTALC 0 TSTART

0 LOG 0 BOOTCARD

Page 64 DTSS Trade Secret Doc.BOI7


. '.-'~"'~~""",~."'.""'~.~~" ' ,---------
.•.......

"XECUTIVE
t,. •

. ..
D7SS TrrJ~. Secret Doc.8017
DTSS·SYSTEM ~~IKTEKANCE CCURSE

Catalog Search Algorithm

Physical Layout of a Catalog

)
HFD HEADER M (HFD HEADER)
ALOC
o
ENTRY 1 o
HOLE ACC P T
ENTRY 2 ENTRIES
o
ENTRY ·3 LEN
EUTRY 4 DA 12 WORDS FOR DA'S

ENTRY 5

HOLE
ENTRY 6
)
ENTRY 7 SHSY (ENTRY FOR THE
SCAT CATALOG SHSYSCAT)

(PW)
ACe

D-ul PIT

DLU I DU1
HAX

DA 1 WORD FOR DA
t-----f ---~) ,--_ _ _ __.
ENTRY N ENVI
NFO D-U = DAYS USED
(PW) P = PREF
T TYPE

DA o - 27 WORDS FOR DA'S

Page 96 DTSS Trade Secret Doc.B017

You might also like