FreeBSD/Linux Kernel Cross Reference
sys/kern/counters.c
1 /*
2 * Mach Operating System
3 * Copyright (c) 1993,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: counters.c,v $
29 * Revision 2.4 93/11/17 17:07:35 dbg
30 * ANSI-fied.
31 * [93/06/16 dbg]
32 *
33 * Revision 2.3 91/05/14 16:40:19 mrt
34 * Correcting copyright
35 *
36 * Revision 2.2 91/03/16 15:15:51 rpd
37 * Created.
38 * [91/03/13 rpd]
39 *
40 */
41
42 #include <mach_counters.h>
43
44 #include <kern/counters.h>
45
46 /*
47 * We explicitly initialize the counters to make
48 * them contiguous in the kernel's data space.
49 * This makes them easier to examine with ddb.
50 */
51
52 mach_counter_t c_thread_invoke_hits = 0;
53 mach_counter_t c_thread_invoke_misses = 0;
54 mach_counter_t c_thread_invoke_csw = 0;
55 mach_counter_t c_thread_handoff_hits = 0;
56 mach_counter_t c_thread_handoff_misses = 0;
57
58 #if MACH_COUNTERS
59 mach_counter_t c_threads_current = 0;
60 mach_counter_t c_threads_max = 0;
61 mach_counter_t c_threads_min = 0;
62 mach_counter_t c_threads_total = 0;
63 mach_counter_t c_stacks_current = 0;
64 mach_counter_t c_stacks_max = 0;
65 mach_counter_t c_stacks_min = 0;
66 mach_counter_t c_stacks_total = 0;
67 mach_counter_t c_clock_ticks = 0;
68 mach_counter_t c_ipc_mqueue_send_block = 0;
69 mach_counter_t c_ipc_mqueue_receive_block_user = 0;
70 mach_counter_t c_ipc_mqueue_receive_block_kernel = 0;
71 mach_counter_t c_mach_msg_trap_block_fast = 0;
72 mach_counter_t c_mach_msg_trap_block_slow = 0;
73 mach_counter_t c_mach_msg_trap_block_exc = 0;
74 mach_counter_t c_exception_raise_block = 0;
75 mach_counter_t c_swtch_block = 0;
76 mach_counter_t c_swtch_pri_block = 0;
77 mach_counter_t c_thread_switch_block = 0;
78 mach_counter_t c_thread_switch_handoff = 0;
79 mach_counter_t c_ast_taken_block = 0;
80 mach_counter_t c_thread_halt_self_block = 0;
81 mach_counter_t c_vm_fault_page_block_busy_user = 0;
82 mach_counter_t c_vm_fault_page_block_busy_kernel = 0;
83 mach_counter_t c_vm_fault_page_block_backoff_user = 0;
84 mach_counter_t c_vm_fault_page_block_backoff_kernel = 0;
85 mach_counter_t c_vm_page_wait_block_user = 0;
86 mach_counter_t c_vm_page_wait_block_kernel = 0;
87 mach_counter_t c_vm_pageout_block = 0;
88 mach_counter_t c_vm_pageout_scan_block = 0;
89 mach_counter_t c_idle_thread_block = 0;
90 mach_counter_t c_idle_thread_handoff = 0;
91 mach_counter_t c_sched_thread_block = 0;
92 mach_counter_t c_io_done_thread_block = 0;
93 mach_counter_t c_net_thread_block = 0;
94 mach_counter_t c_reaper_thread_block = 0;
95 mach_counter_t c_swapin_thread_block = 0;
96 mach_counter_t c_action_thread_block = 0;
97 #endif /* MACH_COUNTERS */
Cache object: 632f312274f36563bbb2d92081d1ac68
|