ABSTRACT: Programming conventional hardware devices using transaction-based drivers poses new challenges to Software Transactional Memory (STM) systems. This paper analyzes the interactions between transactionally executed drivers and non-transactional hardware devices using the distributed transactional cluster operating system Rainbow OS. We demonstrate solutions to guarantee device state and data consistency in case of aborts of driver transactions due to synchronization issues as well as after node failures. Additionally we present a driver framework which verifies the feasibility of our approach.
Electrical and Computer Engineering (CCECE), 2010 23rd Canadian Conference on; 06/2010