FreeBSD/Linux Kernel Cross Reference
sys/kern/time_stamp.c
1 /*
2 * Mach Operating System
3 * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
4 * All Rights Reserved.
5 *
6 * Permission to use, copy, modify and distribute this software and its
7 * documentation is hereby granted, provided that both the copyright
8 * notice and this permission notice appear in all copies of the
9 * software, derivative works or modified versions, and any portions
10 * thereof, and that both notices appear in supporting documentation.
11 *
12 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 *
16 * Carnegie Mellon requests users of this software to return to
17 *
18 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 * School of Computer Science
20 * Carnegie Mellon University
21 * Pittsburgh PA 15213-3890
22 *
23 * any improvements or extensions that they make and grant Carnegie Mellon
24 * the rights to redistribute these changes.
25 */
26 /*
27 * HISTORY
28 * $Log: time_stamp.c,v $
29 * Revision 2.6 93/01/14 17:37:21 danner
30 * 64bit cleanup.
31 * [92/12/10 18:14:01 af]
32 *
33 * Revision 2.5 92/08/03 17:40:20 jfriedl
34 * removed silly prototypes
35 * [92/08/02 jfriedl]
36 *
37 * Revision 2.4 92/05/21 17:16:57 jfriedl
38 * Cleanup to quiet gcc warnings.
39 * [92/05/16 jfriedl]
40 *
41 * Revision 2.3 91/05/14 16:49:34 mrt
42 * Correcting copyright
43 *
44 * Revision 2.2 91/02/05 17:30:55 mrt
45 * Changed to new Mach copyright
46 * [91/02/01 16:20:38 mrt]
47 *
48 * Revision 2.1 89/08/03 15:53:16 rwd
49 * Created.
50 *
51 * 16-Jun-87 David Black (dlb) at Carnegie-Mellon University
52 * machtimer.h --> timer.h Changed to cpp symbols for multimax.
53 *
54 * 5-Apr-87 Avadis Tevanian (avie) at Carnegie-Mellon University
55 * ts.h -> time_stamp.h
56 *
57 * 30-Mar-87 David Black (dlb) at Carnegie-Mellon University
58 * Created.
59 */
60
61 #include <mach/std_types.h>
62 #include <sys/time.h>
63 #include <kern/time_stamp.h>
64
65 /*
66 * ts.c - kern_timestamp system call.
67 */
68 #ifdef multimax
69 #include <mmax/timer.h>
70 #endif multimax
71
72
73
74 kern_return_t
75 kern_timestamp(tsp)
76 struct tsval *tsp;
77 {
78 #ifdef multimax
79 struct tsval temp;
80 temp.low_val = FRcounter;
81 temp.high_val = 0;
82 #else multimax
83 /*
84 temp.low_val = 0;
85 temp.high_val = ts_tick_count;
86 */
87 time_value_t temp;
88 temp = time;
89 #endif multimax
90
91 if (copyout((char *)&temp,
92 (char *)tsp,
93 sizeof(struct tsval)) != KERN_SUCCESS)
94 return(KERN_INVALID_ADDRESS);
95 return(KERN_SUCCESS);
96 }
97
98 /*
99 * Initialization procedure.
100 */
101
102 void timestamp_init()
103 {
104 #ifdef multimax
105 #else multimax
106 ts_tick_count = 0;
107 #endif multimax
108 }
Cache object: 94f09a7dc08d2e88bc51d931daea3373
|