|
|
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: subsystem
26: #if KERNEL_SERVER
27: KernelServer
28: #endif /* KERNEL_SERVER */
29: bootstrap 1000001; /* 999999 + 2 skips */
30:
31: #include <mach/std_types.defs>
32: #include <mach/mach_types.defs>
33: #include <device/device_types.defs>
34:
35: ServerPrefix do_;
36:
37: /*
38: * Objects to references of type bootstrap_t are returned by:
39: * task_get_special_port(task_t,...);
40: * task_get_bootstrap(task_t,...);
41: */
42:
43: /*
44: * A task can make this call on its bootstrap port
45: * to get its privileged ports.
46: */
47: routine bootstrap_ports(
48: bootstrap : bootstrap_t;
49: out priv_host : mach_port_t;
50: out device_master : device_master_t;
51: out wired_ledger : mach_port_t;
52: out paged_ledger : mach_port_t;
53: out host_security : mach_port_t);
54:
55: /*
56: * A task can use this call to get its argument strings.
57: */
58: routine bootstrap_arguments(
59: bootstrap : bootstrap_t;
60: task : task_t;
61: out arguments : pointer_t, Dealloc);
62:
63: /*
64: * A task can use this call to get its environment strings.
65: */
66: routine bootstrap_environment(
67: bootstrap : bootstrap_t;
68: task : task_t;
69: out environment : pointer_t, Dealloc);
70:
71: /*
72: * A task can use this call to indicate to its bootstrapper that it
73: * is done with its startup processing. This call is used when the
74: * task is important enough so that the bootstrap process wants to
75: * wait for it to come up before continuing with other things.
76: */
77: simpleroutine bootstrap_completed(
78: bootstrap : bootstrap_t;
79: task : task_t);
80:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.