RTLab is an RTLinux/RTAI-based data acquisition and control application. It is designed to help experimenters design and implement their hard realtime control experiements using higher abstractions than the services offered by RTAI or RTLinux. It is split into two parts. One is a user-space series of C++ classes (written for Qt) which implement a reference application called DAQSystem which is designed to acquire analog input voltage data and display it on the screen. DAQSystem communicates with rtlab.o, the realtime kernel module which is the second part of RTLab. The rtlab.o realtime kernel part is a kernel module that loads into RTLinux or RTAI and is responsible for driving COMEDI hardware for the purposes of data acquisition and realtime control. The module is extensible and features a 'plugin' architecture so that scientists who are savvy C programmers can easily leverage the existing framework for their own custom experiment logic. Experiment logic is specified by writing a kernel modules that gets called back for each scan rtlab.o acquires from the COMEDI hardware. In addition, data visualization and storage facilities exist in user space so that experimenters can instantly see graphical plots of their analog input data as it comes in from the hardware.