OSX: "serial" driver throughput
OSX: "serial" driver throughput
- Subject: OSX: "serial" driver throughput
- From: Jen Beaven <email@hidden>
- Date: Tue, 21 May 2002 15:56:47 -0400
I'm writing two drivers for a USB ADSL modem. One makes it look like
an ethernet device, the other looks like a serial modem (the serial
parts are based on the AppleUSBCDCDriver example in IOUSBFamily.)
The USB stuff (actual send/receive data to/from the device) is the
same in both drivers. However, throughput in the ethernet-style
driver is about twice that of the serial-style driver. (This is why
I'm posting here instead of on the USB list.)
I wrote the same set of drivers in OS9, and managed to get the
throughput in the serial driver to acceptable/equivalent levels by
providing more data. I interfaced with SerialShim, which queried the
driver as to how much data was available, and I would tell it the
actual amount from all my input buffers instead of using a single
circular byte buffer in the driver as an intermediate. It would then
pass a buffer of that size and I'd fill it. This works great.
However, whatever interfaces with my OSX driver only ever asks for
1020 bytes at a time. My driver is never queried about how many
bytes are waiting (though there is a mechanism through which it
_could_ be asked.)
I'm guessing this is the bottleneck. Does this seem like a reasonable
assumption? If so, is there any way to get around it?
tia
/jen
--
Jen Beaven
http://www.houseofc.com ...today it's "House of Chaos"
_______________________________________________
macnetworkprog mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/macnetworkprog
Do not post admin requests to the list. They will be ignored.