... it's about an OpenGL X-Server. This would mean some of the drawing done by the GPU instead of the CPU.
In XFree86, they do use the GPU for many drawing operations, even without OpenGL behind the scenes. It's called XAA (XFree86 Acceleration Architecture) and it supports the basic 2D acceleration on modern GPUs (blits, lines, fills).
The idea implemented here has more value than the novelty of translucent windows. Because each "window" is actually a texture stored in offscreen memory a window is never actually obscured. No more expose events! No more clip lists. Perfectly smooth window dragging in your window manager. Minimising a window won't cause obscured windows to redraw. It's like save unders but with hardware acceleration.
A little bit of history is required here. X was written back when video memory was very tight: the framebuffer (what you saw) was ALL of the video memory. There wasn't any unused video memory for textures or pixmaps or caching. So obscured windows caused a big problem: what do you do when you unobscured the window? One technique was to store a bitmap of the window as a "backing store". If the backing store is on the X server then it is called a "save under" but it's the same concept. When a region is exposed you'd just draw in the previous contents from the backing store.
Unfortunately backing stores use up heaps of memory. So the preferred technique was to send an Expose event to the application, tell it which region just got unobscured, and the application would redraw the necessary pixels. CPU was and still is cheap compared to memory! This is the technique still in use today and explains why you get messy redraws when you drag a window around your desktop.
For people who are serious about removing all the cruft in XFree86, you could make serious headway by forcing all windows to be allocated with this TransluXent technique. The amount of legacy code you could rip out of XFree86 is staggering. All the clip mask code. All the loops around drawing code. Lots of tests become useless. No more need for Expose events. Also imagine a proper Xshape extension using alpha masks instead of clip lists.
This TransluXent technique is unfortunately only hackery. They've implemented a "framebuffer" type based on cfb (colour frame buffer). This is the intermediate model that XFree86 uses before your video driver gets involved. So even though they get the translucency they won't get any of the potential to simplify the X server. If somebody could implement this idea higher up the chain - say as an extension to save unders!? - then you would make XFree86 a serious contender for Aqua style graphics.
Of course, the downside is that you'll chew up serious amounts of offscreen video memory (aka texture memory). You might need to implement some code that "swaps" unmapped windows into system memory.
Companies should be allowed to hire anyone they want, whether they have a criminal conviction or not.
Companies should be allowed to hire anybody they want, whether they are female or not.
... whether they are Christian or not.
... whether they are black or not.
Sometimes the company does not get to hire "anybody they want" because the company will discriminate. Society has decided that certain types of discrimination are unfair.
I've been watching the recent trend of blaming everything on terrorism. Don't like drugs? Well, drugs supports terrorism! Don't like anonymity? Well, anonymity supports terrorism! Think you're entitled to some privacy? Well think again, because privacy just leads to terrorism! Now we can joyfully add security research to the list of activities that support terrorism.
At first I was worried but then I saw the light. I realised that this system can be made to work for you just as easily as it works for the religious right. Simply pick something you don't like and link it to terrorism. Within days you'll have a senator fighting for your freedom! You don't even need a strong argument because any nonsense will convince a senator.
To start the ball rolling:
Tampon ads on television. A seemingly innocent advertisement for female sanitary products but scratch the surface and the terrorist roots are revealed. A CIA study found that 100% of female terrorists have used tampons. Also tampons have been linked with strange mood swings in females leading to... dare I say... TERROR in the male population. Further investigations found that it isn't blue water they're soaking up in the ad: it's NERVE GAS. The devious terrorists have been using tampon ads as training videos. Each ad is merely a demonstration of the latest in gas-mask technology. This is all leading to the day when the terrorists will launch a world-wide attack; with pads over their faces and the wings securely tied to their ears the terrorists will spray entire cities with blue liquid, killing us all!
For the freedom of society and the cessation of terrorism, I demand that tampon ads on television are banned immediately.
And wipe down your power cables at least once a week with virgin olive oil, because then the electrons won't rub against the plastic sheath and make noise.
Not that ID or John Carmack would ever read what I write here, but I say go for it. ID Software should make Doom 3 an exclusive console release on the X-Box. Why? Many reasons:
PS2 probably doesn't have enough grunt for Doom 3.
GC might have the grunt but it's probably not the right audience for Doom 3.
There will be a PC version anyway and that's the platform that really matters.
ID Software deserves the money. They're a great company and they should be rewarded.
ID Software have been really good for Linux and for open source. They donate hardware, software, and their time. They port their games to Linux even though there's no profit to be made. I say they deserve a break; take the cash. Nobody will think badly of you for doing it.
The real wonder is how the so-called idealistic poster consistently scores a "2". This kind of idealism is bordering on fanaticism; does the word "jihad" sound familiar?
Only because you redneck Americans love to use the word "jihad" to mean "any conviction that I don't agree with". Why don't you call it a "crusade" or a "mission"?
As a previous poster mentioned, not having a working video driver for your hardware means I won't be using that OS (unless I get compatible hardware).
I wouldn't present the non-free binary drivers, except for situations where all the free alternatives doesn't work. Allowing non-free drivers to be used is also a way for the manufaturers to make the transition. I always try to encourage hardware with free drivers ofc.
And the difference here is that I would simply say "sorry, Linux doesn't meet your needs". I have no pressing desire to push somebody onto Linux. Especially when that push involves more effort on my part to get non-standard binary-only drivers, do a stupid Irish jig to install the damn thing, and then they have to deal with an unofficial and unsupported configuration. They'll get a very bad experience of Linux out of it. I'd rather say "no, sorry, Linux can't do that yet" and leave it at that. Honesty is the best policy.
Showing ppl that you refuse to meet halfway and cooperate to show the way to a pure free system is working against the "cause" imho..
It's not about meeting them halfway. It's entirely about recognising limitations in Linux and not trying to push it past its limits.
Have you ever counted how many different graphics card are available for MacOS? Uhmm, let me do it for you. So, we have.... ATI... this or that nVidia product...
So that would only be... 100% of the hardware shipped by Apple.
Or were you really hoping to run Quartz on an S3 Savage. Be serious.
You are actually more pragmatic than you admit and that's a good thing. There's a difference between short-term pragmatism and long-term pragmatism. Refusing to use non-free software today is the most pragmatic way of ensuring that you don't get screwed tomorrow. This whole "free software is idealistic" rap really needs to be addressed because it's simply not true. Long-term thinking is infinitely more pragmatic than people are willing to admit.
I agree, but that's a deeper discussion I didn't feel confident to argue.
Not that I'm doing spectacularly well convincing anybody that binary drivers are a nightmare in disguise. I'll never use a binary driver again no matter how tempting it looks. Once bitten, twice shy. Free drivers or no drivers is my motto.
But it's hard for most ppl to take the full step to a pure free system.
So? What's the problem? Why do you feel the need to get them onto Linux so quickly? Why the rush? Linux will be there in a year's time when open source drivers are released. Why can't you wait?
I also think most ppl will take your ideas more seriously if you welcome them on their own terms, taking it step by step.
But this was my point. I'll repeat it. If the idea is "open source will work!" and then you present them with a solution that only works with NON-FREE BINARY DRIVERS, then you never really presented them with the idea.
You just want people on Linux. Why? I can't tell. Maybe you hate Microsoft. But you clearly don't care about free software, because you're happy to advocate non-free software to get them onto Linux.
Bear in mind, I've got no problem with people using non-free software or binary drivers. But don't pretend that this is advancing the "cause" of Linux. It's retarding progress because it encourages the proliferation of non-free binary drivers.
You have to think outside the box and look at the other person's(or company) shoes.
I don't have to think outside the box. I'm not telling nvidia to open source their driver. I'm saying that the binary driver isn't as good as an open source driver.
Wrong. BeOS, QNX and OS-X are not as popular as Linux because they do not support the range of hardware (not processor architectures, actual add-on hardware, I mean) that Linux does. Every one of those OS is picky about its hardware, except Linux.
Oh you have got to be kidding. This entire flamefest is about the LACK of decent video hardware support in Linux and you're arguing that Linux has better hardware support than MacOSX? The biggest complaint levelled against Linux is poor hardware support, and the biggest feature claimed of MacOS (any version) is how easy it is to install new hardware. If you ignore the odd product that doesn't work on MacOSX (grr, Canon scanners) and look at the overall picture, it's incomprehensible that you could make your claim.
[Apps + Price] It's the combination of those things which makes Linux stand out.
FreeBSD has the same number of apps and doesn't have nearly as big a marketshare. There is more to it than Apps and Price. I'm betting the whole farm on The License; it's the one distinguishing feature Linux has.
I agree that it should be possible to run a 100% free system, but I don't think forcing that choice upon everyone is good.
Nobody is forcing anything. Where did you get the bizarre idea that anybody was being forced?
I think it's easier to get ppl over to free software if we let them take one step at a time. Letting ppl run their favorite games, connect to exchange servers and using other proprietary stuff in linux will make it easier to then introduce free alternatives.
It's not a very good introduction to free software if you needed non-free software to make it work.
Having this all or nothing attitude will just make more ppl, who otherwise might have switched, turn their back against free software.
I personally don't have a problem with that. I don't see the value in a huge marketshare if it means throwing away all the idealistic goals of a GNU/Linux system. You can go use MacOSX and get better UNIX with a better GUI today if you aren't interested in the ideals behind free software.
IMHO, no drivers ->THE WORST, binary only that depend on one version ->BAD, binary only drivers that can adapt to your changes (like nvidia drivers) ->GOOD, OS drivers ->BETTER.
And the only difference here is that I think no drivers -> BAD, binary drivers -> WORSE. Isn't it amazing how such a little difference in opinion can spawn such a gigantic flamefest of a thread? I don't have an actual problem with binary drivers. If you need to use binary drivers, use them. It's a nasty corner you've painted yourself into but I don't advocate wasting your hardware. All I've been saying is that using binary drivers is WORSE than not having drivers at all because it detracts from the intrinsic value of Linux; its freedom.
Why do you think everything is black or white?
IMHO it's much better if ppl use as much free software as possible, compared to non, even if they can't go all the way.
I don't think everything is black or white. I just recognise there is more value in 100% free than in having a compromised non-free system for the benefit of a few selfish users.
IMHO it's better if you can say "Linux is free" rather than saying "Linux is free, unless you use nvidia hardware, or connect to Exchange servers, or use certain FC cards, or..."
And in all these examples I'm talking about free as in freedom, not free as in price.
Turning Linux into yet-another-non-free-OS may be neato for all you 3D game players, but it really doesn't help Linux. Why don't you go play X-box or something?
This is the sort of argument that will not help move forward...
But it *has* moved forwards. It's moved forwards so far in such a short time. Why is it that now, when the point has been proven, that open source can work, that we can finally have a truly free operating system, why is it only now that people like yourself think we should change the rules of the game and start using binary drivers? Why break the winning strategy when you are running the final lap?
I don't mind using a binary driver provided and supported by a manufacturer for their product, rather than being totally unable to use their product because of the lack of an open-source driver.
Namely, it's better to have a system that is 99% Free and works very well for people, rather than a system that is 100% Free and works adequately for a small number of people.
Just thought I'd reply to this single comment seperately. I think it's better to have a 100% free system, no matter how many users that alienates. If you want a partially free operating system then there are plenty of choices already. Go use Windows or MacOS or Solaris.
In XFree86, they do use the GPU for many drawing operations, even without OpenGL behind the scenes. It's called XAA (XFree86 Acceleration Architecture) and it supports the basic 2D acceleration on modern GPUs (blits, lines, fills).
The idea implemented here has more value than the novelty of translucent windows. Because each "window" is actually a texture stored in offscreen memory a window is never actually obscured. No more expose events! No more clip lists. Perfectly smooth window dragging in your window manager. Minimising a window won't cause obscured windows to redraw. It's like save unders but with hardware acceleration.
A little bit of history is required here. X was written back when video memory was very tight: the framebuffer (what you saw) was ALL of the video memory. There wasn't any unused video memory for textures or pixmaps or caching. So obscured windows caused a big problem: what do you do when you unobscured the window? One technique was to store a bitmap of the window as a "backing store". If the backing store is on the X server then it is called a "save under" but it's the same concept. When a region is exposed you'd just draw in the previous contents from the backing store.
Unfortunately backing stores use up heaps of memory. So the preferred technique was to send an Expose event to the application, tell it which region just got unobscured, and the application would redraw the necessary pixels. CPU was and still is cheap compared to memory! This is the technique still in use today and explains why you get messy redraws when you drag a window around your desktop.
For people who are serious about removing all the cruft in XFree86, you could make serious headway by forcing all windows to be allocated with this TransluXent technique. The amount of legacy code you could rip out of XFree86 is staggering. All the clip mask code. All the loops around drawing code. Lots of tests become useless. No more need for Expose events. Also imagine a proper Xshape extension using alpha masks instead of clip lists.
This TransluXent technique is unfortunately only hackery. They've implemented a "framebuffer" type based on cfb (colour frame buffer). This is the intermediate model that XFree86 uses before your video driver gets involved. So even though they get the translucency they won't get any of the potential to simplify the X server. If somebody could implement this idea higher up the chain - say as an extension to save unders!? - then you would make XFree86 a serious contender for Aqua style graphics.
Of course, the downside is that you'll chew up serious amounts of offscreen video memory (aka texture memory). You might need to implement some code that "swaps" unmapped windows into system memory.
Companies should be allowed to hire anybody they want, whether they are female or not.
... whether they are Christian or not.
... whether they are black or not.
Sometimes the company does not get to hire "anybody they want" because the company will discriminate. Society has decided that certain types of discrimination are unfair.
I've been watching the recent trend of blaming everything on terrorism. Don't like drugs? Well, drugs supports terrorism! Don't like anonymity? Well, anonymity supports terrorism! Think you're entitled to some privacy? Well think again, because privacy just leads to terrorism! Now we can joyfully add security research to the list of activities that support terrorism.
At first I was worried but then I saw the light. I realised that this system can be made to work for you just as easily as it works for the religious right. Simply pick something you don't like and link it to terrorism. Within days you'll have a senator fighting for your freedom! You don't even need a strong argument because any nonsense will convince a senator.
To start the ball rolling:
Tampon ads on television. A seemingly innocent advertisement for female sanitary products but scratch the surface and the terrorist roots are revealed. A CIA study found that 100% of female terrorists have used tampons. Also tampons have been linked with strange mood swings in females leading to... dare I say... TERROR in the male population. Further investigations found that it isn't blue water they're soaking up in the ad: it's NERVE GAS. The devious terrorists have been using tampon ads as training videos. Each ad is merely a demonstration of the latest in gas-mask technology. This is all leading to the day when the terrorists will launch a world-wide attack; with pads over their faces and the wings securely tied to their ears the terrorists will spray entire cities with blue liquid, killing us all!
For the freedom of society and the cessation of terrorism, I demand that tampon ads on television are banned immediately.
And wipe down your power cables at least once a week with virgin olive oil, because then the electrons won't rub against the plastic sheath and make noise.
Not that ID or John Carmack would ever read what I write here, but I say go for it. ID Software should make Doom 3 an exclusive console release on the X-Box. Why? Many reasons:
ID Software have been really good for Linux and for open source. They donate hardware, software, and their time. They port their games to Linux even though there's no profit to be made. I say they deserve a break; take the cash. Nobody will think badly of you for doing it.
Only because you redneck Americans love to use the word "jihad" to mean "any conviction that I don't agree with". Why don't you call it a "crusade" or a "mission"?
Fine by me.
And the difference here is that I would simply say "sorry, Linux doesn't meet your needs". I have no pressing desire to push somebody onto Linux. Especially when that push involves more effort on my part to get non-standard binary-only drivers, do a stupid Irish jig to install the damn thing, and then they have to deal with an unofficial and unsupported configuration. They'll get a very bad experience of Linux out of it. I'd rather say "no, sorry, Linux can't do that yet" and leave it at that. Honesty is the best policy.
It's not about meeting them halfway. It's entirely about recognising limitations in Linux and not trying to push it past its limits.
Under Linux you probably wouldn't bother either. No DRI driver, so no accelerated 3D.
So that would only be ... 100% of the hardware shipped by Apple.
Or were you really hoping to run Quartz on an S3 Savage. Be serious.
So it's a good thing that I did neither of those things. You really are a stupid person.
Huh? Really? What rule am I trying to change?
This should be a laugh.
I agree, but that's a deeper discussion I didn't feel confident to argue.
Not that I'm doing spectacularly well convincing anybody that binary drivers are a nightmare in disguise. I'll never use a binary driver again no matter how tempting it looks. Once bitten, twice shy. Free drivers or no drivers is my motto.
So? What's the problem? Why do you feel the need to get them onto Linux so quickly? Why the rush? Linux will be there in a year's time when open source drivers are released. Why can't you wait?
But this was my point. I'll repeat it. If the idea is "open source will work!" and then you present them with a solution that only works with NON-FREE BINARY DRIVERS, then you never really presented them with the idea.
You just want people on Linux. Why? I can't tell. Maybe you hate Microsoft. But you clearly don't care about free software, because you're happy to advocate non-free software to get them onto Linux.
Bear in mind, I've got no problem with people using non-free software or binary drivers. But don't pretend that this is advancing the "cause" of Linux. It's retarding progress because it encourages the proliferation of non-free binary drivers.
I don't have to think outside the box. I'm not telling nvidia to open source their driver. I'm saying that the binary driver isn't as good as an open source driver.
Oh you have got to be kidding. This entire flamefest is about the LACK of decent video hardware support in Linux and you're arguing that Linux has better hardware support than MacOSX? The biggest complaint levelled against Linux is poor hardware support, and the biggest feature claimed of MacOS (any version) is how easy it is to install new hardware. If you ignore the odd product that doesn't work on MacOSX (grr, Canon scanners) and look at the overall picture, it's incomprehensible that you could make your claim.
In short, are you mentally insane?
FreeBSD has the same number of apps and doesn't have nearly as big a marketshare. There is more to it than Apps and Price. I'm betting the whole farm on The License; it's the one distinguishing feature Linux has.
Nobody is forcing anything. Where did you get the bizarre idea that anybody was being forced?
It's not a very good introduction to free software if you needed non-free software to make it work.
I personally don't have a problem with that. I don't see the value in a huge marketshare if it means throwing away all the idealistic goals of a GNU/Linux system. You can go use MacOSX and get better UNIX with a better GUI today if you aren't interested in the ideals behind free software.
And the only difference here is that I think no drivers -> BAD, binary drivers -> WORSE. Isn't it amazing how such a little difference in opinion can spawn such a gigantic flamefest of a thread? I don't have an actual problem with binary drivers. If you need to use binary drivers, use them. It's a nasty corner you've painted yourself into but I don't advocate wasting your hardware. All I've been saying is that using binary drivers is WORSE than not having drivers at all because it detracts from the intrinsic value of Linux; its freedom.
I don't think everything is black or white. I just recognise there is more value in 100% free than in having a compromised non-free system for the benefit of a few selfish users.
IMHO it's better if you can say "Linux is free" rather than saying "Linux is free, unless you use nvidia hardware, or connect to Exchange servers, or use certain FC cards, or ..."
And in all these examples I'm talking about free as in freedom, not free as in price.
Turning Linux into yet-another-non-free-OS may be neato for all you 3D game players, but it really doesn't help Linux. Why don't you go play X-box or something?
But it *has* moved forwards. It's moved forwards so far in such a short time. Why is it that now, when the point has been proven, that open source can work, that we can finally have a truly free operating system, why is it only now that people like yourself think we should change the rules of the game and start using binary drivers? Why break the winning strategy when you are running the final lap?
I don't buy the product.
Just thought I'd reply to this single comment seperately. I think it's better to have a 100% free system, no matter how many users that alienates. If you want a partially free operating system then there are plenty of choices already. Go use Windows or MacOS or Solaris.
I agree, but it was the original poster who wanted Linux to win. I was just explaining the flaw in winning by admitting defeat.
It's not about black and white, it's about open and closed source. Please pay attention.
I did address the point. I have no idea what mistake you think you've discovered.
If you don't like free software then feel free not to use it. Nobody is twisting your arm.