]> git.saurik.com Git - apple/xnu.git/blame - osfmk/man/memory_object_perf_info.html
xnu-792.6.76.tar.gz
[apple/xnu.git] / osfmk / man / memory_object_perf_info.html
CommitLineData
13fec989
A
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>
19Preferred cluster size (in bytes) for the memory object. This helps to
20determine how many pages are transferred in individual data request
21and return messages.
22<p>
23<dt> <var>may_cache_object</var>
24<dd>
25Cache indicator. If true, the kernel can cache data associated with the
26memory object (keep the memory object active) even if no virtual
27memory references to it remain.
28</dl>
29<h3>DESCRIPTION</h3>
30<p>
31The <strong>memory_object_perf_info</strong> structure
32defines a memory object's character with respect to performance.
33<h3>NOTES</h3>
34<p>
35Sharing cached data among all the clients of a memory object can have a major
36impact on performance, especially if it can be extended across successive, as
37well as concurrent, uses. For example, the memory objects that represent
38program images can be used regularly by different programs.
39By retaining the data
40for these memory objects in cache, the number of secondary storage accesses
41can be reduced significantly.
42<h3>RELATED INFORMATION</h3>
43<p>
44Functions:
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>
52Structures:
53<a href="memory_object_attr_info.html"><strong>memory_object_attr_info</strong></a>.