1 .\"
2 .\" Mach Operating System
3 .\" Copyright (c) 1991,1990 Carnegie Mellon University
4 .\" All Rights Reserved.
5 .\"
6 .\" Permission to use, copy, modify and distribute this software and its
7 .\" documentation is hereby granted, provided that both the copyright
8 .\" notice and this permission notice appear in all copies of the
9 .\" software, derivative works or modified versions, and any portions
10 .\" thereof, and that both notices appear in supporting documentation.
11 .\"
12 .\" CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
13 .\" CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14 .\" ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15 .\"
16 .\" Carnegie Mellon requests users of this software to return to
17 .\"
18 .\" Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
19 .\" School of Computer Science
20 .\" Carnegie Mellon University
21 .\" Pittsburgh PA 15213-3890
22 .\"
23 .\" any improvements or extensions that they make and grant Carnegie Mellon
24 .\" the rights to redistribute these changes.
25 .\"
26 .\"
27 .\" HISTORY
28 .\" $Log: memory_object_data_request.man,v $
29 .\" Revision 2.5 93/05/10 19:33:36 rvb
30 .\" updated
31 .\" [93/04/21 16:08:21 lli]
32 .\"
33 .\" Revision 2.4 91/05/14 17:09:11 mrt
34 .\" Correcting copyright
35 .\"
36 .\" Revision 2.3 91/02/14 14:12:50 mrt
37 .\" Changed to new Mach copyright
38 .\" [91/02/12 18:13:16 mrt]
39 .\"
40 .\" Revision 2.2 90/08/07 18:40:06 rpd
41 .\" Created.
42 .\"
43 .TH memory_object_data_request 2 12/22/89
44 .CM 4
45 .SH NAME
46 .nf
47 memory_object_data_request \- request for data from paging object
48 .SH SYNOPSIS
49 .nf
50 .ft B
51 #include <mach.h>
52
53 .nf
54 .ft B
55 kern_return_t memory_object_data_request(memory_object,memory_control,
56 offset, length, desired_access)
57 mach_port_t memory_object;
58 mach_port_t
59 memory_control;
60 vm_offset_t offset;
61 vm_size_t length;
62 vm_prot_t desired_access;
63
64
65 .fi
66 .ft P
67 .SH DESCRIPTION
68
69 .B memory_object_data_request
70 is a request for data from the specified
71 memory object, for at least the access specified. The memory manager is
72 expected to return at least the specified data, with as much
73 access as it can allow, using
74 .B memory_object_data_provided
75 .
76 If the memory manager is unable to provide the data (for example, because
77 of a hardware error), it may use the
78 .B memory_object_data_error
79 call.
80 .B memory_object_data_unavailable
81 call may be used to tell the kernel
82 to supply zero-filled memory for this region.
83
84 .SH ARGUMENTS
85 .TP 15
86 .B
87 .B memory_object
88 The port that represents the memory object data, as
89 supplied to the kernel in a
90 .B vm_map
91 call.
92 .TP 15
93 .B
94 .B memory_control
95 The request port to which a response is
96 requested. [In the event that a memory object has been supplied
97 to more than one the kernel that has made the request.]
98 .TP 15
99 .B
100 .B offset
101 The offset within a memory object to which this call refers.
102 This will be page aligned.
103 .TP 15
104 .B
105 .B length
106 The number of bytes of data, starting at
107 .B offset
108 , to which this
109 call refers. This will be an integral number of memory object pages.
110 .TP 15
111 .B
112 .B desired_access
113 A protection value describing the memory access modes which
114 must be permitted on the specified cached data. One or more of:
115 .B VM_PROT_READ, VM_PROT_WRITE
116 or
117 .B VM_PROT_EXECUTE
118 .
119
120 .SH DIAGNOSTICS
121 .TP 25
122 .B KERN_SUCCESS
123 Since this routine is called by the kernel, which does not
124 wait for a reply message, this value is ignored.
125
126
127 .SH SEE ALSO
128 .B memory_object_data_provided, memory_object_data_error, memory_object_data_unavailable
129
Cache object: a2be8867a98e7aadeea7b96a5cd355f6
|