INtime SDK Help
NTXPROCATTRIBS/PROCESSATTRIBUTES structure

Specifies memory usage fields for the RT Application Loader.

Syntax

typedef struct NtxProcAttribsTag {
    DWORD        dwPoolMin;
    DWORD        dwPoolMax;
    DWORD        dwVsegSize;
    DWORD        dwObjDirSize;
} NTXPROCATTRIBS, *PNTXPROCATTRIBS;

typedef struct tagProcessAttributes {
    DWORD        PoolMin;
    DWORD        PoolMax;
    DWORD        VsegSize;
    DWORD        ObjDirSize;
} PROCESSATTRIBUTES, *LPPROCESSATTRIBUTES;

Fields

dwPoolMin, PoolMin
Specifies the minimum amount of memory, in bytes, allocated to the INtime application for dynamic data. If the dwPoolMin or PoolMin value exceeds dwPoolMax or PoolMax, the RT Application Loader exits. If the value is 0 (zero), the value reverts to system defaults.
dwPoolMax, PoolMax
Specifies the maximum amount of memory, in bytes, allocated to the INtime application for code, stack, static, and dynamic memory.

The maximum amount of memory available for dynamic memory allocation is dwPoolMax or PoolMax minus static memory used for the code, data and stack and RT kernel overhead.

If the dwPoolMax or PoolMax value is less than dwPoolMin or PoolMin, the RT Application Loader exits.

To borrow all available memory, enter 0xFFFFFFFF.

dwVsegSize, VsegSize
Specifies the total address space available for the INtime application. The default value is 8 Mb.

The virtual segment size must be a minimum of 8 Mb. The value of Vseg rounds up to the next 4 Mb boundary. For example, if you enter 5 Mb, the RT Application Loader rounds the value to 8 Mb.

dwObjDirSize, ObjDirSize
Specifies the number of entries this INtime application's object directory can hold. The default value is 64 entries. The minimum is 3; maximum is 3840.

INtime software's RT kernel allocates 16 bytes per entry.

If values of 0 are used for PoolMin, PoolMax, VsegSize, or ObjDirSize, the system default values are used.

Example:

PROCESSATTRIBUTES pa;

pa.PoolMin = 0;              // use system default
pa.PoolMax = 0;              // use system default
pa.VsegSize = 12*1024*1024;  // set vseg to 12 megabytes
pa.ObjdirSize = 0;           // use system default
   
See Also