hal draft spec
david at fubar.dk
Sat Sep 13 15:36:12 EEST 2003
On Fri, 2003-09-12 at 19:13, Dave Malcolm wrote:
> A thought on the proposal:
> Flat vs hierarchical
> Currently there is a single list of all devices attached to the system.
> Perhaps devices should form a hierarchy:
> - a connectivity hierarchy, with a "root" device representing the
> motherboard, with CPU and memory attached, and buses coming off it etc
> - a category hierarchy: with "All devices" at the root, with
> subcategories such as "Storage Devices", "Joysticks" etc
This is how WinXP does it. AFAIK they even map the USB topology with
hubs correctly which is a nice little detail.
> Rather than querying all devices and have device added/removed
> messages, you query for the root device, query the children of a
> device, and get child added/removed messages for a particular node in
> the hierarchy.
> The category hierarchy could be generated from the physical hierarchy
> inside libhal.
Yes - both are just views of different topologies. But we should
definately have tree-iterators in libhal for different views at some
> Or is this just an unnecessary complication?
I guess one way to do it would be to introduce a PhysicalParent property
of a device that hal_hotplug (though inspection using libhal) would compute
and set. That would of cource require representation of virtual hubs as
Device objects, but maybe that is not a big problem. Maybe it would even
Btw, let me use this opportunity to announce that I have published a
modified HTML-version of the spec. I hope to have a final version 0.1 of
the spec available soon (no earlier than late next week unfortunatly) so
I can get back to coding. Comments are welcome.
The URL for the project page is http://pdx.freedesktop.org/~hal/
More information about the xdg