桌面环境提供可移动硬件设备的即插即用,是桌面环境能够普及应用的条件之一,作为普通用户,很是希望在对系统设备管理不是很熟悉的情况下,桌面系统能够自动的管理自己的一些硬件。插入一个usb设备,马上在桌面上能看到“发现新硬件”并且通过鼠标就能使用,无疑会增加系统的可操作性。
据我所知,桌面环境实现硬件即插即用实在非标准组织FreeDesktop的倡导下,逐步完善成熟的,桌面环境实现硬件即插即用除了系统底层,和以下两个软件密不可分,一个是hal,一个是dbus,在FreeDesktop上wiki上,有这两个软件的详细说明。
hal这个软件包的主要功能是对硬件信息进行打包,根据hal所提供的一些硬件配置文件,对系统中的硬件进行重新封装,形成一个“设备对象”,对上层软件系统提供了一套统一的接口,进而实现硬件设备的控制,例如自动加载,设备卸载以及一些设备访问的控制。
dbus是一种消息传递机制,在桌面系统中,dbus可以作为一种桥梁,来实现应用程序之间,应用程序和系统服务之间,以及系统服务之间的消息传递通道。在kde4的实现中,已经开始用dbus来替代kde3中的消息传递机制了。dbus的作用是显而易见的。同理,dbus也可以作为hal和kde应用程序之间消息传递的作用。
FreeBSD+kde能够实现桌面环境硬件设备的即插即用,离不开以上两项技术的支持,而且最为关键的是FreeBSD已经port了这两个软件,在这个基础上,kde 3.5.6可以实现dbus的内建支持,而FreeBSD的kde 3.5.6确实已经加入了dbus的支持。

