MultiValue Implementation Information
Pick Systems
AP/Pro
AP/Pro is a native Pick implementation that executes in 32-bit
flat-model memory space on Intel x86 PC systems. Maximum system configuration
is 257 interactive terminal users. Systems have 486 thru Pentium
II (and maybe Pention III) processors with potential disk storage exceeding
100 gigabytes (although most systems are 2-10 gigabytes).
PicLan-IP is implemented on AP/Pro as an extension driver to the PicLan
ethernet IPX product which Pick systems bundles with AP/Pro. When
PicLan-IP is loaded, TCP/IP supported is added to the existing PicLan ethernet
driver. PicLan IPX functions continue to operate and can be used
concurrently with PicLan-IP TCP/IP functions.
The low-level PicLan-IP TCP/IP stack is implemented as an event-driven
"state machine" (this is also how the PicLan IPX support layer is implemented).
This provides for a very high performance TCP/IP stack with minimal memory
usage. Maximum TCP/IP configured support is for about 4000 concurrent
connection streams with up to 50 configured IP addresses on the local host
system.
High-level PicLan-IP functions like HTTP and SMTP/POP3 services are
implemented as standard Pick/BASIC programs that run on phantom processes.
Other than inbound TELNET sessions, PicLan-IP server processes do not consume
any AP/Pro user licenses regardless of the number of users accessing the
system.
D3/NT
D3/NT is a hosted Pick implementation that executes as a Win32
application on Windows NT. Support is also included for use with
Windows 95/98, however most users opt for Windows NT because of increased
reliability and performance.
Application written for D3/NT can execute in several locations.
PicLan-IP executes within the D3 VME or Virtual Machine Environment.
Most temporary data files that PicLan-IP uses are best stored within the
VME, although some larger files such as email storage files and web server
log files can be redefines as FSI files with only minor degredation in
performance. User application files can be defined either within
VME or FSI files.
The PicLan-IP implementation for D3/NT uses a low-level Windows DLL
(Dynamic Link Library) implemented in 'C'. This library off-loaded
many network communications and buffering functions from PicLan-IP into
a lower-level language. Becuase of the nature of the D3/NT VME, the
library actually runs within the same process memory space as D3 itself.
To maximize performance, the support DLL makes full use of Win32 synchronization
and thead functions to create a fully event-driven environment that requires
no polling.
High-level PicLan-IP functions like HTTP and SMTP/POP3 services are
implemented as standard Pick/BASIC programs that run on phantom processes.
All PicLan-IP programs (as well as user application code that PicLan-IP
calls) is compiled with the supplied D3 FlashBasic compiler for maximum
performance. Because PicLan-IP processes execute exclusively on D3
phantom processes, no D3 user licenses are consumed regardless of how many
users are accessing PicLan-IP server functions.
D3/Unix
D3/Unix is a set of Pick D3 implementations running on various
flavors of Unix. PicLan-IP is currently shipping for D3/Linux (also
called D3/ProPlus). Ports for D3/AIX and D3/SCO are currently underway
with other platforms planned.
The PicLan-IP implementation for D3/Unix shares much with the PicLan-IP
D3/NT platform. The one exception is the architechure of the low-level
communications manager library. Because D3/Unix does not execute
all Pick processes within a single Unix application process space, PicLan-IP
cannot use a single shared library. Instead, PicLan-IP implements
a local RPC (Remote Proceedure Call) mechanism and runs the PicLan library
as a Unix daemon. This allows centralized communications management
functions which still providing for a poll of PicLan-IP processing resources.
The link between Pick processes and the PicLan-IP communications daemon is
very flexible operating over either local socket "pipes", an enhanced
version using socket "pipes" and shared kernel memory segments, and
remote socket "pipes". This allows flexibility in locating the
communication daemon with a number of system configurations and even
provides the ability to run the daemon on another system. Particularily
with the daemon running on the local system, the performance is quite
stunning with very little overhead attributed to the process to process
RPC calls. Also the implementation does provide for a completely
event-driven environment with no process polling required.
High-level PicLan-IP functions like HTTP and SMTP/POP3 services are
implemented as standard Pick/BASIC programs that run on phantom processes.
All PicLan-IP programs (as well as user application code that PicLan-IP
calls) is by default compiled with the supplied D3 FlashBasic compiler
for maximum performance. While it is possible to run PicLan-IP in
non-Flashed mode, the FlashBasic compiler does provide signifigant performance
advantages. Because PicLan-IP processes execute exclusively on D3
phantom processes, no D3 user licenses are consumed regardless of how many
users are accessing PicLan-IP server functions.
|