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: memory_object_create.man,v $
29 .\" Revision 2.5 93/05/10 19:33:25 rvb
30 .\" updated
31 .\" [93/04/21 16:08:08 lli]
32 .\"
33 .\" Revision 2.4 91/05/14 17:08:38 mrt
34 .\" Correcting copyright
35 .\"
36 .\" Revision 2.3 91/02/14 14:12:32 mrt
37 .\" Changed to new Mach copyright
38 .\" [91/02/12 18:12:53 mrt]
39 .\"
40 .\" Revision 2.2 90/08/07 18:39:29 rpd
41 .\" Created.
42 .\"
43 .TH memory_object_create 2 12/19/89
44 .CM 4
45 .SH NAME
46 .nf
47 memory_object_create \- accept ownership of paging object
48 .SH SYNOPSIS
49 .nf
50 .ft B
51 #include <mach.h>
52
53 .nf
54 .ft B
55 kern_return_t memory_object_create(old_memory_object,new_memory_object,
56 new_object_size, new_control,
57 new_name, new_page_size)
58 mach_port_t old_memory_object;
59 memory_object_t
60 mach_port_t new_memory_object;
61 vm_size_t new_object_size;
62 mach_port_t
63 new_control;
64 mach_port_t
65 new_name;
66 vm_size_t new_page_size;
67
68
69 .fi
70 .ft P
71 .SH DESCRIPTION
72 .B memory_object_create
73 is a request that the given memory manager accept
74 responsibility for the given memory object created by the
75 kernel.
76 This call will only be made to the system
77 .B default memory manager
78 .
79 The memory object in question initially consists of
80 zero-filled memory; only memory pages that are actually written
81 will ever be provided to the memory manager. When processing
82 .B memory_object_data_request
83 calls, the default memory manager must
84 use
85 .B memory_object_data_unavailable
86 for any pages that have not
87 previously been written.
88
89 No reply is expected after this call. Since this call is directed to
90 the default memory manager, the kernel assumes that it will be ready
91 to handle data requests to this object and does not need the confirmation
92 of a
93 .B memory_object_set_attributes
94 call.
95
96 .SH ARGUMENTS
97 .TP 15
98 .B
99 .B old_memory_object
100 A memory object provided by the default memory
101 manager on which the kernel can make
102 .B memory_object_create
103 calls.
104 .TP 15
105 .B
106 .B new_memory_object
107 A new memory object created by the kernel; see
108 synopsis for further description. Note that all port rights (including
109 receive rights) are included for the new memory object.
110 .TP 15
111 .B
112 .B new_object_size
113 Maximum size of the new object.
114 .TP 15
115 .B
116 .B new_control
117 A port, created by the kernel,
118 on which a memory manager may issue cache management requests for
119 the new object.
120 .TP 15
121 .B
122 .B new_name
123 A port used by the kernel to refer to the new
124 memory object data in response to
125 .B vm_region
126 calls.
127 .TP 15
128 .B
129 .B new_page_size
130 The page size to be used by this kernel.
131 All data sizes in calls involving this kernel must be an integral multiple
132 of the page size. [Note that different kernels, indicated by different
133 .B memory_control
134 s may have different page sizes.]
135
136 .SH DIAGNOSTICS
137 .TP 25
138 .B KERN_SUCCESS
139 Since this routine is called by the kernel, which does not
140 wait for a reply message, this value is ignored.
141
142 .SH SEE ALSO
143 .B memory_object_data_initialize
144
Cache object: bb6c84b37363a27f2f5a33b9a0e2de91
|