Windows Background Processes
From PxPlus
When using ProvideX/PxPlus on a Windows system, each invocation of the software occupies a user slot regardless of whether the process was merely a background task or was truly going to interact with the end-user. Even processes that have no user interaction still require a user slot -- in effect resulting in a "phantom user".
This phantom user problem is a Windows system issue. On Unix/Linux, ProvideX/PxPlus can detect true background processes by the fact that the user input and output devices were set to /dev/null. With the user input/output disabled, no user interaction would be possible from the process thus the process was truly a background task. This is why, on Unix/Linux, we always recommend that you append >/dev/null and </dev/null to any command launching a background process such as NTHOST.
As a consequence this Windows-only problem/limitation you often had to purchase an extra user slot for this "phantom user" when running on a Windows server as opposed to Unix/Linux.
Defining Windows Background Task
To address this Window-only problem, V9 of PxPlus has added a new command line parameter "-BKG" which identifies a process as a background task that will NOT have any end user interaction. For example:
c:\Program Files\PVX Plus Technologies\Pvx Plus V9\pxplus.exe -bkg *plus\cs\host
When a Windows process is initiated with this command line parameter the process will not occupy a user slot however no windows or message boxes will be presented to the user. In effect the process will, like its Unix background task counterpart, not have any user input/output capabilities.
It will, however, be able to run programs in the background just like a Unix system and will accept signals from foreground processes to terminate or perform other tasks.
Note: Like the -MN and -HD parameter, the -BKG must be the first parameter after the .exe path name. The -BKG parameter is case insensitive and has no effect in Unix/Linux.
Where Used in V9
This feature has been incorporated into *NTHOST and the PxPlus Simple Client Server (*plus/cs/host) in order to eliminate the need for an extra user when running on a Windows host. Future plans call for it to also be implemented in other background/service processes that potentially run in a Windows environment.
