The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/man/memory_object_init.man

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    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_init.man,v $
   29 .\" Revision 2.5  93/05/10  19:33:55  rvb
   30 .\"     updated
   31 .\"     [93/04/21  16:08:43  lli]
   32 .\" 
   33 .\" Revision 2.4  91/05/14  17:09:57  mrt
   34 .\"     Correcting copyright
   35 .\" 
   36 .\" Revision 2.3  91/02/14  14:13:15  mrt
   37 .\"     Changed to new Mach copyright
   38 .\"     [91/02/12  18:13:58  mrt]
   39 .\" 
   40 .\" Revision 2.2  90/08/07  18:41:11  rpd
   41 .\"     Created.
   42 .\" 
   43 .TH memory_object_init 2 12/19/89
   44 .CM 4
   45 .SH NAME
   46 .nf
   47 memory_object_init  \-  initialize 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_init(memory_object, memory_control,
   56                             memory_object_name, memory_object_page_size)
   57         mach_port_t     memory_object;
   58         mach_port_t
   59                         memory_control;
   60         mach_port_t
   61                         memory_object_name;
   62         vm_size_t       memory_object_page_size;
   63 
   64 
   65 .fi
   66 .ft P
   67 .SH DESCRIPTION
   68 
   69 .B memory_object_init
   70 serves as a notification that a has been asked to map the given memory object into a task's virtual
   71 address space.  Additionally, it provides a port on which the memory manager
   72 may issue cache management requests, and a port which the kernel
   73 will use to name this data region.  In the event that different
   74 each will perform a 
   75 .B memory_object_init
   76 call with new request and name ports.
   77 The virtual page size that is used by the calling kernel is included
   78 for planning purposes.
   79 
   80 When the memory manager is prepared to accept requests for data for
   81 this object, it should call 
   82 .B memory_object_set_attribute
   83 with the
   84 attribute 
   85 .B ready
   86 set. Othewise the kernel will not process requests
   87 on this object.
   88 
   89 .SH ARGUMENTS
   90 .TP 15
   91 .B
   92 .B memory_object
   93 The port that represents the memory object data, as 
   94 supplied to the kernel in a 
   95 .B vm_map
   96 call.
   97 .TP 15
   98 .B
   99 .B memory_control
  100 The request port to which a response is 
  101 requested.  [In the event that a memory object has been supplied 
  102 to more than one the kernel that has made the request.]
  103 .TP 15
  104 .B
  105 .B memory_object_name
  106 A port used by the kernel to refer to the 
  107 memory object data in reponse to 
  108 .B vm_region
  109 calls.
  110 .TP 15
  111 .B
  112 .B memory_object_page_size
  113 The page size to be used by this kernel.
  114 All data sizes in calls involving this kernel must be an integral multiple
  115 of the page size.  [Note that different kernels, indicated by different
  116 .B memory_control
  117 s may have different page sizes.]
  118 
  119 .SH DIAGNOSTICS
  120 .TP 25
  121 .B KERN_SUCCESS
  122 Since this routine is called by the kernel, which does not
  123 wait for a reply message, this value is ignored.
  124 
  125 .SH SEE ALSO
  126 .B memory_object_set_attributes
  127 

Cache object: 60b53ba1869fc98993327645b6c15f84


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.