• Keine Ergebnisse gefunden

R (CSFO) l-i-I-IAIBI 1 IOI91613131+1

Im Dokument RAND JANUARY (Seite 151-157)

R (ADR) 1-1-1-1~1-II[61313J:±J+1

,- • t

~

... -"

(drum sect.) (channel) (URA) (2) ~S (001)

1-1-1-IAIBlll o I91613131+1

V2 (001)

I-J-J-JAJBIIJOJ9J6J3J3J+J

R (CSFO)

l-i-I-IAIBI

1

IOI91613131+1

Next step 2

ECS Out

VI = I" V2 =

F

Step Step Step 3 3 6

As of the beginning of step 3, all fields in the unit record area of part no. ABI09633 are available for use.

v -

34 as "Channel Search Identifier". During the channel search process, the actual fields on the drum are being compared

v -

35

(~ The exit of the equal channel search step is wired to an in hub of the CS equal branches (o-x> (13-16). If a liRA whose identifier equals the VI or V2 value is found, it is·written on the revolver and the next step branch is obtained from the CS Equal Out hubs VI • or V2

=

(U-X)

(14-1~ respectively. If no URA is found in the channel whose identifier equals VI or V2 then the last URA in the channel is written on the revolver and the next step exit is obtained from the equal CS -/: hub {(J-X) (16). This last exit will normally be wired to the channel overflow routine

(see rule I D •

(5) VI, V2 and R may be shifted to give them the same decimal alignment, as in the compare process.

(6) The channel search process does not consider zeros and spaces as equals.

(7) An ignore code in VI or V2 will not prevent comparison of that position with the corresponding character in R.

(a)

(b)

VI & V2

1-1-1 -I

-1-IAliliI112131

ECS VI & V2 compare with R

R 1-1-1-1-1-IAli\i\1\2131 VI & V2 1-1-1-1-/-IAlili/112131 ECS

R VI & V2 do not compare

I-I-I-I-I-/A/BlcI112131 with R

(8) A channel search is started at the ORA designation in the ADR. It will end at the last URA in the channel. In a

system with ORA numbers from 00 to 19, if the number 13 were entered in the ADR in the URA positions, channel search would take place only on URA's 13 through 19. Therefore, to search a channel completely. 00 should be entered into the ADR in the URA position.

If significant digits might be present in the ORA positions, ignore codes should be substituted for them before adding to a blank storage and placing in the ADR. Shifting of VI and R might also be used to accomplish this suppression.

(9) When a URA is written on the revolver, the address of the URA from which it was taken is remembered until a new address is entered in the ADR. However, it is not possible to take this address from the ADR and place it in storage, thereby learning the full address of the URA.

v -

36

(10) If a complete drum address (drum section, channel, unit record area) is available, channel search is not usedi the interstep function of "read" is used to place the informa-tion on the revolver instead. When channel search is used,

"read" is not used.

(11) Channel Overflow ••• ln many File-Computer systems, it will be impossible to develop a full six digit address (drum section, URA, channel) from the existing code number. How-ever, in most cases it will be possible to develop a drum section and channel number. Channel number should be two digits with fairly even distribution; that is, as many OO's

as Ol's, as 02's, as 99's. This will minimize the chances of channel overflow.

Obviously, when using this technique, there will be cases

,

where the number of items to be placed on a channel is greater than the number of URA's available on that channel.

At the same time, there may be channels where the number of items to be placed is considerably less than the URA's on the channel. Through the programming technique of channel overflow, the excess items from one channel can be placed on a channel where space is available.

Assume a Univac File-Computer system with a ORA of 24 digits.

There are, therefore, 25 URA's in each channel, and -each channel can contain a maximum of 25 items. Analysis of the digits of the item number which have been selected as drum

section and channel reveals that in drum section 02, channel 76, there would be 30 items. However, in drum section 00, channel 55, there are only 16 items. All other channels are within the 25 item capacity of each channel.

Channel 0276-- has five items for which there is no space;

channel 0055-- has room for nine additional items. The

excess items from 0276-- will, therefore, be stored on 0055--.

In order to do this, one URA from channel 0276-- must be used as an "overflow address" ••• that is, where to look if the item number is not found on channel 0276--. This means that only 24 items can be stored on 0276--. and the extra six will be stored on 0055--.

The liRA in which the overflow address is stored is the last liRA on the Channel, in this case URA # 24.

The reason for placing the overflow address in the last URA on the channel is obvious when we realize that the equal channel search process automatically places the last URA in the channel on the revolver if a URA matching either VI or V2 is not found during the search. In addition the equal channel search branch hubs notify us of the overflow condi-tion by emitting the branch exit from the

¢

hub.

v -

37

Any field of a URA may be used to store the overflow address.

It should, of course, be at least four digits in length.

The principle of overflow progranming is as follows. If the item number is not found during an equal channel search operation. the last URA on the channel is written on the revolver. This URA will contain the overflow address, if any. On the next step, the overflow address is placed in the ADR. The program is then routed back to the channel search step, and the new channel is searched. This type of program is known as a "loop"; the machine will search as many channels as necessary until the item is found, always going to the new channel whose address has been found on the channel just searched.

Assume the following:

Input storage 001:

Input storage 002:

Drum storage FO:

Program:

Step:

-YI_

-.!1.

1. 001 T

(0276--)

2. 002 ECS

(A502376)

VI

=

Drum section and channel (0276--) Complete item number (A502376) Complete item number or overflow

address ••• (A604839, etc.) or (005500)

J2_

= .JL

Next Step

ADR 2

(0276--)

002 CSFO ECS Branch (A502376) (A604839 etc.)

(item no. is V2 =

#

(item no. is (item no. is not found)

found) found)

To step 4 To step 4 To step 3

3. FO T

---

... ADR 2

(005500) (005500)

On step 1, the drum section and channel are placed in the ADR. On step 2, the channel is searched for the item number; if it is found, the program continues with step 4.

If it is not found, the last URA in the channel is written on the revolver. On step 3, the overflow address, located

v -

38

in field FO of the overflow URA is transferred to the ADR.

The program reverts to step 2. As before, if the item is found on the new channel, the program continues at step 4.

If it is not found, the new overflow address is transferred to the ADR and the loop is continued.

In some cases an incorrect item number is being searched for in a channel which does not contain overflow data in the last URA. Because of this, it is necessary to make a test of the last URA to determine if it is a legitimate overflow address URA, before transferring the overflow address to the ADR. This can be done in many ways; however, the most usual technique is to place the overflow address in some URA field other than the item number field. If this is done, then the item number field will be blank if it is an overflow URA. This field can then be tested for a blank to determine valid overflow URAls.

Unequal Channel Search

The unequal channel search process is the exact opposite of the equal channel search operation in that it is used to locate all unit record areas which are unlike VI (Note: V2 is never wired on the unequal channel search process) rather than URA's which are like VI as is the case in the equal channel search process. The programming symbol for this process is UCS.

In principle the unequal channel search allows us to locate any URA within a channel whose identifier is not equal to the VI value. If all the URA's within the channel have identifiers which are equal to the VI value, then the last URA within the channel is captured on the revolver.

In addition to being able to locate URA's whose identifier field does not equal VI we can also locate URAls in which all fields do not equal'VI (only in URA's which are divisible by 12). This is done by wiring the result of the step to the CS ALL hub (k-58).

The primary use of the unequal channel search process and its related branching function is in clearing or unloading drums, for it allows us to locate all those URA's which are not equal to a given storage (VI). If we wire VI to a blank storage then this process will locate, within the channel specified by the ADR, the URAls whose identifier field or all fields are not blank and write the URA which is not blank on the revolver. An example will serve to illustrate the use of this process.

v -

39

000

= 1-1-1-1-1-1011(91610(01+1

DS CH URA (URA U always equals 00)

Im Dokument RAND JANUARY (Seite 151-157)