/*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2004 Apple Computer, Inc. All rights reserved.
*
- * @APPLE_LICENSE_HEADER_START@
- *
- * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
* This file contains Original Code and/or Modifications of Original Code
* as defined in and that are subject to the Apple Public Source License
* Version 2.0 (the 'License'). You may not use this file except in
- * compliance with the License. Please obtain a copy of the License at
- * http://www.opensource.apple.com/apsl/ and read it before using this
- * file.
+ * compliance with the License. The rights granted to you under the License
+ * may not be used to create, or enable the creation or redistribution of,
+ * unlawful or unlicensed copies of an Apple operating system, or to
+ * circumvent, violate, or enable the circumvention or violation of, any
+ * terms of an Apple operating system software license agreement.
+ *
+ * Please obtain a copy of the License at
+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* Please see the License for the specific language governing rights and
* limitations under the License.
*
- * @APPLE_LICENSE_HEADER_END@
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
*/
/*
* @OSF_COPYRIGHT@
#endif /* KERNEL_SERVER */
memory_object 2200;
-#ifdef MACH_KERNEL
-#include <advisory_pageout.h>
-#endif /* MACH_KERNEL */
-
#include <mach/std_types.defs>
#include <mach/mach_types.defs>
routine memory_object_init(
memory_object : memory_object_t;
memory_control : memory_object_control_t;
- memory_object_page_size : vm_size_t);
+ memory_object_page_size : memory_object_cluster_size_t);
/*
routine memory_object_data_request(
memory_object : memory_object_t;
offset : memory_object_offset_t;
- length : vm_size_t;
- desired_access : vm_prot_t);
+ length : memory_object_cluster_size_t;
+ desired_access : vm_prot_t;
+ fault_info : memory_object_fault_info_t);
/*
* Return data to manager. This call is used in place of data_write
routine memory_object_data_return(
memory_object : memory_object_t;
offset : memory_object_offset_t;
- size : vm_size_t;
+ size : memory_object_cluster_size_t;
+ out resid_offset : memory_object_offset_t;
+ out io_error : int;
dirty : boolean_t;
- kernel_copy : boolean_t);
+ kernel_copy : boolean_t;
+ upl_flags : int);
/*
* Provide initial data contents for this region of
routine memory_object_data_initialize(
memory_object : memory_object_t;
offset : memory_object_offset_t;
- size : vm_size_t);
+ size : memory_object_cluster_size_t);
/*
* Request that the specified portion of this
routine memory_object_data_unlock(
memory_object : memory_object_t;
offset : memory_object_offset_t;
- size : vm_size_t;
+ size : memory_object_size_t;
desired_access : vm_prot_t);
routine memory_object_synchronize(
memory_object : memory_object_t;
offset : memory_object_offset_t;
- size : vm_size_t;
+ size : memory_object_size_t;
sync_flags : vm_sync_t );
/*
* [Response should be a release of the named reference when
* the pager deems that appropriate.]
*/
-routine memory_object_unmap(
+routine memory_object_map(
+ memory_object : memory_object_t;
+ prot : vm_prot_t);
+routine memory_object_last_unmap(
memory_object : memory_object_t);
+routine memory_object_data_reclaim(
+ memory_object : memory_object_t;
+ reclaim_backing_store : boolean_t);
+/* vim: set ft=c : */