1 .\"
2 .\" Mach Operating System
3 .\" Copyright (c) 1991,1990 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: processor_set_policy_enable.man,v $
29 .\" Revision 2.5 93/03/18 15:14:31 mrt
30 .\" corrected types
31 .\" [93/03/11 12:54:28 lli]
32 .\"
33 .\" Revision 2.4 91/05/14 17:11:56 mrt
34 .\" Correcting copyright
35 .\"
36 .\" Revision 2.3 91/02/14 14:14:11 mrt
37 .\" Changed to new Mach copyright
38 .\" [91/02/12 18:15:01 mrt]
39 .\"
40 .\" Revision 2.2 90/08/07 18:42:56 rpd
41 .\" Created.
42 .\"
43 .TH processor_set_policy_enable 2 8/13/89
44 .CM 4
45 .SH NAME
46 .nf
47 processor_set_policy_enable \- enable scheduling policy on processor set
48 processor_set_policy_disable \- disable scheduling policy on processor set
49 .SH SYNOPSIS
50 .nf
51 .ft B
52 #include <mach.h>
53
54 .nf
55 .ft B
56 kern_return_t
57 processor_set_policy_enable(processor_set, policy)
58 mach_port_t processor_set;
59 int policy;
60
61
62 .fi
63 .ft P
64 .nf
65 .ft B
66 kern_return_t
67 processor_set_policy_disable(processor_set, policy, change_threads)
68 mach_port_t processor set;
69 int policy;
70 boolean_t change_threads;
71
72
73
74
75 .fi
76 .ft P
77 .SH ARGUMENTS
78 .TP 15
79 .B
80 processor_set
81 The processor set whose allowed policies are to be changed.
82 .TP 15
83 .B
84 policy
85 The policy to enable or disable
86 .TP 15
87 .B
88 change_threads
89 Reset the policies of any threads with the newly-disallowed policy to
90 timesharing.
91
92 .SH DESCRIPTION
93 Processor sets may restrict the scheduling policies to be used for
94 threads assigned to them. These two calls provide the mechanism for
95 designating permitted and forbidden policies. The current set of
96 permitted policies can be obtained from
97 .B processor_set_info.
98 Timesharing may not
99 be forbidden by any processor_set. This is a compromise to reduce the
100 complexity of the assign operation; any thread whose policy is forbidden by
101 the target processor set has its policy reset to timesharing. If the
102 .B change_threads
103 argument to
104 .B processor_set_policy_disable
105 is true, threads currently assigned to this processor set and using the
106 newly disabled policy will have their policy reset to timesharing.
107
108 <mach/policy.h> contains the allowed policies; it is included by mach.h.
109
110 .SH DIAGNOSTICS
111 .TP 25
112 KERN_SUCCESS
113 Operation completed successfully
114 .TP 25
115 KERN_INVALID_ARGUMENT
116 .B processor_set
117 is not a processor set,
118 or
119 .B policy
120 is not a valid policy, or an attempt was made to disable timesharing.
121
122 .SH BUGS
123 Availability limited. Not all policies (e.g. fixed priority) are supported
124 by all systems.
125
126 .SH SEE ALSO
127 .B thread_policy, task_policy
128
Cache object: 037cee3ebfa14ba144923705b79b1541
|