|
|
1.1 root 1: /*
2: * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * The contents of this file constitute Original Code as defined in and
7: * are subject to the Apple Public Source License Version 1.1 (the
8: * "License"). You may not use this file except in compliance with the
9: * License. Please obtain a copy of the License at
10: * http://www.apple.com/publicsource and read it before using this file.
11: *
12: * This Original Code and all software distributed under the License are
13: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17: * License for the specific language governing rights and limitations
18: * under the License.
19: *
20: * @APPLE_LICENSE_HEADER_END@
21: */
22: /*
23: * @OSF_COPYRIGHT@
24: */
25: /*
26: * HISTORY
27: *
28: * Revision 1.1.1.1 1998/09/22 21:05:45 wsanchez
29: * Import of Mac OS X kernel (~semeria)
30: *
31: * Revision 1.1.1.1 1998/03/07 02:26:17 wsanchez
32: * Import of OSF Mach kernel (~mburg)
33: *
34: * Revision 1.2.12.2 1995/01/06 19:52:51 devrcs
35: * mk6 CR668 - 1.3b26 merge
36: * 64bit cleanup
37: * [1994/10/14 03:43:40 dwm]
38: *
39: * Revision 1.2.12.1 1994/09/23 02:46:19 ezf
40: * change marker to not FREE
41: * [1994/09/22 21:44:33 ezf]
42: *
43: * Revision 1.2.2.2 1993/06/09 02:45:03 gm
44: * Added to OSF/1 R1.3 from NMK15.0.
45: * [1993/06/02 21:19:19 jeffc]
46: *
47: * Revision 1.2 1993/04/19 16:41:52 devrcs
48: * ansi C conformance changes
49: * [1993/02/02 18:57:07 david]
50: *
51: * Revision 1.1 1992/09/30 02:32:41 robert
52: * Initial revision
53: *
54: * $EndLog$
55: */
56: /* CMU_HIST */
57: /*
58: * Revision 2.5 91/05/14 17:04:15 mrt
59: * Correcting copyright
60: *
61: * Revision 2.4 91/02/05 17:38:17 mrt
62: * Changed to new Mach copyright
63: * [91/02/01 17:29:40 mrt]
64: *
65: * Revision 2.3 90/06/19 23:00:29 rpd
66: * Added zi_ prefix to zone_info field names.
67: * Added zi_collectable field to zone_info.
68: * Added zn_ prefix to zone_name field names.
69: * [90/06/05 rpd]
70: *
71: * Revision 2.2 90/06/02 15:00:54 rpd
72: * Created.
73: * [90/03/26 23:53:57 rpd]
74: *
75: * Revision 2.2 89/05/06 12:36:08 rpd
76: * Created.
77: * [89/05/06 12:35:19 rpd]
78: *
79: */
80: /* CMU_ENDHIST */
81: /*
82: * Mach Operating System
83: * Copyright (c) 1991,1990,1989 Carnegie Mellon University
84: * All Rights Reserved.
85: *
86: * Permission to use, copy, modify and distribute this software and its
87: * documentation is hereby granted, provided that both the copyright
88: * notice and this permission notice appear in all copies of the
89: * software, derivative works or modified versions, and any portions
90: * thereof, and that both notices appear in supporting documentation.
91: *
92: * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
93: * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
94: * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
95: *
96: * Carnegie Mellon requests users of this software to return to
97: *
98: * Software Distribution Coordinator or [email protected]
99: * School of Computer Science
100: * Carnegie Mellon University
101: * Pittsburgh PA 15213-3890
102: *
103: * any improvements or extensions that they make and grant Carnegie Mellon
104: * the rights to redistribute these changes.
105: */
106: /*
107: */
108:
109: #ifndef _MACH_DEBUG_ZONE_INFO_H_
110: #define _MACH_DEBUG_ZONE_INFO_H_
111:
112: #include <mach/boolean.h>
113: #include <mach/machine/vm_types.h>
114:
115: /*
116: * Remember to update the mig type definitions
117: * in mach_debug_types.defs when adding/removing fields.
118: */
119:
120: #define ZONE_NAME_MAX_LEN 80
121:
122: typedef struct zone_name {
123: char zn_name[ZONE_NAME_MAX_LEN];
124: } zone_name_t;
125:
126: typedef zone_name_t *zone_name_array_t;
127:
128:
129: typedef struct zone_info {
130: integer_t zi_count; /* Number of elements used now */
131: vm_size_t zi_cur_size; /* current memory utilization */
132: vm_size_t zi_max_size; /* how large can this zone grow */
133: vm_size_t zi_elem_size; /* size of an element */
134: vm_size_t zi_alloc_size; /* size used for more memory */
135: integer_t zi_pageable; /* zone pageable? */
136: integer_t zi_sleepable; /* sleep if empty? */
137: integer_t zi_exhaustible; /* merely return if empty? */
138: integer_t zi_collectable; /* garbage collect elements? */
139: } zone_info_t;
140:
141: typedef zone_info_t *zone_info_array_t;
142:
143: #endif /* _MACH_DEBUG_ZONE_INFO_H_ */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.