MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Kernel Functions for Drivers                       rmallocmap(9F)



NAME
     rmallocmap, rmallocmapwait, rmfreemap - allocate  and  free
     resource maps

SYNOPSIS
     #include 
     #include 



     struct map *rmallocmap(sizet mapsize);


     struct map *rmallocmapwait(sizet mapsize);


     void rmfreemap(struct map *mp);


INTERFACE LEVEL
     Architecture independent level 1 (DI/DKI).

PARAMETERS
     mapsize     Number of entries for the map.


     mp          A pointer to the map  structure  to  be  deallo-
                 cated.


DESCRIPTION
     rmallocmap() dynamically allocates a resource map structure.
     The  argument mapsize defines the total number of entries in
     the map.  In  particular, it is the total number of  alloca-
     tions that can be outstanding at any one time.


     rmallocmap() initializes the map but does not  associate  it
     with  the  actual  resource.  In order to associate  the map
     with the actual resource, a call to rmfree(9F)  is  used  to
     make the entirety of the actual resource available for allo-
     cation, starting from the first  index  into  the  resource.
     Typically, the call to rmallocmap() is followed by a call to
     rmfree(9F), passing the address of  the  map  returned  from
     rmallocmap(),  the total size of the resource, and the first
     index into the actual resource.


     The resource map allocated by rmallocmap() can  be  used  to
     describe  an arbitrary resource in whatever allocation units
     are appropriate, such as blocks, pages, or data  structures.
     This   resource  can  then  be  managed  by  the  system  by



SunOS 5.11          Last change: 20 Nov 1996                    1






Kernel Functions for Drivers                       rmallocmap(9F)



     subsequent  calls  to   rmalloc(9F),  rmallocwait(9F),  and
     rmfree(9F).


     rmallocmapwait() is  similar  to   rmallocmap(),  with  the
     exception that it will wait for space to become available if
     necessary.


     rmfreemap() deallocates a resource map structure  previously
     allocated by rmallocmap() or rmallocmapwait(). The argument
     mp is a pointer to the map structure to be deallocated.

RETURN VALUES
     Upon     successful     completion,     rmallocmap()     and
     rmallocmapwait()  return  a  pointer to the newly allocated
     map structure. Upon failure, rmallocmap()  returns  a   NUL
     pointer.

CONTEXT
     rmallocmap() and rmfreemap() can be called from  user,  ker-
     nel, or interrupt context.


     rmallocmapwait() can only be called  from  user  or  kernel
     context.

SEE ALSO
     rmalloc(9F), rmallocwait(9F), rmfree(9F)


     Writing Device Drivers























SunOS 5.11          Last change: 20 Nov 1996                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™