| Latency Tests | |||
|---|---|---|---|
| <<< Previous | Next >>> | Blog | |
The purpose of this exercise is to perform a latency evaluation on a string of user processes running on top of the Linux kernel. By nature Linux wasn't designed to be a real-time OS, however much effort has been expended over the years to add "real-time-like" capabilities. Tests will be performed on a Linux user-space environment to see how Linux holds up.
For this experiment the host machine is the machine which records the results of these tests and initiates each test sequence. The target machine is the machine under evaluation.
The target machine and the host machine are connected through a serial cross-over cable. The host initiates a test sequence by sending a specially formatted string (the string must start with a special character and end with a different special character, neither of which should appear in the string itself). The target machine's serial driver will start a timer upon receipt of the terminal special character and hand the string off to a user-space process. This user-space process will then communicate this same string trough a variable number of other user-space processes via named FIFOs. At the end, the last user-space process will send this string back out the same serial port. The driver, upon reading the special start character being specified for transmission, will stop the timer and send measurement information through the serial link to the host machine, then it will send the test string.
This arrangement is illustrated as follows:
This test scenario has the following advantages:
The machine recording the data and performing calculations on this data is not the machine under investigation thus minimizing the impact of these tests on the test results.
The target and the host machine do not need to be running the same kernel. No kernel modifications on the host machine are required whatsoever. In fact, any machine that can send and receive data on a serial port and can compile and run the latency-server can conceivably be used as the host machine.
This test scenario has the following disadvantage:
The target machine needs a specially modified version of the serial driver (but the modifications are very minimal).
| <<< Previous | Home | Next >>> |
| Latency Tests | Target Boards |