Dynamic Memory Management
The XBinder run-time uses several different memory management schemes in order to provide flexibility in handling different types of application's memory requirements. The following are the schemes available in this release:
The standard memory allocation algorithm simply maps XBinder run-time function calls directly to the C standard run-time memory functions malloc, free, and realloc. (Note: in some environments such as some embedded RTOS's the realloc function may not be available. The built-in run-time provides a custom implementation of this function using malloc and free for these cases). The advantages of standard management are simplicity and space-optimization. The primary disadvantage is performance - frequent calls to malloc and free can be detrimental to performance.
The nibble-allocation algorithm is designed to improve performance in the case where frequent requests for small amounts of memory are made. This is typical of many data-binding applications due to unconstrained types being declared within the schema. The way this algorithm works is large blocks of memory are allocated up front and then split up to provide memory for smaller allocation requests. This reduces the number of calls required to the C malloc and free functions.
Copyright © Objective Systems 2002-2008 This document may be distributed in any form, electronic or otherwise, provided that it is distributed in its entirety and that the copyright and this notice are included. |
Objective Systems, Inc.55 Dowlin Forge RoadExton, Pennsylvania 19341 http://www.obj-sys.com Phone: (484) 875-9841 Toll-free: (877) 307-6855 (US only) Fax: (484) 875-9830 info@obj-sys.com |