]> git.saurik.com Git - apple/xnu.git/blame - osfmk/man/DP_object_create.html
xnu-2422.1.72.tar.gz
[apple/xnu.git] / osfmk / man / DP_object_create.html
CommitLineData
13fec989
A
1<h2>default_pager_object_create</h2>
2<hr>
3<p>
4<strong>Server Interface</strong> - Initialize a non-persistent memory object suitable for sharing between tasks.
5<h3>SYNOPSIS</h3>
6<pre>
7<strong>kern_return_t default_pager_object_create</strong>
8 <strong>(mach_port_t</strong> <var>pager</var>,
9 <strong>memory_object_t</strong> <var>*memory_object</var>,
10 <strong>vm_size_t</strong> <var>object_size</var><strong>);</strong>
11
12
13<strong>kern_return_t seqnos_default_pager_object_create</strong>
14 <strong>(mach_port_t</strong> <var>pager</var>,
15 <strong>mach_port_seqno_t</strong> <var>seqno</var>,
16 <strong>memory_object_t</strong> <var>*memory_object</var>,
17 <strong>vm_size_t</strong> <var>object_size</var><strong>);</strong>
18</pre>
19<h3>PARAMETERS</h3>
20<dl>
21<p>
22<dt> <var>pager</var>
23<dd>
24[in default-pager (receive) right]
25The default memory manager service
26port.
27<p>
28<dt> <var>seqno</var>
29<dd>
30[in scalar]
31The sequence number of this message relative to the <var>pager</var>
32port.
33<p>
34<dt> <var>memory_object</var>
35<dd>
36[out memory-object send right]
37A memory object port (with full access) for the memory object.
38<p>
39<dt> <var>object_size</var>
40<dd>
41[in scalar]
42The maximum size for the memory object.
43</dl>
44<h3>DESCRIPTION</h3>
45<p>
46A <strong>default_pager_object_create</strong> function is called as
47the result of a message
48requesting that the default memory manager create and return a (shared) memory
49object which is suitable for use with <strong>vm_map</strong>. This memory object has
50the same properties as does a memory object provided by
51<strong>vm_allocate</strong>: its initial
52contents are zero and the backing contents are temporary in that they do not
53persist after the memory object is destroyed. The memory object
54is suitable for use
55as non-permanent shared memory. The kernel does not make this call itself
56(which is why it can be a synchronous call); this request is only issued by
57(privileged) tasks holding the default memory manager port.
58This call should be
59contrasted with the kernel's <strong>memory_object_create</strong> message, in which
60the memory cache object is already created and the identity of the abstract
61memory object is made known to the default manager.
62<h3>RETURN VALUES</h3>
63<p>
64Only generic errors apply.
65<h3>RELATED INFORMATION</h3>
66<p>
67Functions:
68<a href="vm_map.html"><strong>vm_map</strong></a>,
69<a href="HD_memory_manager.html"><strong>host_default_memory_manager</strong></a>,
70<a href="memory_object_create.html"><strong>memory_object_create</strong></a>,
71<a href="MO_default_server.html"><strong>memory_object_default_server</strong></a>,
72<a href="SMO_default_server.html"><strong>seqnos_memory_object_default_server</strong></a>.