|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 8192 (0x2000) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package System_Information, seg_00186a
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Simple_Status; with Time_Utilities; with Bounded_String; package System_Information is -- Interfaces to extract information used to produce System_Report output. procedure Generate (Start_Time : String := ""; End_Time : String := ""; Log_Directory : String := "!Machine.Error_Logs"; Log_Time : out Duration; Status : in out Simple_Status.Condition); -- Must be called prior to using the following operations. They, then -- can be used to read the reduced data. Log_Time indicates the -- actual duration between the first and last entries used in this -- report. -- Each iterator has a type and returns certain information. -- General paradign for each is: -- -- I : xxx_Iterator; -- Info : xxx_Information; -- -- Initialize (I); -- while not Done (I) loop -- Info := Value (I); -- -- Do something with Info -- Next (I); -- end loop; type Usage_Iterator is private; type Outage_Iterator is private; type Event_Iterator is private; type Device_Iterator is private; type Daemon_Iterator is private; type Mount_Iterator is private; procedure Initialize (I : out Usage_Iterator); procedure Initialize (I : out Outage_Iterator); procedure Initialize (I : out Event_Iterator); procedure Initialize (I : out Device_Iterator); procedure Initialize (I : out Daemon_Iterator); procedure Initialize (I : out Mount_Iterator); procedure Next (I : in out Usage_Iterator); procedure Next (I : in out Outage_Iterator); procedure Next (I : in out Event_Iterator); procedure Next (I : in out Device_Iterator); procedure Next (I : in out Daemon_Iterator); procedure Next (I : in out Mount_Iterator); function Done (I : Usage_Iterator) return Boolean; function Done (I : Outage_Iterator) return Boolean; function Done (I : Event_Iterator) return Boolean; function Done (I : Device_Iterator) return Boolean; function Done (I : Daemon_Iterator) return Boolean; function Done (I : Mount_Iterator) return Boolean; type Pstring is access String; -- Strings are accessed by dereferencing -- pointers. -- Usage information is available for each half-hour during the -- report period. type Usage_Information is record Time : Time_Utilities.Time; -- Time of this sample Users : Natural; -- # users logged on Disk_Running : Boolean; -- Disk Daemon running Outage : Boolean; -- System is down end record; -- Outage information is available for each system service outage. type Outage_Information is record Time : Time_Utilities.Time; -- time of outage Length : Duration; -- length of outage Cause : Pstring; -- Cause entered Explanation : Pstring; -- Explanation entered end record; type Event_Class is (User_Operation, Exception_Cond, System_Boot, Other_Event); -- Event information is available for each "interesting" event. -- The Event_Class gives some idea of the what the event is. -- The Info is the log entry for the event and has the standard -- format for a log entry. type Event_Information is record Time : Time_Utilities.Time; Info : Pstring; Event_Kind : Event_Class; end record; type Device_Class is (Disk, Tape, Ethernet, Memory, Other_Device); -- Device information is available for each device error or other -- event of interest. Class indicates for which device it is, and -- Info is the log entry for the event. type Device_Information is record Time : Time_Utilities.Time; -- Time of entry Info : Pstring; -- Log entry for device Class : Device_Class; -- Class of device end record; -- Daemon information is available for each run of a daemon. -- The information is as listed below. type Daemon_Information is record Time : Time_Utilities.Time; -- time of start Name : Bounded_String.Variable_String (40);-- Daemon name Length : Duration; -- length of run Pre_Size : Natural; -- pages at start Post_Size : Natural; -- pages of state at end Explanation : Pstring; -- Other info end record; type Mount_Information is record Request_Time : Time_Utilities.Time; -- time of request Volume : Bounded_String.Variable_String (40); -- Volume Name Mount_Time : Time_Utilities.Time; -- Tape on-line Unload_Time : Time_Utilities.Time; -- Tape unloaded Density : Bounded_String.Variable_String (20); end record; -- The value functions return the actual information for -- each value of the iterator. function Value (I : Usage_Iterator) return Usage_Information; function Value (I : Outage_Iterator) return Outage_Information; function Value (I : Event_Iterator) return Event_Information; function Value (I : Device_Iterator) return Device_Information; function Value (I : Daemon_Iterator) return Daemon_Information; function Value (I : Mount_Iterator) return Mount_Information; private type Usage_Iterator is new Integer; type Outage_Iterator is new Integer; type Event_Iterator is new Integer; type Device_Iterator is new Integer; type Daemon_Iterator is new Integer; type Mount_Iterator is new Integer; end System_Information;
nblk1=7 nid=0 hdr6=e [0x00] rec0=1d rec1=00 rec2=01 rec3=030 [0x01] rec0=1a rec1=00 rec2=02 rec3=052 [0x02] rec0=17 rec1=00 rec2=03 rec3=03a [0x03] rec0=19 rec1=00 rec2=04 rec3=00a [0x04] rec0=16 rec1=00 rec2=05 rec3=084 [0x05] rec0=15 rec1=00 rec2=06 rec3=00c [0x06] rec0=05 rec1=00 rec2=07 rec3=000 tail 0x205004da27da18908008e 0x42a00088462060003