the interface doesn't have to remain a file if that's not suitable.
rendering to a texture (an image) then displaying the image is what window compositors do, and what some games do. plan9 has a file you can write to which just dumps the image to the window/screen. there is no reason this could not work for Plan9. And if you don't want to open a file, write to it, then close it every frame, don't. implement a faster system. writing syscalls for plan9 is not difficult.
the interface doesn't have to remain a file if that's not suitable.
rendering to a texture (an image) then displaying the image is what window compositors do, and what some games do. plan9 has a file you can write to which just dumps the image to the window/screen. there is no reason this could not work for Plan9. And if you don't want to open a file, write to it, then close it every frame, don't. implement a faster system. writing syscalls for plan9 is not difficult.