Initial snark14m import
[snark14.git] / src / snark / second.cpp
1 /*
2  ***********************************************************
3  $SNARK_Header: S N A R K  1 4 - A PICTURE RECONSTRUCTION PROGRAM $
4  $HeadURL: svn://dig.cs.gc.cuny.edu/snark/trunk/src/snark/second.cpp $
5  $LastChangedRevision: 96 $
6  $Date: 2014-07-02 20:06:42 -0400 (Wed, 02 Jul 2014) $
7  $Author: agulati $
8  ***********************************************************
9
10  THIS SUBROUTINE IS PECULIAR TO THE BURROUGH'S B1700 SERIES.
11  THE SUBROUTINE IS STANDARD ON THE CDC 6000 AND CYBER SERIES.
12  ON OTHER MACHINES IT MUST BE MODIFIED TO CONFORM TO THE
13  OPERATING SYSTEMS CONVENTIONS OF RETURNING THE ELAPSED CPU TIME
14  SINCE THE BEGINNING OF THE JOB.
15
16  CALLS FORTRAN INTRINSIC FUNCTION 'TIME'; INTEGER FUNCTION
17  WITH INTEGER ARGUMENTS ; TIME IN TENTHS OF SECONDS
18
19  FOR VM-CMS ON A VMX THERE IS NO TIME ROUTINE
20  */
21
22 #include <sys/time.h>
23 #include <sys/resource.h>
24 #include <unistd.h>
25
26 #include "blkdta.h"
27 #include "second.h"
28
29 void second(REAL* ctime)
30 {
31         struct rusage usage;
32
33         getrusage(RUSAGE_SELF, &usage);
34         *ctime = usage.ru_utime.tv_sec + usage.ru_utime.tv_usec * 0.000001;
35 }
36