The SunVTS architecture is divided into three components: the SunVTS kernel, the user interface, and the collection of hardware tests. Figure 1-2 is a block diagram representing the SunVTS architecture.
The following activities are scheduled and monitored by the kernel:
Probing and saving the test system's hardware configuration at start-up
Logging messages reported from tests
Maintaining the status of all running tests
Monitoring the status requests and controlling the commands from a user interface or other applications
Scheduling the tests that are enabled by the user
There are two versions of the SunVTS kernel:
32-bit kernel-- /opt/SUNWvts/bin/vtsk
64-bit kernel-- /opt/SUNWvts/bin/sparcv9/vtsk
The SunVTS user interface is separate from the SunVTS kernel. The user interface communicates with the SunVTS kernel through an application programming interface (API). This gives SunVTS the ability to run the appropriate interface (CDE, or TTY) based on the environment of the system. It also allows the user interface to run on a system other than the system under test.
Many separate tests make up the collection of tests in the SunVTS application. Each test is a separate process from the SunVTS kernel.
When SunVTS is started, the SunVTS kernel automatically probes the system kernel to determine the installed hardware devices and displays the testable devices in the SunVTS UI. This provides a quick check of your hardware configuration, and only those tests applicable to your system are displayed.
During testing, the hardware tests send the test status and messages to the SunVTS kernel through interprocess communication (IPC) protocols. The kernel passes the status to the user interface and logs the messages.
The SunVTS kernel and most tests support 32-bit and 64-bit operating environments.