home *** CD-ROM | disk | FTP | other *** search
/ SGI Hot Mix 17 / Hot Mix 17.iso / HM17_SGI / research / help / copyrights / gmalloc.txt next >
Encoding:
Text File  |  1997-07-08  |  2.7 KB  |  61 lines

  1.    The malloc (memory allocator) provided by SGI for IRIX does not
  2. interact well with long lived IDL sessions involving large data.
  3. Rather than leveling off at a highwater mark, memory fragmentation
  4. causes IDL memory use to grow under such situations until the system
  5. runs out.
  6.  
  7. To provide a better performing solution, RSI links IRIX IDL using GNU malloc
  8. from the Free Software Foundation (FSF). This use is governed by the
  9. terms of the GNU LIBRARY GENERAL PUBLIC LICENSE, found in the file
  10. gnu_library_license.txt in this directory.
  11.  
  12.         - When an IDL linked with GNU malloc starts up and prints the
  13.           announcement message containing the Research Systems Copyright
  14.           notice, it also prints a message asserting the FSF copyright
  15.           on GNU malloc and directs you to the file copyrights.txt in
  16.       this directory for more information.
  17.  
  18.     - We obtained GNU malloc from the primary GNU FTP repository
  19.       
  20.         ftp://prep.ai.mit.edu:/pub/gnu/malloc.tar.gz
  21.  
  22.       We made only the minimal changes necessary to compile it under
  23.           IRIX using the standard SGI C compiler. The resulting source
  24.           code is supplied in the compressed tar file malloc.tar.gz found
  25.           in the bin/bin.sgi subdirectory of this IDL distribution.
  26.       All changes are described below. Note that this file is compressed
  27.       with the GNU gzip program, also available from prep.ai.mit.edu.
  28.  
  29.         - Research Systems makes no claims of ownership to any changes
  30.           made to GNU malloc. You may redistribute them freely and do
  31.       whatever you want with them.
  32.  
  33.         - The Makefile supplied in the bin/bin.sgi subdirectory of this
  34.       distribution contains instructions on how to relink IDL, using
  35.       either the standard system malloc or GNU malloc.
  36.  
  37. RSI Changes:
  38. ------------
  39.  
  40.    Only 2 files were altered to make GNU malloc work with IDL. The originals
  41.    of both files are also provided, with a ".orig" file extension, so you
  42.    can use the Unix diff(1) command to view the changes.
  43.  
  44.         Makefile:
  45.         - Uncommented the -DUSG definition for CPPFLAGS, since IRIX
  46.           is System V based.
  47.  
  48.             - Added a rule to create a file called rsi.c containing a single
  49.               function called IDL_using_gnu_malloc() that IDL uses to
  50.               determine if a startup announcement for GNU malloc is needed.
  51.  
  52.         - Added rules to build 2 sharable libraries, libidl_gmalloc.so
  53.           for using IDL with GNU malloc, and libidl_no_gmalloc.so
  54.           for using it with the system malloc.
  55.  
  56.         ralloc.c:
  57.             This module makes heavy use of pointer arithmetic on (void *)
  58.             pointers. The standard SGI C compiler does not allow this
  59.             construct. We introduced a macro named VOID_PTR_ARITH that
  60.             uses a cast to work around this.
  61.