Re: Device Registry (DevReg) Patch 0.2.0

Tim Jansen
2001-04-24T11:44:40Z

On Tuesday 24 April 2001 11:40, Martin Dalecki wrote:
> Tim Jansen wrote:
> > The Linux Device Registry (devreg) is a kernel patch that adds a device
> > database in XML format to the /proc filesystem. It collects all
> OH SHIT!! ^^^
> Why don't you just add postscript output to /proc?

XML wasn't my first choice. The 0.1.x versions used simple name/value pairs,
I gave this up after trying to fit the complex USB
configuration/interface/endpoint data into name/value pairs. Thinking about
text file formats that allow me to display hierarchical information, XML was
the obvious choice for me. Are there alternatives to get complex and
extendable information out to user space? (see
http://www.tjansen.de/devreg/devreg.output.txt for a example /proc/devreg
output)
My other ideas were:
- using a simple binary format, just dump structs. This would break all
applications every time somebody changes the format, and this should happen
very often because of the nature of the format
- using a complicated, extendable binary format, for example chunk-based like
(a|r)iff file formats. This would add more code in the kernel than XML
output, is difficult to understand and requires more work in user space
(because XML parsers are already available)
- making up a new text-based format with properties similar to XML because I
knew that many people dont like the idea of XML output in the kernel.. I
really thought about it, but it does not make much sense.

The actual code overhead of XML output compared to a format like
/proc/bus/usb/devices is almost zero, XML is only a little bit more verbose.
I agree that XML is not perfect for this kind of data, but it is simple to
generate, well known and I dont see a better alternative.

bye..