timer implementation in userspace