3 ms·
On Linux it is actually the window server that provides the interface between applications and the video driver. Linux does not have a standard graphics driver
by tinco 13y ago
On Linux it is actually the window server that provides the interface between applications and the video driver.
Linux does not have a standard graphics driver interface like Windows does, at the moment is sort of defined by X, and since Wayland and Mir aim to replace X, the interface will be replaced too.
This means that every driver needs to interface with each of the window managers.
I would agree that is a silly idea, but such is the world when applications need very low level access to hardware to attain real time performance. You just get a tangly mess.
- lelandbatey 13y agoOk, that makes more sense (or at least explains why). I'm puzzled that there hasn't ever been anything done to make this less of a tangly mess; it seems like it'd be a huge step towards making linux a better platform to iron something like this out. However, that's probably just wishful thinking, as I have no idea what it'd take technically or politically to make that happen.
- tinco 13y agoThere have actually been many tries, Wayland being the most recent of them and now Mir. But because the earlier ones relied too much on the old X code, they were not succesful, and Wayland has not yet secured support from the graphics cards manufacturers (except Intel). Mir is promised to change all that, but we will have to see.
- jmillikin 13y ago> On Linux it is actually the window server that provides > the interface between applications and the video driver. This hasn't been true for a long, long time. Modern Linux applications directly call into the graphics driver, either through OpenGL or an intermediate library such as Clutter. > This means that every driver needs to interface with > each of the window managers. This is also not true. Window managers are driver-independent, and you can easily write your own window manager without any knowledge of the underlying hardware. You might mean "display server" instead of "window manager", but there's only one display server used in Linux, and that is X11. X11 was designed in an era before standardized graphics or input APIs, so it doesn't use OpenGL. As a result, it needs its own set of drivers for nearly everything (keyboards, mice, graphics, overlays). That's why Linux graphics drivers need to have special X11 support. Wayland and Mir are an attempt to replace X11 with a much thinner layer, handling only the bare necessities of getting the driver and user application together so they can talk OpenGL together.
- tinco 13y agoYou are right, I meant 'display server' instead of both 'window server' and 'window managers'.