(* ---------------------------------------------------------------------------- * $Id: SYSINFO.md,v 1.1 1994/11/28 20:32:52 dolzmann Exp $ * ---------------------------------------------------------------------------- * Copyright (c) 1994 Universitaet Passau * ---------------------------------------------------------------------------- * This file is part of MAS. * ---------------------------------------------------------------------------- * $Log: SYSINFO.md,v $ * Revision 1.1 1994/11/28 20:32:52 dolzmann * New modules SYSINFO.md, SYSINFO.mi, LISTTOOLS.md, and LISTTOOLS.mi. * Makefile adapted. * * ---------------------------------------------------------------------------- *) DEFINITION MODULE SYSINFO; (* System Informations Definition Module. *) (****************************************************************************** * S Y S T E M I N F O R M A T I O N S * *-----------------------------------------------------------------------------* * Author: Andreas Dolzmann * * Language: Modula II * * System: This program is written for the computer algebra system MAS by * * Heinz Kredel. * * Remark: Only mas kernel algorithms are used. * * The computation of the number of used cells is time expensive. * * So the number of used cells is not reported normally. * * Abstract: This module implements procedures for system resource statistics. * * It uses the type SYSINFO to store the information over the * * resources. It is possible to record statistical dates on one * * time and print theses data later. * ******************************************************************************) FROM MASELEM IMPORT GAMMAINT; FROM MASSTOR IMPORT LIST; TYPE SYSINFO = RECORD GarbageCollections: GAMMAINT; ReclaimedCells: GAMMAINT; Time: GAMMAINT; UsedCells: GAMMAINT; GarbageCollectionTime: GAMMAINT; END; CONST rcsid = "$Id: SYSINFO.md,v 1.1 1994/11/28 20:32:52 dolzmann Exp $"; CONST copyright = "Copyright (c) 1994 Universitaet Passau"; VAR Cells: BOOLEAN; (* If true, report cells statistics. *) PROCEDURE SysInfoStart(VAR s:SYSINFO); (* system information start. The variable s needs no initialization. All data in s are lost. Informations over the usage of system resources are stored. Use this procedure to start the recording of statistical data over system resource usage. *) PROCEDURE SysInfoStop(VAR s:SYSINFO); (* system information stop. The variable s contains informations over system resources. The usage of this resources between the time of the initialization of s and now are stored in s. Use this procedure to stop the recording of statistical data over system resource usage. *) PROCEDURE SysInfoSum(a,b:SYSINFO; VAR s:SYSINFO); (* system information sum. The variable s needs no initialization. The sum of all data in a and b are stored in s. Use this procedure to join statistical data of two registration period. *) PROCEDURE SysInfoWrite(s: SYSINFO); (* system information write. The variable s contains informations over system resources. All informations in s are written out. Use this procedure to write out the statistical data of a registration *) END SYSINFO.