Slashdot Mirror


Novell Delivers Device Driver Breakthrough

An anonymous reader writes "Novell today announced a new Linux device driver process to make it easier for third party device driver writers to integrate their drivers with SUSE Linux." From the article: "The new driver process allows customers to obtain drivers independently of Novell® kernel updates and supplies a straightforward approach third parties can use when developing device drivers for Novell's SUSE® Linux Enterprise products. The new Linux driver process developed by Novell allows hardware and software vendors to provide Linux drivers and driver updates for their products to customers directly and transparently, in a way that is completely integrated with SUSE Linux Enterprise delivery and support."

50 of 241 comments (clear)

  1. Marketing blurb by McGiraf · · Score: 2, Insightful

    The Article is a merketing blurb, anybody knows how it's actualy implemented?

    1. Re:Marketing blurb by AKAImBatman · · Score: 3, Insightful

      The Article is a merketing blurb, anybody knows how it's actualy implemented?

      Indeed. They keep using the word "process" and I keep thinking "Microkernel!"

      In reality, it sounds like a simple driver abstraction layer which will allow commercial entities to plug in binary drivers without any fear of the GPL.

    2. Re:Marketing blurb by McGiraf · · Score: 5, Informative

      No even an asbstation layer, they are just syncronising driver updates and kernel updates.

    3. Re:Marketing blurb by Serapth · · Score: 4, Informative

      Ahhh... the click through link gives alot more details. http://developer.novell.com/wiki/index.php/Categor y:Partner_Linux_Driver_Process

      So basically they are setting up a method for vendors to submit driver updates through them, then distributing them with YaST if the versions dont match.

      Again, not seeing the breakthrough...

    4. Re:Marketing blurb by Schraegstrichpunkt · · Score: 4, Insightful
      Indeed. They keep using the word "process" and I keep thinking "Microkernel!"

      Well I hope it is! The last thing we need is a whole bunch of obscure binary blobs running in kernel mode!

    5. Re:Marketing blurb by Schraegstrichpunkt · · Score: 3, Interesting

      Ah, never mind. This looks basically like an "apt-get upgrade" for drivers, rather than some new ABI.

    6. Re:Marketing blurb by shutdown+-p+now · · Score: 4, Insightful

      From the point of view of your average home desktop user, being able to install any 3rd-party driver with a single click (and a uniform installation process!) and then automatically track the updates to all installed drivers whenever kernel is updated is a breakthrough. For developers, it means that they no longer have to wait for the distributor to package the driver for YaST - they can do it themselves, retaining more control over how things work.

    7. Re:Marketing blurb by LnxAddct · · Score: 2, Interesting

      What about signing the packages? I like having my packages signed by my "vendor", not a bunch of 3rd parties. If my vendor signs it, it implies that they've ran it and tested it(at least I hope so). It also stops me from having to import a whole bunch of gpg keys, etc... Where is the quality control in all of this?
      Regards,
      Steve

    8. Re:Marketing blurb by dmurphy_58 · · Score: 2, Interesting

      Back in the early 90's Novell was able to run their Lan drivers under any 32-bit OS, Windows ( 3.1, 95/98, NT, XP), Os/2, NetWare and UNIX (transmogeifier) (see UNIXWare). Given an appropriately closely tied abstraction layer to the hardware, its possible to have appropriate layers to interface to different OS, smp or uni-p. Wonder if they have taken this a step further with the System Abstration Layer (SAL) developed for their Directory Services.

      --
      dmurphy_58@yahoo.com
  2. No need for Suse Linux by bizzynut · · Score: 5, Funny

    Plan 9 offers everything you would expect from a modern desktop OS. So there is no need for Suse Linux.

  3. When my copy of Windows fails... by Osrin · · Score: 5, Insightful

    ... it is generally the result of a badly written 3rd party device driver, and the inability of the OS to protect itself from that driver. Have Novell delivered a major breakthrough here (as the article suggests) or the beginnings of a major headache?

    I know there will be replies about how the architechure of Linux protects us from some of the risk, but in reality 3rd parties will circumvent any device driver model in an effort to make their device perform optmally, even at the expense of the wider platform.

    1. Re:When my copy of Windows fails... by suv4x4 · · Score: 3, Insightful

      When my copy of Windows fails... ... it is generally the result of a badly written 3rd party device driver, and the inability of the OS to protect itself from that driver.

      When Linux simply doesn't want to work with a device that's missing device support in the kernel. Which is better? You can opt not to install a bad driver, but if you can't have a driver, your don't have the option in the first place.

  4. Something is breaking, that's for sure by Wesley+Felter · · Score: 5, Informative

    This "breakthrough" requires device vendors to recompile (and possibly port) their driver for every distro, every time that distro updates their kernel ABI. The only thing that has really changed seems to be that Novell will keep track of when the kernel ABI changes and notify driver developers.

    1. Re:Something is breaking, that's for sure by pnatural · · Score: 3, Insightful

      I'll bite, troll, cause I'm bored and you're an especially easy target.

      Before this, there was almost no hope at all to get a working driver installed in less than 4 hours.

      Wrong. There are many options to getting a driver in less than 4 hours. I did it just this morning (dropped the rt2500 driver back to the pre-smp ebuild). Time? Including compile, less than 5 minutes. I even restarted the network interface without dropping any existing ssh connections.

      For all the people out there that are about to go on about apt-get or some stupid distro, here [sic] this: give it up.

      See, a distro is a kind of linux operating system thingie, and a apt-get is a package management system thingie. Google is your friend, try looking up concepts once in a while.

      Your "points":

      We need to get a truly working pluggable driver model.

      The content of your post clearly presents the fact that you are not part of the "we" here.

      We need to have a registry to track applications, and their installation paths, and installation parameters. (This will help with the install, uninstall, and dependency headaches)

      Linux needs no registry. Refer to /etc where everything related to a system-wide configuration belongs.

      We need a unified configuration system and configuration user interface.

      There are several: xterm + vi, aterm + emacs, konsole + nano, the combinations are nearly endless!

      We need a great GUI development IDE

      Again, several. The one that rocks the most IMO is KDevelop for GUI stuff. Emacs works for everything else.

      We need to not release products with 200 dependencies that change every 4 weeks

      Reference? Oh, wait, no, that sounds like hyperbole.

      The only thing Linux has over other operating systems right now, is price.

      You meant to say:

      The only things Linux has over other operating systems right now are price, power, flexibility, and freedom.

      As my children (who use Linux) would say: Go away little boy, and take your long nose with you.

    2. Re:Something is breaking, that's for sure by morcego · · Score: 2, Insightful

      We need to get a truly working pluggable driver model.

      I really hope you mean a driver abstraction layer. In that case, I tend to agree. That is more or less what we have with ndiswrapper, btw.

      We need to have a registry to track applications, and their installation paths, and installation parameters. (This will help with the install, uninstall, and dependency headaches)

      Give me a break. Have you ever heard of package managers ? A registry, on the model you are implying, is just stupid.

      We need a unified configuration system and configuration user interface.

      We do. It is called VI. People really should not try driving a car without knowing how to drive. Why should computers be different ?

      Half of the problems I have seen happening on Windows servers happen because it is "so easy to configure", so any half-moron think he can do it.

      Configuring Windows is not easier than configuring Linux, at least if you want to do it correctly. It is just easier to pretend you know how to.

      We need a great GUI development IDE

      Like Eclipse ?

      We need to not release products with 200 dependencies that change every 4 weeks

      What distro are you using ? You should try an enterprise oriented one some day. I suggest CentOS, but YMMV.

      The only thing Linux has over other operating systems right now, is price.
      The Flexibility open source should provide is hampered too much by the above listed problems.


      Or by people who have no idea what they are talking about making statements like those.

      Seriously, except for your first point, which is partially true, the others are just nonsense.

      --
      morcego
  5. Shim driver? by tepples · · Score: 3, Informative

    This doesn't have anything to do with that recent NV/ATI GPL violation story, does it?

    (after reading Novell's intro page and the FAQ) It's not a shim driver: "A driver is linked to a specific kernel version via Kernel Application Binary Interface (kABI) metadata. ... In the event of kernel updates Novell will notify partners about possible changes to the kABI". This is just a new process by which established device manufacturers can work with Novell, not a shim driver to create a stable kernel ABI.

  6. Version numbering by pe1chl · · Score: 4, Informative

    I am a longtime SuSE Linux Professional user, and I always wondered why they change the externally-visible kernel version number for each security update.
    This makes binary and externally compiled drivers (including nvidia and vmware drivers that I use) break on every kernel update, and probably unnecessarily, The chances that anything changes to the driver interface because of a security patch are probably very slim, and they could always change the version in case a major change is made.

    But now, it is just an annoyance. I need to install their patch, reboot into textmode, re-make the vmware and nvidia drivers, and again reboot to go back to fully functional operation. And I know how to do this. A beginning user is happy to finally have such an install/compile procedure behind him, and not at all happy to see the whole thing break after YOU installed a kernel patch.

    (not to mention the fact that it can take him quite some time to find out that the kernel patch is the reason, and how to fix it)

    1. Re:Version numbering by Shisha · · Score: 2, Informative

      This makes binary and externally compiled drivers (including nvidia and vmware drivers that I use) break on every kernel update, and probably unnecessarily

      Unfortunately this is because the ABI _could_ change on every recompile. Hence the kernel version number has to be changed to reflect the fact that some drivers might be incompatible.

    2. Re:Version numbering by lmfr · · Score: 2, Informative

      You don't need to reboot.

      1. init 1
      2. install driver
      3. init 5

      (or, instead of init, telinit. It's the "correct" way)

      BTW, if you can install the drivers without human intervention (in nvidia case, you need to extract the files from the package first), put something like this in /etc/rc.local (or /etc/rc.d/rc.local):
      modprobe -q module || script_to_install_driver

  7. ok... by reynaert · · Score: 5, Interesting

    This is only going to work if you're using SuSE. And if you don't compile your own kernel. It only gives vendors an excuse to call their shitty binary-only drivers "Linux support". I'd call this thing a Linux driver setback.

    1. Re:ok... by jejones · · Score: 2, Insightful

      Besides, it's not like they are lying: the drivers allow you to use their hardware with Linux, what should it be called if not "Linux support"?

      Can I use the hardware with Linux on ARM? MIPS? PowerPC? Do they guarantee feature and speed parity with Windows drivers? Will they continue to support the hardware, or, like ATI, will they only bother to support their most recent hardware?

      At best it's monogluteal Linux support.

  8. Re:Breakthrough? by dr_dank · · Score: 2, Insightful

    they are designed to hide bugs in the hardware/firmware,

    I was always under the impression that the specs were closed to ward off copycatting from competitors.

    --
    Where does the school board find them and why do they keep sending them to ME?
  9. Re:Breakthrough? by uucp2 · · Score: 3, Insightful

    It is a breakthrough, because having a shitty, flaky, unfixable and unsupportable binary-only driver is better than having no driver at all. Don't use it if you don't like it. As someone who writes closed source device drivers, I sincerely welcome this. Now, if someone just convinced Linus to add this (or similar functionality) to the "vanilla" kernel...

  10. Re:Breakthrough? by Homestar+Breadmaker · · Score: 2, Insightful

    "It is a breakthrough, because having a shitty, flaky, unfixable and unsupportable binary-only driver is better than having no driver at all."

    No, its not. See how when you want to use an ethernet adapter, you just put it in the machine and it works? See how when you want to use a wireless adapter, its a huge hassle, barely works, and will likely cause you machine to randomly hang?

    If people keep accepting binary only shit like this, then the situation will just keep getting worse. Soon, you won't be able to buy any hardware that works, you will only be able to buy hardware + crappy driver for some OS you may or may not use. Demand documentation so the people writing the kernel can write the drivers, and everything will work smoothly and without any hassles, in any OS.

  11. Looks like an update to YaST. by khasim · · Score: 2, Funny

    From what I can see (too much marketing crap), it looks like they have an option in YaST to add an ISV's repository.

    So, the ISV builds a package for their module and sets the dependencies and YaST allows you to update the module/kernel without breaking the dependencies.

    Not much of an accomplishment at all (if that is all there is to it). Which would explain why they resorted to so much marketing crap in their announcement.

  12. Re:Breakthrough? by Homestar+Breadmaker · · Score: 2, Insightful

    Copycatting what? What memory address to write what bytes to? What is copying that going to accomplish? All it would do is let your competitors write drivers for your hardware, it wouldn't help them copy your hardware in any way.

  13. Re:Breakthrough? by IAmTheDave · · Score: 4, Insightful
    Why is having shitty, flaky, unfixable, unsupportable binary-only drivers a breakthrough? Closed vendor drivers suck, they are designed to hide bugs in the hardware/firmware, and are written by people who don't know the first thing about the OS they are writing drivers for.

    This argument is repeated time and again here on Slashdot and the fact is it is rediculous. Want to know why? Because Novell's customers want it. In fact, they want Suse Linux to run on whatever white-box thrown-together-component list they decide, and having vendors supply drivers to reach that goal makes Novell a more attractive company.

    Novell isn't /. - this is the real world. Compatability = greater acceptance = better marketing position & happier customers = more sales. Period.

    --
    Excuse my speling.
    Making The Bar Project
  14. a new Linux device driver process by special_agent · · Score: 5, Funny
    a new Linux device driver process

    Sounds more like a new marketing process.

    --
    "I now inform you that you are too far from reality."
  15. Novell invents email? by khasim · · Score: 2, Interesting

    So, YaST now has the ability to include ISV repositories ... and Novell will tell people who sign up with them when the interface changes?

    Sorry, but I'm not seeing the "breakthrough" here.

  16. Kernel Building by PenGun · · Score: 2

    Is not as hard as some make out. It's worth spending a few hours learning how to build your own kernel, it will reward you.

      Then we would not have put up with pitiful crap like this quite so often.

        PenGun
      Do What Now ??? ... Standards and Practices !

  17. Re:Overhead? by Todd+Knarr · · Score: 2, Informative

    None. There isn't an abstraction layer. This is just a new process for Novell to notify hardware makers when they patch or build a new kernel, get precompiled binary drivers for their newly-built kernel and make them available to users as part of the security-update download of a new kernel package. It's got nothing to do with the actual driver modules, kernel compilation or anything in the software itself.

  18. Re:Wireless drivers by gr8_phk · · Score: 3, Interesting
    "Does this mean that I might be able to get wireless working without ndiswrapper in the near future?"

    Buy hardware that is supported. Yes it's a pain to do the research, but it's worth it. I have a Shuttle XPC and wanted to install their wireless add-on that doesn't require a PCI slot. I worried about drivers until I found that it uses the ZD1211 chip for which ZyDas provides an open source Linux driver. Then I learned that there is a sourceforge project to rewrite the driver so it's suitable for integration into the mainline kernels - 64bit included. They plan to get into 2.6.17 or 18 kernels, so wireless may well work out of the box when I upgrade to Fedora 6 in the fall. For now it's possible to make it work the hard way (download/compile) without ndiswrapper.

    There are other cards with this chip and there are other chips with native Linux drivers in various states. The future looks good.

  19. Re:Breakthrough? by ender81b · · Score: 4, Insightful

    i hope you burn in hell for writing closed source drivers.

    Sad thing is, this probably isn't a troll. You sound like most of the kernel developers who refuse to make a stable API or ABI.

    You wonder why Linux has such shitty support? Your attitude and the attitude of the devs ... this isn't 1998 anymore, I understand the need for open source drivers so you can troubleshoot issues with both them and the kernel but, come on now, grow up - either figure out a way to make it so binary only drivers aren't a problem with stability, make a certification process, or forever be stuck with having 1/3rd the devices supported, 1/3rd supported poorly, and 1/3rd oblivious to your existence.

  20. So enabling YasT to handle kernel modules... by mr_mischief · · Score: 2, Interesting

    So enabling YasT to handle kernel modules... is now a breakthrough.

    I mean, all this appears to be is distribution of precompiled kernel modules being handled by the package manager. This is not a good thing, let alone a huge advance.

    How about a package manager that downloads the code, lets you inspect, customize, or debug it, then compiles it and adds it to your modules list once you approve it?

  21. Re:Breakthrough? by iserlohn · · Score: 3, Insightful

    Linux got to where is is precisely because of the kernel devs not producing a stable API. Think about it, what would the kernel be if it was stripped of all the drivers? Not much use at all.

    Now that Linux has a large userbase, you're arguing that is ok to relax that since some user wants binary drivers that just work. However, when you go that route, it's hard to go back because everybody *expects* the ABI to remain stable. Instead of improving the kernel, the devs will waste time sorting out ABI issues; not the best use of time.

  22. Where's the "Linux" in this? by tmandry · · Score: 3, Insightful

    It just pisses me off how Novell might be very successful in this, and if they are, it has no benefit for Linux (as in, you know, the free/open source side), and quite possibly a negative effect. All this does is benefit Novell, and once companies write up their drivers, where are the rest of us that use real Linux left? In the dust, and possibly moreso, because now the companies can say with a smile on their faces that they support Linux, and may not ever bother to turn back and support the rest of us. Thanks Novell, for giving the world a stabler Windows.

    1. Re:Where's the "Linux" in this? by a_karbon_devel_005 · · Score: 4, Insightful

      It just pisses me off how Novell might be very successful in this, and if they are, it has no benefit for Linux (as in, you know, the free/open source side), and quite possibly a negative effect. All this does is benefit Novell, and once companies write up their drivers, where are the rest of us that use real Linux left? In the dust, and possibly moreso, because now the companies can say with a smile on their faces that they support Linux, and may not ever bother to turn back and support the rest of us. Thanks Novell, for giving the world a stabler Windows.

      First off, Novell's distribution of Linux is "real Linux." I'm not sure how you think Debian or Ubuntu or whatever is "real Linux" but somehow SuSE, which runs the same kernel, programs, etc., is not. It's foolishness.

      Secondarily, if you're trying to crucify Novell for attempting to make it easier for ISV's to integrate with their software offering, I have no idea how you plan to defend that. The problem with Linux acceptance is EXACTLY the problem of standardization. And since there seems to be no standards in motion for how ISV's should write and deploy Linux device drivers, they started their own.

      What's the alternative to this? From past experience I think we can agree it's either (a) Hope that someone, somewhere comes up with a standard for "all Linux device driver development and deployment" and then hope that EVERY major Linux vendor and packager adopts this standard implementation and process. This is EXTREMELY unlikely and would take ages AND will still leave out some of the thousands of "distributions" on distrowatch and other places. Boo hoo, it's not fair! (b) Continue as we have been where device drivers are implemented in a myriad of different ways by different ISV's and have little to no support from the vendors themselves and NO support from the distribution creator.

      Both of these options suck.

      At least the Novell initiative here makes some promises and puts some manpower on these issues. Even the promise of Novell WORKING WITH VENDORS at all is such a welcome change from, for example, the crap shoot that is installing ISV device drivers with a Debian-like Linux system. I'm not saying it doesn't work sometimes or that Debian is a bad distro... but try to get support from ISV's for device drivers they wrote on, say, Ubuntu and let me know how that goes.

  23. Re:Breakthrough? by TheRaven64 · · Score: 2, Informative
    Interactions with hardware are all of the form 'write this value to this bit of memory.' The documentation will say things like 'values written to location x are set register y, putting the device in mode z' (okay, slight simplification). If I told you the format in which an nVidia card accepts lists of vertices, and the address to which they should be written, would this help you design a better card?

    To move this to the software realm, where I suspect people here are more comfortable, this is like saying that 'if we release the headers for our library, then it is easy for people to duplicate the library.' Tell this to the WINE guys, who have had the headers (and documentation) for the Win32 API for over a decade. Effectively they are saying that the interface is a significant portion of the design. Personally, I would hope that the implementation would be an order of magnitude more complicated than the interface...

    --
    I am TheRaven on Soylent News
  24. Re:Breakthrough? by timerider · · Score: 2, Insightful
    Closed drivers do suck, and they hamper the idea of open-source software.

    You know, the argument about closed-source drivers and "the idea of open source" is getting old. If I'd want a religiously open system, I'd be running debian. Oh well, I couldn't play the games I paid for, but I'd be running a 100% GPL'ed box, so I should be happy with it, right? Since those games are closed source as well, that would be fine, ok, right? What I want is a system that does what I want, the way I want it to (which in my case happens to mean linux, YMMV), and which lets me do the things I want to do (which in my case means installing the closed-source nvidia drivers).

    Open code means that bugs can, and will, get fixed quicker.

    Sure. Then explain why there are so many OSS projects where you can find bugs in the respective bugtrackers that haven't even been acknowledged after several years, and three-figure number of comments from people who stumbled over the same thing? Hunt the mozilla and kde bugtrackers for any number of examples.

    To sum it up, I'm happy with linux as it is, and I'm perfectly fine with the one or other closed-source thing on my box, be it a driver, or any commercial app like moneyplex or the dozen or so games where I've happily bought the linux version.

    oh, and a word to the plan9 advocates... I can't see any reason to install that. any at all. Sounds like BeOS to me... good idea, dies (or shrinks to insificance) due to lack of apps and users. Happened to OS/2 as well, which was a shame.

  25. Ok, I'd say relax people by pavera · · Score: 4, Insightful

    This is only a new process for Novell to deal with vendors to make kernel upgrades more seamless to customers. I don't think this is going to cause all the vendors to release binary only drivers, but for the ones who do, SUSE will now work better with kernel updates. Personally, every system I use has an nvidia card in it and a marvell sata controller which only has a binary driver, about 75 systems btw... So, what kernel am I running? Oh, the stock one that came with red hat el 4, have there been security updates? YES, have I updated NO! because that is 75 systems I have to boot into text mode, rebuild the Nvidia drivers, rebuild the sata drivers, and reboot back to X windows... and that's if everything just works... I've had it not work before. Then of course you have to wait at least 2-3 weeks after red hat releases a new kernel before nvidia publishes the new version of the driver, and all in all its just a huge headache.

    Binary only drivers are here to stay folks, we aren't going to abolish them, and as long as Linus is in charge of the kernel we aren't going to get a stable ABI, so, kernel update means recompile all your drivers... Any way to ease this burden is a GOOD THING because it encourages people to update their kernels. upgrading a kernel right now on any somewhat complex system, or anything that might not be 100% supported (IE wifi, some network cards, some storage devices and video cards) means a huge headache every single time a new kernel is released (by the major vendors at least 6 times a year). I estimate that if I were to keep my system updated it would take an additional 6-700 man hours per year, that is 30,000-35,000 dollars at $50/hour (which is low), you have to figure 1+ hour per system 75 systems, 6 times a year...

  26. Re:Oligopoly by Trelane · · Score: 2, Informative
    Which 3D video card vendor does publish a reasonably complete spec for the devices that it sells?
    If you consider GPL'ed kernel source to be "a reasonably complete spec", Intel does.
    --

    --
    Given enough personal experience, all stereotypes are shallow.
  27. A bit unfair... by IANAAC · · Score: 2, Informative
    All this does is benefit Novell, and once companies write up their drivers, where are the rest of us that use real Linux left?

    Of course this benefits Novell. They have a business to run. But just because you're upset another distro might not benefit from this, it's rather unfair to say that SUSE isn't "real" Linux, isn't it? Aside from proprietary drivers (and there aren't many - I'm not using any in my case), all source is included in the distribution.

  28. Re:No need for competition... by Cal+Paterson · · Score: 2, Informative

    I have games (HL2, UT2k4, Q4, EVE, etc) and XGL (transset over xcompmgr) with fully compatible nvidia binary drivers and every bit of hardware on my computer supported, nearly, all under gpl

    Almost nothing you just mentioned is under the gpl. The only thing that is free is XGL, and that semi-entails that you have a non-gpl video driver.

  29. Re:Breakthrough? by ewhac · · Score: 2, Interesting
    Sad thing is, this probably isn't a troll. You sound like most of the kernel developers who refuse to make a stable API or ABI.

    It's not a question of "refusing." The issue is that they know they're not done yet.

    The kernel API is a moving target because the technology -- and knowledge behind it -- is growing and evolving. One of the more perfect examples of this evolution is Linux power management. The first released API consisted essentially of suspend() and resume(). Even back in the days of APM, this may have seemed adequate, but it really wasn't. This inadequacy was driven home when ACPI happened (ugh!), and the shortcomings of suspend() and resume() became obvious. So the kernel API was changed to try and encompass it.

    Whoops! It turns out that, aside from being incomprehensibly baroque, ACPI is absolutely useless when trying to address power management issues on, say, embedded systems where power and clock throttling controls are far richer and more complex. So the API is being spun again, and this time they're trying to get something more future-proof.

    Besides, your complaint is specious to begin with. Microsoft has changed its device driver API at least three times in the Windows era (and probably far more in the DOS era). This didn't stop HW manufacturers from supporting it. What it did stop was old peripherals moving forward on to shiny new HW platforms. That old joystick you loved from the company that died just before Windows 98 came out? Too bad, you have to throw it away now; there's no WDM driver for it, and there certainly won't be a Vista driver for it. Oh, hmm. Looks like someone made the necessary changes to the Linux driver source so that it'll compile under 2.6.16.

    It sounds like what you're really saying is that Linux is too small a market to bother with, rather than there being any intrinsic issue with publishing driver source. If the market shares of Windows and Linux were swapped, the source code issue wouldn't be; it would just be treated as part of the landscape.

    Schwab

  30. Linux "Device Driver" pains by BeforeCoffee · · Score: 3, Interesting

    Ok, I like Linux. In fact, I'd love to write software for it since, as a developer who leverages open source libraries, I feel like Microsoft has told me I'm no longer welcome.

    So when I saw CentOS, I figured it was time to make the switch. It offered everything I needed. I went to fry's and bought the hardware for my new app server which included a cheapy HighPoint 1640 RAID card so I could setup a RAID 1 system. It said it supported Linux, so I figured I was good.

    Well I wasn't good. There was source code for an open source driver from HighPoint. But trying to figure out how to package and build the thing was amazingly arcane and retarded! I HAD to install a floppy disk for godssakes. The experience of trying to bootstrap and get the damned open source drivers built for the thing was a long trip through the fiery pits. Equally evil was trying to figure out how to patch a new kernel with recompiled drivers whenever yum got me a new one. What a pain!

    I'm a developer not a sysadmin. The fact that I figured out how to make my RAID card work with Linux was not a satisfying experience to me, it was frustrating and it was a waste of tens of hours over many months. You geeks who like to build kernels and fiddle with make files have at it. It's just not my thing.

    In fact, I think there is no such thing as Linux device drivers ... what there is is not abstract enough to be graced with that name. Module maybe fits. C'mon you geeks, seriously, what's the holdup here? What is the big problem with having a driver binary that just works across all minor revisions of a major version of a Linux kernel? That would be a HUGE plus for me.

    Whatever the case, the other poster who said it's not 1992 anymore had it right - we need some more slickness around drivers if we are going to win. And since I'm planning on not upgrading to the next version of windows, I would prefer we start winning on the desktop real quick.

    Dave

  31. Re:Failure of computing. by ewhac · · Score: 4, Informative
    I can't tell if the guy's a troll or just naïve, but it needs to be said for the benefit of the less knowledgeable:
    Do you suppose every video display, digital camera, audio converter and so on is somehow uniquely special, that it is so ground breaking in its design that it needs custom crafted code just to make it work?

    Yes. It does.

    Like it or not, the underlying hardware for computer peripherals -- be they USB cameras, joysticks, mice, SCSI controllers, graphics cards -- can be substantially similar, or completely different, most often because they take completely different approaches to solving the same set of problems.

    A splendid example -- and one I can speak to directly, having written several drivers for them in my time -- are graphics cards. Once upon a time, all a graphics card did was display pixels. It was a dumb framebuffer, and the CPU did all the drawing. But even that much wasn't uniform across all cards. Some displayed only monochrome. Others displayed two or four colors per pixel. Sometimes the colors were hard-coded. Other times the colors could be defined by the user and stored in a palette (which could be 6, 8, 9, 12, 15, 18, 21, or 24 bits wide). Some had the pixels arranged as a linear array in memory; others stored pixels in an odd pattern based on a logical transform of the X and Y coordinates. Which line draw or rectfill routine you used depended on which card was installed.

    Then someone invented a chunk of hardware called a "blitter" which did some of the drawing operations for you. All your old code would work, since it could still write to the framebuffer pixels, but the blitter was faster. But wait! Some blitters used X and Y coordinates and dimensions. Other blitters took memory addresses and byte counts. Some wanted you to write values to in-chip registers to setup and perform the blits. Others preferred you wrote a series of instructions in RAM and told the chip where the instructions were. All would do straight copies, but some would also do logical operations on the pixels (AND, OR, XOR). But not to worry; the device drivers abstracted all this away. All you had to do was call the rectFill() routine; the driver would worry about the gory details.

    And that might have been the end of it, except this jerk named John Carmack wrote a game called Quake, and suddenly just 2D hardware support isn't good enough for anyone anymore :-). Enter 3Dfx, ATI, Rendition, NVidia, and others, each with their own approach to draw 3D primitives quickly, each requiring custom software that knows where all the HW registers are, what they mean, and how to manipulate them.

    All of which is a long-winded way of saying: The abstract interface at the application level may be the same (rectFill(), glVert3f()), but the actual nuts and bolts of turning that abstract expression into pixels on the screen varies enormously.

    You're not completely off-base, though. There are some very simple peripherals where the abstractions have been pushed directly to the hardware layer (keyboards, mice, USB HID devices), but even this is an arguable point, as the firmware running in the peripheral itself is simply translating what's really going on into the commonly-accepted abstraction. Nowhere was this more true than when mice transitioned from opto-mechanical (rolling balls and encoder wheels) to purely optical (tiny cameras). Internally, they're entirely different, but the firmware running inside completely obscures that fact, and all you see on the wire are movement deltas.

    So, no, I'm not involved in an elaborate conspiracy to justify my job. As long as silicon designers have new and evolving ideas about how to make things better/faster/cheaper, device drivers will remain a necessity.

    Schwab

  32. How is it good? by shutdown+-p+now · · Score: 2, Interesting

    Simple: when your parents/friend/gf asks you about "that Linux thingy" that you use on your desktop, you can burn a SuSE DVD for them and know that their hardware will work with minimal effort on their part. Myself, I'll keep my Debian where I can tweak things to my heart's content. Everyone wins.

  33. Does this mean Linux will work? by Warg!+The+Orcs!! · · Score: 2, Interesting

    I am not trolling. I am one of the many, many PC users that are not code monkeys. I use Windows because (for me) it 'works'. By 'works' I mean that my PC does what I want it to do 99.99% of the time. I have however an older laptop (It's a Haus laptop: Pentium 2, 1.4Ghz, 256MB RAM, 20GB Hard disk - Haus were an own-brand badging for the former jungle.com now owned by Argos) on to which I have installed Mandriva. The experience has been interesting. I can do all sorts of OSS stuff like play OSS games and type up OSS documents and so on. The fun stops, however, when I want to anything that an ordinary PC user might want to do. I cannot surf the web because there are no Linux drivers for my Netgear or Belkin wireless cards. I cannot send or receive email because of the same reason. I cannot download new software because of the same reason. I cannot print anything because I do not have a linux driver for my printer (Lexmark X1170 - if you know of one let me know).All this means is that my Linux laptop is a mere curiosity and not a powerhouse driven by cutting edge OSS technology

    Could the people who know all about APIs, ABIs and Microkernels and so on PLEASE stop bickering and just write some drivers.

    Open Source of course.

    --
    Travelling forward in time at a rate of 1 second per second.
  34. DKMS From Dell by PhYrE2k2 · · Score: 2, Informative
    http://linux.dell.com/projects.shtml#dkms

    Sounds like dkms from Dell:


    DKMS stands for Dynamic Kernel Module Support. It is designed to create a framework where kernel dependent module source can reside so that it is very easy to rebuild modules as you upgrade kernels. This will allow Linux vendors to provide driver drops without having to wait for new kernel releases while also taking out the guesswork for customers attempting to recompile modules for new kernels.

    For veteran Linux users it also provides some advantages since a separate framework for driver drops will remove kernel releases as a blocking mechanism for distributing code. Instead, driver development should speed up as this separate module source tree will allow quicker testing cycles meaning better tested code can later be pushed back into the kernel at a more rapid pace. Its also nice for developers and maintainers as DKMS only requires a source tarball in conjunction with a small configuration file in order to function correctly.

    The latest DKMS version is available here. Also, you can read this Linux Journal article or this more recent Power Solutions paper or this even more recent Ottawa Linux Symposium paper about DKMS for more information. You may also participate in the dkms-devel mailing list. This project is maintained by Matt Domsch, and was formerly maintained by Gary Lerhaupt.
    --

    when you see the word 'Linux', drink!