Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- CA-Clipper 5.2 . Release Notes - <b>5 object memory (svos)</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
 5   Object Memory (SVOS)
------------------------------------------------------------------------------------------

     An object memory is a special type of memory manager designed to
     manage complex data values such as character strings and arrays.

     The Clipper 5.0 object memory is called the Segmented Virtual Object
     Store (SVOS).  SVOS uses virtual memory to store data values, including
     character strings, arrays, and dynamically created (macro-compiled)
     code blocks.

     SVOS provides two important functions beyond the basic capabilities
     offered by the VMM:

     .  Memory compaction:  Stored values are automatically compacted
        on an ongoing basis.  This eliminates fragmentation of the virtual
        memory and reduces swapping.

     .  Garbage collection:  Some Clipper 5.0 values (e.g., arrays)
        may be referred to by several program variables (or array elements)
        at the same time.  The garbage collection algorithms automatically
        reclaim space occupied by unreachable values (values which are
        no longer accessible through any variable or array).

     To minimize delays associated with memory compaction and garbage
     collection, the SVOS algorithms are dynamically adjusted based on the
     type, size, and persistence of data being stored, the amount of memory
     available (real and EMM), and the overall performance of the system.
     The algorithms attempt to manage memory in such a way that the VMM can
     swap out infrequently used data, freeing up real address space for
     time-critical operations.

     The dynamic nature of the SVOS algorithms makes it difficult to
     precisely state its maximum capacity.  The worst case capacity is in
     excess of 1MB.  The theoretical maximum is in excess of 16MB.

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson