Trailing-Edge
-
PDP-10 Archives
-
bb-d549g-sb
-
daemon.doc
There are 3 other files named daemon.doc in the archive. Click here to see a list.
DAEMON.DOC -- Changes from V17(732) to 20(757)
June 1980
COPYRIGHT (C) 1971,1974,1978,1979,1980 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
DAEMON.DOC Page 2
DAEMON.DOC -- Changes from V17(732) to 20(757)
June 1980
1.0 SUMMARY
DAEMON version 20 is primarily a maintenance release to DAEMON with
fixes to version 17 which was released with the 7.00 monitor. It
contains some significant changes from the 6.03A version as described
in DMN17.DOC.
This version of DAEMON has been tested under 6.03A, 7.00, and 7.01 on
KI, KL, and KS processors and supersedes all previous versions.
2.0 EXTERNAL CHANGES
Save files may now be written into SFDs.
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
DAEMON files written by SAVE, DCORE, DUMP, and the like may not be
written to device LIB: or to a Logical Name device.
4.0 INSTALLATION INSTRUCTIONS
DAEMON searches UUOSYM and loads with no other files.
5.0 INTERNAL CHANGES
Edit #
733 Fix KLERR routine to correctly process entries on cpus other
than the boot CPU
734 Change the format of the ERPTBK table to use 4 word entries so
that the CPU number can be included in the error data returned
by the monitor.
735 Add support for new syserr entries for 7.01 monitor. these are
error types 51,52,54,55,56 and 57.
736 Fix data gathering problem in entry type 56.
737 Fix SBDIAG pointer in entry type 52
DAEMON.DOC Page 3
740 Make another attempt at fixing the KLERR report.
741 FIX Ill Mem Ref in massbus error routine.
742 MONBTS now writes dumps that are not a contiguous physical core
image. Change PEKSPY to read and follow the .EXE directory
when reading words from the disk.
743 If a user ^C's DAEMON while it is writing a DUMP/DCORE/SAVE
file, DAEMON doesn't release the channel which causes the user
to get an FBM error when he trys to delete the TMP file.
744 Device OPR0 doesn't exist if FTNET is turned off or if a site
hacks their monitor. make DAEMON try harder to find a TTY to
TRMOP. to.
745 AVAIL has trouble figuring out when AVAIL.SYS started and when
it ended. Define 2 new entries, 46 and 47 which are the first
and last entries in AVAIL.SYS. These entries provide
timestamps for AVAIL.
746 Make processing of errors durring initialization cleaner.
747 Limit the number of entries made in the disk statistics entry
to avoid infinite error files if the UDB chains get screwed up.
750 Change DAEMON to use %CNSUP as the uptime instead of %NSUPT so
that it gets clock requests right if CPU0 isn't running.
751 Fix bug that caused error code 2 from JOBPEK when reading
fragmented core.
752 Add code to log experimental disk device errors.
753 Fix routine "CHECK" to force a FACT.SYS update at each
checkpoint. This helps preserve more accounting data.
754 AVAIL.SYS update routines don't use ERRDEV and ERRPPN to do
their updates.
755 Fix routine "COMPRS" to avoid creating IOWDs over 128K.
756 Allow a user having POKE privileges to do the append to
ERROR.SYS DAEMON UUO function.
757 Look for crash files to process on the union of the system
search list and the system dump list.
6.0 SUGGESTIONS
None.
DAEMON.DOC Page 4
[End of DAEMON.DOC]
[DMN17.DOC is appended as an integral part of DAEMON.DOC]
DMN17.DOC Page 5
DAEMON.DOC -- Changes from V16(612) to 17(732)
November 1979
1.0 SUMMARY
DAEMON version 17 is a major code rewrite from version 16. All of the
code specific to pre-6.03 monitors has been removed and all 6.03
specific code has been placed under a conditional. In addition, a
great deal of the code has been rewritten to fix bugs, remove bad
code, and update the code to 7.00.
This version of DAEMON has been tested under 6.03A and 7.00 on KI, KL,
and KS processors and supersedes all previous versions.
2.0 EXTERNAL CHANGES
Save files may now be written into SFDs.
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
DAEMON files written by SAVE, DCORE, DUMP, and the like may not be
written to device LIB: or to a Logical Name device.
4.0 INSTALLATION INSTRUCTIONS
See DAEMON.CTL, and DAEMON.DOC
5.0 INTERNAL CHANGES
Edit #
700 Add support for KS10 system error entries
701 Change the references to word 36 to .JBSYM (word 116). (Used
as the flag word for determining if a crash file has been
processed by DAEMON or not)
702 Fix magtape stats entry routine
703 (SPR 10-26436) Allow controller number to be reported to
SYSERR. Area affected: MBDVDN
704 Add code to log DX20 device errors. At present this means TU7x
DMN17.DOC Page 6
tape errors reported by TAPSER.
705 Remove all code specific to pre-603 monitors. This is the
first step in updating DAEMON for 701.
706 Add code to dump the CPU Status Block via error code 63
(.ESCSB)
707 Add code to dump the Device Status Block via error code 64
(.ESDSB)
710 Add code to send the date/time incremental change to %SIACT if
the system date/time changes. Invoked by subfunction 3 of
error code 15.
711 Bring all the code up to 7.00 level. Also fix a large number
of bugs in the error reporting code.
712 Add code to log software events of interest via code 14.
713 Rewrite miscelaneous parts of the code to clean it up and fix a
lot of bugs.
714 To be able to measure some sort of generic "availability" for a
system, make DAEMON wake up every 6 minutes and look around to
see what the system state is. Log this information to a new
file, SYS:AVAIL.SYS.
715 For systems with JOBN+SEGN-1 .GT. 511 (7.00 remember), the
GETTAB simulation fails for tables indexed by job or segment
number if the index is larger than 511. NUMTAB only has 9 bits
for the maximum tables size. the monitor uses JBTMXL
explicitly for such tables.
716 For systems with a large number of (possibly dual ported)
disks, error code 5, information extracted from a crash may
overflow while writing the entries for each disk. Remove the
disk stuff from error code 5 and write a new entry (45) which
contains the information.
717 Log node on and off-line via sub-codes 6 and 7 of the
configuration status change entry.
720 If the ERPTBK table in a crashed monitor is full and EPKIDX is
0, DAEMON will loop processing the entries. Redo the code at
READCR to avoid this problem.
721 DAEMON may reattach the wrong job to a terminal after
processing a request if the user attaches and logs out the job
doing the request and another user logs in and detaches before
the request is completed. Don't reattach a job to a terminal
if the job's login time doesn't match that saved at the start
of the request
722 Fix problem where DAEMON was returning a UUO error code while
DMN17.DOC Page 7
processing hardware errors.
723 If an error occurs when DAEMON is detached, the error message,
if any, is thrown on the floor. Use TRMOP. function .TODSP to
print the error message on device OPR.
724 Avoid problems with users getting a [1,2] job by always setting
DSKFUL ERROR when DAEMON starts up.
725 Since the 700 monitor is capable of changing the active
swapping list on the fly, we can no longer read SWPTAB when
DAEMON starts up. Read the information from SWPTAB on each
request to read/write the swapping space.
726 TC10C tape errors are reported by SYSERR as DX10 errors. the
device code for TC10Cs is 724 and DAEMON assumed that any
device code larger that 540 was an RH20. A complementing bug
in SYSERR then turned that into a DX10 error report.
727 Fix bug in PEKUSR that caused swap pointer inconsistencies
while reading funny space addresses.
730 Fix random error code 3 failures in DAEMON UUO fact function
caused by releasing the job without processing it if JS.DPM was
set.
731 Yet another security fix to prevent a user getting a [1,2] job.
732 Fix routine to dump KS10 halt status block.
6.0 SUGGESTIONS
None.
[End of DMN17.DOC]
[DMN16.DOC is appended as an integral part of DMN17.DOC]
DMN16.DOC Page 8
DAEMON.DOC -- Changes from V15(574) to 16(612)
September 1978
1.0 SUMMARY
This is primarily a maintenance release of DAEMON with fixes to
version 15. In addition it includes IPCF support for SYSERR on-line
error logging which is in V12A of SYSERR. It has been tested under
603A.
2.0 External Changes
None.
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
4.0 Installation Instructions
See DAEMON.CTL, DMN16.DOC, and SYS3A.DOC.
5.0 INTERNAL CHANGES
Edit #
574 FIX MAGTAPE STATISTICS SO THAT THERE IS SOME USEFUL INFORMATION
IN THE ERROR.SYS FILE.
575 FIX PATH. UUO SO WE DON'T WASTE A PPB 576 FIX CALL TO GETZ AT
CRSIN3+5 577 HISTORICALLY THE MAXIMUM FACT FILE SIZE WAS 2048
BLOCKS WITH SAID MAXIMUM ACHIEVED WHEN P2 EXCEED 777577 AND
RESULTING ARITHMETIC ERRONEOUSLY POINTED TO THE WRONG BLOCK.
RECODE TO TEST FOR THIS CONDITION AND EXIT ACCORDINGLY.
600 FIX BUG WHERE DATA FROM TAPE UNLOAD IS NOT SAVED. CURE: AT
GTPST1+1 ADJUST T1 NOT P1
601 ADD USER'S P,PN AND PROGRAM NAME TO MAGTAPE ERROR REPORTING-RLD
602 ADD IPCF SUPPORT FOR SYSERR ON-INE ERROR LOGGING. - TJW
603 5-10-78/ISM CHECK FOR 0 LENGTH DAEMON QUEUE TABLE IN CRASH.EXE
FILE. THIS FIXES A PROBLEM WITH DAEMON LOOPING WHILE READING
CERTAIN CRASH.EXE FILES DURING STARTUP.
DMN16.DOC Page 9
604 5-15-78/ISM FIX EDIT 544. INTADR IMPROPERLY SET UP SO THAT
DAEMON MAY GO INTO TO STATE WHILE DETACHED.
605 5-19-78/ISM DCORE FILES GET WRITTEN INTO [1,2] IF SIGN BIT IS
SET IN THE PPN. CHECK FOR SIGN BIT ON AND BOMB THE USER.
606 6-5-78/ISM DAEMON DOES NOT HANDLE DUMP COMMAND FOLLOWED BY
SPACES PROPERLY. THROW AWAY THE SPACES.
607 RELEASE DISK CHANNEL UPON EXITING CRSCHK SINCE WE ARE DONE WITH
IT
610 AFTER DOING A DCORE, CHECK IF USER JOB IS DETACHED. IF NOT DO
NOT REATTACH JOB.
611 8-22-78/ISM FILES WITH PROTECTION GREATER THAN 400> (FILE
DAEMON CALLABLE) CAN GET WIPED OUT BY DCORE FUNCTION. USE "IN
YOUR BEHALF" FILOP. TO CHECK PROTECTION PROPERLY.
612 9-18-78/BAH DAEMON SENDS A PACKET WITH AN INCORRECT INDEX INTO
ERROR.SYS WHEN USING THE /NOW SWITCH IN SYSERR. ALSO SYSERR
ALWAYS REPORTS 0 FOR CHAR/H/S FOR READ/WRITE ERRORS IN MAGTAPE
STATS BECAUSE DAEMON USES WRONG OFFSET TO GET THE DATA.
6.0 SUGGESTIONS
None.
[End of DMN16.DOC]
[DMN15.DOC is appended as an integral part of DMN16.DOC]
DMN15.DOC Page 10
DAEMON.DOC - Changes from V14(513) to V15(574)
February 1977
1.0 SUMMARY
This release of DAEMON is intended to provide support for new error
reporting on the KL10 CPU. In addition, it corrects some bugs in
version 14, and supports monitor changes for 6.03. Replace command
scanner and allow DAEMON to log pending entries from CRASH.EXE.
2.0 EXTERNAL CHANGES
At startup time now DAEMON searches system structures for CRASH.EXE
and processes entries which were pending at crash time. DAEMON then
flags the file as having been processed. These entries are identified
in the SYSERR output as to origin.
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
4.0 INSTALLATION INSTRUCTIONS
See DAEMON.CTL, DMN12.DOC and SYF3.DOC.
5.0 INTERNAL CHANGES
Command scanner has been replaced.
Edit #
514-517 Reserved for special releases.
520 Perform proper address checking for allocated but zero page.
521 Correct address check code to prevent possible overwriting of
job data area.
522 Set up .JBINT to prevent hang in to state on OPR action
requested conditions.
523 UUOSYMize DAEMON.
524 In case of STRUUO failure when resetting DAEMON search list,
purge invalid structures and retry STRUUO.
DMN15.DOC Page 11
525 Fix errors in WRTSWP (routine to write swapping space).
526 Fix improper ADDT at UADOLD-2 (from edit 521).
527 Ellimate millions of HRRI T1,.GTSTS 's.
530 Use XOR in place of ANDCA to see if a block crosses page
boundaries.
531 Fix potential loop in FINCHK by checking for proper segments.
532 Get rid of unneeded MOVSI T1,(J) 's.
533 Make DAEMON function to append to ERROR.SYS work.
534 Zero trailing space on ERROR.SYS on output.
535 Reassign channels to our job on release of channel. Thus if we
are asked to log an error for that file, the DDB will still
exist.
536 Rip out scanner and replace with reasonable command scanner.
Make minor necessary changes to the devil himself, including
removal of edit 76.
537 Fix up interrupt routine so it won't destroy T1 or
self-destruct.
540 Write DAEMON files on SYS once again. Disenable new to avoid
any problems. Hack out code which resets DAEMON search list,
since this isn't necessary when writing on ERSATZ devices.
541 Fix improper index AC to prevent problems when reading ARG
block from user which is split across pages.
542 Make sure user has rename priv's when deleting .SAV, .HGH, etc.
Also fix CHCACC function in ACCCHK to check write priv's
instead of rename priv's when trying to write.
543 Put patching space and junk under FTDEBG.
544 Set up INTADR so we can't leave user in DAEMON error pause if
we blow up while recording error.
545 On disk error, don't give expected channel termination word
unless you have a 6.01 or greater monitor, since this value is
not stored for the last error on previous monitors, and the
best we can do is pick up the last expected channel termination
word, which may be for a more recent transfer than the last
error.
546 Add support for KL10 CPU error information obtained from RSX20
front-end -11.
DMN15.DOC Page 12
547 Change format of KL error entry in ERROR.SYS to include count
of 8 bit data bytes.
550 Add definition of %CVPTR & .ESDRE until UUOSYM gets updated.
Also add support for LP100 code 71.
551 Add function to support reading pending entries and other info
from CRASH.EXE files.
552 Fixes to correctly record over 200 word error file entries.
553 Fix previous changes and make unused and illegal error codes go
to JOBFIN via CPOPJ.
554 Fix edit 545 so that MONVER gets set up correctly.
555 Make work correctly for RP06's.
556 Fix KLERR stuff.
557 Put crash stuff in FTSAVE conditionals.
560 Fix edit 557.
561 Save PDBPTR around crash check stuff and fix typo's.
562 Get UDT from %CNDTM not %CNDAT.
563 Fix GTUPMP code.
564 Don't smash two rack structures with crash stuff.
565 Fix edit 544.
566 Fix magtape error reporting.
567 Fix REDSWP on VM.
570 Make DAEMON exit gracefully on re-enter.
571 DCORE spooled DDB's correctly.
572 Handle an argument block split across fragmented pages on the
swapping space correctly on a VM system.
573 Fix magtape statistics reporting. The unit name was being
output as garbage.
DMN15.DOC Page 13
6.0 SUGGESTIONS
None.
[End of DMN15.DOC]
[DMN14.DOC is appended as an integral part of DMN15.DOC]
DMN14.DOC Page 14
DAEMON.DOC - Changes from V13(474) to V14(513)
December 1975
1.0 SUMMARY
This release of DAEMON is intended to provide support for new error
reporting on the KL10 CPU. In addition, it corrects some bugs in
version 13.
2.0 EXTERNAL CHANGES
Edit #
510 Fix bug in computing pointer to parity subtable in code 3
error file entry.
511 Don't report memory on-line at reload on 507/601 and earlier
monitors.
512 Allow error file entries to span more than one block, i.e.,
do the right thing if an entry has two block boundaries in
it.
513 Add support for KL10 processor errors, code 60-AR/ARX parity
trap, code 61-parity interrupt, code 67-addressing failure.
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
4.0 INSTALLATION INSTRUCTIONS
See DAEMON.CTL, DMN12.DOC and SYF3.DOC.
5.0 INTERNAL CHANGES
None.
[End of DMN14.DOC]
[DMN13.DOC is appended as an integral part of DMN14.DOC]
DMN13.DOC Page 15
DAEMON.DOC - Changes from V12(341) to V13(474)
July 1975
1.0 SUMMARY
This release of DAEMON is intended to support the new error reporting
added in the 6.02 monitor. It requires SYSERR Version 4. Error
reporting has been extended to new devices and improved to be better
synchronized with the monitor.
2.0 EXTERNAL CHANGES
Edit #
442 Add code to user ERRPT.UUO instead of scanning for errors.
This new UUO is used to return an error along with enough
information to enable DAEMON to identify specific errors, and
not have to scan for them.
443 Fix HSVADR to not need UPMP in core. Also fix calls to not
read UPMP if not necessary for other reasons.
444 Fix DCORE to do correct thing with first page of high seg.
445 Change all super I/O to use SUSET.
446 Change references to symbols in UPMP to use GETTABS, not
defined symbols.
447 Fix setup of parameters for swapping to use GETTABS and win
with units missing.
450 Fix code for handling error file to add word at start of each
block pointing at first complete entry in block. Also, pad
last block with zeros.
451 Add support for code 50 in ERROR.SYS, DL10 errors 602 and
later monitors only.
452 Add function 5 to DAEMON UUO, append to ERROR.SYS.
453 Add support to OSAVE and OSSAVE commands for 6.02.
454 Add code to get job # from DDB on both 6.02 and earlier
monitors. Job - was moved to new word in 6.02.
455 Add code to synchronize error reporting with stopped jobs.
No jobs will now be started at the job loop -- all will now
be started after the error that stopped them is reported.
DMN13.DOC Page 16
456 Add code to support some new errors reported in 6.02.
New errors are: ER.CSC (Configuration Status Change) = 15
ER.MSE (Monitor Software Eror) = 2
ER.NXM (Non-Ex-Mem, never before
supported) = 4
457 Correct implementation of ER.MSE.
460 Fix bug in implementation of DL10 (ER.DLE) errors.
461 Fix TAPSER error reporting to user TAPOP's to get the
pointers to the initial and final error status areas, rather
than absolute offsets relative to TUBRID.
462 Fix up massbuss errors to report user's PPN and filename
correctly.
463 Add users ID etc. to code 3 & 10, add bad blocks slots to
code 10 & 11, add expected term. wd to code 6.
464 Change error file header length to 4 and include SYS SER. #
and change header Version to 1, increase MAX entry size to
777 vice 77 by moving header length left 3 places.
465 Answer to SPR# 15908.
466 Modifications to correct for Version 1 headers in error file.
467 Add code to report NXM and set memory offline type errors.
This also changes the way reload error entry since it keeps a
copy of the original NXM table in our code.
470 Fix code to use SUPER USETI./O if SUSET. fails.
471 (16349)makes DCORE, DUMP, and SAVE abort on DSK errors.
472 Fix bugs in code 4(NXM), code 15(memory on/off line), and in
Edit 466.
473 Fix some uses of monitor version number to be uses of "VMMON"
instead.
474 Fix byte pointer to store entry length in error file header
to store 9 bits, not 6. Part of Edit 466.
DMN13.DOC Page 17
3.0 KNOWN BUGS AND DEFICIENCIES
Save files can only be written on a disk type device.
NXM and memory on/offline error reporting will cause SYSERR problems
with the error file on systems with greater than 768K of core.
4.0 INSTALLATION INSTRUCTIONS
See DAEMON.CTL, DMN12.DOC and SYF3.DOC. Also note especially the
requirements for using SYSERR Version 4 with this version.
5.0 INTERNAL CHANGES
None.
[End of DMN13.DOC]
[DMN12A.DOC is appended as an integral part of DMN13.DOC]
DMN12A.DOC] Page 18
DAEMON.DOC - Changes from version 12(341) to 12A(342)
March 1975
1.0 SUMMARY
This version includes support for new magtape error reporting as
implemented in the TAPSER LIR.
2.0 EXTERNAL CHANGES
None.
3.0 KNOWN BUGS AND DEFICIENCIES
See DMN12.DOC.
4.0 INSTALLATION INSTRUCTIONS
See DMN12.DOC.
5.0 INTERNAL CHANGES
342 Add support for TAPSER magtape error reporting.
[End of DMN12A.DOC]
[DMN12.DOC is appended as an integral part of DMN12A.DOC]
DMN12.DOC Page 19
DAEMON.DOC - Changes from V11(224) to V12(341)
January 1975
1.0 SUMMARY
This release of DAEMON is intended primarily to speed up operation
with 6.01 and to extend error reporting to support RP04's. It also
fixes several bugs in the operation of earlier versions. It fully
replaces all earlier versions. See especially Edit 332 as an
important bug fix. Note that this version requires SYSERR V3B.
2.0 EXTERNAL CHANGES
2.1 Multiple Job Facility
DAEMON now can be run as one, two, or three jobs. The distributed
control file will, as before, produce 3 save files: restartable
DAEMON, restartable DAEMON+[SYSTEM]INFO, and [SYSTEM]INFO. In
addition, a new feature test switch (FTSAVE) enables the assembly of
DAEMON into two parts, DAEMON and SAVER.
The functions of DAEMON are as follows:
a) Checkpointing
b) Error Reporting
c) Clock UUO's
d) Fact UUO's
e) [SYSTEM]INFO
f) DCORE UUO's
g) DCORE + DUMP commands
h) E, D, VERSION, and SAVE commands (6.01 only).
There are two feature test switches involved in the spliting of
DAEMON's functions. These are FTIPCF + FTSAVE.
The following table will indicate what different settings of these
feature test switches will produce.
FTIPCF=0 FTIPCF NOT EQUAL 0
FTSAVE 0 f,g,h Will not assemble
FTSAVE = 0 a,b,c,d,f,g,h All
FTSAVE > 0 a,b,c,d a,b,c,d,e
In addition, it is possible to produce SYSINF.SAV as in the .CTL file
to do function E separately.
The job produced with FTSAVE0,FTIPCF=0 is to be loaded as SAVER.SAV.
DMN12.DOC Page 20
It will run only along with a DAEMON.SAV with FTSAVE>0,FTIPCF=
anything.
2.2 Error Reporting Extension
With the addition of the RP04 disk the capability has been added to
the monitor to save special controller registers for a particular
unit. This version of DAEMON includes support for reporting these
registers on both the RP04 and the RS04. Note that this will only be
done on monitors with the RP04 LIR or on 6.02 and later monitors.
Note that this version in massbus error reporting attempts to make use
of parameters in the DDB. See section 3.0 for a problem with this.
This facility requires SYSERR V3B.
3.0 KNOWN BUGS AND DEFICIENCIES
Massbus device errors will not correctly report the file name,
extension, user's ppn or program.
When run as a 2 part job (DAEMON/SAVER) DAEMON UUO's may not work
correctly.
Any deficiencies in the DMN11.DOC file not explicitly listed as fixed
in section 5 of this file are still deficiencies.
4.0 INSTALLATION INSTRUCTIONS
See DAEMON.CTL, DMN11.DOC and SYF2.DOC.
5.0 INTERNAL CHANGES
Edit #
325 Add a feature test to create the ability to assemble as two
separate programs, one to do all commands and the DCORE
function of the uuo, and one to do error reporting,
checkpointing, accounting, other UUO functions, and
[SYSTEM]INFO. The feature test is FTSAVE, equal -1 for SAVER
only, 0 for both, and +1 for DAEMON only. note that
FTIPCF=-1 or FTRSTR=-1 will not work with FTSAVE=-1.
326 Add support for RH10 devices.This implements the special
drive registers on massbus devices. This edit is only
intended for RP04's and RS04's on systems with the RP04 lir.
It will have no effect on systems without the RP04 lir.
327 Fix some inconsistencies in behavior on SAVE.
DMN12.DOC Page 21
330 Save address of DDB along with length so user can associate
DDBs with channels (SPR 14451).
331 Finish EDIT 325 -- make typeout say the right things.
332 Fix bug in FINCHK which caused job 8 (ac J =8 ) to be checked
rather than the job we were interested in. This bug caused
random error code 3 to DAEMON UUOs and also writing in random
pages.
333 Fix DAEMON to take advantage of the GETTAB's added in 507/601
for its benefit.
334 Add code to dump UNILOG as last item in code 10 entry in
ERROR file.
335 Make unknown commands give error message, instead of doing
DCORE as in previous versions.
336 Fix swapping pointers for 507. They are the same on both 507
and 601, not different as previously coded. See edit 211 for
similar change for 601.
337 Fix bugs added by change to DAEMON/SAVER (Edit 325), and in
using new GETTABS (Edit 333).
340 Fix race added by Edit 325.
341 Speed up COMPRS (ignore nonexistent pages, don't look at
every word on them).
[End of DMN12.DOC]
[DMN11.DOC is appended as an integral part of DMN12.DOC]
DMN11.DOC Page 22
DAEMON.DOC - Changes from V10(110) to V11(224)
October 1974
1.0 SUMMARY
This release of DAEMON contains those changes needed to support the
6.01 monitor. No earlier version will run correctly with 6.01. See
SYF2.DOC for information on the latest version of SYSTEM[INFO].
2.0 EXTERNAL CHANGES
No significant external changes exist. However, this version has
extensive changes to make all normal save files look exactly like
those saved by the monitor. There is also one change in the handling
of ERROR.X?? files.
3.0 KNOWN BUGS AND DEFICIENCIES
It is not possible to write .SAV files on any device but a disk. If
you type Control-C during a save command, a partial file will be left
in you disk area.
4.0 INSTALLATION INSTRUCTIONS
The control file DAEMON.CTL will generate 3 save files:
1. DAEMON.SAV a version of DAEMON, which does not contain
[SYSTEM]INFO and is restartable.
2. DAEINF.SAV a version of DAEMON, which contains [SYSTEM]INFO
and is restartable.
3. SYSINF.SAV a stand alone version of [SYSTEM]INFO.
This set allows a fall back when a malfunctioning of one of the
components is suspected.
5.0 INTERNAL CHANGES
Edit #
211 Fix code to handle new swapping pointers for 6.01 correctly.
212 Remove CRLF from JOB SAVED message to look like monitor.
DMN11.DOC Page 23
213 Fix EXAMINE and DEPOSIT commands for high segments.
214 Check for output device of NUL and finish with no IO if true.
215 Fix high segment save to only write exact number of words in
last block of .HGH or .SHR file.
216 Fix to EDIT 62 to make DAEMON write in last ERROR.X?? file
which exists on ERRDEV.
217 Fix undefined globals ILIST and OLIST if CHKFCT=0.
220 Fix to make DAEMON save do same as monitor dependent on
contents of .JBCOR and .JBHRL.
221 Fix to not error intercept on all IO.BKT errors so we can
report them on commands.
222 Fix 220 and 215 to do the right thing together.
223 Add external symbols so SYSINF knows start and end of DAEMON.
224 Fix to 220/222 to not save .LOW if .JBCOR140.
[End of DMN11.DOC]
[DMN10.DOC is appended as an integral part of DMN11.DOC]
DMN10.DOC Page 24
DAEMON.DOC - Changes from V7(72) to V10(110)
June 1974
1.0 SUMMARY
This release of DAEMON contains the first release of the [SYSTEM]INFO
support program. This program is part of DAEMON. However it can be
run seperately if so desired (see Section 2).
2.0 EXTERNAL CHANGES
In addition to incorporation of [SYSTEM]INFO, some of these changes
have been made.
1. The format of .SAVE files created by DAEMON is changed so
that non-contiguous low segments can be "GOTTEN" into a core
image that resembles the original. This is done by
outputting a null IOWD for each existant but zero page in the
core image.
2. A bug which sometimes caused DAEMON to bang in TI wait mode
has been fixed.
3. Fixed a bug which caused DAEMON to attempt to read the
swapping space using an erroneous swapping pointer.
4. Fix a problem reading a "job" UPMP from the swapping space.
5. Fixed a security leak while doing DCORE's.
6. Init DSK:[1,4] instead of SYS:[1,4] for the updating of the
ERROR.SYS and FACT.SYS file.
7. If another DAEMON is running then exit without detaching,
after issuing a warning.
8. When DAEMON is stopped change its name to DAE before doing
the EXIT UUO, as elsewise terminal will be detached.
3.0 KNOWN BUGS AND DEFICIENCIES
This version has no known problems.
Note: That the PSISER and IPCSER facility are required.
NOTE: NEVER ASSEMBLE ANY [SYSTEM]INFO COMPONENT WITH FTDEBUG ON.
NOTE: NO DATE 75 DEPENDENCY.
DMN10.DOC Page 25
4.0 INSTALLATION INSTRUCTIONS
4.1 [SYSTEM]INFO Installation
The control file SYSINF.CTL will generate 3 save files:
1. DAEMON.SAV a version of DAEMON, which does not contain
[SYSTEM]INFO and is restartable.
2. DAEINF.SAV a version of DAEMON, which contains [SYSTEM]INFO
and is restartable.
3. SYSINF.SAV a stand alone version of [SYSTEM]INFO.
This set allows a fall back when a malfunctioning of one of the
components is suspected.
All these programs can be stopped by means of a reenter command. Note
that this is very important for the [SYSTEM]INFO facility as it is
impossible to restart another version before the old [SYSTEM]INFO has
released its claim to this role. (as longe as the variable %CNIPI in
the monitor is non zero no other [SYSTEM]INFO can be started.
Note: That DAEINF.SAV needs to be renamed to DAEMON.SAV when it is
run as DAEMON.
4.2 Automatic Restarts
Whenever errors make it impossible to continue the running of the
program a rerun of the program at an offset of 2 will be done. The
restarted program will check the uptime of the previous run whenever
this time is less then 10 minutes on the same day, it will advice to
run another version (which is not required) and exit.
4.3 Special Instructions
In order to stop orderly DAEMON do the following:
1. Attach to the job.
2. Type halt.
3. Reenter.
For SYSINF.SAV only step 3 has to be done. In case that the above
procedure was not followed for either: SYSINF or DAEINF kill the job.
This will relinquish the [SYSTEM]INFO facility.
4.4 Building Instructions
See the supplied control file.
DMN10.DOC Page 26
5.0 INTERNAL CHANGES
None.
[End of DMN10.DOC]
[DMN7.DOC is appended as an integral part of DMN10.DOC]
DMN7.DOC Page 27
DAEMON.DOC -- Changes from V6 to V7
December 1972
1.0 SUMMARY
This release of DAEMON V7(52), includes code to support monitor error
logging in 5.06 and later monitors. It also includes several bug
fixes, a partial cleanup of symbol usage, conditionalization of the
.FACT and .CLOCK functions, support for path specification in the
.DCORE function and default path in the DUMP and DCORE commands, and
recognizes that a job is being swapped when reading or writing its
core, waiting for it to be finished before looking at it.
DAEMON runs on all supported monitors (except 1040). There are no
known bugs, and the only known deficiency is that explicit path
specification is not accepted on DUMP and DCORE commands.
2.0 EXTERNAL CHANGES
DAEMON will now recognize that a job is stopped for error logging
(JS.DEP set in Job's JBTSTS word), and restart the job after making an
appropriate entry in ERROR.SYS, the error log file.
DAEMON creates a file called SYS:ERROR.SYS, which contains information
pertaining to hardware errors encountered during the operation of the
system. This information is intended to facilitate field service, by
giving reports of soft errors, and pinpointing intermittent problems
when they occur.
The DUMP and DCORE commands will now write in the user's default
directory rather than his UFD unless an explicit PPN is specified.
The .DCORE function of the DAEMON UUO accepts a pointer to a path
specification instead of a PPN in the directory word of the argument
list if one is given. DAEMON error code 10 (E.DPTH) is defined to
mean a path specification was too long.
3.0 KNOWN BUGS AND DEFICIENCIES
DAEMON still uses SCANER, rather than SCAN, and so does not recognize
explicit path specification in commands. This should be fixed in
version 10.
4.0 INSTALLATION INSTRUCTIONS
New assembly parameters are defined in 5.1.
DMN7.DOC Page 28
5.0 INTERNAL CHANGES
5.1 Default parameter settings are moved to page 1. The following
new parameters have been added:
FTERR - Enables logging of hardware error and performance
information into the file ERROR.SYS. (SPR 6396)
FTCLCK - Enables the .CLOCK function of the DAEMON UUO. (SPR 7016)
FTUSCN - Enables periodic (hourly) collection of unit performance
statistics in ERROR.SYS.
CPUN - No. of cpu's on which to keep error counts.
CHNN -No. of DF10 channels on which to keep error counts.
UNITN - No. of disks on which to keep error counts.
ERRDEV - SIXBIT device name on which to write ERROR.SYS.
ERRPPN - UFD into which to write ERROR.SYS.
ERRSIZ - Maximum size of entries in ERROR.SYS.
FTFACT - Enables the .FACT function of the DAEMON UUO. (SPR's
7016, 6266)
FTCHKPNT - Enables taking of checkpoints every 10 minutes. (SPR's
7016, 6266)
FCTDEV - SIXBIT device name on which to write FACT.SYS.
FCTPPN - UFD into which to write FACT.SYS.
TRNSIZ - Maximum size of any single FACT.SYS entry.
DPTHLN - Maximum length of a path specification.
MAXAGE - Maximum time (in seconds) any FACT.SYS entry will be
permitted to stay in the buffer before DAEMON will force
writing it. Zero is equivalent to infinity.
CHKTIM - Time between checkpoints for the FACT file.
USCTIM - Time between unit scans to collect performance statistics.
5.2 Changed GETTAB table numbers to .GTxxx format symbols.
DMN7.DOC Page 29
5.3 Defined bits in various UUO's, etc.
5.4 Defined channel and unit data block items for use by error
logging.
5.5 Defined entry identification codes for ERROR.SYS.
5.6 Removed arbitrary request for 1K core at beginning of DAEMON,
allocated core as needed. (SPR's 6513, 6863)
5.7 Inserted leading character "%" in warning messages.
5.8 Re-wrote search list handling so DAEMON would not keep any STR in
its passive search list after finishing DUMP or DCORE.
5.9 Added check to prevent running more than one DAEMON.
5.10 Replaced use of JIFSEC symbol (jiffies per second) with value
obtained from CNFTBL in monitor.
5.11 Removed unnecessary core allocation for clock tables.
5.12 Added code to put system-reload information into FACT.SYS and
ERROR.SYS.
5.13 Added code to scan error counters in monitor and output
appropriate information to ERROR.SYS whenever any counter changed.
5.14 Added code to force output of FACT.SYS buffer if less than one
minute to KSYS time, or if any entry in fact buffer more than 10
minutes old (variable = MAXAGE).
5.15 Commented the calling sequence for DAEMON UUO functions.
5.16 Added code to recognize and accept path definition in .DCORE
function, and to default DUMP and DCORE output to user's default path.
DMN7.DOC Page 30
5.17 Added defensive check routine ATTCHK and calls to verify that
DAEMON is attached before attempting any TTY I/O. (SPR 7239)
5.18 Fixed bugs in handling of DUMP switches.
5.19 Used DEVCHR DV.DSK bit to recognize disk DDB's, rather than
depending on DEVNAM containing 'DSK'.
5.20 Added debug counters for "should never happen" situations.
5.21 Added FINCHK subroutine and calls in WTUCOR and GTUCOR routines
to compare the absolute value of %SWFIN against the job number being
read or written, and sleep until they are not equal. This change,
together with MCO 3078, fixes a problem which often showed up as
duplicate entries in the FACT file. The problem was caused by JOBPEK
thinking it could succeed, when the target job was being swapped.
JOBPEK and DAEMON now both check FINISH (GETTAB name %SWFIN) to
prevent access attempts during swapping of the target job.
5.22 Revised GTUCOR routine (which reads another job's core area) to
clear unused portion of its buffer, so un-specified arguments are 0.
(SPR 6862)
5.23 Re-wrote address checking routine to handle argument list in AC's
or high segment correctly.
5.24 Added code under FTUSCN for hourly scan of disk unit data blocks
to output performance data to ERROR.SYS.
5.25 Revised fact file APPEND routine to do extended LOOKUP and ENTER
to prevent trouble when FACT.SYS exceeds 1024 blocks.
5.26 Removed all references to spy segment except in PEKSPY and
GTBSPY. This makes it possible for DAEMON to run with monitors which
do not have the SPY UUO.
5.27 Added validity checks on .FACT function of DAEMON UUO to verify
that 3 of the 4 fields of the header word (type id, job , and entry
length) are non-zero, and that entry length corresponds to argument
list length -1. Error code 7 (e.dffb) returned if any check fails.
DMN7.DOC Page 31
5.28 Added defensive code at UUEXIT to prevent loop and PDL overflow
when an error is detected reading or writing the swapping space. The
old code attempted to write an error indication in the job in this
case, potentially provoking a repeat of the same error. The change
gives up if an error occurs while trying to write the completion code.
5.29 Modified swapping space I/O routines to recognize 5.06 and later
monitors running on a KI10 processor, and index the swapping space by
pages rather than K's.
[End of DMN7.DOC]