Michael, what you didn't check was wether "echo" wrote that first string
in one "write" system call, or not. If it does something like
write (1, argv[1], strlen (argv[1]);
for (i=2;i<argc;i++) {
write (1, " ", 1);
write (1, argv[i], strlen (argv[i]));
}
it becomes hard for the kernel to see the "general picture", and in
fact, what would happen is that the kernel starts parsing at the
beginning for every separate "write" call.
Anyway, I checked it, all echo's I could find on my system don't do
this. However, some people reported problems, which went away with
the quotes.
Roger.