Simulate devices using DSF
The Device Simulator Framework (DSF) provides an easy-to-use ioctl interface to all your devices, real or imagined. Intended for experienced kernel and device driver software developers, DSF makes it easier to debug and test device code that would otherwise be difficult to simulate or recreate.
Creating test cases for the Linux kernel is pretty straightforward; usually either very specific or very broad coverage is desired. When testing in userspace, however, it can be very difficult to test for special conditions. Things like branch code that is seldom executed, non-existent devices, and error path code are hard to test.
The Device Simulator Framework (DSF) addresses this problem area, with a kernelspace-to-userspace ioctl interface that allows the test case developer to execute specific targeted areas of the kernel. DSF is especially helpful in executing device driver kernel code where the device may not be present. While DSF is not a replacement for actual device testing, it can greatly assist you in debugging and testing driver code.
DSF can also speed test case development, since you aren't forced to learn the ioctl interface for user/kernel space communication.
Currently, only the later release Linux 2.5.xx through the current 2.6.xx kernels are supported.
