software-based monitors