* cache /dev/null after opening * make opening /dev/null cancelable * avoid unreachable even when OS does something unexpected