a virtual device i could use if it were ever added to the kernel would have 2 variations, one as a character device, and one as a block device. i would these /dev/block-b and /deb/block-c. opening, as permitted, would always succeed. non-blocking mode is, also, always permitted. multiple opens are always allowed. any process that does a read or write will always block.

one use case i have is to use the character version as a terminal. it would pause an input much like a tty when the keyboard is not used.