>
> You should also carefully do an strace or similar on
> Windows and Linux as well.  You may find that you're
> doing a system call per byte on FreeBSD but not on
> those other systems.

Certainly this might be possible under Windows, as I have no idea what
happens once I link in one of the various kernel.dll modules. Under Linux,
however, I am directly issuing the INT($80) instruction, so one system call
per byte is being made.

To answer a different question in the thread, I'm pretty sure I'm making
only one FreeBSD call per byte, at least in one of the cases I posted.
You'll note that one of the test examples made a call to "bsd.read( fd,
buffer, 1 );". That's just a function I wrote that rearranges parameters and
sets up the stack, executes an INT( $80 ) instruction, cleans up the stack,
and returns to the user. In a different test example I *was* making a couple
of calls, (specifically to lseek to check to see if I'd reached EOF), but
the performance difference was minimal (i.e., the time was being spent in
the read call). I have to run off for an appt right now, but I'll try the
"dd" command later today and see what that reports.

I wonder if I'm only getting one character output per time slice, or
something like that?
Cheers,
Randy Hyde

_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to