home *** CD-ROM | disk | FTP | other *** search
- /*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
- *
- * @APPLE_LICENSE_HEADER_START@
- *
- * The contents of this file constitute Original Code as defined in and
- * are subject to the Apple Public Source License Version 1.1 (the
- * "License"). You may not use this file except in compliance with the
- * License. Please obtain a copy of the License at
- * http://www.apple.com/publicsource and read it before using this file.
- *
- * This Original Code and all software distributed under the License are
- * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
- * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
- * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
- * License for the specific language governing rights and limitations
- * under the License.
- *
- * @APPLE_LICENSE_HEADER_END@
- */
- /*
- * @OSF_FREE_COPYRIGHT@
- */
- /*
- * Mach Operating System
- * Copyright (c) 1991,1990,1989 Carnegie Mellon University
- * All Rights Reserved.
- *
- * Permission to use, copy, modify and distribute this software and its
- * documentation is hereby granted, provided that both the copyright
- * notice and this permission notice appear in all copies of the
- * software, derivative works or modified versions, and any portions
- * thereof, and that both notices appear in supporting documentation.
- *
- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
- * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- *
- * Carnegie Mellon requests users of this software to return to
- *
- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
- * School of Computer Science
- * Carnegie Mellon University
- * Pittsburgh PA 15213-3890
- *
- * any improvements or extensions that they make and grant Carnegie Mellon
- * the rights to redistribute these changes.
- */
- /*
- */
- /*
- * File: mach/mach_port.defs
- * Author: Rich Draves
- *
- * Exported kernel calls.
- */
-
- subsystem
- #if KERNEL_SERVER
- KernelServer
- #endif KERNEL_SERVER
- processor_set 4000;
-
- #include <mach/std_types.defs>
- #include <mach/mach_types.defs>
-
- /*
- * Return scheduling statistics for a processor set.
- */
- routine processor_set_statistics(
- pset : processor_set_name_t;
- flavor : processor_set_flavor_t;
- out info_out : processor_set_info_t, CountInOut);
-
-
- /*
- * Destroy processor set.
- */
- routine processor_set_destroy(
- set : processor_set_t);
-
-
- /*
- * Set max priority for processor_set.
- */
- routine processor_set_max_priority(
- processor_set : processor_set_t;
- max_priority : int;
- change_threads : boolean_t);
-
- /*
- * Enable policy for processor set
- */
- routine processor_set_policy_enable(
- processor_set : processor_set_t;
- policy : int);
-
- /*
- * Disable policy for processor set
- */
- routine processor_set_policy_disable(
- processor_set : processor_set_t;
- policy : int;
- change_threads : boolean_t);
-
- /*
- * List all tasks in processor set.
- */
- routine processor_set_tasks(
- processor_set : processor_set_t;
- out task_list : task_array_t);
-
- /*
- * List all threads in processor set.
- */
- routine processor_set_threads(
- processor_set : processor_set_t;
- out thread_list : thread_act_array_t);
-
- /*
- * Controls the scheduling attributes governing the processor set.
- * Allows control of enabled policies, and per-policy base and limit
- * priorities.
- */
- routine processor_set_policy_control(
- pset : processor_set_t;
- flavor : processor_set_flavor_t;
- policy_info : processor_set_info_t;
- change : boolean_t);
-
-
- /*
- * Debug Info
- * This call is only valid on MACH_DEBUG kernels.
- * Otherwise, KERN_FAILURE is returned.
- */
- routine processor_set_stack_usage(
- pset : processor_set_t;
- out total : unsigned;
- out space : vm_size_t;
- out resident : vm_size_t;
- out maxusage : vm_size_t;
- out maxstack : vm_offset_t);
-
- /*
- * Get information about processor set.
- */
- routine processor_set_info(
- set_name : processor_set_name_t;
- flavor : int;
- out host : host_t;
- out info_out : processor_set_info_t, CountInOut);
-
-