Annotation of Gnu-Mach/kern/time_stamp.c, revision 1.1.1.2

1.1.1.2 ! root        1: /*
1.1       root        2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
                      4:  * All Rights Reserved.
1.1.1.2 ! root        5:  *
1.1       root        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.
1.1.1.2 ! root       11:  *
1.1       root       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.
1.1.1.2 ! root       15:  *
1.1       root       16:  * Carnegie Mellon requests users of this software to return to
1.1.1.2 ! root       17:  *
1.1       root       18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
1.1.1.2 ! root       22:  *
1.1       root       23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: 
                     27: #include <mach/std_types.h>
                     28: #include <sys/time.h>
                     29: #include <kern/time_stamp.h>
                     30: 
                     31: /*
                     32:  *     ts.c - kern_timestamp system call.
                     33:  */
                     34: #ifdef multimax
                     35: #include <mmax/timer.h>
1.1.1.2 ! root       36: #endif /* multimax */
1.1       root       37: 
                     38: 
                     39: 
                     40: kern_return_t
                     41: kern_timestamp(tsp)
                     42: struct tsval   *tsp;
                     43: {
                     44: #ifdef multimax
                     45:        struct  tsval   temp;
                     46:        temp.low_val = FRcounter;
                     47:        temp.high_val = 0;
1.1.1.2 ! root       48: #else  /* multimax */
1.1       root       49: /*
                     50:        temp.low_val = 0;
                     51:        temp.high_val = ts_tick_count;
                     52: */
                     53:        time_value_t temp;
                     54:        temp = time;
1.1.1.2 ! root       55: #endif /* multimax */
1.1       root       56: 
                     57:        if (copyout((char *)&temp,
                     58:                    (char *)tsp,
                     59:                    sizeof(struct tsval)) != KERN_SUCCESS)
                     60:            return(KERN_INVALID_ADDRESS);
                     61:        return(KERN_SUCCESS);
                     62: }
                     63: 
                     64: /*
                     65:  *     Initialization procedure.
                     66:  */
                     67: 
                     68: void timestamp_init()
                     69: {
                     70: #ifdef multimax
1.1.1.2 ! root       71: #else  /* multimax */
1.1       root       72:        ts_tick_count = 0;
1.1.1.2 ! root       73: #endif /* multimax */
1.1       root       74: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.