Sponsored Content
Full Discussion: character I/O basics
Top Forums UNIX for Dummies Questions & Answers character I/O basics Post 44842 by Perderabo on Thursday 11th of December 2003 10:44:23 AM
Old 12-11-2003
starless, you really need to mention that you're using QNX. I guess that I shouldn't have remembered that you use QNX, but I didn't.

Your /dev/ser may indeed behave in ways that I don't understand. Or it may be very close to the unix tty. I'm not sure.

I'm not a c++ programmer nor do I know QNX. But I think that I understand this last character repeating business...maybe. But I'll have to explain unix system calls invoked from c.

I guessing that you're doing the equivalent of
read(fd, buffer, len)
and fd is now one side of a fifo. You need to change that to:
iret=read(fd, buffer, len)
if(iret == 0) { /* arrange to stop reading */ }
if (iret == -1) { /* error routine */ }

The read is failing, but you're not noticing this. Your buffer is not being touched. You're just assuming that it got a character. On unix, this situation would cause read to simply return a zero. In your case, you may being getting an error of some kind.

You can prove that you're not simply getting the last character... put some other character in the buffer just prior to the read. That will become the character that you seem to be reading in a loop.
 

7 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Unix Basics

Hey, you said this forum was for Dummies, so don't blame me for the following! :D My whole "web building" life, I've had my sites hosted in one for or another. Lately, I've gotten into PHP and MySQL and, of course, those are also hosted for me. But lately, I've been thinking of using PHP and... (2 Replies)
Discussion started by: cap97
2 Replies

2. UNIX for Dummies Questions & Answers

Installation basics

hello, Im new to this Os. so, can i get any information'bout installation basics of unix. (1 Reply)
Discussion started by: Abhijit Bhatt
1 Replies

3. IP Networking

SAN basics

Hi I like to learn and practice SAN, iSCSI. Could you sugges the appropriate tutorial and small tasks to practice SAN. Thankyou (1 Reply)
Discussion started by: kingskar
1 Replies

4. AIX

DB2 basics

Dear friends I am going to study DB2 and i dont have any experience with any DB's.. Please provide me with some links or pdf's for DB2 starters. any advice will be very usefull (2 Replies)
Discussion started by: Vit0_Corleone
2 Replies

5. UNIX for Dummies Questions & Answers

awk basics

Hi, Please tell me where can I get started with awk..like the basics and the whole awk stuff. Regards, Deepti (2 Replies)
Discussion started by: gaur.deepti
2 Replies

6. Shell Programming and Scripting

ls command basics???

how do i use the ls command with a single argument to list all files whose names end with the letter 'r'? (7 Replies)
Discussion started by: lilbo4231
7 Replies

7. UNIX for Dummies Questions & Answers

help me with basics

hello everyone i have to start with unix as it is a part of my training programme and i have to do a self study, i dont know where to start from. i need some basic questions to be answerd like why we use unix ? what is a terminal? what is an editor? why we write commands inside terminal? these... (4 Replies)
Discussion started by: aryancool
4 Replies
dc(4)							     Kernel Interfaces Manual							     dc(4)

Name
       dc - serial line/mouse/keyboard

Syntax
       device	 dc0  at ibus?	vector dcintr

Description
       The  serial line controller provides four ports, with modem control on two of the ports.  The DECstation 3100 and DECstation 2100 only pro-
       vide partial modem control.  The DECstation 5000 provides full modem control. The ports are used as follows:

       Port	 Usage
       0	 Graphics device keyboard at 4800 BPS
       1	 Mouse or tablet at 4800 BPS
       2	 Communications port 1 (w/modem control)/local terminal
       3	 Communications port 2 (w/modem control)/local terminal

       Each communication port from the serial line controller behaves as described in and can be set to run at any of 16 speeds.  For the  encod-
       ing, see

       When  a	graphics device is not being used as the system console, communications port 2 becomes the system console.  In this configuration,
       the port can only be used at 9600 BPS and no modem control is supported.

       The serial line driver operates in interrupt-per-character mode (all pending characters are flushed from the silo on each interrupt).

Restrictions
       Speed must be set to 9600 BPS on the console port and 4800 BPS on ports used by graphics devices.  The serial  line  driver  enforces  this
       restriction; that is, changing speeds with the command may not always work on these ports.

Files
       console terminal

       local terminal

       local terminal

See Also
       console(4), devio(4), tty(4), ttys(5), MAKEDEV(8)

								       RISC								     dc(4)
All times are GMT -4. The time now is 07:08 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy