home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 463.lha / mungwall_v36.39 / mungwall.doc < prev    next >
Text File  |  1990-12-30  |  3KB  |  81 lines

  1. 06-Nov-90 Mungwall 36.38 doc.
  2.  
  3. Mungwall munges memory and watches for illegal FreeMem's
  4. Mungwall is especially useful in combination with Enforcer.
  5.  
  6. Memory munging:
  7.  
  8.  - Except when Enforcer is running, location 0 is set to $C0DEDBAD, i.e.
  9.    programs referencing location zero will not f.e. find a null string.
  10.  
  11.  - On startup all free memory is munged with $ABADCAFE.
  12.  
  13.  - Except when MEMF_CLEAR is set, memory is pre-munged on allocation with
  14.    $DEADFOOD.
  15.  
  16.  - Memory is filled with $DEADBEEF before it is freed, encouraging
  17.    programs reusing free'ed memory to crash.
  18.  
  19. Memory watching:
  20.  
  21. Mungwall places a magic cookie before and after the memory allocation.
  22. Along with, if so desired, a wall of bytes on either side of the
  23. allocation to keep an eye on writting to memory just before or after
  24. the allocation. If the memory wall is trashed, mungwall complains and
  25. shows the damaged area. If memory is trashed so bad that both cookies
  26. are gone, Mungwall will not consider it a walled memory allocation and
  27. lets it go. Changes are you'll be corrupting the memory list and crash
  28. soon after that. If a mungwall hit occurs, memory will not be munged
  29. or free'ed, to give you a change to see what was written there.
  30.  
  31. Both null pointer and null size FreeMem()'s trigger mungwall.
  32. Mungwall gets upset when a memoryblock is free'ed with a size
  33. different from the one used for allocating the memoryblock, and will
  34. say so.
  35.  
  36. Unless a specific task(s) is watched and that task leaves before mungwall
  37. does, mungwall will always lose some memory.
  38.  
  39. MUNGWAL [UPDATE] [[TASK name][WAIT]] [SNOOP] [NOSNOOP] [NOWAIT] [INFO]
  40.         [PRESIZE n] [POSTSIZE n] [FILLCHAR 0xXX]
  41.  
  42. TASK name   - Watch only the task(s), or all but the task(s) specified
  43.               with 'name'. Multiple tasknames are indicated by placing
  44.               a '|' between the names. If the names are preceeded by an
  45.               exclamation mark, all tasks except the ones indicated are
  46.               tracked. ALL is a reserved name, indicating all tasks
  47.               should be tracked. Default ALL.
  48.  
  49. PRESIZE     - Size of wall before memory allocation in bytes. Minimum 8,
  50.               maximum 64. Default 32.
  51.  
  52. POSTSIZE    - Size of wall after memory allocation in bytes. Minimum 4,
  53.               maximum 64. The actual number of bytes after the allocation
  54.               may vary slightly, since it's upped to the nearest longword.
  55.               Default 32.
  56.  
  57. FILLCHAR n  - Character to build the memory wall with. Can be indicated
  58.               both hexadecimal and decimal. Default 0xBB.
  59.  
  60. SNOOP       - Produce snoop compatible output. No snoop output is given
  61.               for illegal FreeMem's. Default OFF. Layers AllocMem's and
  62.               FreeMem's are never snooped. SNOOP is particulary useful
  63.               in combination with TASK. Snoop output can be filtered
  64.               with 'snoopstrip' to find the origin of memory loss.
  65.  
  66. WAIT        - Halt task causing a hit and wait for Ctrl-C. Make sure you
  67.             - can issue a break to the task. WAIT can be used without
  68.               specifying a specific taskname to watch. Default OFF.
  69.  
  70. INFO        - Show configuration information.
  71.  
  72. UPDATE      - Indicates an already running mungwall task should be up-
  73.               dated with new parameters. Presize, postsize and fillchar
  74.               can never be updated.
  75.  
  76. The following are extra updating parameters.
  77.  
  78. NOSNOOP     - Turn snooping off.
  79.  
  80. NOWAIT      - No longer halt a task in case of an error.
  81.