GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  RDSALLOC (3)

[Include document man1/alc_contents.mac]

   rdsalloc    rdsalloc

NAME

rdsalloc - memory allocation function

[Include document man1/alc_origin.1]

CONTENTS

Synopsys
Parameter
Description
Return Value
Errors
Example
See Also

SYNOPSYS






 #include "rdsnnn.h"
   char *rdsalloc( Size, Heap )
     unsigned int Size;
     char         Heap;


PARAMETER

Size memory size to allocate
Heap takes the values RDS_ALLOC_BLOCK or RDS_ALLOC_HEAP (two defined constants).

DESCRIPTION

The rdsalloc function can do memory allocation by block or by heap. If the user wants to allocate by block, he sets the parameter Heap to the constant RDS_ALLOC_BLOCK else, he wants to allocate by heap so the parameter Heap is set to RDS_ALLOC_HEAP. If rdsalloc is used with the constant RDS_ALLOC_BLOCK then rdsalloc is used as standard language C function malloc(). If the user allocates by heap then : At the first allocation of the block of size the parameter 'Size', a heap of size multiple of the block Size is allocated. When another allocation of the same size is done then if the the heap isn’t full then a pointer (of size='Size') is returned else a new heap is allocated and a pointer returned. Like this, the user does really one allocation (he has many pointers) to minimize fragmentation. Heap allocation is usefull if the user has to allocate many pointers of the same size (ex: rdsrec_list structure).
Note: Memory place allocated is set to NULL.
 

RETURN VALUE

pointer to the allocated memory is returned.

ERRORS

"Rds202: rdsalloc error, can’t continue !"
it’s impossible to allocate the memory size desired.

EXAMPLE






      #include "rdsnnn.h"
   main()
    {
       rdsrec_list *Rectangle;
       rdsfig_list *Figure;
     Rectangle =
          (rdsrec_list *) rdsalloc (sizeof(rdsrec_list *),RDS_ALLOC_HEAP);
     Figure    =
          (rdsfig_list *) rdsalloc (sizeof(rdsfig_list *),RDS_ALLOC_BLOCK);
    }


SEE ALSO

librds, rdsfree

[Include document man1/alc_bug_report.1]

Search for    or go to Top of page |  Section 3 |  Main Index


ASIM/LIP6 RDSALLOC (3) October 1, 1997

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.