]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/man/memory_object_terminate.html
xnu-792.6.76.tar.gz
[apple/xnu.git] / osfmk / man / memory_object_terminate.html
index a635d333170a0486332eefca72d74e0816107034..24a19ab9f3f6a7c739438a4397aaa4babf71435a 100755 (executable)
@@ -1 +1,67 @@
-<h2>memory_object_terminate</h2>\r<hr>\r<p>\r<strong>Server Interface</strong> - Relinquish access to a memory object.\r<h3>SYNOPSIS</h3>\r<pre>\r<strong>kern_return_t   memory_object_terminate</strong>\r                <strong>(memory_object_t</strong>                  <var>memory_object</var>,\r                 <strong>memory_object_control_t</strong>         <var>memory_control</var><strong>);</strong>\r\r\r\r<strong>kern_return_t   seqnos_memory_object_terminate</strong>\r                <strong>(memory_object_t</strong>                  <var>memory_object</var>,\r                 <strong>mach_port_seqno_t</strong>                        <var>seqno</var>,\r                 <strong>memory_object_control_t</strong>         <var>memory_control</var><strong>);</strong>\r</pre>\r<h3>PARAMETERS</h3>\r<dl>\r<p>\r<dt> <var>memory_object</var> \r<dd>\r[in abstract-memory-object (receive) right]\rThe abstract memory\robject port that represents the memory object data.\r<p>\r<dt> <var>seqno</var> \r<dd>\r[in scalar]\rThe sequence number of this message relative to the abstract \rmemory object port.\r<p>\r<dt> <var>memory_control</var> \r<dd>\r[in memory-cache-control receive right]\rThe memory cache control \rport to be used for a response by the memory manager.  If the memory \robject has been supplied to more than one kernel, this parameter\ridentifies the kernel that is making the call.\r</dl>\r<h3>DESCRIPTION</h3>\r<p>\rA <strong>memory_object_terminate</strong> function is called as the\rresult of a kernel\rmessage notifying a memory manager that no mappings of the specified memory\robject remain.  The kernel makes this call to allow the memory\rmanager to clean \rup data structures associated with the deallocated mappings.\rThe call provides \rreceive rights to the memory cache control port so that the memory manager \rcan retrieve any messages it sent into this port before knowing the memory\robject was being terminated and then destroy the port.  The kernel also\rrelinquishes its rights for all memory object ports.\r<p>\rThe kernel terminates a memory object only after all address space mappings of \rthe object have been deallocated, or upon explicit request by the memory\rmanager.\r<h3>RETURN VALUES</h3>\r<p>\rOnly generic errors apply.\r<h3>RELATED INFORMATION</h3>\r<p>\rFunctions:\r<a href="memory_object_destroy.html"><strong>memory_object_destroy</strong></a>,\r<a href="mach_port_deallocate.html"><strong>mach_port_deallocate</strong></a>,\r<a href="memory_object_server.html"><strong>memory_object_server</strong></a>,\r<a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>.\r
\ No newline at end of file
+<h2>memory_object_terminate</h2>
+<hr>
+<p>
+<strong>Server Interface</strong> - Relinquish access to a memory object.
+<h3>SYNOPSIS</h3>
+<pre>
+<strong>kern_return_t   memory_object_terminate</strong>
+                <strong>(memory_object_t</strong>                  <var>memory_object</var>,
+                 <strong>memory_object_control_t</strong>         <var>memory_control</var><strong>);</strong>
+
+
+
+<strong>kern_return_t   seqnos_memory_object_terminate</strong>
+                <strong>(memory_object_t</strong>                  <var>memory_object</var>,
+                 <strong>mach_port_seqno_t</strong>                        <var>seqno</var>,
+                 <strong>memory_object_control_t</strong>         <var>memory_control</var><strong>);</strong>
+</pre>
+<h3>PARAMETERS</h3>
+<dl>
+<p>
+<dt> <var>memory_object</var> 
+<dd>
+[in abstract-memory-object (receive) right]
+The abstract memory
+object port that represents the memory object data.
+<p>
+<dt> <var>seqno</var> 
+<dd>
+[in scalar]
+The sequence number of this message relative to the abstract 
+memory object port.
+<p>
+<dt> <var>memory_control</var> 
+<dd>
+[in memory-cache-control receive right]
+The memory cache control 
+port to be used for a response by the memory manager.  If the memory 
+object has been supplied to more than one kernel, this parameter
+identifies the kernel that is making the call.
+</dl>
+<h3>DESCRIPTION</h3>
+<p>
+A <strong>memory_object_terminate</strong> function is called as the
+result of a kernel
+message notifying a memory manager that no mappings of the specified memory
+object remain.  The kernel makes this call to allow the memory
+manager to clean 
+up data structures associated with the deallocated mappings.
+The call provides 
+receive rights to the memory cache control port so that the memory manager 
+can retrieve any messages it sent into this port before knowing the memory
+object was being terminated and then destroy the port.  The kernel also
+relinquishes its rights for all memory object ports.
+<p>
+The kernel terminates a memory object only after all address space mappings of 
+the object have been deallocated, or upon explicit request by the memory
+manager.
+<h3>RETURN VALUES</h3>
+<p>
+Only generic errors apply.
+<h3>RELATED INFORMATION</h3>
+<p>
+Functions:
+<a href="memory_object_destroy.html"><strong>memory_object_destroy</strong></a>,
+<a href="mach_port_deallocate.html"><strong>mach_port_deallocate</strong></a>,
+<a href="memory_object_server.html"><strong>memory_object_server</strong></a>,
+<a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>.