| PROGRAMMING CONSIDERATIONS |
The programming requirements for interfacing TK-GUARDIAN are very simple
and straight forward.
|
| STORAGE REQUIREMENTS |
The current version of TK-GUARDIAN is composed of 48 standard MUMPS
routines requiring approximately 125,000 bytes for storage of the source
code. Of course where compilation is available, additional space will be
used for object code. The TK-GUARDIAN database is kept in a file (global) named ^TKGU. After initialization, this file will contain approximately 15,000 bytes of information. Typical final sizes will vary from 30,000 to 60,000 bytes or more depending on the number and size of menus, the number of users and devices, and whether transaction logging is activated.
|
| LOCAL MEMORY REQUIREMENTS |
Like most of the TK product family, TK-GUARDIAN has been designed to
run in a 5K byte partition. Systems which do not impose fixed partition
sizes will have no problems. Systems with fixed partition sizes may begin experiencing local memory problems if partition sizes are less than 4.5 K. Although TK-GUARDIAN performs an exclusive kill prior to invoking an application, there are two special variables (see below) which are protected. Depending on the use of these variables in your system, a small overhead will be added to your applications.
|
| SPECIAL VARIABLES |
TK-GUARDIAN maintains two local variables with which programmers need be
aware.
|
| TKID Array |
The local variable TKID is the control variable which TK-GUARDIAN uses to
monitor the environment and stack menus. The array contains a number of
device and user specific parameters, but generally requires only 30 to 40
bytes. It is very important that your applications protect this variable from being inadvertently killed or modified. If TKID is not available when control passes back to the TK-GUARDIAN menu driver, it is forced to return to the logon screen (if required at the device) or quit altogether. The array is structured as follows:
TKID(0) = Current menu ID TKID(1) = User security information, if any TKID(2) = Device security info, if any TKID(3) = TK-GUARDIAN menu global name TKID(4) = Direct mode flag (0 or 1) TKID(5) = Activity logging flag (0 or 1) TKID(6) = User ID TKID(7) = Current device number ($I) TKID(8) = Display secured options flag TKID(9) = Date and time of logon ($H) |
| TKBUF array |
The TKBUF variable is protected by TK-GUARDIAN to enable communication
between application programs. Its creation and use are entirely
application dependent.
|