O'Reilly Open Source Convention
Books Safari Bookshelf Conferences O'Reilly Network

Arrow Home
Arrow Registration
Arrow Speakers
Arrow Keynotes
Arrow Tutorials
Arrow Sessions
Arrow At-a-Glance
Arrow Wiki
Arrow BOFs
Arrow Events
Arrow Exhibitors
Arrow Sponsors
Arrow Hotel/Travel
Arrow Venue Map
Arrow See & Do
Arrow Tips for
Arrow Press
Arrow Mail List



Project Utopia: Making Hardware Just Work
Robert Love, Senior Kernel Engineer, Ximian / Novell

Track: Linux
Date: Wednesday, July 28
Time: 4:30pm - 5:15pm
Location: Salon F


Current Linux projects are integrating hardware management up into and throughout the desktop, propagating kernel and hardware events not only into user-space, but up the stack, to the Linux desktop itself. This elegantly provides the Linux desktop system with multiple new benefits:

  • Seamless and proper device naming, done in user-space with user-directed policy

  • Device hotplug, where a hotplugged device results in the automatic loading of the correct kernel module, creation of a device node, device setup, and notification to the desktop of new hardware.

  • Proper device management and abstraction. The user should never have to speak in device nodes (say, /dev/hde1) but instead communicate in their native tongue (say, “my Canon camera”).

  • Kernel and hardware event notification. The desktop and applications should be notified via a low-overhead bus of hardware events, in order to provide volume management, device policy, and response to kernel events.

  • Hardware will just work, on a level rivaling Apple's Mac OS X
  • Notes Love, "I started the Project Utopia approximately five months ago to remedy the largest issue that currently plagues desktop Linux: the poor state of hardware management and the utter lack of total system integration in Linux.

    "Today, Project Utopia is an umbrella project including multiple other open source components such as udev, hotplug, HAL, the kernel, D-BUS, and GNOME. It's is managed using use cases, as opposed to functional and technical specifications. That is, we have statements such as:

    'When the user plugs in a printer, it is automatically detected and setup without user interaction. The user can start printing to it immediately.'


    'When the user plugs in a digital camera, the desktop automatically synchronizes the new photos on the camera with the user's photo library.'

    "My presentation will discuss these use cases, which are non-technical and thus readily accessible. These sorts of advances have never been realized on Linux before."

    O'Reilly Home | Privacy Policy

    © 2004, O'Reilly Media, Inc.