]> git.saurik.com Git - apple/xnu.git/blob - osfmk/man/memory_object_perf_info.html
xnu-7195.60.75.tar.gz
[apple/xnu.git] / osfmk / man / memory_object_perf_info.html
1 <h2>memory_object_perf_info</h2>
2 <hr>
3 <p>
4 <strong>Structure</strong> - Specifies a memory object's attributes with respect to performance.
5 <h3>SYNOPSIS</h3>
6 <pre>
7 <strong>struct memory_object_perf_info</strong>
8 <strong>{</strong>
9 <strong>vm_offset_t</strong> <var>cluster_size</var><strong>;</strong>
10 <strong>boolean_t</strong> <var>may_cache_object</var><strong>;</strong>
11 <strong>};</strong>
12
13 <strong>typedef struct memory_object_perf_info* memory_object_perf_info_t;</strong>
14 </pre>
15 <h3>FIELDS</h3>
16 <dl>
17 <dt> <var>cluster_size</var>
18 <dd>
19 Preferred cluster size (in bytes) for the memory object. This helps to
20 determine how many pages are transferred in individual data request
21 and return messages.
22 <p>
23 <dt> <var>may_cache_object</var>
24 <dd>
25 Cache indicator. If true, the kernel can cache data associated with the
26 memory object (keep the memory object active) even if no virtual
27 memory references to it remain.
28 </dl>
29 <h3>DESCRIPTION</h3>
30 <p>
31 The <strong>memory_object_perf_info</strong> structure
32 defines a memory object's character with respect to performance.
33 <h3>NOTES</h3>
34 <p>
35 Sharing cached data among all the clients of a memory object can have a major
36 impact on performance, especially if it can be extended across successive, as
37 well as concurrent, uses. For example, the memory objects that represent
38 program images can be used regularly by different programs.
39 By retaining the data
40 for these memory objects in cache, the number of secondary storage accesses
41 can be reduced significantly.
42 <h3>RELATED INFORMATION</h3>
43 <p>
44 Functions:
45 <a href="MO_get_attributes.html"><strong>memory_object_get_attributes</strong></a>,
46 <a href="MO_change_attributes.html"><strong>memory_object_change_attributes</strong></a>,
47 <a href="vm_region.html"><strong>vm_region</strong></a>,
48 <a href="memory_object_synchronize.html"><strong>memory_object_synchronize</strong></a>,
49 <a href="VSD_memory_manager.html"><strong>vm_set_default_memory_manager</strong></a>,
50 <a href="vm_msync.html"><strong>vm_msync</strong></a>.
51 <p>
52 Structures:
53 <a href="memory_object_attr_info.html"><strong>memory_object_attr_info</strong></a>.