I managed to find a thread from a few years where this was discussed and I quoted some of the replies for you, hope it helps.
This is the original thread where this was discussed back in 2016.
https://bitcointalksearch.org/topic/multiple-bitcoind-instances-sharing-one-blockchain-1340309It's probably not possible IIRC.
Bitcoin Core creates a lock file that is only deleted once the program exits. If Bitcoin Core detects such a file, the instance will not run. Accessing Blockchain from two different places would result in a corruption (same scenario as how Blockchain gets corrupted if anti viruses attempts to scan it).
Why would you do this?
Most reasons should be easily solvable by using an RPC call instead of a second deamon, isn't it?
I am trying to understand, for example, whether somebody could run 10 bitcoin full nodes only using one single copy of the blockchain thus saving on storage costs.
More specifically, I want to understand whether it is possible to prevent this behavior if it is already possible.
Now you are asking the correct question. The answer is, yes its possible to fake e.g. 10 full nodes while only providing the resources (or only slightly more) of a single node. The 9 fake nodes would run custom software (not core!) that would forward the requests to the single full node. In theory this full node can be any other on the network that is available, so you could do this without running a single node.
The idea to proof that you run a full node and thus get rewarded for doing so has been brought up several times. I have not seen a good solution yet. I would applaud a solution as the number of nodes decreases and the costs of running one increase.
There is another thread from 2011 which is about Multiple bitcoind on one machine. Maybe you can find some more ideas there.
https://bitcointalksearch.org/topic/multiple-bitcoind-on-one-machine-34769