On Friday 28 November 2003 11:58, adam@thebowery.co.uk wrote:
Also to be honest there is more Linux supported hardware out there than there is supported by Microsoft, just most home users don't have S/390s, PA-Risc, Sparc, Mips, ARM etc. etc. kit at home :) of course its the low end of the hardware/computing market that Linux is still having troubles with although I can't think of any type of peripheral that isn't supported in Linux, you may have to shop around to find exactly the right item that will work.
I was talking about this with someone else the other day.
The main problem I think is that it's not only the drivers that are designed around Windows, but the hardware too. Winmodems and there recent offspring Winprinters are such examples of devices which I feel go against the whole Unix philosophy
As soon as you move the device's intelligence from the device into the driver you have a problem in the Unix world. Either your driver is going to have to run in userland or some bloated cruft, that's specific to only one device out of 1000's is going to have to be inserted in the kernel (or loaded as a module)
Now after witnessing some of the nasty buggy and bloated drivers I have to deal with in Windows, I don't want the same put into my kernel (even as a module).
Hardware devices should be as simple as something to stream data to or from. Device drivers should not be drivers but more of a hardware capability description, like in the old days.
We see Linux incompatibility more on the cheaper devices because it's on them that it makes more sense to move as much as possible into the driver.
Move up to the higher end, and you'll see that the hardware becomes more complex and the drivers more simple. For example I have yet to find a SCSI device that will not work on Linux.
Recent versions of Windows can be very stable, it's the nasty third party drivers that cause most of the stability problems. Given the choice between Windows instability and lack of support for some cheap and crufty £30 printer, I'll take the latter thank you.
Also the more of a device that lives in the driver, the less chance of the manufacturer releasing the driver code, and the less trivial it becomes to create a driver from the device specs. If manufacturers put the "secrets of their proprietary inkjet dither technology" back inside firmware where it belongs then writing drivers would be a lot easier.
Phew...glad I got that off my chest.