Your ideas are not so bad, learning how things work.
But you do not need to let a renderer run on a bare CPU without OS. To lern to access hardware directly have a look into the linux kernel source.
Everything else can be run in userspace.
And accessing the GPU directly is, AFAIK, impossible because these things are someway a secret of the GPU companies.