You described properties and interfaces, but those do not exist in vacuum, they must be associated with device objects that HAL maintains. Could you expand on that. E.g. it appears that processor.* properties belong to device objects with "processor" capability: will HAL create one object per physical CPU? Do clients (such as GPM) usually call Set* methods on each processor object? Any interesting implications wrt massive coring/threading?
-Artem
