DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 7563 (0x1d8b) Types: TextFile Names: »V«
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3 └─ ⟦fc9b38f02⟧ »DATA« └─⟦9b46a407a⟧ └─⟦12c68c704⟧ └─⟦this⟧ └─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS └─ ⟦91c658230⟧ »DATA« └─⟦458657fb6⟧ └─⟦220843204⟧ └─⟦this⟧
with Calendar; package Daemon is -- There are five types of Daemon tasks controlled by this package, their -- characteristics and default scheduling: -- -- Snapshot. Frequent. ~1 minute slowdown. Hourly. -- -- Action. Frequent, unobtrusive. Every two hours. -- -- Weekly. Unobtrusive. Weekly at 2:30 AM. -- Code_Segment Group Session Tape Terminal User -- -- Daily. Variable, possibly significant interruption. -- Nightly at 3:00 AM. -- Ada DDB Directory Error_Log File Disk -- -- Disk. Daily or as needed. Prolonged slowdown. -- Last portion of the Daily run -- -- If no other action is taken, all clients will be scheduled at a -- frequency and time normally appropriate. These schedules can be -- changed to suit specific needs. Note that Disk is included in the -- Daily category and will be run with the other Daily Daemons. -- -- Clients that interfere with normal operations warn all users. -- -- There is a group of clients referred to as Major_Clients that are -- expected to be of interest in monitoring the state of the machine: -- Snapshot, Action, Disk, Ada, DDB, Directory, and File. Major_Clients : constant String := "*"; procedure Run (Client : String := "Snapshot"; Response : String := "<PROFILE>"); -- Cause the named Client to run the specified operation immediately; -- Has no effect on the next scheduled run of Client. procedure Schedule (Client : String := ">>CLIENT NAME<<"; Interval : Duration; First_Run : Duration := 0.0; Response : String := "<PROFILE>"); -- Sets the interval at which the Client operation will take place. procedure Quiesce (Client : String := ">>CLIENT NAME<<"; Additional_Delay : Duration := 86_400.0; Response : String := "<PROFILE>"); -- Reschedule the Client not to run at the next scheduled time. -- Equivalent to Schedule with a new First_Run, but the same Interval. -- Defaults to a 1-day delay; use Duration'Last for indefinite delay. procedure Status (Client : String := "*"); -- print a formatted display of current status for given Client -- Matches on prefix of Client name, "" is prefix of all clients -- Major Clients (*): Actions, Ada, DDB, Directory, Disk, File, Snapshot -- The Disk Client provides additional information when run separately. procedure Warning_Interval (Interval : Duration := 120.0); function Get_Warning_Interval return Duration; -- Warning given before starting Daily clients to allow time to Quiesce. function In_Progress (Client : String) return Boolean; function Next_Scheduled (Client : String) return Calendar.Time; function Last_Run (Client : String) return Calendar.Time; function Interval (Client : String) return Duration; procedure Get_Size (Client : String; Size : out Long_Integer; Size_After_Last_Run : out Long_Integer; Size_Before_Last_Run : out Long_Integer); -- Sizes are set to -1 if invalid -- Control of the Disk Daemon -- -- The Disk Daemon runs in response to a number of stimuli: -- -- Daemon.Schedule Runs at priority 6; intended for machine idle. -- Daemon.Run Runs at priority -1; background collection. -- Daemon.Collect Runs at specified priority -- over threshold Starts at priority 0 with escalation -- -- Messages to all users are issued for each of the three explicitly -- called collections. In addition, a message is sent when a Set_Priority -- is called and it causes a change in priority. -- -- A background task monitors over threshold situations and sends messages -- of interesting events. Threshold_Warnings (False) allows an -- installation-provided job to tailor policy. -- -- Additional control over Disk operations is available in the -- Disk_Daemon tools package. subtype Volume is Integer range 0 .. 31; subtype Collection_Priority is Integer range -1 .. 6; -- -1 is the default and implies very low-level background activity -- 0 guarantees progress in collection but has some effect on response -- 6 causes collection to take over the machine procedure Collect (Vol : Volume; Priority : Collection_Priority := 0); -- If this call initiates a collection, it waits for its completion. procedure Set_Priority (Priority : Collection_Priority := -1); -- Set the priority of a currently running collection to Priority procedure Threshold_Warnings (On : Boolean := True); -- Cause messages to be sent when collection thresholds are passed. -- -- Control of snapshot messages -- procedure Snapshot_Warning_Message (Interval : Duration := 120.0); procedure Snapshot_Start_Message (On : Boolean := True); procedure Snapshot_Finish_Message (On : Boolean := True); procedure Show_Snapshot_Settings; procedure Get_Snapshot_Settings (Warning : out Duration; Start_Message : out Boolean; Finish_Message : out Boolean); ------------------------------------------------------------------------- -- -- Control of the contents and permanence of the operations error log -- ------------------------------------------------------------------------- type Condition_Class is (Normal, Warning, Problem, Fatal); type Log_Threshold is (Console_Print, Log_To_Disk, Commit_Disk); procedure Show_Log_Thresholds; procedure Set_Log_Threshold (Kind : Log_Threshold; Level : Condition_Class); function Get_Log_Threshold (Kind : Log_Threshold) return Condition_Class; -- Options on client compactions. -- -- Consistency checking does additional work to assure that the internal -- state of the system is as it seems. This is normally only run when -- there are suspected problems. Consistency checking slows operations -- for which it is meaningful by between one and three orders of magnitude. -- -- Access_List_Compaction is the process of removing non-existent groups -- from the access lists of objects. This condition occurs when groups -- are removed from the machine. Access_List_Compaction is only done -- for Ada, Directory and File clients. All other clients reqested will -- be silently ignored. All three must be compacted for any old group -- numbers to be freed. -- -- The default is disabled. The default is restored after -- the next appropriate daemon run has completed. procedure Set_Consistency_Checking (Client : String := ""; On : Boolean := True; Response : String := "<PROFILE>"); function Get_Consistency_Checking (Client : String := "") return Boolean; procedure Set_Access_List_Compaction (Client : String := ""; On : Boolean := True; Response : String := "<PROFILE>"); function Get_Access_List_Compaction (Client : String := "") return Boolean; pragma Subsystem (Os_Commands); pragma Module_Name (4, 3932); end Daemon;