TimeSys Linux/RT (Professional Edition)
Using Linux/RT kernel modules, RTAI or TimeTrace involves issuing a couple of commands. For Linux/RT, it is a matter of loading or unloading some Linux kernel modules. Using TimeTrace presumes a real-time application is already running on the Linux box and the proper user-mode collector program is running as well.
Using the Linux/RK Utilities commands, a Linux/RT resource may be attached to legacy program processes. The legacy process does not have to include any real-time programming constructs. I tried an experiment with my Netscape browser. I attached a resource set to the browser (about 5% of CPU), and then started a large file transfer using FTP and printing a large PDF document. My browser seemed to do okay.
Three manuals and a booklet came with the review copy of the product: the TimeSys Linux/RT User's Manual, the TimeTrace for TimeSys Linux/RT User's Manual and a TimeSys Linux/RT Programmer's Manual. The booklet titled “The Concise Handbook of Real-Time Systems” is like a Cliff Notes of real-time terms, concepts and architectures. TimeTrace and Linux/RT User Guides clearly presented the relationship of the two products. The user guides and booklet are illustrated, and for the most part they are well-written. All install directions are high-level and written for the experienced software installer.
About half of each Linux/RT and TimeTrace User Guide is spent discussing real-time software and its attributes. The remaining half of the guide focuses on using the product. Linux/RT's user guide and Release Notes describe how to use a graphical Linux/RT resource manager. Finding the command to start the graphical resource manager was a challenge. In the review copy, it was not compiled and nowhere near the Release Notes said the command lived. I do not think this is the result of installing Linux/RT on a non-Debian distribution. In another place, the Linux/RT User's Manual said the module measure-rk had to be loaded to use TimeTrace. No compiled version of the module measure-rk could be located in my installation. I did locate some source code that looked like it might be the module. The TimeTrace manual indicated one used viewrk file to use TimeTrace. Since there was no module named measure-rk available, I used the viewrk file. Viewrk seem to work okay.
Appendix A contains a list of Linux/RT RK utility commands. Several of these have the wrong capitalization. Others do not exist as listed. I was unable to locate several of the commands in /usr/local/bin directory in the manuals. One example is printing the clock frequency. The list of utilities says the command clockfreq is used. The command did not exist in my installation. I did find a rkfreq command that provided the clock frequency. There is also a file named charter. I was unable to locate any information on this executable file. No man pages were installed by the product. The PDF versions of the User and Programmer Manuals seem to be just an electronic copy of the printed manuals. A keyword search of the PDF files did not produce any information on the abovementioned files.
The 179-page Programmer's Manual discusses how to create, execute and debug real-time programs. Example program listings are provided to illustrate the various functions and system calls. GNU-Emacs, make, CVS, gcc and gdb may be used to develop and debug Linux/RT-based real-time programs. Compiling or recompiling any of the distributed sample code requires linking to librk.a. Of the three references to this file's location, the Programmer's Manual was the most accurate. Be prepared to edit makefile directories to correctly identify the proper location of the library and header files. Due to missing files, I had some problems compiling the sample code. I think compiling original work should go just fine.
Support is offered via the TimeSys web site. Questions may also be e-mailed and faxed to TimeSys Support. I did not use TimeSys fax support, and cannot comment on its quality. Most of the questions in the web site FAQ struck me as very marketing-oriented. Searchable knowledge bases or other forms of technical on-line support were not readily obvious to me. There was the beginning of a discussion forum. Based on the few postings (at the time of this review), I am not sure of the usefulness of this forum.
I had some problems getting TimeTrace to display a graph of the racer and rolling sample programs, so I sent a support request e-mail. TimeSys seemed to be going through some growing pains, and it took several days to get a response. Once e-mail contact was made, TimeSys support staff worked with me on resolving the problem.
Overall, I think Linux/RT software looks promising and should be able to do the job. The documentation needs some cleaning up and to more accurately reflect file placement and command usage. At some point, I believe Linux/RT will require fixes and patches. The web site should be able to provide fixes and patches without requiring one to download the 12+MB Linux/RT tar file. If support depends upon registering the product, then there needs to be some simple way for a customer to indicate they bought the product.