“This is an introductory overview post for the Linux Graphics Stack, and how it currently all fits together. I initially wrote it for myself after having conversations with people like Owen Taylor, Ray Strode and Adam Jackson about this stack. I had to go back to them every month or so and learn the stuff from the ground up all over again, as I had forgotten every single piece. I asked them for a good high-level overview document so I could stop bothering them. They didn’t know of any. I started this one. It has been reviewed by Adam Jackson and David Airlie, both of whom work on this exact stack.” Introductory or no, still pretty detailed.
After reading this, it made want Wayland even more.
Of course, as this was written by a Wayland fan..
Wayland has some downsides too:
do you know what happens when you try to move a Window of a busy application in Wayland?
Wayland or X, it really doesn’t matter, not as long as Linus Torvalds is head of the project. Quick, what does BSD, Solaris, OSX, Windows, iOS and even OS/2 have in common? A stable ABI to write drivers for of course! Now how many here believe that Linus Torvalds is smarter than ALL of those OS designers put together? Show of hands? that’s what I thought.
The sad part is its arrogance, nothing more. Torvalds said in 1993 that Linux didn’t need an ABI and they may have been true…in 1993. But it ain’t 1993 anymore, yet Torvalds, like some dinosaur that refuses to admit his favorite way of doing things is ancient history, refuses to accept times have changed. When he said that there were less than 100 packages for Linux, and half that many drivers. Now you have millions of packages and a conservative estimate of 40,000+ drivers. Now considering there are so few people truly qualified to debug system drivers, and 40,000+ drivers out there, and without an ABI one Torvalds futz can total a ton of drivers…see how the math don’t work?
This is the kind of BS that De Icaza was pointing out, how the guts are a fiddly mess when frankly there is NO reason for them to be, other than spoiled devs that want to be able to treat the guts like their personal pet projects and Linus’ ego. I urge everyone to read the two links I’m posting, the first by a RH dev that says the Linux desktop is “suckage” and paying for mistakes made 10-20 years ago, the second one is a list of things broken in Linux, we are talking 200+ problems in this list. Things aren’t getting better folks, I’ve been trying to get Linux to where it would work for the masses for 7 years now, and its just not getting better. its getting prettier but the guts? Just as flaky as they were in 2005.
https://plus.google.com/109922199462633401279/posts/HgdeFDfRzNe
http://linuxfonts.narod.ru/why.linux.is.not.ready.for.the.desktop.c…
Can somemone moderate the parent comment as ‘poor troll’?
Thanks.
I don’t think it’s trolling, just very negative, and the links are even more one-sided. The thing is, it’s true that it’s inconvenient not having a stable ABI, and anyway I like it that the FOSS community is full of criticism; there’s no marketing hype-driven one true faith. It’s more… scientific ๐
Did you even BOTHER to read? or does anything that disagrees with your “religion” automatically have you stick your fingers in your ears? Does a RH dev with 10 years exp on the job not count to you? if not then who does, only St iGNUcious?
Whether you like it or not reality is reality, and things aren’t getting better. they are getting prettier, but not better. Don’t take my word for it, take the Pepsi challenge. We’ll take any normal release of Linux from the same month that Vista was RTMed, which I’ll choose Vista because its supposed to be the worst MSFT OS since WinME, we’ll install it and the Linux that was released the same month, again your choice, make sure all the drivers are working then upgrade both to current.
I’ll be happy to tell you what will happen, because I’ve done this challenge several times. The Vista install will work perfectly, all the drivers and software functional even after 2 service packs and thousands of patches, while the Linux WILL BE BROKEN. Your DE will be flaky, if the GPU drivers work at all, your sound will be toast just as De Icaza said, and WiFi? Bwa ha ha ha, that won’t have a snowball’s chance in hell.
Now if you think such Mickey Mouse amateur hour “performance” is acceptable, well good for you, but the rest of us left that kind of crud behind with Win9X. I’m selling systems every single day and I need an OS that WORKS, not a hobbyist toy, and the sad part is thanks to the devs constant fiddling with the guts that is EXACTLY what you have, a toy. You are more likely to win the powerball than win my challenge friend, and that is just sad.
Hardware support is still a huge problem under Linux. OTOH I know of only one driver (nouveau) that breaks regularly, and it’s experimental and contraindicated for general use. Based on my own experience, I don’t think the Linux kernel is as unstable as you say.
OTOH, user space stuff breaks all the damn time, so I get where you’re coming from. I frankly find Linux OSes more convenient than other OSes, but I can’t deny that the desktop stack is a huge hackjob.
Umm wow, is anyone even reading the above comment before modding it down?
Welcome to groupthink land friend! All must worship St iGNUcious and ANY descent, no matter how trivial or even in support of FOSS, is instantly attacked!
This is why I gave up on Linux, and why it isn’t getting any better. prettier, not better. Its because I can post page after page, literally thousand of documents showing real problems being suffered by REAL users, and you will get nothing for your trouble but “La la la, ur a dirty M$ shill! La la la” and people wonder why the devs can get away with this Mickey Mouse amateur hour joke.
If you treat it as a religion, instead of an OS? Well you get the half baked mess you have now, because Torvalds and Co get treated like Gods and never EVER questioned. Watch, I’ll prove it, here is a link with over 200! major problems with the guts, we are talking serious show stoppers..
http://linuxfonts.narod.ru/why.linux.is.not.ready.for.the.desktop.c…
This person has been listing show stopper for over THREE YEARS, and many on that list? Even older. Again do NOT take my word, do your own thinking. Pick a distro ANY distro and look at the bug tracker. Do we have 2 year old bugs? How about 3? do I hear 4? Ubuntu alone has over a dozen 6 year old bugs that are STILL present.
If you want to compete you have to actually…ya know COMPETE. You can’t hand over a half baked buggy pile of mess and go “Tada! Don’t like it fix it yourself!” not when I can walk across the street, pay a lousy $40 for Win 8 pro and actually have a system that is functional, or buy a MacBook and have full Unix goodness AND a system that works for years.
Since Wayland is designed with compositing window managers in mind, I would hazard a guess that a static, screenshot-like bitmap of the busy window is moved around, without needing to constantly refresh that bitmap as with older WM technology.
Edited 2012-09-08 08:44 UTC
Wrong, remember that the decoration is handled by the application in the “normal” Wayland configuration.
So the application is handling the mouse events (then tell to Weston move my Window), so if the application is busy, moving a window may be laggy/”not smooth”.
Just like in any version of Windows you mean?
I think we can live with applications lagging when they hang. It’s applications lagging when they’re behaving normally that is of concern IMO.
As for Wayland, I still find the idea of mainstreaming a display system that only works on Linux… irksome. There are other UNIXes out there, some with advanced features that Linux doesn’t have, and a much better record in terms of security and stability. Dropping support for them entirely is not what I consider a wise move.
I think you mean that XP & earlier use a stacking window manager so not redrawing when the application hangs. Wayland of course is for compositing WMs. But anyway, like you say, who cares if a window is a bit jittery while you drag it around the screen. If it’s the kind of thing you do a lot (like me) then you probably have other problems…
I totally agree about the Wayland framework leaving the BSDs out in the cold being a bug, not a feature.
However, I don’t really understand why all the Wayland comment threads here because the original article is not wayland advocacy, it’s just one of the relevant things covered within an overview of the graphics stack.
+1 Informative
The Linux Graphics Stack
Posted on June 16, 2012
But it is a great post. Wayland will rock.
I thought I’ve even seen it posted on OSNews before.
Not only that, I remember at the time specifically not reading an article because I thought it was this one.
I can’t find it right now, though.
Maybe it was linked accidentally instead of its more recent follow-up:
http://blog.mecheye.net/2012/08/lets-make-a-low-level-part-1-gettin…
It’s an excellent series, I wish it existed last year when I was looking for an introductory overview.
Would be great to see some Wayland adoption in the mobile sphere. Looks like even Nvidia starts to be interested.
You mean UNIX graphics stack? Or everything since today would be Linux only? One Nation, One State, One Leader?
I would love that. We need one champion to take on Windows and MacOS, not 10^6 different *nix-like operating systems and Linux flavours.
And that is why we end up with so many Linux distributions.
“Unlike all previous distributions, MY distribution will be the end-all.”
Sometimes you need diversity, for those times Linux is a perfect fit. Sometimes you don’t, for those occasions OSX or Windows may that better tool.
As usual: use the correct tool for the problem at hand, not the other way around. If you want Linux to be like OS or Windows, then get Windows or OSX.
Linux great strength is its open nature and customization/options, that is also its biggest weakness. There are products/projects that are enabled by Linux, which would be impossible using proprietary closed systems, and of course viceversa also applies.
No, they do not “mean” that, and if you had paid the article even a cursory glance, you would already know that. libdrm, Wayland and other things the article deals with are Linux specific.
Well, I imagine a kernel needs a few things more to have the graphics stack running.
I am curious about how the Android graphics stack is designed. That is the way it needs to be done on the desktop.
Edited 2012-09-07 19:38 UTC
Without Dalvik (or anything Java related), of course. ๐
Except the only way to access it is via Dalvik VM
Curiously, it appears to be implemented on top of an OpenGL library, not unlike Wayland (AFAICT):
http://stackoverflow.com/questions/4579573/android-graphics-interna…
Maybe there’s something to Wayland after all. I still wish it wasn’t Linux-only though.
Some use cases are similar but others are very different, so nowadays the Android graphics stack would need a redesign.