> -----Original Message-----
> From: Robert Kavaler [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, September 26, 2001 1:42 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [rtl] RTF
>
>
> The problem you've outlined here will only happen if you read
> the fifo one
> byte at a time. If you read it 8 bytes at a time then hard
> interrupts are
> disabled for the entire duration of the read. To read 8
> bytes at a time
> issue the command "read(fifo_fd, buf, 8);"
This is not true in 3.1, and I do not know if it was true with
earlier versions. In 3.1 the read only disables interrupts long enough to
update the FIFO structure (pointers). This is done to preserve FIFO
integrity, not to make sure you always get the number of characters you
request.
> Also, on the writing side, writes will either write all their data
> into a fifo or none of their data. So in your example, if the fifo
> has 4 bytes left and you attempt to write "realtime", the
> write will fail.
This is definitely not true in 3.1. I am also fairly confident that
this has never been true in RTLinux. The current code writes as much data
as possible if it can not write everything.
Regards,
Steve Cohen
--------------------------
Stephen D. Cohen
Xybion Sensor Positioning Systems
11528 53rd Street North
Clearwater, FL 33760
Voice: (727) 299-0150
Fax: (727) 299-0804
[EMAIL PROTECTED]
www.xybion.com
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/