Every now and then I get a bit overly excited and proclaim that
Linux is 6 months off dominating the desktop.
In some ways this could happen, particularly in corporate
environments where it's important for people to be able to hot desk
and for the IT department to have total control over the systems--no
games, no dodgy themes and certainly no Word macro viruses.
The barrier to the desktop is that people are used to ease of
installation for hardware and gurus in this area are few and
expensive. It always amazed me the amount of fiddling one had to do to
get something like a scanner or sound card working in DOS. The Mac
had always been incredibly easy in this way, no fiddling with IRQs and
all that crap, so DOS seemed like a real step backwards.
Linux takes us back to those bad old days of DOS. To get a
soundcard running I have to decipher the barely readable output of
pnpdump and then work out what options my sound card takes.
Of course to get it working I need to find out what IRQs, memory
addresses and DMA channels are in use on my machine. Then, if I'm
lucky, I can insert the appropriate modules and mabye get sound.
I tried this last weekend and finally got it all going, only to
find that all sounds were repeating as if it were playing each chunk
of audio twice. The IRQ wasn't in use but changing the IRQ fixed it.
Why?
Now I know that this should be an issue for the manufacturers of
hardware devices, but they don't care enough yet. In order to make
them care we need enough people using the platform that they have to
support it.
Why can't isapnp be integrated with the modules and devices be
automatically loaded? The only barrier I see to this is the
requirement of a database of identifiers for each peripheral. Come
now, how hard would that be for some talented hackers? Hell, instead
of taking the Windows model of the database being on the hard disk,
why not stick it on a web server somewhere and have it queryable by
whoever needs it? That way when new identifiers come out it'll
already be in the database and the person who managed to get it
working can finalise the record.
If I could code I'd be in there but
it's not my thing. I'll happily document it! Drop me a line if you
want to do this.