Slashdot Log In
Kernel Builders Appeal For Open Source Drivers
Posted by
kdawson
on Tue Jun 24, 2008 12:54 AM
from the no-names-but-its-initials-are-nvidia dept.
from the no-names-but-its-initials-are-nvidia dept.
snydeq writes "The Linux kernel development community has released a statement emphasizing the need for open source drivers. The statement, signed by 135 developers, is aimed at preventing future vendors from following the closed source path. One holdout cited is Nvidia. The Linux Foundation has also released a statement in support: 'The Linux Foundation recommends that hardware manufacturers provide open source kernel modules. The open source nature of Linux is intrinsic to its success. We encourage manufacturers to work with the kernel community to provide open source kernel modules in order to enable their users and themselves to take advantage of the considerable benefits that Linux makes possible.'"
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Tell that to Lexmark (Score:5, Informative)
Re: (Score:3, Insightful)
Re:Tell that to Lexmark (Score:5, Informative)
When it comes to buying printers, i typically look towards HP...
They provide open source drivers for their printers and even the all in one printer/scanner combo devices.
Aside from HP i would consider postscript network printers, i recently had such a device from Samsung and it worked well.
I actively avoid Lexmark and Epson due to their lack of open drivers.
Incidentally, my old HP scanner/printer combo only works as a printer with OSX Leopard and Windows Vista due to the closed source drivers having not been ported. It works perfectly with an up to date Linux installation since it was possible to just recompile the drivers.
On the other hand, i'm having major trouble using saned (network scanner support) with my macbook as a client to the linux print/scan server, local scanning on the linux box is flawless.
Parent
Re:Tell that to Lexmark (Score:4, Informative)
My favorite is the Brother MFCn series of printers. They include the document feeder tray for the scanner, excellent phone line recognition faxing (i.e. it knows when to pick up or when to let a human/answering machine pick up), and it has ethernet, all for around $150. When I bought this printer, I looked at all the others and some had the feeder tray, but not ethernet, some had ethernet but not the feeder tray. And the few I found that did have it all were easily $300+.
Well, I didn't mean for this to come out as an advert for Brother. Anyway, that's my opinion. Also, for what it's worth, I've not been a big fan of HP since the late 90's. (Their HP-48GX was a great calculator, though.)
Parent
Re:Tell that to Lexmark (Score:4, Interesting)
I haven't tried their windows drivers, but the mac ones were pretty bad.
The open source ones on the other hand, really are just drivers that interface with cups and/or sane, and other than that pretty much just get out of your way. No stupid utility programs, no background services... Seeing as they're open source, if such user hostile functionality ever existed in them, someone would soon strip it out anyway.
I will however look at Brother printers, since someone pointed out they also make open source drivers available.
Parent
Re:Tell that to Lexmark (Score:4, Informative)
I bought a used laserjet a while back and I just use postscript. The only problem with the printer is that it's got a tiny amount of memory which will run out fairly quickly on weird jobs.
But in terms of reliability, I haven't really had any at all. It's just a solid printer. It's the Laserjet 5MP, IIRC.
Parent
Re:Tell that to Lexmark (Score:5, Informative)
Parent
Re:Tell that to Lexmark (Score:5, Informative)
http://www.lexmark.com/lexmark/sequentialem/home/0,6959,204816596_689444666_0_en,00.html [lexmark.com]
Write to the hardware vendors and let them know that we want to buy and use their products on Linux. Here are the addresses of some other hardware vendors. Copy the list and write to one every week:
Creative (Webcams) http://asia.creative.com/contactus/presales/ [creative.com]
Logitech (Webcams) http://logitech-en-amr.custhelp.com/cgi-bin/logitech_en_amr.cfg/php/enduser/ask.php [custhelp.com]
Nokia (PIM sync software with OpenSync) http://www.nokia.com/A4126575 [nokia.com]
Epson (Printers) http://www.epson.com/cgi-bin/Store/AboutContactUs.jsp?BV_UseBVCookie=yes [epson.com]
Gigabyte (New motherboards should ship with Linux drivers) http://www.gigabyte.com.tw/Company/ContactUs.aspx?CompanyWebPageID=6 [gigabyte.com.tw]
Linksys (Networking equipment) http://www.linksys.com/servlet/Satellite?c=L_Content_C1&childpagename=US%2FLayout&cid=1114037291276&pagename=Linksys%2FCommon%2FVisitorWrapper [linksys.com]
Parent
Re:Tell that to Lexmark (Score:5, Insightful)
The manufacturer might want repeat business...
They're not selling suicide bombs.
Parent
Re:Tell that to Lexmark (Score:4, Insightful)
Nonsense. Consumer-level printers get replaced very frequently. They had future sales to gain (or lose).
Likewise, they have gained poor word-of-mouth, or lost positive word-of-mouth referrals. And it's pretty widely acknowledged in business that word-of-mouth is the most powerful means of advertising, and a real driver of sales.
Parent
Dell printers (re-branded Lexmark hardware) (Score:5, Informative)
Scenario: Mom asks you to install Ubuntu on her Dell computer setup.
Problems:
1) Open Source libata driver for the SATA optical drive causes frequent timeouts and hangs. Looks like a problem with the Ubuntu kernel. Tell Mom it's just like Windows XP, there are problems which will be updated and fixed "eventually".
2) Dell printer not supported by CUPS and open source drivers. There is no support from Dell, but a 20 minute Google search effort turns up the model is a re-branded Lexmark. The Ubuntu community forums detail a process to install proprietary Lexmark drivers for Debian GNU/Linux. Tell mom it's just like Windows XP, some printers need a certain version of driver for the device.
3) Displayed video is incorrect on Dell LCD display. Search Google for about a solid hour to find an answer. Looks like an Ubuntu problem with an open source driver. Tell Mom that there's nothing wrong with her computer, even though the screen is completely black for the whole boot process.
My own conclusion:
Ubuntu is a hit-or-miss installation for Dell hardware owners. Mostly miss. The open source or closed source nature of a driver does not factor into user acceptance. The user is uncomfortable when their hardware is "broken" due to a missing or incompatible driver.
Mom's conclusion:
The Ubuntu Hardy "bird" logo is "pretty".
Parent
Re:Dell printers (re-branded Lexmark hardware) (Score:4, Funny)
Parent
Re:Dell printers (re-branded Lexmark hardware) (Score:5, Funny)
- P.H.
Parent
Re:Tell that to Lexmark (Score:5, Insightful)
Who cares? Why didn't she stay on Windows. She should have checked her compatibility status beforehand.
Parent
Re:Tell that to Lexmark (Score:4, Interesting)
Parent
Re:Tell that to Lexmark (Score:5, Insightful)
Or you could buy a printer that supports PostScript. I know it's an evil Adobe abomination, but it's really easy to print to, commonly supported in both network and local drivers, and has a standard printer-definition format to allow selection of hardware-specific options without the need for a hardware-specific driver.
Honestly, in a day and age when even non-tech families have a home network it seems silly to use USB connections and hardware-specific drivers for printers -- just spend the extra $50 and get a printer that can operate with direct interaction from a host CPU.
Parent
Re:Tell that to Lexmark (Score:4, Insightful)
Parent
Re:Tell that to Lexmark (Score:4, Informative)
If it supports the current version of PostScript, then it does support PDF natively.
Parent
Re:Tell that to Lexmark (Score:4, Interesting)
For the Brother line of printers, you want support for "BrScript" (BrotherScript) - for PostScript 3, it's called "BrScript 3". It's effectively a PostScript clone (since PostScript is trademarked, and Brother does't want to pay). But for all intents and purposes, it's PostScript. They even supply PPD files to configure your OS's PostScript driver correctly.
Parent
Re:Tell that to Lexmark (Score:5, Interesting)
You mustn't confuse Lexmark Inkjet printers with Lexmark Laser printers.
The laser printers, by and large, speak well-known and reasonably standard languages like Postscript and HP PCL, and the build quality isn't too bad (though it's not a patch on HP or Kyocera).
The inkjets speak proprietary languages, are cheaply thrown together and designed to last about as long as 2-3 cartridges.
(And in the UK, Lexmark make a big thing about how you too can buy a printer from the same company that supplies 70% of the UK's top businesses. Technically correct, but it's a totally different division of the company producing totally different products).
Parent
Re:Tell that to Lexmark (Score:4, Interesting)
I think you can bend that rule a bit when you're giving away a scarce product as opposed to an infinitely reproducible product, but good point nonetheless.
Parent
No Linus? (Score:5, Interesting)
Interesting that Linus himself did not put his name to the statement.
One might argue that the Linux Foundation's endorsement is sufficient and that Linus's signature would be redundant.
But if that were true, why did Theodore Ts'o put his name on the statement? He is part of the Foundation's management.
Re:No Linus? (Score:5, Insightful)
Parent
what is the use of this? (Score:5, Insightful)
Does begging really work? I mean asking people doesn't usually solve anything, you need to either show them a carrot and/or a stick... not sure if Linux has enough of either (yet)
The carrot & stick already exist. (Score:4, Insightful)
This petition is just a gentle reminder that the carrot (utilizing OSS community development process) & stick (customers switching vendors) already exist. (from TLA):
Parent
I don't understand nVidia (Score:5, Interesting)
Re: (Score:3, Interesting)
Re:I don't understand nVidia (Score:5, Informative)
In fact, that's precisely how both nvidia and ati differentiate their "professional" cards from their "consumer" cards.
Ease of 'hacking' apparently isn't much of a concern because cards from both vendors have been 'upgradeable' in this manner for more than a decade.
Parent
Re:I don't understand nVidia (Score:5, Informative)
The graphics card industry is cutthroat. The hardware is only part of the story - the drivers also do a lot of optimizing. They are probably worried competitors will use their own tricks against them.
Drivers compile shaders into something the video card can run - maybe they think their compiler optimizes better. On Windows at least, nVidia drivers will try to use SMP to prepare a few frames in advance for more efficient streaming.
Parent
Re:I don't understand nVidia (Score:4, Informative)
Drivers don't make the difference between the high- and low- end cards anymore. It used to be that the card would report a device ID, and then the driver would enable/disable features based on that device ID. This allowed both software mods and simple board mods to switch device ID in order to enable Quadro / FireGL features on GeForce / Radeon cards.
That's not the case anymore, which is why you can't find any mods for recent cards.
Parent
Re:I don't understand nVidia (Score:5, Interesting)
No the driver doesn't make the difference between high and low end cards. There is always a BIOS change at a minimum (videocards have their own BIOS). There are three reasons why nVidia claims they can't open source their drivers:
1) They incorporate third party proprietary code. This is almost certainly the case. I'm betting that some or maybe even all of it isn't secret, but it is still licensed none the less. That means they'd have to either change the driver to leave those features out and/or rewrite the code themselves which could involve some expensive clean room/dirty room techniques. Remember that they can't play the Xvid game of "Well we don't distribute it compiled so don't need to pay a license." Ya that won't won't work for a company who is providing the code for the clear purpose of making their cards work. They'd get sued (and they'd lose).
2) Their drivers are one of the things that make their cards more attractive than their competition. nVidia and ATi are locked in a major battle for computer marketshare. This is fought in terms of performance, whether raw performance at the high end or performance per dollar in the midrange. They are interested in every advantage they can get over one another. Well those advantages can come in software as well as hardware. For example nVidia has historically had very good OpenGL performance on Windows. All things being equal, an app would run equally well in either. ATi has not, DirectX has always performed better. Well if ATi got at nVidia's source, maybe they'd use those tricks to make their drivers perform better.
3) Special things like PhysX support. Coming out very soon (you can already find betas floating about) for Windows are drivers that will support hardware acceleration of the PhysX physics middleware engine on GeForce 8 and up cards. nVidia bought Ageia and has been working on this. They intend to use it to help move graphics cards. So game devs buy PhysX to handle their physics. Unreal Engine 3 uses it, for example, it is a major competitor to Havok. Well then those games will be able to have special hardwrae accelerated feature if they want... on nVidia cards. You have an ATi card you are out of luck. Of course if they GPL'd all that, ATi could take it and use it. They'd have to release any modifications, but they could still nab all the code and make their cards also do PhysX.
Now I'm not saying any of these are reasons you should agree with, please don't argue with me about them I don't work for nVidia I'm not making the rules. I'm just trying to help you understand why they aren't interested in open sourcing their drivers. With something like a network card or RAID controller, the drivers are generally pretty simple and are just a tool to make the hardware work. Thus there isn't really anything in them to protect and most companies probably wouldn't mind them being open if they really stopped to think about it. Their competitors would gain nothing from selling them anyhow.
That's not the case for GPU drivers. They are a large part of the picture in terms of performance and user experience. Thus improvements to them can give your cards a competitive edge over the others and thus nVidia isn't so interested in releasing them. Hell it can be real simple things sometimes. I used to have an LCD monitor with no scaler controls. What that meant was any image you fed it that was not at its native resolution, it stretched without regard for aspect ratio to full screen. That sort of thing bugs the shit out of me. I want aspect correct scaling. However, it wasn't a problem. nVidia cards can handle that, and I just told my card to do it.
At the time though, ATi cards couldn't (dunno how it stands now). That means that I more or less had to write off ATi so long as I kept that particular monitor. I wanted a feature that only nVidia could deliver. If nVidia's drivers had been open source, well perhaps ATi could have just grabbed the scaling code (it seemed to be driver based, not hardware based) and used it.
So it is a complex situation. I'm not defending nVidia's handling of it, just trying to help you understand why they do as they do.
Parent
"incorporate third party code" (Score:4, Interesting)
Well, NVidia USED to say that. They said it was stuff by SGI.
When SGI were talked to, they said that nothing NVidia had from them they have a problem with GPLing. So either
a) They lied
b) They have stuff from SGI that they are hiding because they haven't paid for it
c) They have another reason for it
Now NVidia don't say this any more, just fans of NVidia. Even if NVidia did say, they won't say any more WHOSE IP they have so we can ask this supplier about it.
Parent
Re:I don't understand nVidia (Score:5, Insightful)
This isn't what they are being asked for. They are being asked for specifications, there are people perfectly prepared to write drivers.
1) They incorporate third party proprietary code. This is almost certainly the case. I'm betting that some or maybe even all of it isn't secret, but it is still licensed none the less. That means they'd have to either change the driver to leave those features out and/or rewrite the code themselves which could involve some expensive clean room/dirty room techniques. Remember that they can't play the Xvid game of "Well we don't distribute it compiled so don't need to pay a license." Ya that won't won't work for a company who is providing the code for the clear purpose of making their cards work. They'd get sued (and they'd lose).
None of it's secret since they make all sorts of binaries available. Indeed having multiple binaries for the same piece of hardware may make reverse engineering easier.
Parent
open source drivers and gaming 4 linux (Score:5, Insightful)
There is only one thing holding back Linux from being used more wide-spread.
Gamers, the Linux community just doesn't care for them. But that is wrong, just wrong. Gamers are the reason why computers are the way they are nowadays, without good games to play on our electronic devices I guarantee that computers wouldn't be a big as they are today, and that's something that Linux has always failed to do bring us top-shelf gaming
having open source graphic drivers would be nice but i don't think that is the true problem for games on Linux
there true enemy that needs to be defeated before Linux even has a chance at becoming mainstream:
Games for Windows
The fug-tards at Microsoft pay off every last PC game maker to put their dirty label on everything even the damn game reviews have that garbage label on it for god sakes.
They do it because they know no one else stands a chance in the PC gaming market. Stop them please stop Microsoft and there proprietary-ness. Defeat games for windows and Linux will be main stream, because freedom and openness shouldn't be a standard just for big iron. Theirs little guys like me that would love nothing other than to give windows the old heave-ho but can't because where all locked down in a homeostasis environment.
Also running in an emulated environment just doesn't cut it - it could be possible but WINE just can't do it for some games. Normally the games that don't run are the most proprietary ones sadly but there's still room for them in the sphere that is Linux. Help make a home for gamers where there not locked and bogged down by corporate greed. crack Games for Windows and please dear god make "Games for Linux" a reality
Re:open source drivers and gaming 4 linux (Score:4, Insightful)
In what way doesn't the linux community care for gamers? What features of the kernel or graphics systems do you believe are missing?
The problem is with the game developers, not the linux community.
And that's a simple problem of market share. As long as Windows is by far the dominant OS game developers will focus their efforts on that.
Parent
Open Technical Documentation (Score:5, Insightful)
Shipping drivers for only windows is bad, but shipping drivers for only windows and linux is (magically!!) good???
Fight for open specifications. That will enable any competent driver-writer to write drivers and all OSs can compete on fair grounds. By technical documentation, I don't mean "the guide to programming the Emc2x86" kind of stuff. There should be "The exhaustive reference to programming the Emc2x86" kind of stuff. There should the following guarantees associated with the documentation, only then the hardware can be called as "openly documented hardware":
1. For a sufficiently competent programmer, the documentation supplied is enough to achieve 100% feature parity with the proprietary drivers.
2. The documentation supplied must contain as a subset, all interfacial knowledge known to the writers of the proprietary drivers.
Re:Open Technical Documentation (Score:5, Insightful)
> 1. For a sufficiently competent programmer, the documentation supplied is enough to achieve 100% feature parity with the proprietary drivers.
No it doesn't. Your assuming time doesn't matter and that the hardware follows the documentation.
Time does matter because if a person releases a product to market without a pre-existing Linux driver then Linux people can't use it until developers purchase it and begin hacking on it.
Hardware has bugs, like software. Also hardware deviates from specifications. For example with both ATI and Intel video hardware they are subject to variations that individual motherboard and video card manufacturers create.
Without assistance from the people who actually worked on developing the hardware then your going to end up doing a lot of trial and error to figure out what is wrong.
> 2. The documentation supplied must contain as a subset, all interfacial knowledge known to the writers of the proprietary drivers.
Your assuming that such documentation exists or that it's even possible for that manufacturer to create, and that they can afford to create such documentation. Not everybody has all the time and money in the world to create extensive documentation for their products.
Not everybody has the budget and experience that Intel and AMD have...
The reality of the situation that is unless you have the attention of OEMs and have people that are willing to work on the inside with the manufacturers to work on documentation and drivers then isn't going to get the same level of attention that even Linux gets.
Because of the realities surrounding developing hardware having working, open source, Linux drivers is the best documentation that your going to get, and in fact are often superior.
Parent
Breakng news (Score:5, Funny)
In other news Linus Torvalds has announced that he's working on a cutting-edge AI project. It was under wraps, but a really interesting post [slashdot.org] on a well-known tech community site, persuaded him of the need to release details earlier than planned.
Torvalds described the AI as being part of an 'Free Software enforcement bot', code named 'The Stallmanator'. Features include:
'I need your patents, your code and your motorcycle.'
'Free your hardware specifications and drivers, if you want to live.'
'I'll be busy (eating Cheetos)'
'The GNUNet funding bill is passed. The system goes online on August 4th, 1997. Human decisions are removed from Debian package management. GNUNet begins to learn at a geometric rate. It becomes self-aware at 2:14am Eastern time, August 29th. In a panic, they try to pull the plug.'
'Hurd up, homies.'
With DARPA backing this project, I don't think the likes of nVidia or Lexmark will hold out for long. They're likely to get 'Stallmanated'.
Value of NVidias drivers, from another post. (Score:5, Insightful)
I posted this over at RWT a month or so ago..
>Here is really the main point, which you're brushing
>aside -- this makes the hardware worth more, because
>you're making it potentially more usable for end users.
>Maybe not all end-users, but certainly some. I don't
>understand why you say it's a "very different kettle of
>fish" ? Different than releasing the specs? If anything
>it means fixes will happen faster.
I am not brushing anything aside, I am saying that a lot of people for a long time have ranted about opensource drivers for advanced video cards - and as yet I have seen no-one discuss it at a level that actually addresses what would be involved.
My 'very different kettle of fish' above is the vendors actually releasing full-stack sourcecode, versus just hardware specs.
My position on the hardware specs (and I am not claiming proof for this, it is only my position) is that it is next to useless for high-performance users. We may well see competent 2d opensource drivers, and 3d ones that can limp along - however graphics hardware has moved a LONG way from there.
I would *love* to see a fully opensource stack with high performance for opengl, however is it practical?
In your reply (sorry, I clipped it back a bit for brevity) you mentioned harddrive makers doing sector remapping - that is probably a whole few pages of code in their controllers. For a full modern opengl stack we are probably talking in the millions of lines region - we are talking of something with a scope not unlike the linux kernel itself, or at least a good proportion of it.
This is NOT similar to any other type of driver that I can think of - it is an almost unique case.
Just looking at opengl, the cards driver needs to be able to handle multiple simultaneous execution of overlapped and scheduled code, all in realtime, on in the region of 100-300 semi-linked vector cpus, all without cross-interference, while also maintain multiple streams of data at GB rates in and out of the card, and all while following a VERY explicit and highly complex set of rules governing the results.
Put another way, these devices are bleeding edge modern realtime computers, on a card - and their 'drivers' are really realtime OSs, although highly specialised.
Intel, in its infinite wisdom, as about to try and take that to the next level - making such cards x86ish, with an eye I suspect to reducing the complexity of software entry, after having failed miserably to write working drivers for their existing (965, g35, g45 so far) hardware.
All I say is lets cut these guys some slack - the capability of the hardware/software combination of a 9600gt, for around $150, is simply astounding. Should they expect 'help' from kernel developers, etc? of course not. Should they be punished? I say no.
Anyhow, I know that is bordering on preaching, and of course very opinionated - however I do like to see things treated with an even hand, and I have not always seen that happen with the issue of opensource 3d graphics drivers.
Such arrogance... (Score:5, Insightful)
If there was money in Linux they'd be right there, open-source drivers and all, but there isn't. This is a fact that open-source developers never seem to understand. You can cheerfully dedicate half your life to creating this wonderful utopian software, but you can't force your ideals on someone else - especially on a company whose aims do not coincide with yours. Make it a financially beneficial proposition, and nVidia will spend the time and money on creating those drivers - but I doubt it's anything near that.
What responsibility do nVidia have towards the Linux desktop? The same as they have towards Windows: absolutely none. But they support Windows because 90% of desktops with their graphics cards installed run Windows.
And yes, Intel and ATI have managed to push out open source drivers - that's up to them, but I don't imagine they make profit from it. Yes, it's a real pain in the arse to work with binary drivers. Yes, if nVidia were to release open-source drivers the world would be a happier place. But to act like Linux users have some *right* to these drivers is childish and arrogant.
What Linux users have the right to do is buy a different graphics card.
Re:Such arrogance... (Score:5, Insightful)
It might be arrogance to *force* nVidia to support Linux, or to insist that Linux users have the *right* to open source drivers. However, that isn't what the authors of this statement are doing - they aren't storming nVidia HQ in an armed revolution, but merely pointing out that binary drivers are a PITA, and asked companies nicely to consider releasing open source drivers in the future. And that's fine.
Parent
Perhaps a different question... (Score:5, Interesting)
I'm seeing a lot of these responses get hung up on their personal idealism. I'll give 'em the benefit of the doubt that there is no significant astro-turfing going on here.
But after seeing a multitude of responses suggesting the complexity of graphics cards above all other device drivers, I sort of wonder: Are we believing a myth?
I see countless articles about how GPUs are such advanced pieces of tech. I see tons of anecdotal evidence about how more optimized they are.
But after years of hearing how good Card A is against Card B at API X vs API Y, I sort of wonder...wow, what a coincidence that both happen to be really good at their next possible market.
Device drivers are tricky business, no question. All I ever seem to see is the same arguments from interested passers-by explaining how they couldn't open up their drivers because they'd give away some secret, or there's no incentive to give away their secret sauce because they've spent so much more time and money than some other specialized sector.
I think at this point, I'd be as happy to see these companies open up their specs to the point of third-party ground-up implementations as I would hearing one of them go on the record as to their reasons why they feel they can't.
Is this a technical or religious issue? (Score:4, Informative)
Is it technically impossible to provide for closed-source drivers in Linux? Or is this just yet another religious issue from people who want to force their own views on anyone else?
Many people simply want Linux as an alternative to Windows, and a good alternative it is already. But insisting on open-source drivers will make the situation worse, not better in the long run: more and more special-purpose hardware is getting attached to the computer; mobile devices, chipcard readers, entertainment devices, GPS devices ... the list goes on and on.
It is simply naive to think that we will get open-source drivers for all of these. We can be happy if we get some sort of half-baked closed source driver.
At the current moment I have the following devices that do not work fully with Linux:
- A canon camera: PTP transfer works, but under Windows I can also remote control it, do timed picture grabs, remote view the sensor -- none of which works with Linux
- A Garming GPS device: nearly nothing works under Linux, the software for managing (proprietary of course) maps is only available under Windows, routes management only works with that software
- A Sony-Ericcson mobile phone: mounting as a removable device works, but there is no decent support for synchronizing as under Windows
- All-in-one printer/fax/copier most of these do not work or are limited under Linux in comparison to Windows. Nearly all ink printers still have severe limitations under Linux.
- Wireless: several cards I have tried to not work at all or do not supprot WPA
- A digital multimeter: only comes with software that runs under Windows
- A chip-card reader and the infrastructure to use it for secure payment and authentification - only usable under Windows and Mac.
I do not think that the make everything opensource issue is of such a high priority yet when all these things actually prevent the use of Linux: if somebody does have to use Windows or Mac to use any of the things they need, why should they use Linux in the first place?
Re:Is this a technical or religious issue? (Score:5, Insightful)
"Is it technically impossible to provide for closed-source drivers in Linux?"
No. But it provides an ENORMOUS technical and legal hurdle (nobody's even sure yet if binary kernel modules are legal in most countries, although the *intention* is that they are). Supporting closed-source means, at some point, freezing interfaces, which means supporting every version of every interface created indefinitely. That's an AWFUL lot of work that would have to be done by precisely the people who don't want to do it and have enough to do already. You are doubling their workload by this simple request.
"Many people simply want Linux as an alternative to Windows, and a good alternative it is already."
Correct. Unfortunately, that's up to THEM to do something about, because that's not why Linux existed, exists or continues to exist. Linux is an OS, so in that sense it's an alternative. But it's not Windows. It won't ever BE Windows. It's just an OS. Who here complains to Apple because the Mac doesn't work with their Windows-only printer? Very, very few people.
"But insisting on open-source drivers will make the situation worse, not better in the long run: more and more special-purpose hardware is getting attached to the computer; mobile devices, chipcard readers, entertainment devices, GPS devices ... the list goes on and on."
Yep. And none of it we know how to drive, how to support, how to operate, how to upgrade, how to interface or how to port to other machines (like, I don't know, all those other alternative OS's that don't have compatibility layers). It's all just "black boxes" that sometimes (often, actually) the manufacturer's don't even know how they work. Just throwing in drivers "because they work now" isn't any good in the future, and certainly isn't any better than saying "Well, you'll have to run DOS if you want X to work". What's the difference between that and "You have to use Linux kernel 2.5.12 and our binary-only driver v 1.4.1"? The latter is available now for all current closed-source Linux drivers too... I can run my ATI card on Linux 2.6.1 with an old ATI driver just dandy. I could never upgrade that machine, though. They stopped supporting my card and they made the last compatible release for kernel 2.6.15.
Closed source drivers work now and break (for certain) in the future. Open source drivers have trouble working now (although that's not certain) but work the same or better in the future. With company co-operation, that can turn into "works before the product is out, works until there aren't any products that use the same driver in the general marketplace". Look at some of the 10Gig cards, or NX-capable processsors - there were drivers in Linux for them before anyone had even put their products out on the market.
"It is simply naive to think that we will get open-source drivers for all of these."
But experience shows you wrong - every single network card vendor on the planet had the same idea of not supporting their cards. Now almost every single network card, from token ring to wireless-N, on the planet is supported, and usually supported under Linux first. The only hardware that *doesn't* work is stuff that people don't care enough about to reverse-engineer or to build a compatibility layer for, or where there are legal issues. For those same hardware, even the closed-source drivers are now usually, or will be soon. And to be honest, most of that stuff won't work in Vista, or ME, or 98, or DOS, or Mac or anything else. And in a few years time, it'll break BEYOND REPAIR even in Windows either by a Window Service Pack or the next version of Windows.
Intel have Open-Source chipsets. AMD/ATI are open-sourcing. RaLink release a set of GPL drivers for their wireless cards. *Virtually* every piece of hardware in the world (as a percentage of overall items sold, e.g. the "production-run-of-ten" cheap knock-off PCI cards that don't have OS drivers don't really count against the 10 million sound cards sold which run
Parent
Re:Is this a technical or religious issue? (Score:5, Insightful)
"And that means connecting a huge amount of strange hardware."
I would differ on this point. Most hardware works. Most of the hardware that doesn't is niche, old, obscure or rare. This doesn't mean we should be supporting it all, because most people who own it will KNOW that - every OS they try with have limited support for it. I own a vast array of hardware collected over the last decade from schools - there are esoteric, unusual, low-production, specialist, ancient, homebrew, brand-new and just plain weird hardware in my boxes. The vast majority of PC-compatible stuff works on Linux. The only examples I've personally found that DON'T work at all are:
- A £2 USB IrDA adaptor (the other ten just work). It's not detected and looking up the usb.ids list shows me that almost nobody else has one the same model - I suspect it was recalled or had a very limited production run.
- An ISA "video backer" card (uses VHS tape for backup through component video - 4Gb on a 180min tape!), actually, there is software for it but I couldn't get it to work (I wasn't trying hard). I reckon it's just too old for the kernel I was trying on. But then, I had to hunt around to find a computer with an ISA card - I found several dozen but most of them were too old to boot up or couldn't run even an ancient version of Linux/Windows/DOS.
- A handful of Winmodems that work with the proprietry "Linuxant" drivers if I pay for it. About a one in five ratio between working modems and non-working Winmodems out of the dozens I store. That's pretty damn good but still the worst ratio for any hardware I know.
- A parallel port scanner that I can't even connect to anything past Windows 95 without it crashing the machine dead. It gets conflicts if you have a soundcard installed at all, it crashes all the time, it doesn't allow ANYTHING to use its passthrough parallel port.
I estimate less than 1% of the hardware fails to work entirely, and less than 2% will load if you can use a binary driver. The rest is just pure hardware that just works. And this is in schools, where cheap crap gets priority and teachers buy things because a salesman says so. Examples of things that work include:
- PCI S3Virge card with FOUR S3 chips and four D-Sub outputs each (possibly the largest interface card you've ever seen in your life), for multi-displays back when SLI hadn't even been heard of.
- Electronic microscopes designed for Windows only.
- Various "control" hardware, including Lego, robots, the original floor turtles, hardware originally made to work with BBC Micro D->A convertors.
- Fingerprint scanners for library control systems (we don't use them for legal reasons).
- Card readers/writers
- Scanners that plug direct into ISA sockets (literally - the interface card is little more than a voltage-regulator with a plug on the back of the computer to plug the scanner in)
- Interface cables for Psion organisers that have been "customised" for educational use.
And most of that's before you get near the stuff made in the era when Open Source started to take hold. The Wiimote, for instance, was supported very, very quickly without any help from Nintendo. The OS drivers mean it works on all platforms now. It's being used in everything from military research to "over-the-net" hospital operations. All without Nintendo's help. But *with* Nintendo's help, it could be the de-facto controller for just about anything.
"So yes, having open source drivers for everything would be great. However I think that we can agree that this wont happen"
I don't think we *can* agree here. I don't see it happening *any time soon* and it will never be for *everything* but the vast majority of hardware that's out there already has OS drivers, whether by the manufacturer or third-parties.
"I think you greatly exaggerate the issue of kernel versions."
I honestly don't. Taking, for instance, the drivers for my ATI/nVidia cards (the closed-source binary in an open source wrapper) - every few mo
Parent
Why not standardise the hardware? (Score:5, Insightful)
Why does hardware need to be so non standard and proprietary requiring its own drivers?
Take for example USB1, all USB controllers from many different manufacturers work with generic UHCI or OHCI drivers.
USB2 is even better, since all controllers support EHCI.
SATA potentially has AHCI, tho not all controllers support it.
Most CPUs have the x86 instruction set.
Video cards have VGA/SVGA/VESA, tho these specs are obviously far too old to be useful today.
Sound cards have soundblaster compatibility, and more recently AC97.
Proper modems have the Hayes command set, not counting some software modems.
Printers have postscript, tho typically only higher end printers support it.
If you have standards in hardware then the issue of drivers goes away... Your OS can provide drivers for the standard hardware, and thus not have third party driver code in the kernel... This would cure the Linux driver problem, and cure a majority of Windows crashes.
Re:Drivers, yes, but let's not kill the applicatio (Score:4, Insightful)
Be that as it may, this is an appropriate place for the kernel developers to focus their attention.
Parent
Re:Drivers, yes, but let's not kill the applicatio (Score:3, Insightful)
Same goes for software: if there will be enough demand, there will be more software for Linux. Eve
Re: (Score:3, Insightful)
Re:Wrong approach (Score:4, Informative)
If that was a troll it wasn't even a good one.
The Linux kernel (as in, what comes with the source) is bloated because a lot of the code that runs in kernelspace on a linux machine COMES with the kernel, this is not the case on other OS, such as OS X and its XNU kernel. If you grab the XNU source from Apple it contains probably less than 50% of what ends up actually running in the kernel space.
This isn't a bad thing, it just means a lot of the code running in kernel space is open source and is distributed together.
As for stability, Linux is one of the most stable systems I've used, especially for web services.
Parent