]>
Commit | Line | Data |
---|---|---|
13fec989 A |
1 | <h2>memory_object_terminate</h2> |
2 | <hr> | |
3 | <p> | |
4 | <strong>Server Interface</strong> - Relinquish access to a memory object. | |
5 | <h3>SYNOPSIS</h3> | |
6 | <pre> | |
7 | <strong>kern_return_t memory_object_terminate</strong> | |
8 | <strong>(memory_object_t</strong> <var>memory_object</var>, | |
9 | <strong>memory_object_control_t</strong> <var>memory_control</var><strong>);</strong> | |
10 | ||
11 | ||
12 | ||
13 | <strong>kern_return_t seqnos_memory_object_terminate</strong> | |
14 | <strong>(memory_object_t</strong> <var>memory_object</var>, | |
15 | <strong>mach_port_seqno_t</strong> <var>seqno</var>, | |
16 | <strong>memory_object_control_t</strong> <var>memory_control</var><strong>);</strong> | |
17 | </pre> | |
18 | <h3>PARAMETERS</h3> | |
19 | <dl> | |
20 | <p> | |
21 | <dt> <var>memory_object</var> | |
22 | <dd> | |
23 | [in abstract-memory-object (receive) right] | |
24 | The abstract memory | |
25 | object port that represents the memory object data. | |
26 | <p> | |
27 | <dt> <var>seqno</var> | |
28 | <dd> | |
29 | [in scalar] | |
30 | The sequence number of this message relative to the abstract | |
31 | memory object port. | |
32 | <p> | |
33 | <dt> <var>memory_control</var> | |
34 | <dd> | |
35 | [in memory-cache-control receive right] | |
36 | The memory cache control | |
37 | port to be used for a response by the memory manager. If the memory | |
38 | object has been supplied to more than one kernel, this parameter | |
39 | identifies the kernel that is making the call. | |
40 | </dl> | |
41 | <h3>DESCRIPTION</h3> | |
42 | <p> | |
43 | A <strong>memory_object_terminate</strong> function is called as the | |
44 | result of a kernel | |
45 | message notifying a memory manager that no mappings of the specified memory | |
46 | object remain. The kernel makes this call to allow the memory | |
47 | manager to clean | |
48 | up data structures associated with the deallocated mappings. | |
49 | The call provides | |
50 | receive rights to the memory cache control port so that the memory manager | |
51 | can retrieve any messages it sent into this port before knowing the memory | |
52 | object was being terminated and then destroy the port. The kernel also | |
53 | relinquishes its rights for all memory object ports. | |
54 | <p> | |
55 | The kernel terminates a memory object only after all address space mappings of | |
56 | the object have been deallocated, or upon explicit request by the memory | |
57 | manager. | |
58 | <h3>RETURN VALUES</h3> | |
59 | <p> | |
60 | Only generic errors apply. | |
61 | <h3>RELATED INFORMATION</h3> | |
62 | <p> | |
63 | Functions: | |
64 | <a href="memory_object_destroy.html"><strong>memory_object_destroy</strong></a>, | |
65 | <a href="mach_port_deallocate.html"><strong>mach_port_deallocate</strong></a>, | |
66 | <a href="memory_object_server.html"><strong>memory_object_server</strong></a>, | |
67 | <a href="SMO_server.html"><strong>seqnos_memory_object_server</strong></a>. |