]> git.saurik.com Git - apple/xnu.git/blob - osfmk/man/memory_object_perf_info.html
xnu-344.tar.gz
[apple/xnu.git] / osfmk / man / memory_object_perf_info.html
1 <h2>memory_object_perf_info</h2> <hr> <p> <strong>Structure</strong> - Specifies a memory object's attributes with respect to performance. <h3>SYNOPSIS</h3> <pre> <strong>struct memory_object_perf_info</strong> <strong>{</strong> <strong>vm_offset_t</strong> <var>cluster_size</var><strong>;</strong> <strong>boolean_t</strong> <var>may_cache_object</var><strong>;</strong> <strong>};</strong> <strong>typedef struct memory_object_perf_info* memory_object_perf_info_t;</strong> </pre> <h3>FIELDS</h3> <dl> <dt> <var>cluster_size</var> <dd> Preferred cluster size (in bytes) for the memory object. This helps to determine how many pages are transferred in individual data request and return messages. <p> <dt> <var>may_cache_object</var> <dd> Cache indicator. If true, the kernel can cache data associated with the memory object (keep the memory object active) even if no virtual memory references to it remain. </dl> <h3>DESCRIPTION</h3> <p> The <strong>memory_object_perf_info</strong> structure defines a memory object's character with respect to performance. <h3>NOTES</h3> <p> Sharing cached data among all the clients of a memory object can have a major impact on performance, especially if it can be extended across successive, as well as concurrent, uses. For example, the memory objects that represent program images can be used regularly by different programs. By retaining the data for these memory objects in cache, the number of secondary storage accesses can be reduced significantly. <h3>RELATED INFORMATION</h3> <p> Functions: <a href="MO_get_attributes.html"><strong>memory_object_get_attributes</strong></a>, <a href="MO_change_attributes.html"><strong>memory_object_change_attributes</strong></a>, <a href="vm_region.html"><strong>vm_region</strong></a>, <a href="memory_object_synchronize.html"><strong>memory_object_synchronize</strong></a>, <a href="VSD_memory_manager.html"><strong>vm_set_default_memory_manager</strong></a>, <a href="vm_msync.html"><strong>vm_msync</strong></a>. <p> Structures: <a href="memory_object_attr_info.html"><strong>memory_object_attr_info</strong></a>.