Memory Considerations For The Runtime Environment - Keithley 2601 Reference Manual

System sourcemeter 2600 series (smu)
Hide thumbs Also See for 2601:
Table of Contents

Advertisement

Section 2: TSP Programming
The node that receives the command becomes the Master and can control all of the other nodes,
which become its Slaves. In a PC-based system, the Master/Slave relationship between nodes
can only be dissolved by performing an abort.

Memory considerations for the runtime environment

The Series 2600 reserves 8MB of memory for dynamic run-time use. Of this memory, the firmware
requires up to approximately 5MB for normal system operation. That leaves approximately 3MB of
remaining memory that is available to the user. These numbers for memory are affected by the
number of scripts loaded into non-volatile memory. The given memory values represent the
memory available when the factory script as well as the user script non-volatile memory areas are
filled to capacity.
The run-time environment and user-created reading buffers must fit within the 3MB of memory
loosely reserved. It is possible for memory used for these purposes to be greater than 3MB. When
this occurs, there is a risk that memory allocation errors will be generated and commands will not
be executed as expected.
If memory allocation errors are encountered, the state of the instrument cannot be guaranteed.
After attempting to download any data from the instrument, it is recommended that power to the
instrument be cycled to return it to a known state. Cycling power will reset the run-time
environment and all user-created reading buffers. Any data not stored in the non-volatile reading
buffers will be lost.
The amount of memory used by the run-time environment can be checked using the gcinfo
function. The first value returned by gcinfo is the number of kilobytes of memory being used by
the run-time environment. This does not include the amount of memory used by reading buffers.
The amount of memory used by a reading buffer is approximately 15 bytes for each entry
requested. There is a slight amount of overhead for a reading buffer, but this can be ignored for
memory utilization calculations. For example, assume two reading buffers were created. One of
them was created to store up to 1,000 readings and the other 2,500. The memory reserved for the
reading buffers is calculated as follows:
(1000 x 15) + (2500 x 15) = 52,500 bytes or 52.5 kilobytes.
Note that the non-volatile reading buffers do not consume memory needed by the run-time
environment. Do not include them in your memory consumption calculations. Also, reading buffers
for remote nodes consume memory on the remote node, not the local node. You should be sure
the total reading buffer memory for any particular remote node does not exceed 3MB, but do not
include that amount from your local memory consumption calculations.
2-44
Series 2600 System SourceMeter® Instruments Reference Manual
Return to
Section Topics
2600S-901-01 Rev. C / January 2008

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

26362602261126122635

Table of Contents