You seem to be giving too much credit to the singleton design pattern. We know exactly how well that works on a modern, multi-tasking, preemptible operating system (hint: not well at all).