Re: Linux/IA-64 byte order

Craig Milo Rogers (rogers@ISI.EDU)
Wed, 10 Mar 1999 13:18:03 -0800


>> another, not just technical reasons. Networks were built by humans and
>> debugged by humans. Quite frankly looking at raw network packets off of
>> a wire is much easier to read if it's readable by humans (and, yes, this
>> is exactly what I've done in the past).
>
>What is it with you people?
>
>LE and BE are completely made up constructs. Neither is better than the
>other.
>
>If you want to look at network packets, nobody uses raw hex dumps. Or if
>they do, they should sure as hell not use "readable" as an excuse for
>doing so.
...
>For the last time: big-endian is _NOT_ "better". Never has been, never
>will be.

With all due respect, Linus, you've left the role of "arbitor
of good taste" and entered into historical revisionism. I shall address
the "never has been" portion of your assertation.

<geezer-mode>

I was (among other things) an ARPANet (later Internet)
protocol programmer in the '70s and '80s. I used both LE and BE
systems. Raw hex dumps (or octal dumps due to my TOPS-10 training)
were the primary mode of debugging kernel data and networks (scoping
the 1822 or RS-232C interface also helped a lot) at the time.

Symbolic debugging of the PDP-10 kernel was available, and by
the mid '70's, I think, you could run scripts that made formatted
dumps of data structures. They were tricky to set up and prone to
fail when the data structures were buggy -- which was most likely when
you most wanted to use the tool. Anyway, the place I worked used a
PDP-15 as a network front-end for the PDP-10, and we wrote most of our
own debugging tools for it.

Keep in mind, also, the limitations in available hardware and
software at the time. A 1MB machine was a big system in the early
'70's, and was expected to support 30 concurrant timesharing users!
We didn't have Perl. ;-)

PDP-11's complicated matters, if I recall corectly; some
PDP-11 data types were LE, but others were BE, or mixed endian.

Reading mixed integer/character data on a rax hex or octal
dump is distinctly more pleasurable, faster, and accurate on a fully
BE system. This has been my personal experience, and it is my
opinion. Although I do not have a survey or citation to offer, I
recall other programmers at the time concurring with this opinion.

I would assert (if I had the hard data to prove it), as a
matter of historical experience, that BE systems were generally better
for network programming in the '70s than LE systems were, all other
factors being equal (of course, they never are).

</geezer-mode>

Craig Milo Rogers

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/