I'm spending limited time on the forum these days, but is you have urgent questions about serial.pp or the link I gave you also PM me since I'll get a notification via email.
serial.pp is very much intended to be low-level. I did quite a lot of work on it when I was doing RS232 monitoring work, and it's done in such a way that you can e.g. have a thread that responds to each received character by storing it with a timestamp and snapshot of the control lines.
It's tested on both Linux and SunOS/Solaris, but hasn't been explicitly tested on a Mac. That's important, since my understanding is that both MoacOS and SunOS are BSD derivatives, and BSD's implementation of the select() syscall differs from the way is was later done by Linux.
The stuff I linked to can help when you're trying to find the device name (i.e. /dev/ttyUSBnn etc.) of e.g. a measurement instrument you've just plugged in.
MarkMLl