Comments on Record-, Start-scan- and Stop-scan Pointer

Three different pointers are maintained by the Mark5 system and it is important to understand what they are, what they mean, and how they are managed. The record pointer is associated only with recording data to the disks; the start-scan and stop-scan pointers are used to control reading data from the disks.

Record pointer

The Mark5 system records data to a disk set much as if it were a tape. That is, recording starts from the beginning and gradually fills the disk set as scans are recorded one after another. The ‘record pointer’ indicates the current recording position (in bytes, always a multiple of 8) which, at any instant, is just the current total number of recorded bytes. Arbitrary recorded scans cannot be erased; however, individual scans may be erased in order from last to first. The entire disk set is erased by setting the record pointer back to zero using the ‘reset=erase’ command. Table 1 lists commands that modify the record pointer; Table 2 lists commands that are affected by the record pointer.

Com mand

Comment

reset =erase

Forces record pointer to zero.

res et=era se_las t_scan

Sets record pointer to beginning of the disk space occupied by the last scan (effectively erases the last scan).

res et=con dition

Effectively erase disk pack, full write + read cycle over the whole disk pack

rec ord=on

Starts writing at current value of record pointer; advances record pointer as data are recorded.

f ile2di sk/fil l2disk

Data transfer from Linux disk to Mark5: Starts writing to Mark5 disks at current value of record pointer; record pointer advances as data are written.

ne t2disk

Data transfer from network to Mark5: Starts writing to Mark5 disks at current value of record pointer; record pointer advances as data are written.

Table 1: Commands that modify the record pointer

C omma nd

Comment

r ecor d=on

Starts writing to Mark5 disks at record pointer; increments record pointer as recording progresses.

f ile2 disk

Starts transfer to Mark5 disks at record pointer; increments record pointer as data transfer progresses.

net2 disk

Starts transfer to Mark5 disks at record pointer; increments record pointer as data transfer progresses.

Table 2: Commands affected by the record pointer

The current value of the record pointer can be queried with the ‘pointers?’ query.

Start-scan and Stop-scan pointers

The ‘start-scan’ and ‘stop-scan’ pointers specify the start and end points for reading all or part of pre-recorded scan for data checking or data-transfer purposes. By default, these pointers are normally set to the beginning and end of a block of continuously recorded data, but for special purposes may be set to include only a portion of the recorded scan. Table 3 lists commands that modify these pointers; Table 4 lists commands that are affected by these pointers.

Co mmand

Comment

rese t=erase

Resets start-scan and stop-scan pointers to zero.

r eset=co ndition

Resets start-scan and stop-scan pointers to zero.

reset=e rase_la st_scan

Sets start-scan pointer to beginning of ‘new’ last scan; sets stop-scan pointer to end of ‘new’ last scan.

rec ord=off

Sets start-scan pointer to beginning of scan just recorded; sets stop-scan pointer to end of scan just recorded.

fi ll2disk

Sets start-scan pointer to beginning of scan just recorded; sets stop-scan pointer to end of scan just recorded.

f ill2vbs

Sets start-scan pointer to beginning of scan just recorded; sets stop-scan pointer to end of scan just recorded.

fi le2disk

Sets start-scan pointer to beginning of scan just transferred; sets stop-scan pointer to end of scan just transferred.

n et2disk

Sets start-scan pointer to beginning of scan just transferred; sets stop-scan pointer to end of scan just transferred. Since jive5ab >= 2.8

s can_set

Sets start-scan and stop-scan pointers to a data range within a scan as specified.

Table 3: Commands that modify the start-scan and stop-scan pointers

C omma nd

Comment

da ta_c heck

Reads and checks a small amount of data beginning at start-scan pointer

sc an_c heck

Checks small amount just after start-scan pointer and before end pointer.

d isk2 file

Unless specific start/stop byte numbers are specified, transfers data between start-scan and stop-scan pointers

disk 2net

Unless specific start/stop byte numbers are specified, transfers data between start-scan and stop-scan pointers

Table 4: Commands affected by the start-scan and stop-scan pointers

A ‘scan_set?’ or ‘pointers?’ query returns information about the current value of the start-scan and stop-scan pointers.