Slashdot Mirror


Simplifying Linux Driver Installation

prostoalex writes "O'Reilly Network posts an update on Project Utopia that produced Hardware Abstraction Layer for Linux simplifying device changes. They also link to the Driver on Demand project on SourceForge, whose goal is to create a central database to enable Linux desktops download the drivers automatically when the user plugs in her new hardware device."

33 of 377 comments (clear)

  1. Re:Yeah by owlstead · · Score: 4, Insightful

    What do want to do then? Write assembly in your application to get to a device? Read out loud Hardware - Abstraction - Layer.

  2. Tough to stay with XP by JorDan+Clock · · Score: 5, Insightful

    If getting drivers becomes that easy, I'll be considering atleast dual-booting. Drivers have always been something that have kept me away from Linux, but if they're as easy to find as plugging in a device, I'll switch in no time. Now, if only those manufacturers would put out some decent quality drivers, I wouldn't have much reason to stay on Windows.

    1. Re:Tough to stay with XP by Anonymous Coward · · Score: 5, Insightful

      Plug famous brand USB storage devices into a Fedora Core or recent Red Hat and it will appear as a user-owned mountable device immediately. No reading system logs. No trying to understand mount flags, it Just Works(TM)

      It would work with the off-brand ones if they only agreed any kind of rhyme or reason to the USB device name strings... and in FC3 it'll probably just work anyway thanks to some extra magic.

      I hear the same complaint with video cards, USB MIDI, you name it. And I'm mystified. I bought a Radeon 9200SE for a home machine, turned it back on, FC2 auto-detected it and everything just worked. Where's the "complicated procedure" and the "hunting for clues on Usenet" ? I plugged the USB headphones from a nearby iMac in, and they appeared immediately as an output option in my Audio player app. No I didn't have to "configure" anything, or "mess around with the command line". When you plug a Playstation 2 keyboard into my USB capable FC2 laptop it just works, as you would expect.

      So put the "Linux will never have working plug and play" complaints in the same category as "Linux will never be easy to install" complaints. Nothing is perfect, but as usual Linux (at least outside roll-your-own distros for the nerds) isn't any worse than any other system.

    2. Re:Tough to stay with XP by HermanAB · · Score: 4, Informative

      Get a Knoppix or LiveCD disc. You'll be amazed at how good Linux driver support is. Chances are that everything you got on your machine will just work, without you having to install anything manually.

      --
      Oh well, what the hell...
  3. Okay... by iamdrscience · · Score: 4, Funny
    to enable Linux desktops download the drivers automatically when the user plugs in her new hardware device
    What? There are girls using Linux now? Why was I not notified of this!
    1. Re:Okay... by OmegaBlac · · Score: 4, Funny
      What? There are girls using Linux now? Why was I not notified of this!
      Probably because you busy reading man pages.
    2. Re:Okay... by UserChrisCanter4 · · Score: 4, Informative

      The MLA is definitely not full of shit. The English language has no official group responsible for changes to the language (in the sense that L'Academie Francaise operates). Many of the rules and placements in the language are actually quite logical, and many of the older rules (the rule against double negatives, for example) are based on mathematical concepts.

      The purpose of grammar is very similar to the purpose of spelling; a common standard allows for the quickest reading and comprehension possible. While your solution is certainly fine for colloquial speech, it has no place in print (epecially the original case, a semi-official form being posted on a website with readership in the millions). Ignoring the obvious jokes about slashdot and spelling/grammar, phrases that use a plural pronoun to refer to a singular antecedent are unnecessarily confusing for non-native speakers.

      As for the citations, I would expect that a /.er would appreciate the fact that a set structure for bibliographis or works cited allows for much easier machine parsing of that information. While this was not the original reason for the rules, it is a very pleasant by-product of them.

  4. A hardware abstraction layer? by ogl_codemonkey · · Score: 5, Insightful

    What, like a kernel?

  5. A scam! by iamdrscience · · Score: 4, Funny
    Hardware Abstraction Layer for Linux simplifying device changes
    Haha! You thought I would be fooled that easily. Hardware Abstraction Layer? You mean HAL? Obviously this project was created by people hoping to expedite the construction of an intelligent machine capable of going awry and killing humans. You sick bastards.
  6. Won't happen anytime soon... by AntiGenX · · Score: 5, Interesting
    As the article points out Linus is vehemently against making the kernel API/ABI's stable. On the one hand this allows them to add knew stuff all the damn time, but it breaks drivers. In my opinion this is what's holding linux back. It contributes to Linux having crappy hardware support. (Yes it has crappy hardware support people!) Sure it supports LOTS of devices, but a lot of them require some voodoo to make them work. That's all fine and well for people like me, but average users don't want to dick around with modprobe.conf. I'm sure a lot of vendors would be more willing to put out their own drivers if they didn't think they'd have retest/recode every kernel release

    For what it's worth, I'm somewhat sympathetic to Linus. Look at what HAL did for/to Windows. Crappy driver/HAL implementations were responsible for a lot of Windows perceived and real stability problems. Now Microsoft likes to certify drivers (WHQL), so they only take the blame for their own damn bugs.

    Basically, it's a double-edged sword. Convenience vs. Stability. Personally, I think if Linus is serious about the desktop there needs to be some compomise. Me, I just dumped Linux on the desktop for my sweet new OS X system. Viva la UNIX!

    1. Re:Won't happen anytime soon... by jhoger · · Score: 4, Insightful

      You missed the real reason for this tactic: to `encourage' hardware manufacturers to play nice and release the source code to their drivers by making open source drivers the path of least resistance.

    2. Re:Won't happen anytime soon... by jejones · · Score: 4, Insightful

      You missed the real reason for this tactic: to `encourage' hardware manufacturers to play nice and release the source code to their drivers by making open source drivers the path of least resistance.

      And we all see how well that's worked for many inkjet printers, essentially any graphics card, those Philips webcams that were recently mentioned on /., ad nauseam et infinitum.

    3. Re:Won't happen anytime soon... by Spy+Hunter · · Score: 4, Interesting
      The problem is, Linus is letting his pursuit of one goal (encourage open-source drivers) hurt progress toward another (stable, user-friendly drivers for every single device out there). Changing the kernel APIs all the time does encourage open-source drivers, and it allows easier kernel innovation, but it has many, many disadvantages:
      1. It requires changes in many drivers for every single kernel release, which takes valuable developer time.
      2. It makes drivers less stable and testable due to the constant changes they must undergo.
      3. It discourages driver development outside of the main kernel tree, which in turn...
      4. bloats the main kernel with too many drivers.
      5. Upgrading the kernel requires an upgrade and recompile of every driver you use, or you risk incompatibility or instability.
      6. It is nearly impossible to have a database holding every driver you might need for a desktop Linux system.
      7. Hardware detection and setup software requires constant changes to keep up with drivers and because of this is often unreliable.
      I'm sure I could think of more disadvantages too, given enough time. Given the number and magnitude of these problems, it should be Linus's top priority to find a different way of encouraging open-source drivers, so that these problems can be solved. Changing the APIs willy-nilly can't be the only way to encourage open-source.

      If Linus won't listen to reason, I propose it's time for a kernel fork. Nothing less will solve Linux's driver situation, and it does need solving. Linus himself has already said that the 2.6 kernel isn't "stable" as such, and it's the responsibility of distributions to ensure that their kernels are stable. I propose that the distributions take Linus at his word and cooperate on forking the 2.6 kernel into a "stable" version with a focus on stable, user-friendly drivers and driver installation. Then Linus can remove a ton of irrelevant drivers out of the core kernel and focus on improving the guts for the next major release, while the rest of us enjoy better hardware support.

      If Linus wants his tree to be a permanent development tree, so be it. The core kernel has now improved to the point where it is good enough for 99.9% of users, so further improvements in the development tree are becoming less and less relevant to Linux distribution users. Drivers are what users look forward to improvements in, not the kernel.

      Closed-source drivers are still a concern, but I'm convinced that there are better ways to encourage manufacturers to open their source. Linus's way is not the only way.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
    4. Re:Won't happen anytime soon... by don.g · · Score: 4, Interesting

      Show me a modern inkjet printer that needs a kernelspace driver, and I'll show you a very very very surprised me.

      --
      Pretend that something especially witty is here. Thanks.
    5. Re:Won't happen anytime soon... by dmaxwell · · Score: 4, Insightful

      Who will maintain this fork? It will get crustier and crustier and crustier due to the absolute need to NEVER break a binary only driver. Once it gets crusty enough, it won't be possible to backport the changes from Linus' kernel which WILL continue to be developed? Furthermore, this fork will be x86 only. The only real reason this fork will have to exist will be for consumer x86 desktops. This will put off even more devs.

      I seriously doubt that you'll find a group of kernel devs who will willingly inflict that situation on themselves. Remember that leak of Windows 2000 source? At least 15% percent of it turned out be kluges meant to prevent particular applications from breaking. We DON'T need to go there.

  7. Re:Wating for this by ozric99 · · Score: 4, Interesting
    Also when will the major heads of the different distros define a single good, method of packaging programs.

    Just as soon as KDE and Gnome merge, and XP gets Final Cut Pro - never gonna happen.. too many egos in the way.

  8. Wrong problem by Anonymous Coward · · Score: 4, Interesting

    It is obvious that I as an corporate user, would refuse to install *anything* on my Linux system that has not gone through my distributor. After all, that's why I pay them. And pushing third-party binary modules in my running kernel would be a very quick way of nullifying their support agreements.

    For the home user, things might well be different. But most people are running a distribution anyway, and would probably feel more comfortable getting drivers from them. That's how they get the security updates, so both the trust and the technical procedure is already in place. So if the distributors are to share the workload of getting these drivers, then a open project may be the right way -- but only for distributing the module source. Not many users would get drivers from here (Gentoo users come to mind).

    The article has an ivory-tower stance to it and I think they solve the wrong problem. First we need to establish what the problem actually is. If the drivers are few and small then all drivers could be included in a typical distribution and updated with the rest of the system. Perhaps all that is needed is for distribution to update their kernel packages more often?

  9. Enough with the Plug 'n Pray jokes by Magila · · Score: 4, Insightful

    As cute as that little pun is, PnP on WinNT 5.x Just Works(TM) the vast majority of the time and life is good. It's one area were Windows has a clear advantage over Linux and it's great to see the gap is finally starting to be closed.

    Though I fear Linus' hardliner stance on ABI compatibility will hinder all this. Idealogical issues aside, from a user's standpoint a stable ABI for drivers is a significant plus for a desktop OS. I can only hope at some point the Linux kernel becomes stable enough for it to be considered.

  10. Re:Wating for this by GreyPoopon · · Score: 5, Insightful
    too many egos in the way.

    That's only part of the issue. Lots of people don't want a KDE and Gnome merger because of philosophical differences on what a desktop should be like. I do, however, wish that on many forked or duplicated projects people would take just a second to think about who, besides themselves, a fork (or duplication) would actually benefit. When the forked or new version provides no significant new features, it's probably doing more harm than good.

    --

    GreyPoopon
    --
    Why is it I can write insightful comments but can't come up with a clever signature?

  11. Re:Neat! by LehiNephi · · Score: 4, Insightful

    That's no joke. Why haven't I switched permanently to Linux? The list of reasons is quickly becoming shorter and shorter.
    Games? - The biggest games (and more games in general) are getting Linux ports.
    Office suites/productivity? Done.
    Plug 'n' play hardware and peripherals? Getting better, but the actual hardware manufacturers sure seem to be dragging their heels.
    Low cost? Can't beat free.
    Easy to configure? Again, getting better, but still a long way to go.
    Easy to learn? Well, I haven't done any studies on this, but from various "switch" stories, it's at least as easy to learn (if not easier) than windows.
    Security? Pretty dang good, but I'm not going to fool myself. If Linux were as widespread on the desktop as MS Windows, there would be a whole lot more exploits. Not necessarily more than on Windows, but more than there are now.

    --
    Help find a cure for cancer. Join the [H]orde
  12. Re:Plug N Pray for Linux by Anonymous+Luddite · · Score: 4, Funny


    what I'm scared of:

    >unkown hardware device detected
    >please wait while linux installs drivers for your new hardware


    Is it too late to contribute to the openBSOD project...?

  13. Probably no reverse engineering by anti-NAT · · Score: 4, Interesting

    Question for the Kernel coders, what perctage of drivers are reverse engineered?? 60-70%

    The percentage would be near 0% if not 0%. Plenty of hardware manufacturers have released open or open-enough programming specifications for their hardware. Intel, AMD and National Semiconductor are a few examples.

    For example, here are the programming specifications for my network card, a Netgear FA312 - DP83815 10 100 Mb s Integrated PCI Ethernet Media Access Controller and Physical Layer (MacPhyter)

    Companies like NVidia and ATi are the exception, not the rule.

    --
    The Internet's nature is peer to peer - 20050301_cs_profs.pdf
  14. Re:Neat! by Sique · · Score: 4, Interesting

    Hardware Abstraction Layers are VERY old. Even the 6502 based Commodore computer series (PET, VC20, C64 et. al.) had some kind of HAL, it was called the Kernel ROM, and developers were strongly encouraged to use the I/O-Routines provided by the Kernel ROM instead of writing their own.

    The whole point of the VM/CMS operation system from IBM was hardware abstraction. That's where the name comes from: Virtual Machine CMS. VM/CMS was providing an abstract CMS system (CMS being the predecessor of VM/CMS) for each process or task, so you could use multiple virtual CMS systems on your hardware.

    Just because WinNT uses hardware abstraction doesn't make it an innovative idea from Microsoft.

    Same about KDevelop. Ever used an OSF Motif Toolkit? They are around since the early days of Motif (around 1988), and the Visual series from Microsoft could easily be called an ripoff. Not to forget the Turbo Pascal/Borland Pascal/Delphi IDEs or again IBM with the VisualAge series of compilers.

    The real power of Microsoft is not innovation, it is the sheer manpower and organisation they have to integrate ideas that proved to work into a single, quite coherent system (even though in the beginning, Microsoft's offerings didn't integrate very well into each other... The first MS Office suites for instance had different file dialogs in every program, and different ways to set up the printer... but it got better every version).

    And for becoming "more and more similar to Windows": If the default installation is in a substantial way different than Windows, the whining goes: "Steep learning curve! It's too different!". If the differences are hidden, then the whining is: "It's becoming more and more Windows! Where is the innovation?" It seems as if the GUI developers have to choose between Scylla and Charybdis here.

    --
    .sig: Sique *sigh*
  15. Re:Neat! by MBCook · · Score: 5, Interesting
    I agree. Windows has gotten MUCH better over the years. But I have noticed one thing that consistantly forces me to reboot my computer: disk activity. I can run my computer for weeks doing normal things and have no problem (XP Pro, 900mhz, 512mb for the record).

    But disk activity kills the machine. It's a laptop, so disk access is a little slow, but if I work with large files (open, close, save, copy, etc) especiallyi zip/rar files (lots of file operations) the system begins to slow to a crawl. Now I understand that the disk activity can slow the computer, but after all the transfers are complete, the computer is still slow. Opening IE goes from near instant (before all that) to seconds of the computer chugging. After that if I close IE and open it again, it still has to chug to open it (so it's not some simple cache thing). The computer is just slow as heck to respond to anything untill I reboot it. At that point it's fine! The same happens after defragging my disk if it's bad (and requires lots of operations to fix it).

    I swear, it's like there is some internal limit in Windows when after a certain number of file operations, the system purposly slows down. Frankly I wouldn't be suprised if a little box popped up saying "You are doing too much heavy disk activity. Please buy Windows Server .Net 2003 for better performance" or something.

    Never happens with Linux on the same machine, so it has to be something Windows is doing. Windows has gotten much MUCH better from the 3.1/95 days, but it still has some problems.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
  16. From the article ... by MuMart · · Score: 4, Funny
    The kernel is possibly the most critical component in a Linux system.
    Well, I guess it wouldn't be called a Linux system without one :)
  17. Re:write your own by Tony+Hoyle · · Score: 4, Insightful

    So? You're asking people who are doing things *in their spare time* to give you a deadline for fixing something that may be needed by exactly one person (you).

    If you want help feel free ask what the current state of the driver is, but don't expect anyone to do anything about it unless you're prepared to help, or give them money.

    btw. MS are exactly the same. Try asking them when 'feature x' will work. They'll want money before you'll get a sensible answer about it (in that case you don't even have the option of doing it yourself).

  18. Re:Could distros do this anyway? by The+Vulture · · Score: 5, Informative
    Maintaining a stable ABI is pretty darned difficult without proper planning. Typically two of the things that pose difficulty are function calls (the API), and the internal data structures (new variables added or removed, which breaks binary compatibility).

    Say you have a function, foo, and it takes three integer arguments. So, here's your theoretical function:
    int foo (int a, int b, int c)
    {
    int d = 42;
    ... rest of foo...
    }
    Now, say all of a sudden, you decide that the variable d in foo should be passed in (maybe d being 42 is correct for all but one variant of hardware device). At this point, you have two options:
    1. Update function foo to include support for parameter d:
    int foo (int a, int b, int c, int d)
    {
    ...code of foo...
    }
    This breaks the binary compatibility (well, and source for that matter). Probably you'd see segmentation faults/invalid memory accesses, etc.

    2. Create a new function (say, foo2) that includes support for d, and maintains backwards compatibility:
    int foo2 (int a, int b, int c, int d)
    {
    ... code from function foo...
    }
    Then, update foo as such:
    int foo (int a, int b, int c)
    {
    foo2(a, b, c, 42)
    }
    Existing drivers don't see that foo has changed, and new drivers needing the extra parameter can use foo2. Binary (and source) compatibility is retained, but it becomes a major pain in the butt for the developers. Imagine several of these changes happening, and you (possibly) end up with foo2 through foo15.

    Quite frankly, I can see why Linus doesn't want to do it, for both technical and the ideals behind it. Personally, I believe it's the ideals that he favors, rather than the technical side of it. That said, on the x86, maintaining this might not be so bad, but maybe on other platforms it is more difficult. Back when software was typically written in assembly (my favorite example that comes to mind is GEOS on the Commodore 64, it had a huge API, which retained backwards compatibility with older versions), not only did you have to make sure that the parameters passed in were the same (usually on the stack, or registers, or inline), but you also had to make sure that the entry-point addresses stayed the same too (most often accomplished via a jump table).

    -- Joe
  19. Re:Neat! by cbiltcliffe · · Score: 5, Informative
    1. Cut and Paste don't work
    Always worked fine for me, since about 1998.
    Winboys complain that Linboys say Windows crashes. In 1998, it did. (Incidentally, it still does now. Admittedly, less often, but the only reason you never see it on XP is that it automatically reboots, rather than sitting there with the BSOD.)
    Yet, the Winboys continually complain about problems with Linux that were solved in 2000 or earlier.
    2. Games
    There are plenty of Linux-only games available, and lots of the good ones that use OpenGL, rather than DirectX crap, have Linux ports. If a developer uses a platform-specific 3D API, then refuses to do a Linux port because it would be essentially a complete rewrite to use a platform-independent 3D API, that they could have used in the first place.....it's not Linux's fault. Blame the developer, for being short-sighted and stupid.
    3. Font display is awful
    Again, 1998 problem. Get yourself up to date, and see my answer to number 1.
    4. Aplication installation is awful, poorly integrated with desktop(s)
    KPackage, Synaptic, YaST, and many other package managers will install just about anything on most distros. Sure, there's the odd one that doesn't work, but you run across that with Windows, too. Ever try installing Norton Anti-Virus 2001 on Windows XP? Both released in the same year, but they're incompatible.
    One more thing...if you'd been using Konqueror to post your message, it would have let you know that you spelled 'application' incorrectly. Nice to see IE being so innovative.....NOT!
    5. 86 different text editors... why?
    Notepad, Wordpad, DOSedit, TextPad, Boxer, Zeus, GWD Text Editor, EditPlus.....
    All text editors for Windows. And the first three come bundled - and installed by default - with Windows XP.
    6. Some very important web sites only work with IE
    Like what? Windows Update? I have yet to run across any website that doesn't work with anything other than IE, with the exception of Panda Software's Activescan. Unfortunately, it's ActiveX only. Again, not the fault of Linux, but the fault of a poor programmer who used a platform-specific technology to provide a function that could be provided with a platform-independent technology. Trend's housecall, however, works with Java, so will run on just about anything.
    7. General lack of polish, little (and some big) things inexplicably not working
    Wireless networking randomly popping up and down. Unrecognized hardware being completely ignored and hidden during install, rather than warning the user. Running any old twit as admin by default.
    All examples of lack of polish and foresight in Windows.
    8. Cut and Paste don't work
    9. Font display is awful
    Can't find enough arguments, so you need to repeat yourself? Not only that, but you chose to repeat the arguments that aren't valid, as the problem was solved years ago.

    I know I'm not supposed to respond to trolls, but they're just so fun to shred into tiny little pieces.....
    --
    "City hall" in German is "Rathaus" Kinda explains a few things......
  20. Re:So while blasting Windows by auzy · · Score: 4, Informative

    Its not borrowing ideas at all... Alot of things MS does are just simple steps, but the trick is they generally implement them in the poor and easy way, instead of the proper way. The truth is that Linux has had the equivilent of Microsofts Plug and play system for a very long time. All their system is, is a bunch of modules, we do exactly the same thing, the difference is that since people dont notice it because distro's have most fo the drivers included, so you dont notice them existing.

    Also, Microsoft charges for getting drivers digitally signed to get on their database, and I severely doubt many are of decent quality (I know the nvidia ones they have are useless). Its easy to code somethign when you charge for addition to the database, because its just like any other database.. But to do full, dynamic driver management where you can get drivers that dont even exist on your system, thats what MS is NOT able to do. In fact, because they put poor drivers in their database, I'd say you get driver upgrade warnings which wipe out your already working drivers and replace them with poor copies.. Evidence of poor design.

    Either way. I dont believe either HAL or Driver on demand is really a clone, but then again, I am the author of Driver on Demand, and I'm biased. The focus in recent times for driver on demand has been to create a driver search engine anyway first.

  21. Re:Yeah by Enahs · · Score: 4, Interesting

    Hell, I had trouble with a Lexar JumpDrive (a USB solid-state storage device) today on Windows XP. Had the thing in my pocket, at my parents' house, and they wanted me to touch up a photo but seemed reluctant for me to take the original. OK, no problem. So I sat down at their computer, fired up their image-editing software, and set the scanner to scan at 1200dpi, grayscale. Then:

    1. I plugged in the Lexar JumpDrive.
    2. I went to My Computer, and was delighted to learn that the JumpDrive hadn't been detected.
    3. Unplugged the Lexar JumpDrive.
    4. Went into the Control Panel and Device Profiles, only to find that some sort of obscure-sounding USB device was misconfigured. Since they have a largely from-the-factory-setup Dell, I thought that had to be my hardware. Let Windows search for the drivers; it failed.
    5. Plugged in the Lexar JumpDrive.
    6. Unplugged the Lexar JumpDrive.
    7. Plugged in the Lexar JumpDrive.
    8. Restarted the XP machine, because my parents said they'd had the machine "acting squirly for a while."
    9. Waited for restart, opened My Computer.
    10. Unplugged the Lexar JumpDrive.
    11. Went to the Lexar website looking for 3rd-party drivers. None available or needed.
    12. Plugged in the Lexar JumpDrive.
    13. Went to the Dell website. Waited for an eternity for the site to load.
    14. Unplugged the Lexar JumpDrive to get a specific model number, and typed it into a Search box.
    15. Plugged in the Lexar JumpDrive.
    16. Raise an eyebrow since the device was autodetected and properly configured without human intervention.

    Contrast this with my experience with a relatively user-unfriendly Linux install:

    1. Plug in the Lexar JumpDrive.
    2. Do some command-line magick to find that it's set up as /dev/sda1.
    3. Edit /etc/fstab.
    4. Set up a KDE device icon.
    5. Click on the icon. Note: from now on, clicking on the icon mounts the device and opens a Konqueror window, while right-clicking gives me an unmount option.

    Or, on Mac OS X:

    1. Plug in the Lexar JumpDrive.

    --
    Stating on Slashdot that I like cheese since 1997.
  22. Seems like a solution at the wrong place by pspinler · · Score: 4, Interesting

    The real problem isn't the kernels and the device support therein, rather, its the devices. Really, how many different ways do you need to send data to a printer, or a disk, or get images off a digital camera or webcam, or sound to and from a soundcard, or a 3d command pipeline to a vid card ? The plethora of different device interfaces for substantially identical devices is the real problem.

    Instead, I think there should be a (small set of) _device_ standards.

    That is, something like a architecture standard: a standard category of devices which the manufacturers will agree to provide standard interfaces for

    Combine that with a standard, architecture independent way of allowing devices to carry their own drivers. Perhaps something like a fast Forth like bytecode interpreter.

    Maybe not the best approach, but a lot better than what we have now.

    -- Pat

    --
    The biggest problem with communication is the illusion that it has occurred
  23. Protected libraries by mrogers · · Score: 5, Interesting
    What's needed is a hybrid between a library and a process - call it a protected library. It has its own privileges and its own data segment, like a process, but it doesn't have any threads: it exports an API and uses the caller's timeslice and stack segment, like a library.

    You could, for example, have a graphics library that was setuid root, to allow non-root users to access the graphics hardware through a rectricted API.

    This gives you the advantages of a shared library (no context switching, driver is distributed and managed separately from the kernel) without the disadvantages (processes must run as root because the library requires root privileges to access the hardware). There's only one disadvantage that I can think of: all arguments must be passed on the stack because the caller and the protected library have different data segments. If the protected library can be given access to the caller's data segment as well as its own, that problem disappears - the 386 supports six segments so that should be possible in principle. But passing arguments on the stack might be a better solution because it would allow arbitrary nesting of protected libraries.

  24. Re:Try adding crappy 3rd party software to linux by Anonymous Coward · · Score: 4, Insightful

    LOL!!

    Uptime of WindowsXP box at university when I start using it is less than 7 minutes. I'm not kidding you.

    simple things like looking up my schedule tend to crash IE
    to the point where system locks up. Opening PDFs leads to similar result.

    These are all dell p4 2.4ghz boxes. we have more than 500 of them. I can reproduce effects on any single box.

    Then there are some boxes which dual boot to linux. Never had a single problem. Not a single crash or hang.

    And don't get me starting about scanning on windows with HP printers.
    Scan->wait 8 seconds for pretty HP scan wizard to show up then it hides then scanner starts scanning, then you save the file one by one. On linux: start xsane (UI is ugly but does the job nicely). Specify base name and counter length. Then just keep clicking 'Scan' and feeding a new page.

    Also users need to do control+C control+V windows instead of select and pressing scroll mouse in most linux GUIs.

    No Virtual desktops on windows.

    List goes on and on.

    I honestly don't know of a better way to constupate your work then to use a Windows enabled desktop. Your productivity approaches 0.

    So those who say Linux is difficult to use should just fuck off. They have spent years and years learning how to do things in Windows and LEARNING the WORKAROUNDS to things that should have worked and then complain that the workarounds don't work and you have to do things propertly.

    ok, rant is over.
    ~omi