• Aucun résultat trouvé

Error Log File Formats

Dans le document RT–11 Volume and File Formats Manual (Page 96-100)

File Formats

2.12 Error Log File Formats

Device handlers that support error logging call the error logger through a monitor pointer on each successful I/O transfer as well as on each error. Thecopy code in the error logger retrieves, or copies, the appropriate information from the handler, storing it in the error log input buffer in the error logger’s memory area. The error log job is suspended until the copy routine puts some data into the input buffer, at which point the monitor resumes the error log job so it can process the new data.

The error log job remains suspended until the error log input buffer has filled to 20010or more words of the 25610-word total buffer size. The copy code portion of the EL job informs the monitor of this by setting the carry bit on return. Thus the error log job is resumed by the monitor only when the error log input buffer contains a sizeable amount of information to be processed.

For device errors, cache errors, and memory parity errors, the error logger first creates or updates the unit statistics information in the copy of the disk file header that is in memory. The EL job (disk output code) stores error records in the disk output buffer (one of two buffers, since double-buffering is used) until a 25610-word block is full. That is, it stores records until the buffer cannot contain the next record.

Then it writes the updated header record and the accumulated error records to a disk file called ERRLOG.DAT. Figure 2–43 describes the error logging subsystem.

For successful I/O transfers, the error logger first creates or updates the unit statistics information in the copy of the disk file header that is in memory, as it does with device and memory errors. It writes the updated header to disk only after 1010 good I/O transfers have been logged.

Figure 2–43: Error Logging Subsystem

2.12.1 Error Log Disk File Format

The error log disk file is called ERRLOG.DAT. Figure 2–44 shows its format.

The first part of the figure describes the contents of block 0, the header block. For each device on which error logging is done, there is a statistics record (a 7-word entry) in block 0. Since the number of records is a variable SYSGEN parameter, the pointer at the beginning of block 0 points to the end of these device-specific records in block 0.

The second part of the figure, beginning with block 1, describes the 256-word blocks containing error records. The data in these records will vary depending on the situation. The blocks can contain statistics on device errors, memory errors, or both,

depending on the error logging you have enabled and the order in which error-logging events happen.

The low byte of the first word for both Device Error and Memory Error Reports contains the record size. Records are contiguous within blocks and, therefore, the size of this error record field is an offset to the next record in the block. The final record in each block contains a -1 in the size field, indicating that the next record in the file begins at the first word of the next block.

The Unit Number field in the Device Error Record and the Parity ID field in the Memory Error Record indicate the kind of error (Device or Memory) which is being reported. If the field contains a value equal to or greater than zero, the report is for a device error and the field contains the device unit number reporting the error.

If the value in the field is less than zero, the report is for a memory error and the values have the following meaning:

–2 for a memory error –3 for a cache error

–4 for both memory and cache error

Figure 2–44: ERRLOG.DAT Format

Block 0 of ERRLOG.DAT

Pointer to the Header Summary section in Block 0

Device ID Unit Number

Number of error records logged

Number of errors received Records

For Each Error−Logging READ successes

(Two words) ice

Total number of errors received (including occasions when the error logger was unable to record the error data)

Number of cache parity errors

Block number for start of next record Offset within the block for the next record

Configuration word 1 (monitor fixed offset 300)

Date of initialization

(Two words)

Number of memory parity errors

Next physical record number

De WRITE successes

(Two words)

Count of missed records (not recorded because the error logger input buffers were full)

Maximum size of error file, in blocks

Configuration word 2 (monitor fixed offset 370)

Time of initialization

Header Summary Section Count of missed records (not recorded because ERRLOG.DAT

was full)

Count of missed records (not recorded because start up or shut down was in progress)

Figure 2–44 (continued on next page)

Figure 2–44 (Cont.): ERRLOG.DAT Format

Data Blocks Beginning with Block 1

Physical Record Number Size of This Error Record

Device ID Unit Number

Number of occurrences of this error with identical registers

Date of entry

(Two words)

Physical block number (Q.BLKN) For Each Device Error User buffer address (Q.BUFF)

Word count (Q.WCNT)

(The device registers) .

. .

Size of this error record Number of memory registers Parity ID

Number of occurrences of this error with the same PC Date of entry

PC

MPR1

(Information for up to 16 memory registers:)

Memory system error register (if cache is present) Cache control register (if cache is present)

Hit/Miss register (if cache is present)

Total number of retries Number of registers to log Retry Count

Time of entry

PAR1 value (Q.PAR) −− XM only

For Each Memory Error Address of MPR1

. . . Time of entry

PSW Physical record number

(Two words)

Dans le document RT–11 Volume and File Formats Manual (Page 96-100)

Documents relatifs