SMS: Programming the Microsoft Windows Driver Model