How would OSs manage this security and process wise? I imagine its impossible to program an fpga fast enough to have it switch config for each process that wants it.
Hide the registers or set a flag if the FPGA is not configured for it.
Moreover, put another configuration flag to FPGA part so that it either shows up a device or works as a set of registers.
It's easier said than done but, it's not impossible.
The other thing to note is that this only covers using the FPGA for compute. While that's the obvious use-case for an "FPGA in CPU" concept, in the real world, IO is a pretty important part of many non-cryptocurrency FPGA applications, whether you're just counting edges on some input like an encoder, providing a highly time-sensitive output signal, such as for an SDR, or implementing some custom serial protocol.