ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
I need to implement a Serail port I/O.
what's the difference between with O_NONBLOCK and without it? Note that I have set my c_cc[VTIME] = 0 and c_cc[VMIN] = 0, which means read will return right away no matter if it's a non-blocking mode. The only difference I can see is write(). But it seems the STREAM have enough system buffer to allow write() return right away.
So what's the difference between with and without O_NONBLOCK in question line 1? Thanks
read() is reading from STREAM, where the input characters are buffered. what will happen if the input on serial line is too fast that my read() can't catch up? Thanks.
For example, in the following code, I read one character and do some computation. If the computer connected to my serial port send data very fast, the system buffer endded up to be full and discard characters coming in. How can I know if that happens? By the way, what's the size of the system buffer for STREAM? Thanks