When the Direct Rendering Manager was first created, the purpose was that multiple programs using resources from the video card can cooperate through it.
The trend to include two GPUs in a computer -a discrete GPU and an integrated one- led to new problems such as GPU switching that should be also solved at the DRM layer.