I'm looking into linux and Graphical API's, however I'm confused at how opengl is implemented in operating systems. Is it just a set of libraries that use the kernel to "talk" to your graphics card about which pixels to colour or not? if so then I don't know where the pipeline comes in - how 3D scenes are rasterized and shaders effect geometry.
And How Come GPU's can support shader languages from both DX and OGL? - and where do shader languages actually fit?- are they compiled, or interpreted at runtime?
I don't have very much experience with graphical API's myself despite using several game engines - usually the nitty gritty is far lost with several layers of abstraction.
I explained it thoroughly here: https://stackoverflow.com/a/6401607/524368 and here https://stackoverflow.com/a/7967211/524368