Annotation of Gnu-Mach/vm/vm_kern.h, revision 1.1.1.3

1.1.1.2   root        1: /*
1.1       root        2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989,1988,1987 Carnegie Mellon University
                      4:  * All Rights Reserved.
1.1.1.2   root        5:  *
1.1       root        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.
1.1.1.2   root       11:  *
1.1       root       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.
1.1.1.2   root       15:  *
1.1       root       16:  * Carnegie Mellon requests users of this software to return to
1.1.1.2   root       17:  *
1.1       root       18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
1.1.1.2   root       22:  *
1.1       root       23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: /*
                     27:  *     File:   vm/vm_kern.h
                     28:  *     Author: Avadis Tevanian, Jr., Michael Wayne Young
                     29:  *     Date:   1985
                     30:  *
                     31:  *     Kernel memory management definitions.
                     32:  */
                     33: 
                     34: #ifndef        _VM_VM_KERN_H_
                     35: #define _VM_VM_KERN_H_
                     36: 
                     37: #include <mach/kern_return.h>
                     38: #include <vm/vm_map.h>
                     39: 
1.1.1.3 ! root       40: extern kern_return_t    projected_buffer_allocate(vm_map_t, vm_size_t, int,
        !            41:                                                  vm_offset_t *, vm_offset_t *,
        !            42:                                                  vm_prot_t, vm_inherit_t);
        !            43: extern kern_return_t    projected_buffer_deallocate(vm_map_t, vm_offset_t,
        !            44:                                                    vm_offset_t);
        !            45: extern kern_return_t    projected_buffer_map(vm_map_t, vm_offset_t, vm_size_t,
        !            46:                                             vm_offset_t *, vm_prot_t,
        !            47:                                             vm_inherit_t);
        !            48: extern kern_return_t    projected_buffer_collect(vm_map_t);
        !            49: 
        !            50: extern void            kmem_init(vm_offset_t, vm_offset_t);
        !            51: 
        !            52: extern kern_return_t   kmem_alloc(vm_map_t, vm_offset_t *, vm_size_t);
        !            53: extern kern_return_t   kmem_alloc_pageable(vm_map_t, vm_offset_t *,
        !            54:                                            vm_size_t);
        !            55: extern kern_return_t   kmem_alloc_wired(vm_map_t, vm_offset_t *, vm_size_t);
        !            56: extern kern_return_t   kmem_alloc_aligned(vm_map_t, vm_offset_t *, vm_size_t);
        !            57: extern kern_return_t   kmem_realloc(vm_map_t, vm_offset_t, vm_size_t,
        !            58:                                     vm_offset_t *, vm_size_t);
        !            59: extern void            kmem_free(vm_map_t, vm_offset_t, vm_size_t);
        !            60: 
        !            61: extern void            kmem_submap(vm_map_t, vm_map_t, vm_offset_t *,
        !            62:                                    vm_offset_t *, vm_size_t, boolean_t);
        !            63: 
        !            64: extern kern_return_t   kmem_io_map_copyout(vm_map_t, vm_offset_t *,
        !            65:                                            vm_offset_t *, vm_size_t *,
        !            66:                                            vm_map_copy_t, vm_size_t);
        !            67: extern void            kmem_io_map_deallocate(vm_map_t, vm_offset_t,
        !            68:                                               vm_size_t);
1.1       root       69: 
1.1.1.3 ! root       70: extern int
        !            71: copyinmap (vm_map_t map, char *fromaddr, char *toaddr, int length);
1.1       root       72: 
1.1.1.3 ! root       73: extern int
        !            74: copyoutmap (vm_map_t map, char *fromaddr, char *toaddr, int length);
1.1       root       75: 
                     76: extern vm_map_t        kernel_map;
                     77: extern vm_map_t        kernel_pageable_map;
                     78: extern vm_map_t ipc_kernel_map;
                     79: 
1.1.1.3 ! root       80: extern boolean_t projected_buffer_in_range(
        !            81:         vm_map_t map,
        !            82:         vm_offset_t start,
        !            83:                vm_offset_t end);
        !            84: 
1.1.1.2   root       85: #endif /* _VM_VM_KERN_H_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.